aboutsummaryrefslogtreecommitdiff
path: root/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
blob: c9806b0bad0235b209d5eaa20b091598c8b0b654 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
var OW=Object.create;var jC=Object.defineProperty;var BW=Object.getOwnPropertyDescriptor;var NW=Object.getOwnPropertyNames;var UW=Object.getPrototypeOf,jW=Object.prototype.hasOwnProperty;var VW=(le,me)=>()=>(me||le((me={exports:{}}).exports,me),me.exports);var qW=(le,me,Xe,Mt)=>{if(me&&typeof me=="object"||typeof me=="function")for(let rr of NW(me))!jW.call(le,rr)&&rr!==Xe&&jC(le,rr,{get:()=>me[rr],enumerable:!(Mt=BW(me,rr))||Mt.enumerable});return le};var HW=(le,me,Xe)=>(Xe=le!=null?OW(UW(le)):{},qW(me||!le||!le.__esModule?jC(Xe,"default",{value:le,enumerable:!0}):Xe,le));var $8=VW((J8,l2)=>{(function(le,me){typeof l2=="object"&&l2.exports?l2.exports=me():le.moduleName=me()})(typeof self<"u"?self:J8,()=>{"use strict";var le=(()=>{var me=Object.create,Xe=Object.defineProperty,Mt=Object.defineProperties,rr=Object.getOwnPropertyDescriptor,Nr=Object.getOwnPropertyDescriptors,xa=Object.getOwnPropertyNames,Ha=Object.getOwnPropertySymbols,Za=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty,Ji=Object.prototype.propertyIsEnumerable,gn=(X,H,g)=>H in X?Xe(X,H,{enumerable:!0,configurable:!0,writable:!0,value:g}):X[H]=g,wo=(X,H)=>{for(var g in H||(H={}))un.call(H,g)&&gn(X,g,H[g]);if(Ha)for(var g of Ha(H))Ji.call(H,g)&&gn(X,g,H[g]);return X},ps=(X,H)=>Mt(X,Nr(H)),Qn=(X,H)=>function(){return X&&(H=(0,X[xa(X)[0]])(X=0)),H},Ye=(X,H)=>function(){return H||(0,X[xa(X)[0]])((H={exports:{}}).exports,H),H.exports},Ps=(X,H)=>{for(var g in H)Xe(X,g,{get:H[g],enumerable:!0})},Ml=(X,H,g,x)=>{if(H&&typeof H=="object"||typeof H=="function")for(let A of xa(H))!un.call(X,A)&&A!==g&&Xe(X,A,{get:()=>H[A],enumerable:!(x=rr(H,A))||x.enumerable});return X},Ul=(X,H,g)=>(g=X!=null?me(Za(X)):{},Ml(H||!X||!X.__esModule?Xe(g,"default",{value:X,enumerable:!0}):g,X)),Hf=X=>Ml(Xe({},"__esModule",{value:!0}),X),xh=Ye({"src/version.js"(X){"use strict";X.version="3.0.1"}}),Bp=Ye({"node_modules/native-promise-only/lib/npo.src.js"(X,H){(function(x,A,M){A[x]=A[x]||M(),typeof H<"u"&&H.exports&&(H.exports=A[x])})("Promise",typeof window<"u"?window:X,function(){"use strict";var x,A,M,e=Object.prototype.toString,t=typeof setImmediate<"u"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),x=function(_,w,S,E){return Object.defineProperty(_,w,{value:S,writable:!0,configurable:E!==!1})}}catch{x=function(w,S,E){return w[S]=E,w}}M=function(){var _,w,S;function E(m,b){this.fn=m,this.self=b,this.next=void 0}return{add:function(b,d){S=new E(b,d),w?w.next=S:_=S,w=S,S=void 0},drain:function(){var b=_;for(_=w=A=void 0;b;)b.fn.call(b.self),b=b.next}}}();function r(l,_){M.add(l,_),A||(A=t(M.drain))}function o(l){var _,w=typeof l;return l!=null&&(w=="object"||w=="function")&&(_=l.then),typeof _=="function"?_:!1}function a(){for(var l=0;l<this.chain.length;l++)i(this,this.state===1?this.chain[l].success:this.chain[l].failure,this.chain[l]);this.chain.length=0}function i(l,_,w){var S,E;try{_===!1?w.reject(l.msg):(_===!0?S=l.msg:S=_.call(void 0,l.msg),S===w.promise?w.reject(TypeError("Promise-chain cycle")):(E=o(S))?E.call(S,w.resolve,w.reject):w.resolve(S))}catch(m){w.reject(m)}}function n(l){var _,w=this;if(!w.triggered){w.triggered=!0,w.def&&(w=w.def);try{(_=o(l))?r(function(){var S=new h(w);try{_.call(l,function(){n.apply(S,arguments)},function(){s.apply(S,arguments)})}catch(E){s.call(S,E)}}):(w.msg=l,w.state=1,w.chain.length>0&&r(a,w))}catch(S){s.call(new h(w),S)}}}function s(l){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=l,_.state=2,_.chain.length>0&&r(a,_))}function c(l,_,w,S){for(var E=0;E<_.length;E++)(function(b){l.resolve(_[b]).then(function(u){w(b,u)},S)})(E)}function h(l){this.def=l,this.triggered=!1}function v(l){this.promise=l,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function p(l){if(typeof l!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new v(this);this.then=function(S,E){var m={success:typeof S=="function"?S:!0,failure:typeof E=="function"?E:!1};return m.promise=new this.constructor(function(d,u){if(typeof d!="function"||typeof u!="function")throw TypeError("Not a function");m.resolve=d,m.reject=u}),_.chain.push(m),_.state!==0&&r(a,_),m.promise},this.catch=function(S){return this.then(void 0,S)};try{l.call(void 0,function(S){n.call(_,S)},function(S){s.call(_,S)})}catch(w){s.call(_,w)}}var T=x({},"constructor",p,!1);return p.prototype=T,x(T,"__NPO__",0,!1),x(p,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");E(_)})}),x(p,"reject",function(_){return new this(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");E(_)})}),x(p,"all",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");var b=_.length,d=Array(b),u=0;c(w,_,function(f,P){d[f]=P,++u===b&&E(d)},m)})}),x(p,"race",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");c(w,_,function(d,u){E(u)},m)})}),p})}}),_n=Ye({"node_modules/@plotly/d3/d3.js"(X,H){(function(){var g={version:"3.8.2"},x=[].slice,A=function(de){return x.call(de)},M=self.document;function e(de){return de&&(de.ownerDocument||de.document||de).documentElement}function t(de){return de&&(de.ownerDocument&&de.ownerDocument.defaultView||de.document&&de||de.defaultView)}if(M)try{A(M.documentElement.childNodes)[0].nodeType}catch{A=function(Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=Re[$e];return pt}}if(Date.now||(Date.now=function(){return+new Date}),M)try{M.createElement("DIV").style.setProperty("opacity",0,"")}catch{var r=this.Element.prototype,o=r.setAttribute,a=r.setAttributeNS,i=this.CSSStyleDeclaration.prototype,n=i.setProperty;r.setAttribute=function(Re,$e){o.call(this,Re,$e+"")},r.setAttributeNS=function(Re,$e,pt){a.call(this,Re,$e,pt+"")},i.setProperty=function(Re,$e,pt){n.call(this,Re,$e+"",pt)}}g.ascending=s;function s(de,Re){return de<Re?-1:de>Re?1:de>=Re?0:NaN}g.descending=function(de,Re){return Re<de?-1:Re>de?1:Re>=de?0:NaN},g.min=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&vt>wt&&(vt=wt)}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&vt>wt&&(vt=wt)}return vt},g.max=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&wt>vt&&(vt=wt)}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&wt>vt&&(vt=wt)}return vt},g.extent=function(de,Re){var $e=-1,pt=de.length,vt,wt,Jt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=Jt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&(vt>wt&&(vt=wt),Jt<wt&&(Jt=wt))}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=Jt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&(vt>wt&&(vt=wt),Jt<wt&&(Jt=wt))}return[vt,Jt]};function c(de){return de===null?NaN:+de}function h(de){return!isNaN(de)}g.sum=function(de,Re){var $e=0,pt=de.length,vt,wt=-1;if(arguments.length===1)for(;++wt<pt;)h(vt=+de[wt])&&($e+=vt);else for(;++wt<pt;)h(vt=+Re.call(de,de[wt],wt))&&($e+=vt);return $e},g.mean=function(de,Re){var $e=0,pt=de.length,vt,wt=-1,Jt=pt;if(arguments.length===1)for(;++wt<pt;)h(vt=c(de[wt]))?$e+=vt:--Jt;else for(;++wt<pt;)h(vt=c(Re.call(de,de[wt],wt)))?$e+=vt:--Jt;if(Jt)return $e/Jt},g.quantile=function(de,Re){var $e=(de.length-1)*Re+1,pt=Math.floor($e),vt=+de[pt-1],wt=$e-pt;return wt?vt+wt*(de[pt]-vt):vt},g.median=function(de,Re){var $e=[],pt=de.length,vt,wt=-1;if(arguments.length===1)for(;++wt<pt;)h(vt=c(de[wt]))&&$e.push(vt);else for(;++wt<pt;)h(vt=c(Re.call(de,de[wt],wt)))&&$e.push(vt);if($e.length)return g.quantile($e.sort(s),.5)},g.variance=function(de,Re){var $e=de.length,pt=0,vt,wt,Jt=0,Rt=-1,or=0;if(arguments.length===1)for(;++Rt<$e;)h(vt=c(de[Rt]))&&(wt=vt-pt,pt+=wt/++or,Jt+=wt*(vt-pt));else for(;++Rt<$e;)h(vt=c(Re.call(de,de[Rt],Rt)))&&(wt=vt-pt,pt+=wt/++or,Jt+=wt*(vt-pt));if(or>1)return Jt/(or-1)},g.deviation=function(){var de=g.variance.apply(this,arguments);return de&&Math.sqrt(de)};function v(de){return{left:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt<vt;){var wt=pt+vt>>>1;de(Re[wt],$e)<0?pt=wt+1:vt=wt}return pt},right:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt<vt;){var wt=pt+vt>>>1;de(Re[wt],$e)>0?vt=wt:pt=wt+1}return pt}}}var p=v(s);g.bisectLeft=p.left,g.bisect=g.bisectRight=p.right,g.bisector=function(de){return v(de.length===1?function(Re,$e){return s(de(Re),$e)}:de)},g.shuffle=function(de,Re,$e){(pt=arguments.length)<3&&($e=de.length,pt<2&&(Re=0));for(var pt=$e-Re,vt,wt;pt;)wt=Math.random()*pt--|0,vt=de[pt+Re],de[pt+Re]=de[wt+Re],de[wt+Re]=vt;return de},g.permute=function(de,Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=de[Re[$e]];return pt},g.pairs=function(de){for(var Re=0,$e=de.length-1,pt,vt=de[0],wt=new Array($e<0?0:$e);Re<$e;)wt[Re]=[pt=vt,vt=de[++Re]];return wt},g.transpose=function(de){if(!(wt=de.length))return[];for(var Re=-1,$e=g.min(de,T),pt=new Array($e);++Re<$e;)for(var vt=-1,wt,Jt=pt[Re]=new Array(wt);++vt<wt;)Jt[vt]=de[vt][Re];return pt};function T(de){return de.length}g.zip=function(){return g.transpose(arguments)},g.keys=function(de){var Re=[];for(var $e in de)Re.push($e);return Re},g.values=function(de){var Re=[];for(var $e in de)Re.push(de[$e]);return Re},g.entries=function(de){var Re=[];for(var $e in de)Re.push({key:$e,value:de[$e]});return Re},g.merge=function(de){for(var Re=de.length,$e,pt=-1,vt=0,wt,Jt;++pt<Re;)vt+=de[pt].length;for(wt=new Array(vt);--Re>=0;)for(Jt=de[Re],$e=Jt.length;--$e>=0;)wt[--vt]=Jt[$e];return wt};var l=Math.abs;g.range=function(de,Re,$e){if(arguments.length<3&&($e=1,arguments.length<2&&(Re=de,de=0)),(Re-de)/$e===1/0)throw new Error("infinite range");var pt=[],vt=_(l($e)),wt=-1,Jt;if(de*=vt,Re*=vt,$e*=vt,$e<0)for(;(Jt=de+$e*++wt)>Re;)pt.push(Jt/vt);else for(;(Jt=de+$e*++wt)<Re;)pt.push(Jt/vt);return pt};function _(de){for(var Re=1;de*Re%1;)Re*=10;return Re}function w(de,Re){for(var $e in Re)Object.defineProperty(de.prototype,$e,{value:Re[$e],enumerable:!1})}g.map=function(de,Re){var $e=new S;if(de instanceof S)de.forEach(function(Rt,or){$e.set(Rt,or)});else if(Array.isArray(de)){var pt=-1,vt=de.length,wt;if(arguments.length===1)for(;++pt<vt;)$e.set(pt,de[pt]);else for(;++pt<vt;)$e.set(Re.call(de,wt=de[pt],pt),wt)}else for(var Jt in de)$e.set(Jt,de[Jt]);return $e};function S(){this._=Object.create(null)}var E="__proto__",m="\0";w(S,{has:u,get:function(de){return this._[b(de)]},set:function(de,Re){return this._[b(de)]=Re},remove:y,keys:f,values:function(){var de=[];for(var Re in this._)de.push(this._[Re]);return de},entries:function(){var de=[];for(var Re in this._)de.push({key:d(Re),value:this._[Re]});return de},size:P,empty:L,forEach:function(de){for(var Re in this._)de.call(this,d(Re),this._[Re])}});function b(de){return(de+="")===E||de[0]===m?m+de:de}function d(de){return(de+="")[0]===m?de.slice(1):de}function u(de){return b(de)in this._}function y(de){return(de=b(de))in this._&&delete this._[de]}function f(){var de=[];for(var Re in this._)de.push(d(Re));return de}function P(){var de=0;for(var Re in this._)++de;return de}function L(){for(var de in this._)return!1;return!0}g.nest=function(){var de={},Re=[],$e=[],pt,vt;function wt(Rt,or,Dr){if(Dr>=Re.length)return vt?vt.call(de,or):pt?or.sort(pt):or;for(var Or=-1,va=or.length,fa=Re[Dr++],Va,Xa,_a,Ra=new S,Na;++Or<va;)(Na=Ra.get(Va=fa(Xa=or[Or])))?Na.push(Xa):Ra.set(Va,[Xa]);return Rt?(Xa=Rt(),_a=function(Qa,Ya){Xa.set(Qa,wt(Rt,Ya,Dr))}):(Xa={},_a=function(Qa,Ya){Xa[Qa]=wt(Rt,Ya,Dr)}),Ra.forEach(_a),Xa}function Jt(Rt,or){if(or>=Re.length)return Rt;var Dr=[],Or=$e[or++];return Rt.forEach(function(va,fa){Dr.push({key:va,values:Jt(fa,or)})}),Or?Dr.sort(function(va,fa){return Or(va.key,fa.key)}):Dr}return de.map=function(Rt,or){return wt(or,Rt,0)},de.entries=function(Rt){return Jt(wt(g.map,Rt,0),0)},de.key=function(Rt){return Re.push(Rt),de},de.sortKeys=function(Rt){return $e[Re.length-1]=Rt,de},de.sortValues=function(Rt){return pt=Rt,de},de.rollup=function(Rt){return vt=Rt,de},de},g.set=function(de){var Re=new z;if(de)for(var $e=0,pt=de.length;$e<pt;++$e)Re.add(de[$e]);return Re};function z(){this._=Object.create(null)}w(z,{has:u,add:function(de){return this._[b(de+="")]=!0,de},remove:y,values:f,size:P,empty:L,forEach:function(de){for(var Re in this._)de.call(this,d(Re))}}),g.behavior={};function F(de){return de}g.rebind=function(de,Re){for(var $e=1,pt=arguments.length,vt;++$e<pt;)de[vt=arguments[$e]]=B(de,Re,Re[vt]);return de};function B(de,Re,$e){return function(){var pt=$e.apply(Re,arguments);return pt===Re?de:pt}}function O(de,Re){if(Re in de)return Re;Re=Re.charAt(0).toUpperCase()+Re.slice(1);for(var $e=0,pt=I.length;$e<pt;++$e){var vt=I[$e]+Re;if(vt in de)return vt}}var I=["webkit","ms","moz","Moz","o","O"];function N(){}g.dispatch=function(){for(var de=new U,Re=-1,$e=arguments.length;++Re<$e;)de[arguments[Re]]=W(de);return de};function U(){}U.prototype.on=function(de,Re){var $e=de.indexOf("."),pt="";if($e>=0&&(pt=de.slice($e+1),de=de.slice(0,$e)),de)return arguments.length<2?this[de].on(pt):this[de].on(pt,Re);if(arguments.length===2){if(Re==null)for(de in this)this.hasOwnProperty(de)&&this[de].on(pt,null);return this}};function W(de){var Re=[],$e=new S;function pt(){for(var vt=Re,wt=-1,Jt=vt.length,Rt;++wt<Jt;)(Rt=vt[wt].on)&&Rt.apply(this,arguments);return de}return pt.on=function(vt,wt){var Jt=$e.get(vt),Rt;return arguments.length<2?Jt&&Jt.on:(Jt&&(Jt.on=null,Re=Re.slice(0,Rt=Re.indexOf(Jt)).concat(Re.slice(Rt+1)),$e.remove(vt)),wt&&Re.push($e.set(vt,{on:wt})),de)},pt}g.event=null;function Q(){g.event.preventDefault()}function ue(){for(var de=g.event,Re;Re=de.sourceEvent;)de=Re;return de}function se(de){for(var Re=new U,$e=0,pt=arguments.length;++$e<pt;)Re[arguments[$e]]=W(Re);return Re.of=function(vt,wt){return function(Jt){try{var Rt=Jt.sourceEvent=g.event;Jt.target=de,g.event=Jt,Re[Jt.type].apply(vt,wt)}finally{g.event=Rt}}},Re}g.requote=function(de){return de.replace(he,"\\$&")};var he=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,G={}.__proto__?function(de,Re){de.__proto__=Re}:function(de,Re){for(var $e in Re)de[$e]=Re[$e]};function $(de){return G(de,ne),de}var J=function(de,Re){return Re.querySelector(de)},Z=function(de,Re){return Re.querySelectorAll(de)},re=function(de,Re){var $e=de.matches||de[O(de,"matchesSelector")];return re=function(pt,vt){return $e.call(pt,vt)},re(de,Re)};typeof Sizzle=="function"&&(J=function(de,Re){return Sizzle(de,Re)[0]||null},Z=Sizzle,re=Sizzle.matchesSelector),g.selection=function(){return g.select(M.documentElement)};var ne=g.selection.prototype=[];ne.select=function(de){var Re=[],$e,pt,vt,wt;de=j(de);for(var Jt=-1,Rt=this.length;++Jt<Rt;){Re.push($e=[]),$e.parentNode=(vt=this[Jt]).parentNode;for(var or=-1,Dr=vt.length;++or<Dr;)(wt=vt[or])?($e.push(pt=de.call(wt,wt.__data__,or,Jt)),pt&&"__data__"in wt&&(pt.__data__=wt.__data__)):$e.push(null)}return $(Re)};function j(de){return typeof de=="function"?de:function(){return J(de,this)}}ne.selectAll=function(de){var Re=[],$e,pt;de=ee(de);for(var vt=-1,wt=this.length;++vt<wt;)for(var Jt=this[vt],Rt=-1,or=Jt.length;++Rt<or;)(pt=Jt[Rt])&&(Re.push($e=A(de.call(pt,pt.__data__,Rt,vt))),$e.parentNode=pt);return $(Re)};function ee(de){return typeof de=="function"?de:function(){return Z(de,this)}}var ie="http://www.w3.org/1999/xhtml",fe={svg:"http://www.w3.org/2000/svg",xhtml:ie,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};g.ns={prefix:fe,qualify:function(de){var Re=de.indexOf(":"),$e=de;return Re>=0&&($e=de.slice(0,Re))!=="xmlns"&&(de=de.slice(Re+1)),fe.hasOwnProperty($e)?{space:fe[$e],local:de}:de}},ne.attr=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node();return de=g.ns.qualify(de),de.local?$e.getAttributeNS(de.space,de.local):$e.getAttribute(de)}for(Re in de)this.each(be(Re,de[Re]));return this}return this.each(be(de,Re))};function be(de,Re){de=g.ns.qualify(de);function $e(){this.removeAttribute(de)}function pt(){this.removeAttributeNS(de.space,de.local)}function vt(){this.setAttribute(de,Re)}function wt(){this.setAttributeNS(de.space,de.local,Re)}function Jt(){var or=Re.apply(this,arguments);or==null?this.removeAttribute(de):this.setAttribute(de,or)}function Rt(){var or=Re.apply(this,arguments);or==null?this.removeAttributeNS(de.space,de.local):this.setAttributeNS(de.space,de.local,or)}return Re==null?de.local?pt:$e:typeof Re=="function"?de.local?Rt:Jt:de.local?wt:vt}function Ae(de){return de.trim().replace(/\s+/g," ")}ne.classed=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node(),pt=(de=Ie(de)).length,vt=-1;if(Re=$e.classList){for(;++vt<pt;)if(!Re.contains(de[vt]))return!1}else for(Re=$e.getAttribute("class");++vt<pt;)if(!Be(de[vt]).test(Re))return!1;return!0}for(Re in de)this.each(Ze(Re,de[Re]));return this}return this.each(Ze(de,Re))};function Be(de){return new RegExp("(?:^|\\s+)"+g.requote(de)+"(?:\\s+|$)","g")}function Ie(de){return(de+"").trim().split(/^|\s+/)}function Ze(de,Re){de=Ie(de).map(at);var $e=de.length;function pt(){for(var wt=-1;++wt<$e;)de[wt](this,Re)}function vt(){for(var wt=-1,Jt=Re.apply(this,arguments);++wt<$e;)de[wt](this,Jt)}return typeof Re=="function"?vt:pt}function at(de){var Re=Be(de);return function($e,pt){if(vt=$e.classList)return pt?vt.add(de):vt.remove(de);var vt=$e.getAttribute("class")||"";pt?(Re.lastIndex=0,Re.test(vt)||$e.setAttribute("class",Ae(vt+" "+de))):$e.setAttribute("class",Ae(vt.replace(Re," ")))}}ne.style=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re="");for($e in de)this.each(it($e,de[$e],Re));return this}if(pt<2){var vt=this.node();return t(vt).getComputedStyle(vt,null).getPropertyValue(de)}$e=""}return this.each(it(de,Re,$e))};function it(de,Re,$e){function pt(){this.style.removeProperty(de)}function vt(){this.style.setProperty(de,Re,$e)}function wt(){var Jt=Re.apply(this,arguments);Jt==null?this.style.removeProperty(de):this.style.setProperty(de,Jt,$e)}return Re==null?pt:typeof Re=="function"?wt:vt}ne.property=function(de,Re){if(arguments.length<2){if(typeof de=="string")return this.node()[de];for(Re in de)this.each(et(Re,de[Re]));return this}return this.each(et(de,Re))};function et(de,Re){function $e(){delete this[de]}function pt(){this[de]=Re}function vt(){var wt=Re.apply(this,arguments);wt==null?delete this[de]:this[de]=wt}return Re==null?$e:typeof Re=="function"?vt:pt}ne.text=function(de){return arguments.length?this.each(typeof de=="function"?function(){var Re=de.apply(this,arguments);this.textContent=Re??""}:de==null?function(){this.textContent=""}:function(){this.textContent=de}):this.node().textContent},ne.html=function(de){return arguments.length?this.each(typeof de=="function"?function(){var Re=de.apply(this,arguments);this.innerHTML=Re??""}:de==null?function(){this.innerHTML=""}:function(){this.innerHTML=de}):this.node().innerHTML},ne.append=function(de){return de=lt(de),this.select(function(){return this.appendChild(de.apply(this,arguments))})};function lt(de){function Re(){var pt=this.ownerDocument,vt=this.namespaceURI;return vt===ie&&pt.documentElement.namespaceURI===ie?pt.createElement(de):pt.createElementNS(vt,de)}function $e(){return this.ownerDocument.createElementNS(de.space,de.local)}return typeof de=="function"?de:(de=g.ns.qualify(de)).local?$e:Re}ne.insert=function(de,Re){return de=lt(de),Re=j(Re),this.select(function(){return this.insertBefore(de.apply(this,arguments),Re.apply(this,arguments)||null)})},ne.remove=function(){return this.each(Me)};function Me(){var de=this.parentNode;de&&de.removeChild(this)}ne.data=function(de,Re){var $e=-1,pt=this.length,vt,wt;if(!arguments.length){for(de=new Array(pt=(vt=this[0]).length);++$e<pt;)(wt=vt[$e])&&(de[$e]=wt.__data__);return de}function Jt(Or,va){var fa,Va=Or.length,Xa=va.length,_a=Math.min(Va,Xa),Ra=new Array(Xa),Na=new Array(Xa),Qa=new Array(Va),Ya,Da;if(Re){var zi=new S,Ni=new Array(Va),Qi;for(fa=-1;++fa<Va;)(Ya=Or[fa])&&(zi.has(Qi=Re.call(Ya,Ya.__data__,fa))?Qa[fa]=Ya:zi.set(Qi,Ya),Ni[fa]=Qi);for(fa=-1;++fa<Xa;)(Ya=zi.get(Qi=Re.call(va,Da=va[fa],fa)))?Ya!==!0&&(Ra[fa]=Ya,Ya.__data__=Da):Na[fa]=ge(Da),zi.set(Qi,!0);for(fa=-1;++fa<Va;)fa in Ni&&zi.get(Ni[fa])!==!0&&(Qa[fa]=Or[fa])}else{for(fa=-1;++fa<_a;)Ya=Or[fa],Da=va[fa],Ya?(Ya.__data__=Da,Ra[fa]=Ya):Na[fa]=ge(Da);for(;fa<Xa;++fa)Na[fa]=ge(va[fa]);for(;fa<Va;++fa)Qa[fa]=Or[fa]}Na.update=Ra,Na.parentNode=Ra.parentNode=Qa.parentNode=Or.parentNode,Rt.push(Na),or.push(Ra),Dr.push(Qa)}var Rt=nt([]),or=$([]),Dr=$([]);if(typeof de=="function")for(;++$e<pt;)Jt(vt=this[$e],de.call(vt,vt.parentNode.__data__,$e));else for(;++$e<pt;)Jt(vt=this[$e],de);return or.enter=function(){return Rt},or.exit=function(){return Dr},or};function ge(de){return{__data__:de}}ne.datum=function(de){return arguments.length?this.property("__data__",de):this.property("__data__")},ne.filter=function(de){var Re=[],$e,pt,vt;typeof de!="function"&&(de=ce(de));for(var wt=0,Jt=this.length;wt<Jt;wt++){Re.push($e=[]),$e.parentNode=(pt=this[wt]).parentNode;for(var Rt=0,or=pt.length;Rt<or;Rt++)(vt=pt[Rt])&&de.call(vt,vt.__data__,Rt,wt)&&$e.push(vt)}return $(Re)};function ce(de){return function(){return re(this,de)}}ne.order=function(){for(var de=-1,Re=this.length;++de<Re;)for(var $e=this[de],pt=$e.length-1,vt=$e[pt],wt;--pt>=0;)(wt=$e[pt])&&(vt&&vt!==wt.nextSibling&&vt.parentNode.insertBefore(wt,vt),vt=wt);return this},ne.sort=function(de){de=ze.apply(this,arguments);for(var Re=-1,$e=this.length;++Re<$e;)this[Re].sort(de);return this.order()};function ze(de){return arguments.length||(de=s),function(Re,$e){return Re&&$e?de(Re.__data__,$e.__data__):!Re-!$e}}ne.each=function(de){return tt(this,function(Re,$e,pt){de.call(Re,Re.__data__,$e,pt)})};function tt(de,Re){for(var $e=0,pt=de.length;$e<pt;$e++)for(var vt=de[$e],wt=0,Jt=vt.length,Rt;wt<Jt;wt++)(Rt=vt[wt])&&Re(Rt,wt,$e);return de}ne.call=function(de){var Re=A(arguments);return de.apply(Re[0]=this,Re),this},ne.empty=function(){return!this.node()},ne.node=function(){for(var de=0,Re=this.length;de<Re;de++)for(var $e=this[de],pt=0,vt=$e.length;pt<vt;pt++){var wt=$e[pt];if(wt)return wt}return null},ne.size=function(){var de=0;return tt(this,function(){++de}),de};function nt(de){return G(de,Qe),de}var Qe=[];g.selection.enter=nt,g.selection.enter.prototype=Qe,Qe.append=ne.append,Qe.empty=ne.empty,Qe.node=ne.node,Qe.call=ne.call,Qe.size=ne.size,Qe.select=function(de){for(var Re=[],$e,pt,vt,wt,Jt,Rt=-1,or=this.length;++Rt<or;){vt=(wt=this[Rt]).update,Re.push($e=[]),$e.parentNode=wt.parentNode;for(var Dr=-1,Or=wt.length;++Dr<Or;)(Jt=wt[Dr])?($e.push(vt[Dr]=pt=de.call(wt.parentNode,Jt.__data__,Dr,Rt)),pt.__data__=Jt.__data__):$e.push(null)}return $(Re)},Qe.insert=function(de,Re){return arguments.length<2&&(Re=Ct(this)),ne.insert.call(this,de,Re)};function Ct(de){var Re,$e;return function(pt,vt,wt){var Jt=de[wt].update,Rt=Jt.length,or;for(wt!=$e&&($e=wt,Re=0),vt>=Re&&(Re=vt+1);!(or=Jt[Re])&&++Re<Rt;);return or}}g.select=function(de){var Re;return typeof de=="string"?(Re=[J(de,M)],Re.parentNode=M.documentElement):(Re=[de],Re.parentNode=e(de)),$([Re])},g.selectAll=function(de){var Re;return typeof de=="string"?(Re=A(Z(de,M)),Re.parentNode=M.documentElement):(Re=A(de),Re.parentNode=null),$([Re])},ne.on=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re=!1);for($e in de)this.each(St($e,de[$e],Re));return this}if(pt<2)return(pt=this.node()["__on"+de])&&pt._;$e=!1}return this.each(St(de,Re,$e))};function St(de,Re,$e){var pt="__on"+de,vt=de.indexOf("."),wt=jt;vt>0&&(de=de.slice(0,vt));var Jt=Ot.get(de);Jt&&(de=Jt,wt=ur);function Rt(){var Or=this[pt];Or&&(this.removeEventListener(de,Or,Or.$),delete this[pt])}function or(){var Or=wt(Re,A(arguments));Rt.call(this),this.addEventListener(de,this[pt]=Or,Or.$=$e),Or._=Re}function Dr(){var Or=new RegExp("^__on([^.]+)"+g.requote(de)+"$"),va;for(var fa in this)if(va=fa.match(Or)){var Va=this[fa];this.removeEventListener(va[1],Va,Va.$),delete this[fa]}}return vt?Re?or:Rt:Re?N:Dr}var Ot=g.map({mouseenter:"mouseover",mouseleave:"mouseout"});M&&Ot.forEach(function(de){"on"+de in M&&Ot.remove(de)});function jt(de,Re){return function($e){var pt=g.event;g.event=$e,Re[0]=this.__data__;try{de.apply(this,Re)}finally{g.event=pt}}}function ur(de,Re){var $e=jt(de,Re);return function(pt){var vt=this,wt=pt.relatedTarget;(!wt||wt!==vt&&!(wt.compareDocumentPosition(vt)&8))&&$e.call(vt,pt)}}var ar,Cr=0;function vr(de){var Re=".dragsuppress-"+ ++Cr,$e="click"+Re,pt=g.select(t(de)).on("touchmove"+Re,Q).on("dragstart"+Re,Q).on("selectstart"+Re,Q);if(ar==null&&(ar="onselectstart"in de?!1:O(de.style,"userSelect")),ar){var vt=e(de).style,wt=vt[ar];vt[ar]="none"}return function(Jt){if(pt.on(Re,null),ar&&(vt[ar]=wt),Jt){var Rt=function(){pt.on($e,null)};pt.on($e,function(){Q(),Rt()},!0),setTimeout(Rt,0)}}}g.mouse=function(de){return yt(de,ue())};var _r=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function yt(de,Re){Re.changedTouches&&(Re=Re.changedTouches[0]);var $e=de.ownerSVGElement||de;if($e.createSVGPoint){var pt=$e.createSVGPoint();if(_r<0){var vt=t(de);if(vt.scrollX||vt.scrollY){$e=g.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var wt=$e[0][0].getScreenCTM();_r=!(wt.f||wt.e),$e.remove()}}return _r?(pt.x=Re.pageX,pt.y=Re.pageY):(pt.x=Re.clientX,pt.y=Re.clientY),pt=pt.matrixTransform(de.getScreenCTM().inverse()),[pt.x,pt.y]}var Jt=de.getBoundingClientRect();return[Re.clientX-Jt.left-de.clientLeft,Re.clientY-Jt.top-de.clientTop]}g.touch=function(de,Re,$e){if(arguments.length<3&&($e=Re,Re=ue().changedTouches),Re){for(var pt=0,vt=Re.length,wt;pt<vt;++pt)if((wt=Re[pt]).identifier===$e)return yt(de,wt)}},g.behavior.drag=function(){var de=se(vt,"drag","dragstart","dragend"),Re=null,$e=wt(N,g.mouse,t,"mousemove","mouseup"),pt=wt(Fe,g.touch,F,"touchmove","touchend");function vt(){this.on("mousedown.drag",$e).on("touchstart.drag",pt)}function wt(Jt,Rt,or,Dr,Or){return function(){var va=this,fa=g.event.target.correspondingElement||g.event.target,Va=va.parentNode,Xa=de.of(va,arguments),_a=0,Ra=Jt(),Na=".drag"+(Ra==null?"":"-"+Ra),Qa,Ya=g.select(or(fa)).on(Dr+Na,Ni).on(Or+Na,Qi),Da=vr(fa),zi=Rt(Va,Ra);Re?(Qa=Re.apply(va,arguments),Qa=[Qa.x-zi[0],Qa.y-zi[1]]):Qa=[0,0],Xa({type:"dragstart"});function Ni(){var hn=Rt(Va,Ra),Un,Vn;hn&&(Un=hn[0]-zi[0],Vn=hn[1]-zi[1],_a|=Un|Vn,zi=hn,Xa({type:"drag",x:hn[0]+Qa[0],y:hn[1]+Qa[1],dx:Un,dy:Vn}))}function Qi(){Rt(Va,Ra)&&(Ya.on(Dr+Na,null).on(Or+Na,null),Da(_a),Xa({type:"dragend"}))}}}return vt.origin=function(Jt){return arguments.length?(Re=Jt,vt):Re},g.rebind(vt,de,"on")};function Fe(){return g.event.changedTouches[0].identifier}g.touches=function(de,Re){return arguments.length<2&&(Re=ue().touches),Re?A(Re).map(function($e){var pt=yt(de,$e);return pt.identifier=$e.identifier,pt}):[]};var Ke=1e-6,Ne=Ke*Ke,Ee=Math.PI,Ve=2*Ee,ke=Ve-Ke,Te=Ee/2,Le=Ee/180,rt=180/Ee;function dt(de){return de>0?1:de<0?-1:0}function xt(de,Re,$e){return(Re[0]-de[0])*($e[1]-de[1])-(Re[1]-de[1])*($e[0]-de[0])}function It(de){return de>1?0:de<-1?Ee:Math.acos(de)}function Bt(de){return de>1?Te:de<-1?-Te:Math.asin(de)}function Gt(de){return((de=Math.exp(de))-1/de)/2}function Kt(de){return((de=Math.exp(de))+1/de)/2}function sr(de){return((de=Math.exp(2*de))-1)/(de+1)}function sa(de){return(de=Math.sin(de/2))*de}var Aa=Math.SQRT2,La=2,ka=4;g.interpolateZoom=function(de,Re){var $e=de[0],pt=de[1],vt=de[2],wt=Re[0],Jt=Re[1],Rt=Re[2],or=wt-$e,Dr=Jt-pt,Or=or*or+Dr*Dr,va,fa;if(Or<Ne)fa=Math.log(Rt/vt)/Aa,va=function(Qa){return[$e+Qa*or,pt+Qa*Dr,vt*Math.exp(Aa*Qa*fa)]};else{var Va=Math.sqrt(Or),Xa=(Rt*Rt-vt*vt+ka*Or)/(2*vt*La*Va),_a=(Rt*Rt-vt*vt-ka*Or)/(2*Rt*La*Va),Ra=Math.log(Math.sqrt(Xa*Xa+1)-Xa),Na=Math.log(Math.sqrt(_a*_a+1)-_a);fa=(Na-Ra)/Aa,va=function(Qa){var Ya=Qa*fa,Da=Kt(Ra),zi=vt/(La*Va)*(Da*sr(Aa*Ya+Ra)-Gt(Ra));return[$e+zi*or,pt+zi*Dr,vt*Da/Kt(Aa*Ya+Ra)]}}return va.duration=fa*1e3,va},g.behavior.zoom=function(){var de={x:0,y:0,k:1},Re,$e,pt,vt=[960,500],wt=Ga,Jt=250,Rt=0,or="mousedown.zoom",Dr="mousemove.zoom",Or="mouseup.zoom",va,fa="touchstart.zoom",Va,Xa=se(Ya,"zoomstart","zoom","zoomend"),_a,Ra,Na,Qa;Ua||(Ua="onwheel"in M?(Ma=function(){return-g.event.deltaY*(g.event.deltaMode?120:1)},"wheel"):"onmousewheel"in M?(Ma=function(){return g.event.wheelDelta},"mousewheel"):(Ma=function(){return-g.event.detail},"MozMousePixelScroll"));function Ya(Vi){Vi.on(or,Fo).on(Ua+".zoom",Gs).on("dblclick.zoom",sl).on(fa,Ks)}Ya.event=function(Vi){Vi.each(function(){var ao=Xa.of(this,arguments),ns=de;ls?g.select(this).transition().each("start.zoom",function(){de=this.__chart__||{x:0,y:0,k:1},Vn(ao)}).tween("zoom:zoom",function(){var hs=vt[0],hl=vt[1],Dl=$e?$e[0]:hs/2,hu=$e?$e[1]:hl/2,Ll=g.interpolateZoom([(Dl-de.x)/de.k,(hu-de.y)/de.k,hs/de.k],[(Dl-ns.x)/ns.k,(hu-ns.y)/ns.k,hs/ns.k]);return function(dc){var Qt=Ll(dc),ra=hs/Qt[2];this.__chart__=de={x:Dl-Qt[0]*ra,y:hu-Qt[1]*ra,k:ra},No(ao)}}).each("interrupt.zoom",function(){Gn(ao)}).each("end.zoom",function(){Gn(ao)}):(this.__chart__=de,Vn(ao),No(ao),Gn(ao))})},Ya.translate=function(Vi){return arguments.length?(de={x:+Vi[0],y:+Vi[1],k:de.k},Un(),Ya):[de.x,de.y]},Ya.scale=function(Vi){return arguments.length?(de={x:de.x,y:de.y,k:null},Ni(+Vi),Un(),Ya):de.k},Ya.scaleExtent=function(Vi){return arguments.length?(wt=Vi==null?Ga:[+Vi[0],+Vi[1]],Ya):wt},Ya.center=function(Vi){return arguments.length?(pt=Vi&&[+Vi[0],+Vi[1]],Ya):pt},Ya.size=function(Vi){return arguments.length?(vt=Vi&&[+Vi[0],+Vi[1]],Ya):vt},Ya.duration=function(Vi){return arguments.length?(Jt=+Vi,Ya):Jt},Ya.x=function(Vi){return arguments.length?(Ra=Vi,_a=Vi.copy(),de={x:0,y:0,k:1},Ya):Ra},Ya.y=function(Vi){return arguments.length?(Qa=Vi,Na=Vi.copy(),de={x:0,y:0,k:1},Ya):Qa};function Da(Vi){return[(Vi[0]-de.x)/de.k,(Vi[1]-de.y)/de.k]}function zi(Vi){return[Vi[0]*de.k+de.x,Vi[1]*de.k+de.y]}function Ni(Vi){de.k=Math.max(wt[0],Math.min(wt[1],Vi))}function Qi(Vi,ao){ao=zi(ao),de.x+=Vi[0]-ao[0],de.y+=Vi[1]-ao[1]}function hn(Vi,ao,ns,hs){Vi.__chart__={x:de.x,y:de.y,k:de.k},Ni(Math.pow(2,hs)),Qi($e=ao,ns),Vi=g.select(Vi),Jt>0&&(Vi=Vi.transition().duration(Jt)),Vi.call(Ya.event)}function Un(){Ra&&Ra.domain(_a.range().map(function(Vi){return(Vi-de.x)/de.k}).map(_a.invert)),Qa&&Qa.domain(Na.range().map(function(Vi){return(Vi-de.y)/de.k}).map(Na.invert))}function Vn(Vi){Rt++||Vi({type:"zoomstart"})}function No(Vi){Un(),Vi({type:"zoom",scale:de.k,translate:[de.x,de.y]})}function Gn(Vi){--Rt||(Vi({type:"zoomend"}),$e=null)}function Fo(){var Vi=this,ao=Xa.of(Vi,arguments),ns=0,hs=g.select(t(Vi)).on(Dr,hu).on(Or,Ll),hl=Da(g.mouse(Vi)),Dl=vr(Vi);Sn.call(Vi),Vn(ao);function hu(){ns=1,Qi(g.mouse(Vi),hl),No(ao)}function Ll(){hs.on(Dr,null).on(Or,null),Dl(ns),Gn(ao)}}function Ks(){var Vi=this,ao=Xa.of(Vi,arguments),ns={},hs=0,hl,Dl=".zoom-"+g.event.changedTouches[0].identifier,hu="touchmove"+Dl,Ll="touchend"+Dl,dc=[],Qt=g.select(Vi),ra=vr(Vi);si(),Vn(ao),Qt.on(or,null).on(fa,si);function Ta(){var bi=g.touches(Vi);return hl=de.k,bi.forEach(function(Fi){Fi.identifier in ns&&(ns[Fi.identifier]=Da(Fi))}),bi}function si(){var bi=g.event.target;g.select(bi).on(hu,wi).on(Ll,xi),dc.push(bi);for(var Fi=g.event.changedTouches,cn=0,fn=Fi.length;cn<fn;++cn)ns[Fi[cn].identifier]=null;var Gi=Ta(),Io=Date.now();if(Gi.length===1){if(Io-Va<500){var nn=Gi[0];hn(Vi,nn,ns[nn.identifier],Math.floor(Math.log(de.k)/Math.LN2)+1),Q()}Va=Io}else if(Gi.length>1){var nn=Gi[0],on=Gi[1],Oi=nn[0]-on[0],ui=nn[1]-on[1];hs=Oi*Oi+ui*ui}}function wi(){var bi=g.touches(Vi),Fi,cn,fn,Gi;Sn.call(Vi);for(var Io=0,nn=bi.length;Io<nn;++Io,Gi=null)if(fn=bi[Io],Gi=ns[fn.identifier]){if(cn)break;Fi=fn,cn=Gi}if(Gi){var on=(on=fn[0]-Fi[0])*on+(on=fn[1]-Fi[1])*on,Oi=hs&&Math.sqrt(on/hs);Fi=[(Fi[0]+fn[0])/2,(Fi[1]+fn[1])/2],cn=[(cn[0]+Gi[0])/2,(cn[1]+Gi[1])/2],Ni(Oi*hl)}Va=null,Qi(Fi,cn),No(ao)}function xi(){if(g.event.touches.length){for(var bi=g.event.changedTouches,Fi=0,cn=bi.length;Fi<cn;++Fi)delete ns[bi[Fi].identifier];for(var fn in ns)return void Ta()}g.selectAll(dc).on(Dl,null),Qt.on(or,Fo).on(fa,Ks),ra(),Gn(ao)}}function Gs(){var Vi=Xa.of(this,arguments);va?clearTimeout(va):(Sn.call(this),Re=Da($e=pt||g.mouse(this)),Vn(Vi)),va=setTimeout(function(){va=null,Gn(Vi)},50),Q(),Ni(Math.pow(2,Ma()*.002)*de.k),Qi($e,Re),No(Vi)}function sl(){var Vi=g.mouse(this),ao=Math.log(de.k)/Math.LN2;hn(this,Vi,Da(Vi),g.event.shiftKey?Math.ceil(ao)-1:Math.floor(ao)+1)}return g.rebind(Ya,Xa,"on")};var Ga=[0,1/0],Ma,Ua;g.color=ni;function ni(){}ni.prototype.toString=function(){return this.rgb()+""},g.hsl=Wt;function Wt(de,Re,$e){return this instanceof Wt?(this.h=+de,this.s=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Wt?new Wt(de.h,de.s,de.l):Jr(""+de,oa,Wt):new Wt(de,Re,$e)}var zt=Wt.prototype=new ni;zt.brighter=function(de){return de=Math.pow(.7,arguments.length?de:1),new Wt(this.h,this.s,this.l/de)},zt.darker=function(de){return de=Math.pow(.7,arguments.length?de:1),new Wt(this.h,this.s,de*this.l)},zt.rgb=function(){return Vt(this.h,this.s,this.l)};function Vt(de,Re,$e){var pt,vt;de=isNaN(de)?0:(de%=360)<0?de+360:de,Re=isNaN(Re)||Re<0?0:Re>1?1:Re,$e=$e<0?0:$e>1?1:$e,vt=$e<=.5?$e*(1+Re):$e+Re-$e*Re,pt=2*$e-vt;function wt(Rt){return Rt>360?Rt-=360:Rt<0&&(Rt+=360),Rt<60?pt+(vt-pt)*Rt/60:Rt<180?vt:Rt<240?pt+(vt-pt)*(240-Rt)/60:pt}function Jt(Rt){return Math.round(wt(Rt)*255)}return new br(Jt(de+120),Jt(de),Jt(de-120))}g.hcl=Ut;function Ut(de,Re,$e){return this instanceof Ut?(this.h=+de,this.c=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Ut?new Ut(de.h,de.c,de.l):de instanceof pa?mt(de.l,de.a,de.b):mt((de=ca((de=g.rgb(de)).r,de.g,de.b)).l,de.a,de.b):new Ut(de,Re,$e)}var xr=Ut.prototype=new ni;xr.brighter=function(de){return new Ut(this.h,this.c,Math.min(100,this.l+Xr*(arguments.length?de:1)))},xr.darker=function(de){return new Ut(this.h,this.c,Math.max(0,this.l-Xr*(arguments.length?de:1)))},xr.rgb=function(){return Zr(this.h,this.c,this.l).rgb()};function Zr(de,Re,$e){return isNaN(de)&&(de=0),isNaN(Re)&&(Re=0),new pa($e,Math.cos(de*=Le)*Re,Math.sin(de)*Re)}g.lab=pa;function pa(de,Re,$e){return this instanceof pa?(this.l=+de,this.a=+Re,void(this.b=+$e)):arguments.length<2?de instanceof pa?new pa(de.l,de.a,de.b):de instanceof Ut?Zr(de.h,de.c,de.l):ca((de=br(de)).r,de.g,de.b):new pa(de,Re,$e)}var Xr=18,Ea=.95047,Fa=1,qa=1.08883,ya=pa.prototype=new ni;ya.brighter=function(de){return new pa(Math.min(100,this.l+Xr*(arguments.length?de:1)),this.a,this.b)},ya.darker=function(de){return new pa(Math.max(0,this.l-Xr*(arguments.length?de:1)),this.a,this.b)},ya.rgb=function(){return $a(this.l,this.a,this.b)};function $a(de,Re,$e){var pt=(de+16)/116,vt=pt+Re/500,wt=pt-$e/200;return vt=gt(vt)*Ea,pt=gt(pt)*Fa,wt=gt(wt)*qa,new br(kr(3.2404542*vt-1.5371385*pt-.4985314*wt),kr(-.969266*vt+1.8760108*pt+.041556*wt),kr(.0556434*vt-.2040259*pt+1.0572252*wt))}function mt(de,Re,$e){return de>0?new Ut(Math.atan2($e,Re)*rt,Math.sqrt(Re*Re+$e*$e),de):new Ut(NaN,NaN,de)}function gt(de){return de>.206893034?de*de*de:(de-4/29)/7.787037}function Er(de){return de>.008856?Math.pow(de,1/3):7.787037*de+4/29}function kr(de){return Math.round(255*(de<=.00304?12.92*de:1.055*Math.pow(de,1/2.4)-.055))}g.rgb=br;function br(de,Re,$e){return this instanceof br?(this.r=~~de,this.g=~~Re,void(this.b=~~$e)):arguments.length<2?de instanceof br?new br(de.r,de.g,de.b):Jr(""+de,br,Vt):new br(de,Re,$e)}function Tr(de){return new br(de>>16,de>>8&255,de&255)}function Mr(de){return Tr(de)+""}var Fr=br.prototype=new ni;Fr.brighter=function(de){de=Math.pow(.7,arguments.length?de:1);var Re=this.r,$e=this.g,pt=this.b,vt=30;return!Re&&!$e&&!pt?new br(vt,vt,vt):(Re&&Re<vt&&(Re=vt),$e&&$e<vt&&($e=vt),pt&&pt<vt&&(pt=vt),new br(Math.min(255,Re/de),Math.min(255,$e/de),Math.min(255,pt/de)))},Fr.darker=function(de){return de=Math.pow(.7,arguments.length?de:1),new br(de*this.r,de*this.g,de*this.b)},Fr.hsl=function(){return oa(this.r,this.g,this.b)},Fr.toString=function(){return"#"+Lr(this.r)+Lr(this.g)+Lr(this.b)};function Lr(de){return de<16?"0"+Math.max(0,de).toString(16):Math.min(255,de).toString(16)}function Jr(de,Re,$e){var pt=0,vt=0,wt=0,Jt,Rt,or;if(Jt=/([a-z]+)\((.*)\)/.exec(de=de.toLowerCase()),Jt)switch(Rt=Jt[2].split(","),Jt[1]){case"hsl":return $e(parseFloat(Rt[0]),parseFloat(Rt[1])/100,parseFloat(Rt[2])/100);case"rgb":return Re(ir(Rt[0]),ir(Rt[1]),ir(Rt[2]))}return(or=mr.get(de))?Re(or.r,or.g,or.b):(de!=null&&de.charAt(0)==="#"&&!isNaN(or=parseInt(de.slice(1),16))&&(de.length===4?(pt=(or&3840)>>4,pt=pt>>4|pt,vt=or&240,vt=vt>>4|vt,wt=or&15,wt=wt<<4|wt):de.length===7&&(pt=(or&16711680)>>16,vt=(or&65280)>>8,wt=or&255)),Re(pt,vt,wt))}function oa(de,Re,$e){var pt=Math.min(de/=255,Re/=255,$e/=255),vt=Math.max(de,Re,$e),wt=vt-pt,Jt,Rt,or=(vt+pt)/2;return wt?(Rt=or<.5?wt/(vt+pt):wt/(2-vt-pt),de==vt?Jt=(Re-$e)/wt+(Re<$e?6:0):Re==vt?Jt=($e-de)/wt+2:Jt=(de-Re)/wt+4,Jt*=60):(Jt=NaN,Rt=or>0&&or<1?0:Jt),new Wt(Jt,Rt,or)}function ca(de,Re,$e){de=kt(de),Re=kt(Re),$e=kt($e);var pt=Er((.4124564*de+.3575761*Re+.1804375*$e)/Ea),vt=Er((.2126729*de+.7151522*Re+.072175*$e)/Fa),wt=Er((.0193339*de+.119192*Re+.9503041*$e)/qa);return pa(116*vt-16,500*(pt-vt),200*(vt-wt))}function kt(de){return(de/=255)<=.04045?de/12.92:Math.pow((de+.055)/1.055,2.4)}function ir(de){var Re=parseFloat(de);return de.charAt(de.length-1)==="%"?Math.round(Re*2.55):Re}var mr=g.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});mr.forEach(function(de,Re){mr.set(de,Tr(Re))});function $r(de){return typeof de=="function"?de:function(){return de}}g.functor=$r,g.xhr=ma(F);function ma(de){return function(Re,$e,pt){return arguments.length===2&&typeof $e=="function"&&(pt=$e,$e=null),Ba(Re,$e,de,pt)}}function Ba(de,Re,$e,pt){var vt={},wt=g.dispatch("beforesend","progress","load","error"),Jt={},Rt=new XMLHttpRequest,or=null;self.XDomainRequest&&!("withCredentials"in Rt)&&/^(http(s)?:)?\/\//.test(de)&&(Rt=new XDomainRequest),"onload"in Rt?Rt.onload=Rt.onerror=Dr:Rt.onreadystatechange=function(){Rt.readyState>3&&Dr()};function Dr(){var Or=Rt.status,va;if(!Or&&da(Rt)||Or>=200&&Or<300||Or===304){try{va=$e.call(vt,Rt)}catch(fa){wt.error.call(vt,fa);return}wt.load.call(vt,va)}else wt.error.call(vt,Rt)}return Rt.onprogress=function(Or){var va=g.event;g.event=Or;try{wt.progress.call(vt,Rt)}finally{g.event=va}},vt.header=function(Or,va){return Or=(Or+"").toLowerCase(),arguments.length<2?Jt[Or]:(va==null?delete Jt[Or]:Jt[Or]=va+"",vt)},vt.mimeType=function(Or){return arguments.length?(Re=Or==null?null:Or+"",vt):Re},vt.responseType=function(Or){return arguments.length?(or=Or,vt):or},vt.response=function(Or){return $e=Or,vt},["get","post"].forEach(function(Or){vt[Or]=function(){return vt.send.apply(vt,[Or].concat(A(arguments)))}}),vt.send=function(Or,va,fa){if(arguments.length===2&&typeof va=="function"&&(fa=va,va=null),Rt.open(Or,de,!0),Re!=null&&!("accept"in Jt)&&(Jt.accept=Re+",*/*"),Rt.setRequestHeader)for(var Va in Jt)Rt.setRequestHeader(Va,Jt[Va]);return Re!=null&&Rt.overrideMimeType&&Rt.overrideMimeType(Re),or!=null&&(Rt.responseType=or),fa!=null&&vt.on("error",fa).on("load",function(Xa){fa(null,Xa)}),wt.beforesend.call(vt,Rt),Rt.send(va??null),vt},vt.abort=function(){return Rt.abort(),vt},g.rebind(vt,wt,"on"),pt==null?vt:vt.get(Ca(pt))}function Ca(de){return de.length===1?function(Re,$e){de(Re==null?$e:null)}:de}function da(de){var Re=de.responseType;return Re&&Re!=="text"?de.response:de.responseText}g.dsv=function(de,Re){var $e=new RegExp('["'+de+`
]`),pt=de.charCodeAt(0);function vt(Dr,Or,va){arguments.length<3&&(va=Or,Or=null);var fa=Ba(Dr,Re,Or==null?wt:Jt(Or),va);return fa.row=function(Va){return arguments.length?fa.response((Or=Va)==null?wt:Jt(Va)):Or},fa}function wt(Dr){return vt.parse(Dr.responseText)}function Jt(Dr){return function(Or){return vt.parse(Or.responseText,Dr)}}vt.parse=function(Dr,Or){var va;return vt.parseRows(Dr,function(fa,Va){if(va)return va(fa,Va-1);var Xa=function(_a){for(var Ra={},Na=fa.length,Qa=0;Qa<Na;++Qa)Ra[fa[Qa]]=_a[Qa];return Ra};va=Or?function(_a,Ra){return Or(Xa(_a),Ra)}:Xa})},vt.parseRows=function(Dr,Or){var va={},fa={},Va=[],Xa=Dr.length,_a=0,Ra=0,Na,Qa;function Ya(){if(_a>=Xa)return fa;if(Qa)return Qa=!1,va;var zi=_a;if(Dr.charCodeAt(zi)===34){for(var Ni=zi;Ni++<Xa;)if(Dr.charCodeAt(Ni)===34){if(Dr.charCodeAt(Ni+1)!==34)break;++Ni}_a=Ni+2;var Qi=Dr.charCodeAt(Ni+1);return Qi===13?(Qa=!0,Dr.charCodeAt(Ni+2)===10&&++_a):Qi===10&&(Qa=!0),Dr.slice(zi+1,Ni).replace(/""/g,'"')}for(;_a<Xa;){var Qi=Dr.charCodeAt(_a++),hn=1;if(Qi===10)Qa=!0;else if(Qi===13)Qa=!0,Dr.charCodeAt(_a)===10&&(++_a,++hn);else if(Qi!==pt)continue;return Dr.slice(zi,_a-hn)}return Dr.slice(zi)}for(;(Na=Ya())!==fa;){for(var Da=[];Na!==va&&Na!==fa;)Da.push(Na),Na=Ya();Or&&(Da=Or(Da,Ra++))==null||Va.push(Da)}return Va},vt.format=function(Dr){if(Array.isArray(Dr[0]))return vt.formatRows(Dr);var Or=new z,va=[];return Dr.forEach(function(fa){for(var Va in fa)Or.has(Va)||va.push(Or.add(Va))}),[va.map(or).join(de)].concat(Dr.map(function(fa){return va.map(function(Va){return or(fa[Va])}).join(de)})).join(`
`)},vt.formatRows=function(Dr){return Dr.map(Rt).join(`
`)};function Rt(Dr){return Dr.map(or).join(de)}function or(Dr){return $e.test(Dr)?'"'+Dr.replace(/\"/g,'""')+'"':Dr}return vt},g.csv=g.dsv(",","text/csv"),g.tsv=g.dsv("	","text/tab-separated-values");var Sa,Ti,ai,an,sn=this[O(this,"requestAnimationFrame")]||function(de){setTimeout(de,17)};g.timer=function(){Mn.apply(this,arguments)};function Mn(de,Re,$e){var pt=arguments.length;pt<2&&(Re=0),pt<3&&($e=Date.now());var vt=$e+Re,wt={c:de,t:vt,n:null};return Ti?Ti.n=wt:Sa=wt,Ti=wt,ai||(an=clearTimeout(an),ai=1,sn(On)),wt}function On(){var de=$n(),Re=Cn()-de;Re>24?(isFinite(Re)&&(clearTimeout(an),an=setTimeout(On,Re)),ai=0):(ai=1,sn(On))}g.timer.flush=function(){$n(),Cn()};function $n(){for(var de=Date.now(),Re=Sa;Re;)de>=Re.t&&Re.c(de-Re.t)&&(Re.c=null),Re=Re.n;return de}function Cn(){for(var de,Re=Sa,$e=1/0;Re;)Re.c?(Re.t<$e&&($e=Re.t),Re=(de=Re).n):Re=de?de.n=Re.n:Sa=Re.n;return Ti=de,$e}g.round=function(de,Re){return Re?Math.round(de*(Re=Math.pow(10,Re)))/Re:Math.round(de)},g.geom={};function Lo(de){return de[0]}function Xi(de){return de[1]}g.geom.hull=function(de){var Re=Lo,$e=Xi;if(arguments.length)return pt(de);function pt(vt){if(vt.length<3)return[];var wt=$r(Re),Jt=$r($e),Rt,or=vt.length,Dr=[],Or=[];for(Rt=0;Rt<or;Rt++)Dr.push([+wt.call(this,vt[Rt],Rt),+Jt.call(this,vt[Rt],Rt),Rt]);for(Dr.sort(zo),Rt=0;Rt<or;Rt++)Or.push([Dr[Rt][0],-Dr[Rt][1]]);var va=Jo(Dr),fa=Jo(Or),Va=fa[0]===va[0],Xa=fa[fa.length-1]===va[va.length-1],_a=[];for(Rt=va.length-1;Rt>=0;--Rt)_a.push(vt[Dr[va[Rt]][2]]);for(Rt=+Va;Rt<fa.length-Xa;++Rt)_a.push(vt[Dr[fa[Rt]][2]]);return _a}return pt.x=function(vt){return arguments.length?(Re=vt,pt):Re},pt.y=function(vt){return arguments.length?($e=vt,pt):$e},pt};function Jo(de){for(var Re=de.length,$e=[0,1],pt=2,vt=2;vt<Re;vt++){for(;pt>1&&xt(de[$e[pt-2]],de[$e[pt-1]],de[vt])<=0;)--pt;$e[pt++]=vt}return $e.slice(0,pt)}function zo(de,Re){return de[0]-Re[0]||de[1]-Re[1]}g.geom.polygon=function(de){return G(de,as),de};var as=g.geom.polygon.prototype=[];as.area=function(){for(var de=-1,Re=this.length,$e,pt=this[Re-1],vt=0;++de<Re;)$e=pt,pt=this[de],vt+=$e[1]*pt[0]-$e[0]*pt[1];return vt*.5},as.centroid=function(de){var Re=-1,$e=this.length,pt=0,vt=0,wt,Jt=this[$e-1],Rt;for(arguments.length||(de=-1/(6*this.area()));++Re<$e;)wt=Jt,Jt=this[Re],Rt=wt[0]*Jt[1]-Jt[0]*wt[1],pt+=(wt[0]+Jt[0])*Rt,vt+=(wt[1]+Jt[1])*Rt;return[pt*de,vt*de]},as.clip=function(de){for(var Re,$e=In(de),pt=-1,vt=this.length-In(this),wt,Jt,Rt=this[vt-1],or,Dr,Or;++pt<vt;){for(Re=de.slice(),de.length=0,or=this[pt],Dr=Re[(Jt=Re.length-$e)-1],wt=-1;++wt<Jt;)Or=Re[wt],Pn(Or,Rt,or)?(Pn(Dr,Rt,or)||de.push(go(Dr,Or,Rt,or)),de.push(Or)):Pn(Dr,Rt,or)&&de.push(go(Dr,Or,Rt,or)),Dr=Or;$e&&de.push(de[0]),Rt=or}return de};function Pn(de,Re,$e){return($e[0]-Re[0])*(de[1]-Re[1])<($e[1]-Re[1])*(de[0]-Re[0])}function go(de,Re,$e,pt){var vt=de[0],wt=$e[0],Jt=Re[0]-vt,Rt=pt[0]-wt,or=de[1],Dr=$e[1],Or=Re[1]-or,va=pt[1]-Dr,fa=(Rt*(or-Dr)-va*(vt-wt))/(va*Jt-Rt*Or);return[vt+fa*Jt,or+fa*Or]}function In(de){var Re=de[0],$e=de[de.length-1];return!(Re[0]-$e[0]||Re[1]-$e[1])}var Do,Ho,Qo,Xn=[],po,ys,Is=[];function Fs(){qs(this),this.edge=this.site=this.circle=null}function $o(de){var Re=Xn.pop()||new Fs;return Re.site=de,Re}function fi(de){To(de),Qo.remove(de),Xn.push(de),qs(de)}function mn(de){var Re=de.circle,$e=Re.x,pt=Re.cy,vt={x:$e,y:pt},wt=de.P,Jt=de.N,Rt=[de];fi(de);for(var or=wt;or.circle&&l($e-or.circle.x)<Ke&&l(pt-or.circle.cy)<Ke;)wt=or.P,Rt.unshift(or),fi(or),or=wt;Rt.unshift(or),To(or);for(var Dr=Jt;Dr.circle&&l($e-Dr.circle.x)<Ke&&l(pt-Dr.circle.cy)<Ke;)Jt=Dr.N,Rt.push(Dr),fi(Dr),Dr=Jt;Rt.push(Dr),To(Dr);var Or=Rt.length,va;for(va=1;va<Or;++va)Dr=Rt[va],or=Rt[va-1],ml(Dr.edge,or.site,Dr.site,vt);or=Rt[0],Dr=Rt[Or-1],Dr.edge=Wl(or.site,Dr.site,null,vt),ji(or),ji(Dr)}function ol(de){for(var Re=de.x,$e=de.y,pt,vt,wt,Jt,Rt=Qo._;Rt;)if(wt=Os(Rt,$e)-Re,wt>Ke)Rt=Rt.L;else if(Jt=Re-so(Rt,$e),Jt>Ke){if(!Rt.R){pt=Rt;break}Rt=Rt.R}else{wt>-Ke?(pt=Rt.P,vt=Rt):Jt>-Ke?(pt=Rt,vt=Rt.N):pt=vt=Rt;break}var or=$o(de);if(Qo.insert(pt,or),!(!pt&&!vt)){if(pt===vt){To(pt),vt=$o(pt.site),Qo.insert(or,vt),or.edge=vt.edge=Wl(pt.site,or.site),ji(pt),ji(vt);return}if(!vt){or.edge=Wl(pt.site,or.site);return}To(pt),To(vt);var Dr=pt.site,Or=Dr.x,va=Dr.y,fa=de.x-Or,Va=de.y-va,Xa=vt.site,_a=Xa.x-Or,Ra=Xa.y-va,Na=2*(fa*Ra-Va*_a),Qa=fa*fa+Va*Va,Ya=_a*_a+Ra*Ra,Da={x:(Ra*Qa-Va*Ya)/Na+Or,y:(fa*Ya-_a*Qa)/Na+va};ml(vt.edge,Dr,Xa,Da),or.edge=Wl(Dr,de,null,Da),vt.edge=Wl(de,Xa,null,Da),ji(pt),ji(vt)}}function Os(de,Re){var $e=de.site,pt=$e.x,vt=$e.y,wt=vt-Re;if(!wt)return pt;var Jt=de.P;if(!Jt)return-1/0;$e=Jt.site;var Rt=$e.x,or=$e.y,Dr=or-Re;if(!Dr)return Rt;var Or=Rt-pt,va=1/wt-1/Dr,fa=Or/Dr;return va?(-fa+Math.sqrt(fa*fa-2*va*(Or*Or/(-2*Dr)-or+Dr/2+vt-wt/2)))/va+pt:(pt+Rt)/2}function so(de,Re){var $e=de.N;if($e)return Os($e,Re);var pt=de.site;return pt.y===Re?pt.x:1/0}function Ns(de){this.site=de,this.edges=[]}Ns.prototype.prepare=function(){for(var de=this.edges,Re=de.length,$e;Re--;)$e=de[Re].edge,(!$e.b||!$e.a)&&de.splice(Re,1);return de.sort(al),de.length};function fs(de){for(var Re=de[0][0],$e=de[1][0],pt=de[0][1],vt=de[1][1],wt,Jt,Rt,or,Dr=Ho,Or=Dr.length,va,fa,Va,Xa,_a,Ra;Or--;)if(va=Dr[Or],!(!va||!va.prepare()))for(Va=va.edges,Xa=Va.length,fa=0;fa<Xa;)Ra=Va[fa].end(),Rt=Ra.x,or=Ra.y,_a=Va[++fa%Xa].start(),wt=_a.x,Jt=_a.y,(l(Rt-wt)>Ke||l(or-Jt)>Ke)&&(Va.splice(fa,0,new Bu(Zu(va.site,Ra,l(Rt-Re)<Ke&&vt-or>Ke?{x:Re,y:l(wt-Re)<Ke?Jt:vt}:l(or-vt)<Ke&&$e-Rt>Ke?{x:l(Jt-vt)<Ke?wt:$e,y:vt}:l(Rt-$e)<Ke&&or-pt>Ke?{x:$e,y:l(wt-$e)<Ke?Jt:pt}:l(or-pt)<Ke&&Rt-Re>Ke?{x:l(Jt-pt)<Ke?wt:Re,y:pt}:null),va.site,null)),++Xa)}function al(de,Re){return Re.angle-de.angle}function vl(){qs(this),this.x=this.y=this.arc=this.site=this.cy=null}function ji(de){var Re=de.P,$e=de.N;if(!(!Re||!$e)){var pt=Re.site,vt=de.site,wt=$e.site;if(pt!==wt){var Jt=vt.x,Rt=vt.y,or=pt.x-Jt,Dr=pt.y-Rt,Or=wt.x-Jt,Ra=wt.y-Rt,va=2*(or*Ra-Dr*Or);if(!(va>=-Ne)){var fa=or*or+Dr*Dr,Va=Or*Or+Ra*Ra,Xa=(Ra*fa-Dr*Va)/va,_a=(or*Va-Or*fa)/va,Ra=_a+Rt,Na=Is.pop()||new vl;Na.arc=de,Na.site=vt,Na.x=Xa+Jt,Na.y=Ra+Math.sqrt(Xa*Xa+_a*_a),Na.cy=Ra,de.circle=Na;for(var Qa=null,Ya=ys._;Ya;)if(Na.y<Ya.y||Na.y===Ya.y&&Na.x<=Ya.x)if(Ya.L)Ya=Ya.L;else{Qa=Ya.P;break}else if(Ya.R)Ya=Ya.R;else{Qa=Ya;break}ys.insert(Qa,Na),Qa||(po=Na)}}}}function To(de){var Re=de.circle;Re&&(Re.P||(po=Re.N),ys.remove(Re),Is.push(Re),qs(Re),de.circle=null)}function Yn(de,Re,$e,pt){return function(vt){var wt=vt.a,Jt=vt.b,Rt=wt.x,or=wt.y,Dr=Jt.x,Or=Jt.y,va=0,fa=1,Va=Dr-Rt,Xa=Or-or,_a;if(_a=de-Rt,!(!Va&&_a>0)){if(_a/=Va,Va<0){if(_a<va)return;_a<fa&&(fa=_a)}else if(Va>0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=$e-Rt,!(!Va&&_a<0)){if(_a/=Va,Va<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Va>0){if(_a<va)return;_a<fa&&(fa=_a)}if(_a=Re-or,!(!Xa&&_a>0)){if(_a/=Xa,Xa<0){if(_a<va)return;_a<fa&&(fa=_a)}else if(Xa>0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=pt-or,!(!Xa&&_a<0)){if(_a/=Xa,Xa<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Xa>0){if(_a<va)return;_a<fa&&(fa=_a)}return va>0&&(vt.a={x:Rt+va*Va,y:or+va*Xa}),fa<1&&(vt.b={x:Rt+fa*Va,y:or+fa*Xa}),vt}}}}}}function _s(de){for(var Re=Do,$e=Yn(de[0][0],de[0][1],de[1][0],de[1][1]),pt=Re.length,vt;pt--;)vt=Re[pt],(!Yo(vt,de)||!$e(vt)||l(vt.a.x-vt.b.x)<Ke&&l(vt.a.y-vt.b.y)<Ke)&&(vt.a=vt.b=null,Re.splice(pt,1))}function Yo(de,Re){var $e=de.b;if($e)return!0;var pt=de.a,vt=Re[0][0],wt=Re[1][0],Jt=Re[0][1],Rt=Re[1][1],or=de.l,Dr=de.r,Or=or.x,va=or.y,fa=Dr.x,Va=Dr.y,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra,Na;if(Va===va){if(Xa<vt||Xa>=wt)return;if(Or>fa){if(!pt)pt={x:Xa,y:Jt};else if(pt.y>=Rt)return;$e={x:Xa,y:Rt}}else{if(!pt)pt={x:Xa,y:Rt};else if(pt.y<Jt)return;$e={x:Xa,y:Jt}}}else if(Ra=(Or-fa)/(Va-va),Na=_a-Ra*Xa,Ra<-1||Ra>1)if(Or>fa){if(!pt)pt={x:(Jt-Na)/Ra,y:Jt};else if(pt.y>=Rt)return;$e={x:(Rt-Na)/Ra,y:Rt}}else{if(!pt)pt={x:(Rt-Na)/Ra,y:Rt};else if(pt.y<Jt)return;$e={x:(Jt-Na)/Ra,y:Jt}}else if(va<Va){if(!pt)pt={x:vt,y:Ra*vt+Na};else if(pt.x>=wt)return;$e={x:wt,y:Ra*wt+Na}}else{if(!pt)pt={x:wt,y:Ra*wt+Na};else if(pt.x<vt)return;$e={x:vt,y:Ra*vt+Na}}return de.a=pt,de.b=$e,!0}function Nn(de,Re){this.l=de,this.r=Re,this.a=this.b=null}function Wl(de,Re,$e,pt){var vt=new Nn(de,Re);return Do.push(vt),$e&&ml(vt,de,Re,$e),pt&&ml(vt,Re,de,pt),Ho[de.i].edges.push(new Bu(vt,de,Re)),Ho[Re.i].edges.push(new Bu(vt,Re,de)),vt}function Zu(de,Re,$e){var pt=new Nn(de,null);return pt.a=Re,pt.b=$e,Do.push(pt),pt}function ml(de,Re,$e,pt){!de.a&&!de.b?(de.a=pt,de.l=Re,de.r=$e):de.l===$e?de.b=pt:de.a=pt}function Bu(de,Re,$e){var pt=de.a,vt=de.b;this.edge=de,this.site=Re,this.angle=$e?Math.atan2($e.y-Re.y,$e.x-Re.x):de.l===Re?Math.atan2(vt.x-pt.x,pt.y-vt.y):Math.atan2(pt.x-vt.x,vt.y-pt.y)}Bu.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}};function El(){this._=null}function qs(de){de.U=de.C=de.L=de.R=de.P=de.N=null}El.prototype={insert:function(de,Re){var $e,pt,vt;if(de){if(Re.P=de,Re.N=de.N,de.N&&(de.N.P=Re),de.N=Re,de.R){for(de=de.R;de.L;)de=de.L;de.L=Re}else de.R=Re;$e=de}else this._?(de=Ic(this._),Re.P=null,Re.N=de,de.P=de.L=Re,$e=de):(Re.P=Re.N=null,this._=Re,$e=null);for(Re.L=Re.R=null,Re.U=$e,Re.C=!0,de=Re;$e&&$e.C;)pt=$e.U,$e===pt.L?(vt=pt.R,vt&&vt.C?($e.C=vt.C=!1,pt.C=!0,de=pt):(de===$e.R&&(Jl(this,$e),de=$e,$e=de.U),$e.C=!1,pt.C=!0,Nu(this,pt))):(vt=pt.L,vt&&vt.C?($e.C=vt.C=!1,pt.C=!0,de=pt):(de===$e.L&&(Nu(this,$e),de=$e,$e=de.U),$e.C=!1,pt.C=!0,Jl(this,pt))),$e=de.U;this._.C=!1},remove:function(de){de.N&&(de.N.P=de.P),de.P&&(de.P.N=de.N),de.N=de.P=null;var Re=de.U,$e,pt=de.L,vt=de.R,wt,Jt;if(pt?vt?wt=Ic(vt):wt=pt:wt=vt,Re?Re.L===de?Re.L=wt:Re.R=wt:this._=wt,pt&&vt?(Jt=wt.C,wt.C=de.C,wt.L=pt,pt.U=wt,wt!==vt?(Re=wt.U,wt.U=de.U,de=wt.R,Re.L=de,wt.R=vt,vt.U=wt):(wt.U=Re,Re=wt,de=wt.R)):(Jt=de.C,de=wt),de&&(de.U=Re),!Jt){if(de&&de.C){de.C=!1;return}do{if(de===this._)break;if(de===Re.L){if($e=Re.R,$e.C&&($e.C=!1,Re.C=!0,Jl(this,Re),$e=Re.R),$e.L&&$e.L.C||$e.R&&$e.R.C){(!$e.R||!$e.R.C)&&($e.L.C=!1,$e.C=!0,Nu(this,$e),$e=Re.R),$e.C=Re.C,Re.C=$e.R.C=!1,Jl(this,Re),de=this._;break}}else if($e=Re.L,$e.C&&($e.C=!1,Re.C=!0,Nu(this,Re),$e=Re.L),$e.L&&$e.L.C||$e.R&&$e.R.C){(!$e.L||!$e.L.C)&&($e.R.C=!1,$e.C=!0,Jl(this,$e),$e=Re.L),$e.C=Re.C,Re.C=$e.L.C=!1,Nu(this,Re),de=this._;break}$e.C=!0,de=Re,Re=Re.U}while(!de.C);de&&(de.C=!1)}}};function Jl(de,Re){var $e=Re,pt=Re.R,vt=$e.U;vt?vt.L===$e?vt.L=pt:vt.R=pt:de._=pt,pt.U=vt,$e.U=pt,$e.R=pt.L,$e.R&&($e.R.U=$e),pt.L=$e}function Nu(de,Re){var $e=Re,pt=Re.L,vt=$e.U;vt?vt.L===$e?vt.L=pt:vt.R=pt:de._=pt,pt.U=vt,$e.U=pt,$e.L=pt.R,$e.L&&($e.L.U=$e),pt.R=$e}function Ic(de){for(;de.L;)de=de.L;return de}function Xu(de,Re){var $e=de.sort(Th).pop(),pt,vt,wt;for(Do=[],Ho=new Array(de.length),Qo=new El,ys=new El;;)if(wt=po,$e&&(!wt||$e.y<wt.y||$e.y===wt.y&&$e.x<wt.x))($e.x!==pt||$e.y!==vt)&&(Ho[$e.i]=new Ns($e),ol($e),pt=$e.x,vt=$e.y),$e=de.pop();else if(wt)mn(wt.arc);else break;Re&&(_s(Re),fs(Re));var Jt={cells:Ho,edges:Do};return Qo=ys=Do=Ho=null,Jt}function Th(de,Re){return Re.y-de.y||Re.x-de.x}g.geom.voronoi=function(de){var Re=Lo,$e=Xi,pt=Re,vt=$e,wt=bf;if(de)return Jt(de);function Jt(or){var Dr=new Array(or.length),Or=wt[0][0],va=wt[0][1],fa=wt[1][0],Va=wt[1][1];return Xu(Rt(or),wt).cells.forEach(function(Xa,_a){var Ra=Xa.edges,Na=Xa.site,Qa=Dr[_a]=Ra.length?Ra.map(function(Ya){var Da=Ya.start();return[Da.x,Da.y]}):Na.x>=Or&&Na.x<=fa&&Na.y>=va&&Na.y<=Va?[[Or,Va],[fa,Va],[fa,va],[Or,va]]:[];Qa.point=or[_a]}),Dr}function Rt(or){return or.map(function(Dr,Or){return{x:Math.round(pt(Dr,Or)/Ke)*Ke,y:Math.round(vt(Dr,Or)/Ke)*Ke,i:Or}})}return Jt.links=function(or){return Xu(Rt(or)).edges.filter(function(Dr){return Dr.l&&Dr.r}).map(function(Dr){return{source:or[Dr.l.i],target:or[Dr.r.i]}})},Jt.triangles=function(or){var Dr=[];return Xu(Rt(or)).cells.forEach(function(Or,va){for(var fa=Or.site,Va=Or.edges.sort(al),Xa=-1,_a=Va.length,Ra,Na,Qa=Va[_a-1].edge,Ya=Qa.l===fa?Qa.r:Qa.l;++Xa<_a;)Ra=Qa,Na=Ya,Qa=Va[Xa].edge,Ya=Qa.l===fa?Qa.r:Qa.l,va<Na.i&&va<Ya.i&&Rs(fa,Na,Ya)<0&&Dr.push([or[va],or[Na.i],or[Ya.i]])}),Dr},Jt.x=function(or){return arguments.length?(pt=$r(Re=or),Jt):Re},Jt.y=function(or){return arguments.length?(vt=$r($e=or),Jt):$e},Jt.clipExtent=function(or){return arguments.length?(wt=or??bf,Jt):wt===bf?null:wt},Jt.size=function(or){return arguments.length?Jt.clipExtent(or&&[[0,0],or]):wt===bf?null:wt&&wt[1]},Jt};var bf=[[-1e6,-1e6],[1e6,1e6]];function Rs(de,Re,$e){return(de.x-$e.x)*(Re.y-de.y)-(de.x-Re.x)*($e.y-de.y)}g.geom.delaunay=function(de){return g.geom.voronoi().triangles(de)},g.geom.quadtree=function(de,Re,$e,pt,vt){var wt=Lo,Jt=Xi,Rt;if(Rt=arguments.length)return wt=Yc,Jt=If,Rt===3&&(vt=$e,pt=Re,$e=Re=0),or(de);function or(Dr){var Or,va=$r(wt),fa=$r(Jt),Va,Xa,_a,Ra,Na,Qa,Ya,Da;if(Re!=null)Na=Re,Qa=$e,Ya=pt,Da=vt;else if(Ya=Da=-(Na=Qa=1/0),Va=[],Xa=[],Ra=Dr.length,Rt)for(_a=0;_a<Ra;++_a)Or=Dr[_a],Or.x<Na&&(Na=Or.x),Or.y<Qa&&(Qa=Or.y),Or.x>Ya&&(Ya=Or.x),Or.y>Da&&(Da=Or.y),Va.push(Or.x),Xa.push(Or.y);else for(_a=0;_a<Ra;++_a){var zi=+va(Or=Dr[_a],_a),Ni=+fa(Or,_a);zi<Na&&(Na=zi),Ni<Qa&&(Qa=Ni),zi>Ya&&(Ya=zi),Ni>Da&&(Da=Ni),Va.push(zi),Xa.push(Ni)}var Qi=Ya-Na,hn=Da-Qa;Qi>hn?Da=Qa+Qi:Ya=Na+hn;function Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){if(!(isNaN(Ks)||isNaN(Gs)))if(Gn.leaf){var hs=Gn.x,hl=Gn.y;if(hs!=null)if(l(hs-Ks)+l(hl-Gs)<.01)Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns);else{var Dl=Gn.point;Gn.x=Gn.y=Gn.point=null,Vn(Gn,Dl,hs,hl,sl,Vi,ao,ns),Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}else Gn.x=Ks,Gn.y=Gs,Gn.point=Fo}else Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}function Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){var hs=(sl+ao)*.5,hl=(Vi+ns)*.5,Dl=Ks>=hs,hu=Gs>=hl,Ll=hu<<1|Dl;Gn.leaf=!1,Gn=Gn.nodes[Ll]||(Gn.nodes[Ll]=Zl()),Dl?sl=hs:ao=hs,hu?Vi=hl:ns=hl,Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}var No=Zl();if(No.add=function(Gn){Un(No,Gn,+va(Gn,++_a),+fa(Gn,_a),Na,Qa,Ya,Da)},No.visit=function(Gn){yl(Gn,No,Na,Qa,Ya,Da)},No.find=function(Gn){return oc(No,Gn[0],Gn[1],Na,Qa,Ya,Da)},_a=-1,Re==null){for(;++_a<Ra;)Un(No,Dr[_a],Va[_a],Xa[_a],Na,Qa,Ya,Da);--_a}else Dr.forEach(No.add);return Va=Xa=Dr=Or=null,No}return or.x=function(Dr){return arguments.length?(wt=Dr,or):wt},or.y=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.extent=function(Dr){return arguments.length?(Dr==null?Re=$e=pt=vt=null:(Re=+Dr[0][0],$e=+Dr[0][1],pt=+Dr[1][0],vt=+Dr[1][1]),or):Re==null?null:[[Re,$e],[pt,vt]]},or.size=function(Dr){return arguments.length?(Dr==null?Re=$e=pt=vt=null:(Re=$e=0,pt=+Dr[0],vt=+Dr[1]),or):Re==null?null:[pt-Re,vt-$e]},or};function Yc(de){return de.x}function If(de){return de.y}function Zl(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function yl(de,Re,$e,pt,vt,wt){if(!de(Re,$e,pt,vt,wt)){var Jt=($e+vt)*.5,Rt=(pt+wt)*.5,or=Re.nodes;or[0]&&yl(de,or[0],$e,pt,Jt,Rt),or[1]&&yl(de,or[1],Jt,pt,vt,Rt),or[2]&&yl(de,or[2],$e,Rt,Jt,wt),or[3]&&yl(de,or[3],Jt,Rt,vt,wt)}}function oc(de,Re,$e,pt,vt,wt,Jt){var Rt=1/0,or;return function Dr(Or,va,fa,Va,Xa){if(!(va>wt||fa>Jt||Va<pt||Xa<vt)){if(_a=Or.point){var _a,Ra=Re-Or.x,Na=$e-Or.y,Qa=Ra*Ra+Na*Na;if(Qa<Rt){var Ya=Math.sqrt(Rt=Qa);pt=Re-Ya,vt=$e-Ya,wt=Re+Ya,Jt=$e+Ya,or=_a}}for(var Da=Or.nodes,zi=(va+Va)*.5,Ni=(fa+Xa)*.5,Qi=Re>=zi,hn=$e>=Ni,Un=hn<<1|Qi,Vn=Un+4;Un<Vn;++Un)if(Or=Da[Un&3])switch(Un&3){case 0:Dr(Or,va,fa,zi,Ni);break;case 1:Dr(Or,zi,fa,Va,Ni);break;case 2:Dr(Or,va,Ni,zi,Xa);break;case 3:Dr(Or,zi,Ni,Va,Xa);break}}}(de,pt,vt,wt,Jt),or}g.interpolateRgb=_c;function _c(de,Re){de=g.rgb(de),Re=g.rgb(Re);var $e=de.r,pt=de.g,vt=de.b,wt=Re.r-$e,Jt=Re.g-pt,Rt=Re.b-vt;return function(or){return"#"+Lr(Math.round($e+wt*or))+Lr(Math.round(pt+Jt*or))+Lr(Math.round(vt+Rt*or))}}g.interpolateObject=Zs;function Zs(de,Re){var $e={},pt={},vt;for(vt in de)vt in Re?$e[vt]=zl(de[vt],Re[vt]):pt[vt]=de[vt];for(vt in Re)vt in de||(pt[vt]=Re[vt]);return function(wt){for(vt in $e)pt[vt]=$e[vt](wt);return pt}}g.interpolateNumber=_l;function _l(de,Re){return de=+de,Re=+Re,function($e){return de*(1-$e)+Re*$e}}g.interpolateString=Bs;function Bs(de,Re){var $e=$s.lastIndex=sc.lastIndex=0,pt,vt,wt,Jt=-1,Rt=[],or=[];for(de=de+"",Re=Re+"";(pt=$s.exec(de))&&(vt=sc.exec(Re));)(wt=vt.index)>$e&&(wt=Re.slice($e,wt),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),(pt=pt[0])===(vt=vt[0])?Rt[Jt]?Rt[Jt]+=vt:Rt[++Jt]=vt:(Rt[++Jt]=null,or.push({i:Jt,x:_l(pt,vt)})),$e=sc.lastIndex;return $e<Re.length&&(wt=Re.slice($e),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),Rt.length<2?or[0]?(Re=or[0].x,function(Dr){return Re(Dr)+""}):function(){return Re}:(Re=or.length,function(Dr){for(var Or=0,va;Or<Re;++Or)Rt[(va=or[Or]).i]=va.x(Dr);return Rt.join("")})}var $s=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,sc=new RegExp($s.source,"g");g.interpolate=zl;function zl(de,Re){for(var $e=g.interpolators.length,pt;--$e>=0&&!(pt=g.interpolators[$e](de,Re)););return pt}g.interpolators=[function(de,Re){var $e=typeof Re;return($e==="string"?mr.has(Re.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(Re)?_c:Bs:Re instanceof ni?_c:Array.isArray(Re)?Yu:$e==="object"&&isNaN(Re)?Zs:_l)(de,Re)}],g.interpolateArray=Yu;function Yu(de,Re){var $e=[],pt=[],vt=de.length,wt=Re.length,Jt=Math.min(de.length,Re.length),Rt;for(Rt=0;Rt<Jt;++Rt)$e.push(zl(de[Rt],Re[Rt]));for(;Rt<vt;++Rt)pt[Rt]=de[Rt];for(;Rt<wt;++Rt)pt[Rt]=Re[Rt];return function(or){for(Rt=0;Rt<Jt;++Rt)pt[Rt]=$e[Rt](or);return pt}}var Qs=function(){return F},fp=g.map({linear:Qs,poly:Zf,quad:function(){return hf},cubic:function(){return Ku},sin:function(){return Rc},exp:function(){return pf},circle:function(){return Fl},elastic:lh,back:Xf,bounce:function(){return Rf}}),es=g.map({in:F,out:Ss,"in-out":So,"out-in":function(de){return So(Ss(de))}});g.ease=function(de){var Re=de.indexOf("-"),$e=Re>=0?de.slice(0,Re):de,pt=Re>=0?de.slice(Re+1):"in";return $e=fp.get($e)||Qs,pt=es.get(pt)||F,Wh(pt($e.apply(null,x.call(arguments,1))))};function Wh(de){return function(Re){return Re<=0?0:Re>=1?1:de(Re)}}function Ss(de){return function(Re){return 1-de(1-Re)}}function So(de){return function(Re){return .5*(Re<.5?de(2*Re):2-de(2-2*Re))}}function hf(de){return de*de}function Ku(de){return de*de*de}function cu(de){if(de<=0)return 0;if(de>=1)return 1;var Re=de*de,$e=Re*de;return 4*(de<.5?$e:3*(de-Re)+$e-.75)}function Zf(de){return function(Re){return Math.pow(Re,de)}}function Rc(de){return 1-Math.cos(de*Te)}function pf(de){return Math.pow(2,10*(de-1))}function Fl(de){return 1-Math.sqrt(1-de*de)}function lh(de,Re){var $e;return arguments.length<2&&(Re=.45),arguments.length?$e=Re/Ve*Math.asin(1/de):(de=1,$e=Re/4),function(pt){return 1+de*Math.pow(2,-10*pt)*Math.sin((pt-$e)*Ve/Re)}}function Xf(de){return de||(de=1.70158),function(Re){return Re*Re*((de+1)*Re-de)}}function Rf(de){return de<1/2.75?7.5625*de*de:de<2/2.75?7.5625*(de-=1.5/2.75)*de+.75:de<2.5/2.75?7.5625*(de-=2.25/2.75)*de+.9375:7.5625*(de-=2.625/2.75)*de+.984375}g.interpolateHcl=Kc;function Kc(de,Re){de=g.hcl(de),Re=g.hcl(Re);var $e=de.h,pt=de.c,vt=de.l,wt=Re.h-$e,Jt=Re.c-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.c:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Zr($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateHsl=Yf;function Yf(de,Re){de=g.hsl(de),Re=g.hsl(Re);var $e=de.h,pt=de.s,vt=de.l,wt=Re.h-$e,Jt=Re.s-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.s:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Vt($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateLab=uh;function uh(de,Re){de=g.lab(de),Re=g.lab(Re);var $e=de.l,pt=de.a,vt=de.b,wt=Re.l-$e,Jt=Re.a-pt,Rt=Re.b-vt;return function(or){return $a($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateRound=Ju;function Ju(de,Re){return Re-=de,function($e){return Math.round(de+Re*$e)}}g.transform=function(de){var Re=M.createElementNS(g.ns.prefix.svg,"g");return(g.transform=function($e){if($e!=null){Re.setAttribute("transform",$e);var pt=Re.transform.baseVal.consolidate()}return new Df(pt?pt.matrix:wf)})(de)};function Df(de){var Re=[de.a,de.b],$e=[de.c,de.d],pt=Jc(Re),vt=Dc(Re,$e),wt=Jc(Eu($e,Re,-vt))||0;Re[0]*$e[1]<$e[0]*Re[1]&&(Re[0]*=-1,Re[1]*=-1,pt*=-1,vt*=-1),this.rotate=(pt?Math.atan2(Re[1],Re[0]):Math.atan2(-$e[0],$e[1]))*rt,this.translate=[de.e,de.f],this.scale=[pt,wt],this.skew=wt?Math.atan2(vt,wt)*rt:0}Df.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};function Dc(de,Re){return de[0]*Re[0]+de[1]*Re[1]}function Jc(de){var Re=Math.sqrt(Dc(de,de));return Re&&(de[0]/=Re,de[1]/=Re),Re}function Eu(de,Re,$e){return de[0]+=$e*Re[0],de[1]+=$e*Re[1],de}var wf={a:1,b:0,c:0,d:1,e:0,f:0};g.interpolateTransform=df;function zc(de){return de.length?de.pop()+",":""}function Us(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push("translate(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]||Re[1])&&$e.push("translate("+Re+")")}function Kf(de,Re,$e,pt){de!==Re?(de-Re>180?Re+=360:Re-de>180&&(de+=360),pt.push({i:$e.push(zc($e)+"rotate(",null,")")-2,x:_l(de,Re)})):Re&&$e.push(zc($e)+"rotate("+Re+")")}function Zh(de,Re,$e,pt){de!==Re?pt.push({i:$e.push(zc($e)+"skewX(",null,")")-2,x:_l(de,Re)}):Re&&$e.push(zc($e)+"skewX("+Re+")")}function ch(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push(zc($e)+"scale(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]!==1||Re[1]!==1)&&$e.push(zc($e)+"scale("+Re+")")}function df(de,Re){var $e=[],pt=[];return de=g.transform(de),Re=g.transform(Re),Us(de.translate,Re.translate,$e,pt),Kf(de.rotate,Re.rotate,$e,pt),Zh(de.skew,Re.skew,$e,pt),ch(de.scale,Re.scale,$e,pt),de=Re=null,function(vt){for(var wt=-1,Jt=pt.length,Rt;++wt<Jt;)$e[(Rt=pt[wt]).i]=Rt.x(vt);return $e.join("")}}function Ah(de,Re){return Re=(Re-=de=+de)||1/Re,function($e){return($e-de)/Re}}function ku(de,Re){return Re=(Re-=de=+de)||1/Re,function($e){return Math.max(0,Math.min(1,($e-de)/Re))}}g.layout={},g.layout.bundle=function(){return function(de){for(var Re=[],$e=-1,pt=de.length;++$e<pt;)Re.push(fh(de[$e]));return Re}};function fh(de){for(var Re=de.source,$e=de.target,pt=Cu(Re,$e),vt=[Re];Re!==pt;)Re=Re.parent,vt.push(Re);for(var wt=vt.length;$e!==pt;)vt.splice(wt,0,$e),$e=$e.parent;return vt}function ru(de){for(var Re=[],$e=de.parent;$e!=null;)Re.push(de),de=$e,$e=$e.parent;return Re.push(de),Re}function Cu(de,Re){if(de===Re)return de;for(var $e=ru(de),pt=ru(Re),vt=$e.pop(),wt=pt.pop(),Jt=null;vt===wt;)Jt=vt,vt=$e.pop(),wt=pt.pop();return Jt}g.layout.chord=function(){var de={},Re,$e,pt,vt,wt=0,Jt,Rt,or;function Dr(){var va={},fa=[],Va=g.range(vt),Xa=[],_a,Ra,Na,Qa,Ya;for(Re=[],$e=[],_a=0,Qa=-1;++Qa<vt;){for(Ra=0,Ya=-1;++Ya<vt;)Ra+=pt[Qa][Ya];fa.push(Ra),Xa.push(g.range(vt)),_a+=Ra}for(Jt&&Va.sort(function(No,Gn){return Jt(fa[No],fa[Gn])}),Rt&&Xa.forEach(function(No,Gn){No.sort(function(Fo,Ks){return Rt(pt[Gn][Fo],pt[Gn][Ks])})}),_a=(Ve-wt*vt)/_a,Ra=0,Qa=-1;++Qa<vt;){for(Na=Ra,Ya=-1;++Ya<vt;){var Da=Va[Qa],zi=Xa[Da][Ya],Ni=pt[Da][zi],Qi=Ra,hn=Ra+=Ni*_a;va[Da+"-"+zi]={index:Da,subindex:zi,startAngle:Qi,endAngle:hn,value:Ni}}$e[Da]={index:Da,startAngle:Na,endAngle:Ra,value:fa[Da]},Ra+=wt}for(Qa=-1;++Qa<vt;)for(Ya=Qa-1;++Ya<vt;){var Un=va[Qa+"-"+Ya],Vn=va[Ya+"-"+Qa];(Un.value||Vn.value)&&Re.push(Un.value<Vn.value?{source:Vn,target:Un}:{source:Un,target:Vn})}or&&Or()}function Or(){Re.sort(function(va,fa){return or((va.source.value+va.target.value)/2,(fa.source.value+fa.target.value)/2)})}return de.matrix=function(va){return arguments.length?(vt=(pt=va)&&pt.length,Re=$e=null,de):pt},de.padding=function(va){return arguments.length?(wt=va,Re=$e=null,de):wt},de.sortGroups=function(va){return arguments.length?(Jt=va,Re=$e=null,de):Jt},de.sortSubgroups=function(va){return arguments.length?(Rt=va,Re=null,de):Rt},de.sortChords=function(va){return arguments.length?(or=va,Re&&Or(),de):or},de.chords=function(){return Re||Dr(),Re},de.groups=function(){return $e||Dr(),$e},de},g.layout.force=function(){var de={},Re=g.dispatch("start","tick","end"),$e,pt=[1,1],vt,wt,Jt=.9,Rt=xl,or=hh,Dr=-30,Or=Sh,va=.1,fa=.64,Va=[],Xa=[],_a,Ra,Na;function Qa(Da){return function(zi,Ni,Qi,hn){if(zi.point!==Da){var Un=zi.cx-Da.x,Vn=zi.cy-Da.y,No=hn-Ni,Gn=Un*Un+Vn*Vn;if(No*No/fa<Gn){if(Gn<Or){var Fo=zi.charge/Gn;Da.px-=Un*Fo,Da.py-=Vn*Fo}return!0}if(zi.point&&Gn&&Gn<Or){var Fo=zi.pointCharge/Gn;Da.px-=Un*Fo,Da.py-=Vn*Fo}}return!zi.charge}}de.tick=function(){if((wt*=.99)<.005)return $e=null,Re.end({type:"end",alpha:wt=0}),!0;var Da=Va.length,zi=Xa.length,Ni,Qi,hn,Un,Vn,No,Gn,Fo,Ks;for(Qi=0;Qi<zi;++Qi)hn=Xa[Qi],Un=hn.source,Vn=hn.target,Fo=Vn.x-Un.x,Ks=Vn.y-Un.y,(No=Fo*Fo+Ks*Ks)&&(No=wt*Ra[Qi]*((No=Math.sqrt(No))-_a[Qi])/No,Fo*=No,Ks*=No,Vn.x-=Fo*(Gn=Un.weight+Vn.weight?Un.weight/(Un.weight+Vn.weight):.5),Vn.y-=Ks*Gn,Un.x+=Fo*(Gn=1-Gn),Un.y+=Ks*Gn);if((Gn=wt*va)&&(Fo=pt[0]/2,Ks=pt[1]/2,Qi=-1,Gn))for(;++Qi<Da;)hn=Va[Qi],hn.x+=(Fo-hn.x)*Gn,hn.y+=(Ks-hn.y)*Gn;if(Dr)for(vu(Ni=g.geom.quadtree(Va),wt,Na),Qi=-1;++Qi<Da;)(hn=Va[Qi]).fixed||Ni.visit(Qa(hn));for(Qi=-1;++Qi<Da;)hn=Va[Qi],hn.fixed?(hn.x=hn.px,hn.y=hn.py):(hn.x-=(hn.px-(hn.px=hn.x))*Jt,hn.y-=(hn.py-(hn.py=hn.y))*Jt);Re.tick({type:"tick",alpha:wt})},de.nodes=function(Da){return arguments.length?(Va=Da,de):Va},de.links=function(Da){return arguments.length?(Xa=Da,de):Xa},de.size=function(Da){return arguments.length?(pt=Da,de):pt},de.linkDistance=function(Da){return arguments.length?(Rt=typeof Da=="function"?Da:+Da,de):Rt},de.distance=de.linkDistance,de.linkStrength=function(Da){return arguments.length?(or=typeof Da=="function"?Da:+Da,de):or},de.friction=function(Da){return arguments.length?(Jt=+Da,de):Jt},de.charge=function(Da){return arguments.length?(Dr=typeof Da=="function"?Da:+Da,de):Dr},de.chargeDistance=function(Da){return arguments.length?(Or=Da*Da,de):Math.sqrt(Or)},de.gravity=function(Da){return arguments.length?(va=+Da,de):va},de.theta=function(Da){return arguments.length?(fa=Da*Da,de):Math.sqrt(fa)},de.alpha=function(Da){return arguments.length?(Da=+Da,wt?Da>0?wt=Da:($e.c=null,$e.t=NaN,$e=null,Re.end({type:"end",alpha:wt=0})):Da>0&&(Re.start({type:"start",alpha:wt=Da}),$e=Mn(de.tick)),de):wt},de.start=function(){var Da,zi=Va.length,Ni=Xa.length,Qi=pt[0],hn=pt[1],Un,Vn;for(Da=0;Da<zi;++Da)(Vn=Va[Da]).index=Da,Vn.weight=0;for(Da=0;Da<Ni;++Da)Vn=Xa[Da],typeof Vn.source=="number"&&(Vn.source=Va[Vn.source]),typeof Vn.target=="number"&&(Vn.target=Va[Vn.target]),++Vn.source.weight,++Vn.target.weight;for(Da=0;Da<zi;++Da)Vn=Va[Da],isNaN(Vn.x)&&(Vn.x=No("x",Qi)),isNaN(Vn.y)&&(Vn.y=No("y",hn)),isNaN(Vn.px)&&(Vn.px=Vn.x),isNaN(Vn.py)&&(Vn.py=Vn.y);if(_a=[],typeof Rt=="function")for(Da=0;Da<Ni;++Da)_a[Da]=+Rt.call(this,Xa[Da],Da);else for(Da=0;Da<Ni;++Da)_a[Da]=Rt;if(Ra=[],typeof or=="function")for(Da=0;Da<Ni;++Da)Ra[Da]=+or.call(this,Xa[Da],Da);else for(Da=0;Da<Ni;++Da)Ra[Da]=or;if(Na=[],typeof Dr=="function")for(Da=0;Da<zi;++Da)Na[Da]=+Dr.call(this,Va[Da],Da);else for(Da=0;Da<zi;++Da)Na[Da]=Dr;function No(Gn,Fo){if(!Un){for(Un=new Array(zi),sl=0;sl<zi;++sl)Un[sl]=[];for(sl=0;sl<Ni;++sl){var Ks=Xa[sl];Un[Ks.source.index].push(Ks.target),Un[Ks.target.index].push(Ks.source)}}for(var Gs=Un[Da],sl=-1,Vi=Gs.length,ao;++sl<Vi;)if(!isNaN(ao=Gs[sl][Gn]))return ao;return Math.random()*Fo}return de.resume()},de.resume=function(){return de.alpha(.1)},de.stop=function(){return de.alpha(0)},de.drag=function(){if(vt||(vt=g.behavior.drag().origin(F).on("dragstart.force",xc).on("drag.force",Ya).on("dragend.force",kl)),!arguments.length)return vt;this.on("mouseover.force",Fc).on("mouseout.force",$u).call(vt)};function Ya(Da){Da.px=g.event.x,Da.py=g.event.y,de.resume()}return g.rebind(de,Re,"on")};function xc(de){de.fixed|=2}function kl(de){de.fixed&=-7}function Fc(de){de.fixed|=4,de.px=de.x,de.py=de.y}function $u(de){de.fixed&=-5}function vu(de,Re,$e){var pt=0,vt=0;if(de.charge=0,!de.leaf)for(var wt=de.nodes,Jt=wt.length,Rt=-1,or;++Rt<Jt;)or=wt[Rt],or!=null&&(vu(or,Re,$e),de.charge+=or.charge,pt+=or.charge*or.cx,vt+=or.charge*or.cy);if(de.point){de.leaf||(de.point.x+=Math.random()-.5,de.point.y+=Math.random()-.5);var Dr=Re*$e[de.point.index];de.charge+=de.pointCharge=Dr,pt+=Dr*de.point.x,vt+=Dr*de.point.y}de.cx=pt/de.charge,de.cy=vt/de.charge}var xl=20,hh=1,Sh=1/0;g.layout.hierarchy=function(){var de=Tf,Re=hp,$e=vf;function pt(vt){var wt=[vt],Jt=[],Rt;for(vt.depth=0;(Rt=wt.pop())!=null;)if(Jt.push(Rt),(Dr=Re.call(pt,Rt,Rt.depth))&&(or=Dr.length)){for(var or,Dr,Or;--or>=0;)wt.push(Or=Dr[or]),Or.parent=Rt,Or.depth=Rt.depth+1;$e&&(Rt.value=0),Rt.children=Dr}else $e&&(Rt.value=+$e.call(pt,Rt,Rt.depth)||0),delete Rt.children;return lc(vt,function(va){var fa,Va;de&&(fa=va.children)&&fa.sort(de),$e&&(Va=va.parent)&&(Va.value+=va.value)}),Jt}return pt.sort=function(vt){return arguments.length?(de=vt,pt):de},pt.children=function(vt){return arguments.length?(Re=vt,pt):Re},pt.value=function(vt){return arguments.length?($e=vt,pt):$e},pt.revalue=function(vt){return $e&&(bc(vt,function(wt){wt.children&&(wt.value=0)}),lc(vt,function(wt){var Jt;wt.children||(wt.value=+$e.call(pt,wt,wt.depth)||0),(Jt=wt.parent)&&(Jt.value+=wt.value)})),vt},pt};function Uu(de,Re){return g.rebind(de,Re,"sort","children","value"),de.nodes=de,de.links=Lu,de}function bc(de,Re){for(var $e=[de];(de=$e.pop())!=null;)if(Re(de),(vt=de.children)&&(pt=vt.length))for(var pt,vt;--pt>=0;)$e.push(vt[pt])}function lc(de,Re){for(var $e=[de],pt=[];(de=$e.pop())!=null;)if(pt.push(de),(Jt=de.children)&&(wt=Jt.length))for(var vt=-1,wt,Jt;++vt<wt;)$e.push(Jt[vt]);for(;(de=pt.pop())!=null;)Re(de)}function hp(de){return de.children}function vf(de){return de.value}function Tf(de,Re){return Re.value-de.value}function Lu(de){return g.merge(de.map(function(Re){return(Re.children||[]).map(function($e){return{source:Re,target:$e}})}))}g.layout.partition=function(){var de=g.layout.hierarchy(),Re=[1,1];function $e(wt,Jt,Rt,or){var Dr=wt.children;if(wt.x=Jt,wt.y=wt.depth*or,wt.dx=Rt,wt.dy=or,Dr&&(va=Dr.length)){var Or=-1,va,fa,Va;for(Rt=wt.value?Rt/wt.value:0;++Or<va;)$e(fa=Dr[Or],Jt,Va=fa.value*Rt,or),Jt+=Va}}function pt(wt){var Jt=wt.children,Rt=0;if(Jt&&(Dr=Jt.length))for(var or=-1,Dr;++or<Dr;)Rt=Math.max(Rt,pt(Jt[or]));return 1+Rt}function vt(wt,Jt){var Rt=de.call(this,wt,Jt);return $e(Rt[0],0,Re[0],Re[1]/pt(Rt[0])),Rt}return vt.size=function(wt){return arguments.length?(Re=wt,vt):Re},Uu(vt,de)},g.layout.pie=function(){var de=Number,Re=zf,$e=0,pt=Ve,vt=0;function wt(Jt){var Rt=Jt.length,or=Jt.map(function(Qa,Ya){return+de.call(wt,Qa,Ya)}),Dr=+(typeof $e=="function"?$e.apply(this,arguments):$e),Or=(typeof pt=="function"?pt.apply(this,arguments):pt)-Dr,va=Math.min(Math.abs(Or)/Rt,+(typeof vt=="function"?vt.apply(this,arguments):vt)),fa=va*(Or<0?-1:1),Va=g.sum(or),Xa=Va?(Or-Rt*fa)/Va:0,_a=g.range(Rt),Ra=[],Na;return Re!=null&&_a.sort(Re===zf?function(Qa,Ya){return or[Ya]-or[Qa]}:function(Qa,Ya){return Re(Jt[Qa],Jt[Ya])}),_a.forEach(function(Qa){Ra[Qa]={data:Jt[Qa],value:Na=or[Qa],startAngle:Dr,endAngle:Dr+=Na*Xa+fa,padAngle:va}}),Ra}return wt.value=function(Jt){return arguments.length?(de=Jt,wt):de},wt.sort=function(Jt){return arguments.length?(Re=Jt,wt):Re},wt.startAngle=function(Jt){return arguments.length?($e=Jt,wt):$e},wt.endAngle=function(Jt){return arguments.length?(pt=Jt,wt):pt},wt.padAngle=function(Jt){return arguments.length?(vt=Jt,wt):vt},wt};var zf={};g.layout.stack=function(){var de=F,Re=mu,$e=gu,pt=Mh,vt=au,wt=$c;function Jt(Rt,or){if(!(Xa=Rt.length))return Rt;var Dr=Rt.map(function(Qa,Ya){return de.call(Jt,Qa,Ya)}),Or=Dr.map(function(Qa){return Qa.map(function(Ya,Da){return[vt.call(Jt,Ya,Da),wt.call(Jt,Ya,Da)]})}),va=Re.call(Jt,Or,or);Dr=g.permute(Dr,va),Or=g.permute(Or,va);var fa=$e.call(Jt,Or,or),Va=Dr[0].length,Xa,_a,Ra,Na;for(Ra=0;Ra<Va;++Ra)for(pt.call(Jt,Dr[0][Ra],Na=fa[Ra],Or[0][Ra][1]),_a=1;_a<Xa;++_a)pt.call(Jt,Dr[_a][Ra],Na+=Or[_a-1][Ra][1],Or[_a][Ra][1]);return Rt}return Jt.values=function(Rt){return arguments.length?(de=Rt,Jt):de},Jt.order=function(Rt){return arguments.length?(Re=typeof Rt=="function"?Rt:Ff.get(Rt)||mu,Jt):Re},Jt.offset=function(Rt){return arguments.length?($e=typeof Rt=="function"?Rt:il.get(Rt)||gu,Jt):$e},Jt.x=function(Rt){return arguments.length?(vt=Rt,Jt):vt},Jt.y=function(Rt){return arguments.length?(wt=Rt,Jt):wt},Jt.out=function(Rt){return arguments.length?(pt=Rt,Jt):pt},Jt};function au(de){return de.x}function $c(de){return de.y}function Mh(de,Re,$e){de.y0=Re,de.y=$e}var Ff=g.map({"inside-out":function(de){var Re=de.length,$e,pt,vt=de.map(Jf),wt=de.map(el),Jt=g.range(Re).sort(function(va,fa){return vt[va]-vt[fa]}),Rt=0,or=0,Dr=[],Or=[];for($e=0;$e<Re;++$e)pt=Jt[$e],Rt<or?(Rt+=wt[pt],Dr.push(pt)):(or+=wt[pt],Or.push(pt));return Or.reverse().concat(Dr)},reverse:function(de){return g.range(de.length).reverse()},default:mu}),il=g.map({silhouette:function(de){var Re=de.length,$e=de[0].length,pt=[],vt=0,wt,Jt,Rt,or=[];for(Jt=0;Jt<$e;++Jt){for(wt=0,Rt=0;wt<Re;wt++)Rt+=de[wt][Jt][1];Rt>vt&&(vt=Rt),pt.push(Rt)}for(Jt=0;Jt<$e;++Jt)or[Jt]=(vt-pt[Jt])/2;return or},wiggle:function(de){var Re=de.length,$e=de[0],pt=$e.length,vt,wt,Jt,Rt,or,Dr,Or,va,fa,Va=[];for(Va[0]=va=fa=0,wt=1;wt<pt;++wt){for(vt=0,Rt=0;vt<Re;++vt)Rt+=de[vt][wt][1];for(vt=0,or=0,Or=$e[wt][0]-$e[wt-1][0];vt<Re;++vt){for(Jt=0,Dr=(de[vt][wt][1]-de[vt][wt-1][1])/(2*Or);Jt<vt;++Jt)Dr+=(de[Jt][wt][1]-de[Jt][wt-1][1])/Or;or+=Dr*de[vt][wt][1]}Va[wt]=va-=Rt?or/Rt*Or:0,va<fa&&(fa=va)}for(wt=0;wt<pt;++wt)Va[wt]-=fa;return Va},expand:function(de){var Re=de.length,$e=de[0].length,pt=1/Re,vt,wt,Jt,Rt=[];for(wt=0;wt<$e;++wt){for(vt=0,Jt=0;vt<Re;vt++)Jt+=de[vt][wt][1];if(Jt)for(vt=0;vt<Re;vt++)de[vt][wt][1]/=Jt;else for(vt=0;vt<Re;vt++)de[vt][wt][1]=pt}for(wt=0;wt<$e;++wt)Rt[wt]=0;return Rt},zero:gu});function mu(de){return g.range(de.length)}function gu(de){for(var Re=-1,$e=de[0].length,pt=[];++Re<$e;)pt[Re]=0;return pt}function Jf(de){for(var Re=1,$e=0,pt=de[0][1],vt,wt=de.length;Re<wt;++Re)(vt=de[Re][1])>pt&&($e=Re,pt=vt);return $e}function el(de){return de.reduce(mf,0)}function mf(de,Re){return de+Re[1]}g.layout.histogram=function(){var de=!0,Re=Number,$e=Af,pt=wc;function vt(wt,fa){for(var Rt=[],or=wt.map(Re,this),Dr=$e.call(this,or,fa),Or=pt.call(this,Dr,or,fa),va,fa=-1,Va=or.length,Xa=Or.length-1,_a=de?1:1/Va,Ra;++fa<Xa;)va=Rt[fa]=[],va.dx=Or[fa+1]-(va.x=Or[fa]),va.y=0;if(Xa>0)for(fa=-1;++fa<Va;)Ra=or[fa],Ra>=Dr[0]&&Ra<=Dr[1]&&(va=Rt[g.bisect(Or,Ra,1,Xa)-1],va.y+=_a,va.push(wt[fa]));return Rt}return vt.value=function(wt){return arguments.length?(Re=wt,vt):Re},vt.range=function(wt){return arguments.length?($e=$r(wt),vt):$e},vt.bins=function(wt){return arguments.length?(pt=typeof wt=="number"?function(Jt){return ju(Jt,wt)}:$r(wt),vt):pt},vt.frequency=function(wt){return arguments.length?(de=!!wt,vt):de},vt};function wc(de,Re){return ju(de,Math.ceil(Math.log(Re.length)/Math.LN2+1))}function ju(de,Re){for(var $e=-1,pt=+de[0],vt=(de[1]-pt)/Re,wt=[];++$e<=Re;)wt[$e]=vt*$e+pt;return wt}function Af(de){return[g.min(de),g.max(de)]}g.layout.pack=function(){var de=g.layout.hierarchy().sort(uc),Re=0,$e=[1,1],pt;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr=$e[0],Or=$e[1],va=pt==null?Math.sqrt:typeof pt=="function"?pt:function(){return pt};if(or.x=or.y=0,lc(or,function(Va){Va.r=+va(Va.value)}),lc(or,Qf),Re){var fa=Re*(pt?1:Math.max(2*or.r/Dr,2*or.r/Or))/2;lc(or,function(Va){Va.r+=fa}),lc(or,Qf),lc(or,function(Va){Va.r-=fa})}return cc(or,Dr/2,Or/2,pt?1:1/Math.max(2*or.r/Dr,2*or.r/Or)),Rt}return vt.size=function(wt){return arguments.length?($e=wt,vt):$e},vt.radius=function(wt){return arguments.length?(pt=wt==null||typeof wt=="function"?wt:+wt,vt):pt},vt.padding=function(wt){return arguments.length?(Re=+wt,vt):Re},Uu(vt,de)};function uc(de,Re){return de.value-Re.value}function Qc(de,Re){var $e=de._pack_next;de._pack_next=Re,Re._pack_prev=de,Re._pack_next=$e,$e._pack_prev=Re}function $f(de,Re){de._pack_next=Re,Re._pack_prev=de}function Vl(de,Re){var $e=Re.x-de.x,pt=Re.y-de.y,vt=de.r+Re.r;return .999*vt*vt>$e*$e+pt*pt}function Qf(de){if(!(Re=de.children)||!(fa=Re.length))return;var Re,$e=1/0,pt=-1/0,vt=1/0,wt=-1/0,Jt,Rt,or,Dr,Or,va,fa;function Va(Da){$e=Math.min(Da.x-Da.r,$e),pt=Math.max(Da.x+Da.r,pt),vt=Math.min(Da.y-Da.r,vt),wt=Math.max(Da.y+Da.r,wt)}if(Re.forEach(Vu),Jt=Re[0],Jt.x=-Jt.r,Jt.y=0,Va(Jt),fa>1&&(Rt=Re[1],Rt.x=Rt.r,Rt.y=0,Va(Rt),fa>2))for(or=Re[2],Cl(Jt,Rt,or),Va(or),Qc(Jt,or),Jt._pack_prev=or,Qc(or,Rt),Rt=Jt._pack_next,Dr=3;Dr<fa;Dr++){Cl(Jt,Rt,or=Re[Dr]);var Xa=0,_a=1,Ra=1;for(Or=Rt._pack_next;Or!==Rt;Or=Or._pack_next,_a++)if(Vl(Or,or)){Xa=1;break}if(Xa==1)for(va=Jt._pack_prev;va!==Or._pack_prev&&!Vl(va,or);va=va._pack_prev,Ra++);Xa?(_a<Ra||_a==Ra&&Rt.r<Jt.r?$f(Jt,Rt=Or):$f(Jt=va,Rt),Dr--):(Qc(Jt,or),Rt=or,Va(or))}var Na=($e+pt)/2,Qa=(vt+wt)/2,Ya=0;for(Dr=0;Dr<fa;Dr++)or=Re[Dr],or.x-=Na,or.y-=Qa,Ya=Math.max(Ya,or.r+Math.sqrt(or.x*or.x+or.y*or.y));de.r=Ya,Re.forEach(Tc)}function Vu(de){de._pack_next=de._pack_prev=de}function Tc(de){delete de._pack_next,delete de._pack_prev}function cc(de,Re,$e,pt){var vt=de.children;if(de.x=Re+=pt*de.x,de.y=$e+=pt*de.y,de.r*=pt,vt)for(var wt=-1,Jt=vt.length;++wt<Jt;)cc(vt[wt],Re,$e,pt)}function Cl(de,Re,$e){var pt=de.r+$e.r,vt=Re.x-de.x,wt=Re.y-de.y;if(pt&&(vt||wt)){var Jt=Re.r+$e.r,Rt=vt*vt+wt*wt;Jt*=Jt,pt*=pt;var or=.5+(pt-Jt)/(2*Rt),Dr=Math.sqrt(Math.max(0,2*Jt*(pt+Rt)-(pt-=Rt)*pt-Jt*Jt))/(2*Rt);$e.x=de.x+or*vt+Dr*wt,$e.y=de.y+or*wt-Dr*vt}else $e.x=de.x+pt,$e.y=de.y}g.layout.tree=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=null;function vt(Or,va){var fa=de.call(this,Or,va),Va=fa[0],Xa=wt(Va);if(lc(Xa,Jt),Xa.parent.m=-Xa.z,bc(Xa,Rt),pt)bc(Va,Dr);else{var _a=Va,Ra=Va,Na=Va;bc(Va,function(zi){zi.x<_a.x&&(_a=zi),zi.x>Ra.x&&(Ra=zi),zi.depth>Na.depth&&(Na=zi)});var Qa=Re(_a,Ra)/2-_a.x,Ya=$e[0]/(Ra.x+Re(Ra,_a)/2+Qa),Da=$e[1]/(Na.depth||1);bc(Va,function(zi){zi.x=(zi.x+Qa)*Ya,zi.y=zi.depth*Da})}return fa}function wt(Or){for(var va={A:null,children:[Or]},fa=[va],Va;(Va=fa.pop())!=null;)for(var Xa=Va.children,_a,Ra=0,Na=Xa.length;Ra<Na;++Ra)fa.push((Xa[Ra]=_a={_:Xa[Ra],parent:Va,children:(_a=Xa[Ra].children)&&_a.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:Ra}).a=_a);return va.children[0]}function Jt(Or){var va=Or.children,fa=Or.parent.children,Va=Or.i?fa[Or.i-1]:null;if(va.length){ef(Or);var Xa=(va[0].z+va[va.length-1].z)/2;Va?(Or.z=Va.z+Re(Or._,Va._),Or.m=Or.z-Xa):Or.z=Xa}else Va&&(Or.z=Va.z+Re(Or._,Va._));Or.parent.A=or(Or,Va,Or.parent.A||fa[0])}function Rt(Or){Or._.x=Or.z+Or.parent.m,Or.m+=Or.parent.m}function or(Or,va,fa){if(va){for(var Va=Or,Xa=Or,_a=va,Ra=Va.parent.children[0],Na=Va.m,Qa=Xa.m,Ya=_a.m,Da=Ra.m,zi;_a=Oc(_a),Va=fc(Va),_a&&Va;)Ra=fc(Ra),Xa=Oc(Xa),Xa.a=Or,zi=_a.z+Ya-Va.z-Na+Re(_a._,Va._),zi>0&&(Qu(Zt(_a,Or,fa),Or,zi),Na+=zi,Qa+=zi),Ya+=_a.m,Na+=Va.m,Da+=Ra.m,Qa+=Xa.m;_a&&!Oc(Xa)&&(Xa.t=_a,Xa.m+=Ya-Qa),Va&&!fc(Ra)&&(Ra.t=Va,Ra.m+=Na-Da,fa=Or)}return fa}function Dr(Or){Or.x*=$e[0],Or.y=Or.depth*$e[1]}return vt.separation=function(Or){return arguments.length?(Re=Or,vt):Re},vt.size=function(Or){return arguments.length?(pt=($e=Or)==null?Dr:null,vt):pt?null:$e},vt.nodeSize=function(Or){return arguments.length?(pt=($e=Or)==null?null:Dr,vt):pt?$e:null},Uu(vt,de)};function iu(de,Re){return de.parent==Re.parent?1:2}function fc(de){var Re=de.children;return Re.length?Re[0]:de.t}function Oc(de){var Re=de.children,$e;return($e=Re.length)?Re[$e-1]:de.t}function Qu(de,Re,$e){var pt=$e/(Re.i-de.i);Re.c-=pt,Re.s+=$e,de.c+=pt,Re.z+=$e,Re.m+=$e}function ef(de){for(var Re=0,$e=0,pt=de.children,vt=pt.length,wt;--vt>=0;)wt=pt[vt],wt.z+=Re,wt.m+=Re,Re+=wt.s+($e+=wt.c)}function Zt(de,Re,$e){return de.a.parent===Re.parent?de.a:$e}g.layout.cluster=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=!1;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr,Or=0;lc(or,function(_a){var Ra=_a.children;Ra&&Ra.length?(_a.x=Yr(Ra),_a.y=fr(Ra)):(_a.x=Dr?Or+=Re(_a,Dr):0,_a.y=0,Dr=_a)});var va=qr(or),fa=ba(or),Va=va.x-Re(va,fa)/2,Xa=fa.x+Re(fa,va)/2;return lc(or,pt?function(_a){_a.x=(_a.x-or.x)*$e[0],_a.y=(or.y-_a.y)*$e[1]}:function(_a){_a.x=(_a.x-Va)/(Xa-Va)*$e[0],_a.y=(1-(or.y?_a.y/or.y:1))*$e[1]}),Rt}return vt.separation=function(wt){return arguments.length?(Re=wt,vt):Re},vt.size=function(wt){return arguments.length?(pt=($e=wt)==null,vt):pt?null:$e},vt.nodeSize=function(wt){return arguments.length?(pt=($e=wt)!=null,vt):pt?$e:null},Uu(vt,de)};function fr(de){return 1+g.max(de,function(Re){return Re.y})}function Yr(de){return de.reduce(function(Re,$e){return Re+$e.x},0)/de.length}function qr(de){var Re=de.children;return Re&&Re.length?qr(Re[0]):de}function ba(de){var Re=de.children,$e;return Re&&($e=Re.length)?ba(Re[$e-1]):de}g.layout.treemap=function(){var de=g.layout.hierarchy(),Re=Math.round,$e=[1,1],pt=null,vt=Ka,wt=!1,Jt,Rt="squarify",or=.5*(1+Math.sqrt(5));function Dr(_a,Ra){for(var Na=-1,Qa=_a.length,Ya,Da;++Na<Qa;)Da=(Ya=_a[Na]).value*(Ra<0?0:Ra),Ya.area=isNaN(Da)||Da<=0?0:Da}function Or(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=[],Ya=Ra.slice(),Da,zi=1/0,Ni,Qi=Rt==="slice"?Na.dx:Rt==="dice"?Na.dy:Rt==="slice-dice"?_a.depth&1?Na.dy:Na.dx:Math.min(Na.dx,Na.dy),hn;for(Dr(Ya,Na.dx*Na.dy/_a.value),Qa.area=0;(hn=Ya.length)>0;)Qa.push(Da=Ya[hn-1]),Qa.area+=Da.area,Rt!=="squarify"||(Ni=fa(Qa,Qi))<=zi?(Ya.pop(),zi=Ni):(Qa.area-=Qa.pop().area,Va(Qa,Qi,Na,!1),Qi=Math.min(Na.dx,Na.dy),Qa.length=Qa.area=0,zi=1/0);Qa.length&&(Va(Qa,Qi,Na,!0),Qa.length=Qa.area=0),Ra.forEach(Or)}}function va(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=Ra.slice(),Ya,Da=[];for(Dr(Qa,Na.dx*Na.dy/_a.value),Da.area=0;Ya=Qa.pop();)Da.push(Ya),Da.area+=Ya.area,Ya.z!=null&&(Va(Da,Ya.z?Na.dx:Na.dy,Na,!Qa.length),Da.length=Da.area=0);Ra.forEach(va)}}function fa(_a,Ra){for(var Na=_a.area,Qa,Ya=0,Da=1/0,zi=-1,Ni=_a.length;++zi<Ni;)(Qa=_a[zi].area)&&(Qa<Da&&(Da=Qa),Qa>Ya&&(Ya=Qa));return Na*=Na,Ra*=Ra,Na?Math.max(Ra*Ya*or/Na,Na/(Ra*Da*or)):1/0}function Va(_a,Ra,Na,Qa){var Ya=-1,Da=_a.length,zi=Na.x,Ni=Na.y,Qi=Ra?Re(_a.area/Ra):0,hn;if(Ra==Na.dx){for((Qa||Qi>Na.dy)&&(Qi=Na.dy);++Ya<Da;)hn=_a[Ya],hn.x=zi,hn.y=Ni,hn.dy=Qi,zi+=hn.dx=Math.min(Na.x+Na.dx-zi,Qi?Re(hn.area/Qi):0);hn.z=!0,hn.dx+=Na.x+Na.dx-zi,Na.y+=Qi,Na.dy-=Qi}else{for((Qa||Qi>Na.dx)&&(Qi=Na.dx);++Ya<Da;)hn=_a[Ya],hn.x=zi,hn.y=Ni,hn.dx=Qi,Ni+=hn.dy=Math.min(Na.y+Na.dy-Ni,Qi?Re(hn.area/Qi):0);hn.z=!1,hn.dy+=Na.y+Na.dy-Ni,Na.x+=Qi,Na.dx-=Qi}}function Xa(_a){var Ra=Jt||de(_a),Na=Ra[0];return Na.x=Na.y=0,Na.value?(Na.dx=$e[0],Na.dy=$e[1]):Na.dx=Na.dy=0,Jt&&de.revalue(Na),Dr([Na],Na.dx*Na.dy/Na.value),(Jt?va:Or)(Na),wt&&(Jt=Ra),Ra}return Xa.size=function(_a){return arguments.length?($e=_a,Xa):$e},Xa.padding=function(_a){if(!arguments.length)return pt;function Ra(Ya){var Da=_a.call(Xa,Ya,Ya.depth);return Da==null?Ka(Ya):oi(Ya,typeof Da=="number"?[Da,Da,Da,Da]:Da)}function Na(Ya){return oi(Ya,_a)}var Qa;return vt=(pt=_a)==null?Ka:(Qa=typeof _a)=="function"?Ra:(Qa==="number"&&(_a=[_a,_a,_a,_a]),Na),Xa},Xa.round=function(_a){return arguments.length?(Re=_a?Math.round:Number,Xa):Re!=Number},Xa.sticky=function(_a){return arguments.length?(wt=_a,Jt=null,Xa):wt},Xa.ratio=function(_a){return arguments.length?(or=_a,Xa):or},Xa.mode=function(_a){return arguments.length?(Rt=_a+"",Xa):Rt},Uu(Xa,de)};function Ka(de){return{x:de.x,y:de.y,dx:de.dx,dy:de.dy}}function oi(de,Re){var $e=de.x+Re[3],pt=de.y+Re[0],vt=de.dx-Re[1]-Re[3],wt=de.dy-Re[0]-Re[2];return vt<0&&($e+=vt/2,vt=0),wt<0&&(pt+=wt/2,wt=0),{x:$e,y:pt,dx:vt,dy:wt}}g.random={normal:function(de,Re){var $e=arguments.length;return $e<2&&(Re=1),$e<1&&(de=0),function(){var pt,vt,wt;do pt=Math.random()*2-1,vt=Math.random()*2-1,wt=pt*pt+vt*vt;while(!wt||wt>1);return de+Re*pt*Math.sqrt(-2*Math.log(wt)/wt)}},logNormal:function(){var de=g.random.normal.apply(g,arguments);return function(){return Math.exp(de())}},bates:function(de){var Re=g.random.irwinHall(de);return function(){return Re()/de}},irwinHall:function(de){return function(){for(var Re=0,$e=0;$e<de;$e++)Re+=Math.random();return Re}}},g.scale={};function yi(de){var Re=de[0],$e=de[de.length-1];return Re<$e?[Re,$e]:[$e,Re]}function ki(de){return de.rangeExtent?de.rangeExtent():yi(de.range())}function Bi(de,Re,$e,pt){var vt=$e(de[0],de[1]),wt=pt(Re[0],Re[1]);return function(Jt){return wt(vt(Jt))}}function li(de,Re){var $e=0,pt=de.length-1,vt=de[$e],wt=de[pt],Jt;return wt<vt&&(Jt=$e,$e=pt,pt=Jt,Jt=vt,vt=wt,wt=Jt),de[$e]=Re.floor(vt),de[pt]=Re.ceil(wt),de}function _i(de){return de?{floor:function(Re){return Math.floor(Re/de)*de},ceil:function(Re){return Math.ceil(Re/de)*de}}:vi}var vi={floor:F,ceil:F};function ti(de,Re,$e,pt){var vt=[],wt=[],Jt=0,Rt=Math.min(de.length,Re.length)-1;for(de[Rt]<de[0]&&(de=de.slice().reverse(),Re=Re.slice().reverse());++Jt<=Rt;)vt.push($e(de[Jt-1],de[Jt])),wt.push(pt(Re[Jt-1],Re[Jt]));return function(or){var Dr=g.bisect(de,or,1,Rt)-1;return wt[Dr](vt[Dr](or))}}g.scale.linear=function(){return rn([0,1],[0,1],zl,!1)};function rn(de,Re,$e,pt){var vt,wt;function Jt(){var or=Math.min(de.length,Re.length)>2?ti:Bi,Dr=pt?ku:Ah;return vt=or(de,Re,Dr,$e),wt=or(Re,de,Dr,zl),Rt}function Rt(or){return vt(or)}return Rt.invert=function(or){return wt(or)},Rt.domain=function(or){return arguments.length?(de=or.map(Number),Jt()):de},Rt.range=function(or){return arguments.length?(Re=or,Jt()):Re},Rt.rangeRound=function(or){return Rt.range(or).interpolate(Ju)},Rt.clamp=function(or){return arguments.length?(pt=or,Jt()):pt},Rt.interpolate=function(or){return arguments.length?($e=or,Jt()):$e},Rt.ticks=function(or){return no(de,or)},Rt.tickFormat=function(or,Dr){return d3_scale_linearTickFormat(de,or,Dr)},Rt.nice=function(or){return Wn(de,or),Jt()},Rt.copy=function(){return rn(de,Re,$e,pt)},Jt()}function Kn(de,Re){return g.rebind(de,Re,"range","rangeRound","interpolate","clamp")}function Wn(de,Re){return li(de,_i(Jn(de,Re)[2])),li(de,_i(Jn(de,Re)[2])),de}function Jn(de,Re){Re==null&&(Re=10);var $e=yi(de),pt=$e[1]-$e[0],vt=Math.pow(10,Math.floor(Math.log(pt/Re)/Math.LN10)),wt=Re/pt*vt;return wt<=.15?vt*=10:wt<=.35?vt*=5:wt<=.75&&(vt*=2),$e[0]=Math.ceil($e[0]/vt)*vt,$e[1]=Math.floor($e[1]/vt)*vt+vt*.5,$e[2]=vt,$e}function no(de,Re){return g.range.apply(g,Jn(de,Re))}var en={s:1,g:1,p:1,r:1,e:1};function Ri(de){return-Math.floor(Math.log(de)/Math.LN10+.01)}function co(de,Re){var $e=Ri(Re[2]);return de in en?Math.abs($e-Ri(Math.max(l(Re[0]),l(Re[1]))))+ +(de!=="e"):$e-(de==="%")*2}g.scale.log=function(){return Wo(g.scale.linear().domain([0,1]),10,!0,[1,10])};function Wo(de,Re,$e,pt){function vt(Rt){return($e?Math.log(Rt<0?0:Rt):-Math.log(Rt>0?0:-Rt))/Math.log(Re)}function wt(Rt){return $e?Math.pow(Re,Rt):-Math.pow(Re,-Rt)}function Jt(Rt){return de(vt(Rt))}return Jt.invert=function(Rt){return wt(de.invert(Rt))},Jt.domain=function(Rt){return arguments.length?($e=Rt[0]>=0,de.domain((pt=Rt.map(Number)).map(vt)),Jt):pt},Jt.base=function(Rt){return arguments.length?(Re=+Rt,de.domain(pt.map(vt)),Jt):Re},Jt.nice=function(){var Rt=li(pt.map(vt),$e?Math:bs);return de.domain(Rt),pt=Rt.map(wt),Jt},Jt.ticks=function(){var Rt=yi(pt),or=[],Dr=Rt[0],Or=Rt[1],va=Math.floor(vt(Dr)),fa=Math.ceil(vt(Or)),Va=Re%1?2:Re;if(isFinite(fa-va)){if($e){for(;va<fa;va++)for(var Xa=1;Xa<Va;Xa++)or.push(wt(va)*Xa);or.push(wt(va))}else for(or.push(wt(va));va++<fa;)for(var Xa=Va-1;Xa>0;Xa--)or.push(wt(va)*Xa);for(va=0;or[va]<Dr;va++);for(fa=or.length;or[fa-1]>Or;fa--);or=or.slice(va,fa)}return or},Jt.copy=function(){return Wo(de.copy(),Re,$e,pt)},Kn(Jt,de)}var bs={floor:function(de){return-Math.ceil(-de)},ceil:function(de){return-Math.floor(-de)}};g.scale.pow=function(){return Xs(g.scale.linear(),1,[0,1])};function Xs(de,Re,$e){var pt=Ms(Re),vt=Ms(1/Re);function wt(Jt){return de(pt(Jt))}return wt.invert=function(Jt){return vt(de.invert(Jt))},wt.domain=function(Jt){return arguments.length?(de.domain(($e=Jt.map(Number)).map(pt)),wt):$e},wt.ticks=function(Jt){return no($e,Jt)},wt.tickFormat=function(Jt,Rt){return d3_scale_linearTickFormat($e,Jt,Rt)},wt.nice=function(Jt){return wt.domain(Wn($e,Jt))},wt.exponent=function(Jt){return arguments.length?(pt=Ms(Re=Jt),vt=Ms(1/Re),de.domain($e.map(pt)),wt):Re},wt.copy=function(){return Xs(de.copy(),Re,$e)},Kn(wt,de)}function Ms(de){return function(Re){return Re<0?-Math.pow(-Re,de):Math.pow(Re,de)}}g.scale.sqrt=function(){return g.scale.pow().exponent(.5)},g.scale.ordinal=function(){return Hs([],{t:"range",a:[[]]})};function Hs(de,Re){var $e,pt,vt;function wt(Rt){return pt[(($e.get(Rt)||(Re.t==="range"?$e.set(Rt,de.push(Rt)):NaN))-1)%pt.length]}function Jt(Rt,or){return g.range(de.length).map(function(Dr){return Rt+or*Dr})}return wt.domain=function(Rt){if(!arguments.length)return de;de=[],$e=new S;for(var or=-1,Dr=Rt.length,Or;++or<Dr;)$e.has(Or=Rt[or])||$e.set(Or,de.push(Or));return wt[Re.t].apply(wt,Re.a)},wt.range=function(Rt){return arguments.length?(pt=Rt,vt=0,Re={t:"range",a:arguments},wt):pt},wt.rangePoints=function(Rt,or){arguments.length<2&&(or=0);var Dr=Rt[0],Or=Rt[1],va=de.length<2?(Dr=(Dr+Or)/2,0):(Or-Dr)/(de.length-1+or);return pt=Jt(Dr+va*or/2,va),vt=0,Re={t:"rangePoints",a:arguments},wt},wt.rangeRoundPoints=function(Rt,or){arguments.length<2&&(or=0);var Dr=Rt[0],Or=Rt[1],va=de.length<2?(Dr=Or=Math.round((Dr+Or)/2),0):(Or-Dr)/(de.length-1+or)|0;return pt=Jt(Dr+Math.round(va*or/2+(Or-Dr-(de.length-1+or)*va)/2),va),vt=0,Re={t:"rangeRoundPoints",a:arguments},wt},wt.rangeBands=function(Rt,or,Dr){arguments.length<2&&(or=0),arguments.length<3&&(Dr=or);var Or=Rt[1]<Rt[0],va=Rt[Or-0],fa=Rt[1-Or],Va=(fa-va)/(de.length-or+2*Dr);return pt=Jt(va+Va*Dr,Va),Or&&pt.reverse(),vt=Va*(1-or),Re={t:"rangeBands",a:arguments},wt},wt.rangeRoundBands=function(Rt,or,Dr){arguments.length<2&&(or=0),arguments.length<3&&(Dr=or);var Or=Rt[1]<Rt[0],va=Rt[Or-0],fa=Rt[1-Or],Va=Math.floor((fa-va)/(de.length-or+2*Dr));return pt=Jt(va+Math.round((fa-va-(de.length-or)*Va)/2),Va),Or&&pt.reverse(),vt=Math.round(Va*(1-or)),Re={t:"rangeRoundBands",a:arguments},wt},wt.rangeBand=function(){return vt},wt.rangeExtent=function(){return yi(Re.a[0])},wt.copy=function(){return Hs(de,Re)},wt.domain(de)}g.scale.category10=function(){return g.scale.ordinal().range(vs)},g.scale.category20=function(){return g.scale.ordinal().range(Il)},g.scale.category20b=function(){return g.scale.ordinal().range(fl)},g.scale.category20c=function(){return g.scale.ordinal().range(tl)};var vs=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Mr),Il=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Mr),fl=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Mr),tl=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(Mr);g.scale.quantile=function(){return Ln([],[])};function Ln(de,Re){var $e;function pt(){var wt=0,Jt=Re.length;for($e=[];++wt<Jt;)$e[wt-1]=g.quantile(de,wt/Jt);return vt}function vt(wt){if(!isNaN(wt=+wt))return Re[g.bisect($e,wt)]}return vt.domain=function(wt){return arguments.length?(de=wt.map(c).filter(h).sort(s),pt()):de},vt.range=function(wt){return arguments.length?(Re=wt,pt()):Re},vt.quantiles=function(){return $e},vt.invertExtent=function(wt){return wt=Re.indexOf(wt),wt<0?[NaN,NaN]:[wt>0?$e[wt-1]:de[0],wt<$e.length?$e[wt]:de[de.length-1]]},vt.copy=function(){return Ln(de,Re)},pt()}g.scale.quantize=function(){return Ao(0,1,[0,1])};function Ao(de,Re,$e){var pt,vt;function wt(Rt){return $e[Math.max(0,Math.min(vt,Math.floor(pt*(Rt-de))))]}function Jt(){return pt=$e.length/(Re-de),vt=$e.length-1,wt}return wt.domain=function(Rt){return arguments.length?(de=+Rt[0],Re=+Rt[Rt.length-1],Jt()):[de,Re]},wt.range=function(Rt){return arguments.length?($e=Rt,Jt()):$e},wt.invertExtent=function(Rt){return Rt=$e.indexOf(Rt),Rt=Rt<0?NaN:Rt/pt+de,[Rt,Rt+1/pt]},wt.copy=function(){return Ao(de,Re,$e)},Jt()}g.scale.threshold=function(){return js([.5],[0,1])};function js(de,Re){function $e(pt){if(pt<=pt)return Re[g.bisect(de,pt)]}return $e.domain=function(pt){return arguments.length?(de=pt,$e):de},$e.range=function(pt){return arguments.length?(Re=pt,$e):Re},$e.invertExtent=function(pt){return pt=Re.indexOf(pt),[de[pt-1],de[pt]]},$e.copy=function(){return js(de,Re)},$e}g.scale.identity=function(){return Ts([0,1])};function Ts(de){function Re($e){return+$e}return Re.invert=Re,Re.domain=Re.range=function($e){return arguments.length?(de=$e.map(Re),Re):de},Re.ticks=function($e){return no(de,$e)},Re.tickFormat=function($e,pt){return d3_scale_linearTickFormat(de,$e,pt)},Re.copy=function(){return Ts(de)},Re}g.svg={};function nu(){return 0}g.svg.arc=function(){var de=ec,Re=tf,$e=nu,pt=Pu,vt=yu,wt=Bc,Jt=Iu;function Rt(){var Dr=Math.max(0,+de.apply(this,arguments)),Or=Math.max(0,+Re.apply(this,arguments)),va=vt.apply(this,arguments)-Te,fa=wt.apply(this,arguments)-Te,Va=Math.abs(fa-va),Xa=va>fa?0:1;if(Or<Dr&&(_a=Or,Or=Dr,Dr=_a),Va>=ke)return or(Or,Xa)+(Dr?or(Dr,1-Xa):"")+"Z";var _a,Ra,Na,Qa,Ya=0,Da=0,zi,Ni,Qi,hn,Un,Vn,No,Gn,Fo=[];if((Qa=(+Jt.apply(this,arguments)||0)/2)&&(Na=pt===Pu?Math.sqrt(Dr*Dr+Or*Or):+pt.apply(this,arguments),Xa||(Da*=-1),Or&&(Da=Bt(Na/Or*Math.sin(Qa))),Dr&&(Ya=Bt(Na/Dr*Math.sin(Qa)))),Or){zi=Or*Math.cos(va+Da),Ni=Or*Math.sin(va+Da),Qi=Or*Math.cos(fa-Da),hn=Or*Math.sin(fa-Da);var Ks=Math.abs(fa-va-2*Da)<=Ee?0:1;if(Da&&Ac(zi,Ni,Qi,hn)===Xa^Ks){var Gs=(va+fa)/2;zi=Or*Math.cos(Gs),Ni=Or*Math.sin(Gs),Qi=hn=null}}else zi=Ni=0;if(Dr){Un=Dr*Math.cos(fa-Ya),Vn=Dr*Math.sin(fa-Ya),No=Dr*Math.cos(va+Ya),Gn=Dr*Math.sin(va+Ya);var sl=Math.abs(va-fa+2*Ya)<=Ee?0:1;if(Ya&&Ac(Un,Vn,No,Gn)===1-Xa^sl){var Vi=(va+fa)/2;Un=Dr*Math.cos(Vi),Vn=Dr*Math.sin(Vi),No=Gn=null}}else Un=Vn=0;if(Va>Ke&&(_a=Math.min(Math.abs(Or-Dr)/2,+$e.apply(this,arguments)))>.001){Ra=Dr<Or^Xa?0:1;var ao=_a,ns=_a;if(Va<Ee){var hs=No==null?[Un,Vn]:Qi==null?[zi,Ni]:go([zi,Ni],[No,Gn],[Qi,hn],[Un,Vn]),hl=zi-hs[0],Dl=Ni-hs[1],hu=Qi-hs[0],Ll=hn-hs[1],dc=1/Math.sin(Math.acos((hl*hu+Dl*Ll)/(Math.sqrt(hl*hl+Dl*Dl)*Math.sqrt(hu*hu+Ll*Ll)))/2),Qt=Math.sqrt(hs[0]*hs[0]+hs[1]*hs[1]);ns=Math.min(_a,(Dr-Qt)/(dc-1)),ao=Math.min(_a,(Or-Qt)/(dc+1))}if(Qi!=null){var ra=ro(No==null?[Un,Vn]:[No,Gn],[zi,Ni],Or,ao,Xa),Ta=ro([Qi,hn],[Un,Vn],Or,ao,Xa);_a===ao?Fo.push("M",ra[0],"A",ao,",",ao," 0 0,",Ra," ",ra[1],"A",Or,",",Or," 0 ",1-Xa^Ac(ra[1][0],ra[1][1],Ta[1][0],Ta[1][1]),",",Xa," ",Ta[1],"A",ao,",",ao," 0 0,",Ra," ",Ta[0]):Fo.push("M",ra[0],"A",ao,",",ao," 0 1,",Ra," ",Ta[0])}else Fo.push("M",zi,",",Ni);if(No!=null){var si=ro([zi,Ni],[No,Gn],Dr,-ns,Xa),wi=ro([Un,Vn],Qi==null?[zi,Ni]:[Qi,hn],Dr,-ns,Xa);_a===ns?Fo.push("L",wi[0],"A",ns,",",ns," 0 0,",Ra," ",wi[1],"A",Dr,",",Dr," 0 ",Xa^Ac(wi[1][0],wi[1][1],si[1][0],si[1][1]),",",1-Xa," ",si[1],"A",ns,",",ns," 0 0,",Ra," ",si[0]):Fo.push("L",wi[0],"A",ns,",",ns," 0 0,",Ra," ",si[0])}else Fo.push("L",Un,",",Vn)}else Fo.push("M",zi,",",Ni),Qi!=null&&Fo.push("A",Or,",",Or," 0 ",Ks,",",Xa," ",Qi,",",hn),Fo.push("L",Un,",",Vn),No!=null&&Fo.push("A",Dr,",",Dr," 0 ",sl,",",1-Xa," ",No,",",Gn);return Fo.push("Z"),Fo.join("")}function or(Dr,Or){return"M0,"+Dr+"A"+Dr+","+Dr+" 0 1,"+Or+" 0,"+-Dr+"A"+Dr+","+Dr+" 0 1,"+Or+" 0,"+Dr}return Rt.innerRadius=function(Dr){return arguments.length?(de=$r(Dr),Rt):de},Rt.outerRadius=function(Dr){return arguments.length?(Re=$r(Dr),Rt):Re},Rt.cornerRadius=function(Dr){return arguments.length?($e=$r(Dr),Rt):$e},Rt.padRadius=function(Dr){return arguments.length?(pt=Dr==Pu?Pu:$r(Dr),Rt):pt},Rt.startAngle=function(Dr){return arguments.length?(vt=$r(Dr),Rt):vt},Rt.endAngle=function(Dr){return arguments.length?(wt=$r(Dr),Rt):wt},Rt.padAngle=function(Dr){return arguments.length?(Jt=$r(Dr),Rt):Jt},Rt.centroid=function(){var Dr=(+de.apply(this,arguments)+ +Re.apply(this,arguments))/2,Or=(+vt.apply(this,arguments)+ +wt.apply(this,arguments))/2-Te;return[Math.cos(Or)*Dr,Math.sin(Or)*Dr]},Rt};var Pu="auto";function ec(de){return de.innerRadius}function tf(de){return de.outerRadius}function yu(de){return de.startAngle}function Bc(de){return de.endAngle}function Iu(de){return de&&de.padAngle}function Ac(de,Re,$e,pt){return(de-$e)*Re-(Re-pt)*de>0?0:1}function ro(de,Re,$e,pt,vt){var wt=de[0]-Re[0],Jt=de[1]-Re[1],Rt=(vt?pt:-pt)/Math.sqrt(wt*wt+Jt*Jt),or=Rt*Jt,Dr=-Rt*wt,Or=de[0]+or,va=de[1]+Dr,fa=Re[0]+or,Va=Re[1]+Dr,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra=fa-Or,Na=Va-va,Qa=Ra*Ra+Na*Na,Ya=$e-pt,Da=Or*Va-fa*va,zi=(Na<0?-1:1)*Math.sqrt(Math.max(0,Ya*Ya*Qa-Da*Da)),Ni=(Da*Na-Ra*zi)/Qa,Qi=(-Da*Ra-Na*zi)/Qa,hn=(Da*Na+Ra*zi)/Qa,Un=(-Da*Ra+Na*zi)/Qa,Vn=Ni-Xa,No=Qi-_a,Gn=hn-Xa,Fo=Un-_a;return Vn*Vn+No*No>Gn*Gn+Fo*Fo&&(Ni=hn,Qi=Un),[[Ni-or,Qi-Dr],[Ni*$e/Ya,Qi*$e/Ya]]}function Po(){return!0}function Nc(de){var Re=Lo,$e=Xi,pt=Po,vt=pc,wt=vt.key,Jt=.7;function Rt(or){var Dr=[],Or=[],va=-1,fa=or.length,Va,Xa=$r(Re),_a=$r($e);function Ra(){Dr.push("M",vt(de(Or),Jt))}for(;++va<fa;)pt.call(this,Va=or[va],va)?Or.push([+Xa.call(this,Va,va),+_a.call(this,Va,va)]):Or.length&&(Ra(),Or=[]);return Or.length&&Ra(),Dr.length?Dr.join(""):null}return Rt.x=function(or){return arguments.length?(Re=or,Rt):Re},Rt.y=function(or){return arguments.length?($e=or,Rt):$e},Rt.defined=function(or){return arguments.length?(pt=or,Rt):pt},Rt.interpolate=function(or){return arguments.length?(typeof or=="function"?wt=vt=or:wt=(vt=hc.get(or)||pc).key,Rt):wt},Rt.tension=function(or){return arguments.length?(Jt=or,Rt):Jt},Rt}g.svg.line=function(){return Nc(F)};var hc=g.map({linear:pc,"linear-closed":Oe,step:R,"step-before":ae,"step-after":we,basis:Yt,"basis-open":cr,"basis-closed":hr,bundle:jr,cardinal:ft,"cardinal-open":Se,"cardinal-closed":De,monotone:er});hc.forEach(function(de,Re){Re.key=de,Re.closed=/-closed$/.test(de)});function pc(de){return de.length>1?de.join("L"):de+"Z"}function Oe(de){return de.join("L")+"Z"}function R(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt[0]+(pt=de[Re])[0])/2,"V",pt[1]);return $e>1&&vt.push("H",pt[0]),vt.join("")}function ae(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("V",(pt=de[Re])[1],"H",pt[0]);return vt.join("")}function we(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt=de[Re])[0],"V",pt[1]);return vt.join("")}function Se(de,Re){return de.length<4?pc(de):de[1]+bt(de.slice(1,-1),Dt(de,Re))}function De(de,Re){return de.length<3?Oe(de):de[0]+bt((de.push(de[0]),de),Dt([de[de.length-2]].concat(de,[de[1]]),Re))}function ft(de,Re){return de.length<3?pc(de):de[0]+bt(de,Dt(de,Re))}function bt(de,Re){if(Re.length<1||de.length!=Re.length&&de.length!=Re.length+2)return pc(de);var $e=de.length!=Re.length,pt="",vt=de[0],wt=de[1],Jt=Re[0],Rt=Jt,or=1;if($e&&(pt+="Q"+(wt[0]-Jt[0]*2/3)+","+(wt[1]-Jt[1]*2/3)+","+wt[0]+","+wt[1],vt=de[1],or=2),Re.length>1){Rt=Re[1],wt=de[or],or++,pt+="C"+(vt[0]+Jt[0])+","+(vt[1]+Jt[1])+","+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1];for(var Dr=2;Dr<Re.length;Dr++,or++)wt=de[or],Rt=Re[Dr],pt+="S"+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1]}if($e){var Or=de[or];pt+="Q"+(wt[0]+Rt[0]*2/3)+","+(wt[1]+Rt[1]*2/3)+","+Or[0]+","+Or[1]}return pt}function Dt(de,Re){for(var $e=[],pt=(1-Re)/2,vt,wt=de[0],Jt=de[1],Rt=1,or=de.length;++Rt<or;)vt=wt,wt=Jt,Jt=de[Rt],$e.push([pt*(Jt[0]-vt[0]),pt*(Jt[1]-vt[1])]);return $e}function Yt(de){if(de.length<3)return pc(de);var Re=1,$e=de.length,pt=de[0],vt=pt[0],wt=pt[1],Jt=[vt,vt,vt,(pt=de[1])[0]],Rt=[wt,wt,wt,pt[1]],or=[vt,",",wt,"L",ea(ot,Jt),",",ea(ot,Rt)];for(de.push(de[$e-1]);++Re<=$e;)pt=de[Re],Jt.shift(),Jt.push(pt[0]),Rt.shift(),Rt.push(pt[1]),ht(or,Jt,Rt);return de.pop(),or.push("L",pt),or.join("")}function cr(de){if(de.length<4)return pc(de);for(var Re=[],$e=-1,pt=de.length,vt,wt=[0],Jt=[0];++$e<3;)vt=de[$e],wt.push(vt[0]),Jt.push(vt[1]);for(Re.push(ea(ot,wt)+","+ea(ot,Jt)),--$e;++$e<pt;)vt=de[$e],wt.shift(),wt.push(vt[0]),Jt.shift(),Jt.push(vt[1]),ht(Re,wt,Jt);return Re.join("")}function hr(de){for(var Re,$e=-1,pt=de.length,vt=pt+4,wt,Jt=[],Rt=[];++$e<4;)wt=de[$e%pt],Jt.push(wt[0]),Rt.push(wt[1]);for(Re=[ea(ot,Jt),",",ea(ot,Rt)],--$e;++$e<vt;)wt=de[$e%pt],Jt.shift(),Jt.push(wt[0]),Rt.shift(),Rt.push(wt[1]),ht(Re,Jt,Rt);return Re.join("")}function jr(de,Re){var $e=de.length-1;if($e)for(var pt=de[0][0],vt=de[0][1],wt=de[$e][0]-pt,Jt=de[$e][1]-vt,Rt=-1,or,Dr;++Rt<=$e;)or=de[Rt],Dr=Rt/$e,or[0]=Re*or[0]+(1-Re)*(pt+Dr*wt),or[1]=Re*or[1]+(1-Re)*(vt+Dr*Jt);return Yt(de)}function ea(de,Re){return de[0]*Re[0]+de[1]*Re[1]+de[2]*Re[2]+de[3]*Re[3]}var qe=[0,2/3,1/3,0],Je=[0,1/3,2/3,0],ot=[0,1/6,2/3,1/6];function ht(de,Re,$e){de.push("C",ea(qe,Re),",",ea(qe,$e),",",ea(Je,Re),",",ea(Je,$e),",",ea(ot,Re),",",ea(ot,$e))}function At(de,Re){return(Re[1]-de[1])/(Re[0]-de[0])}function _t(de){for(var Re=0,$e=de.length-1,pt=[],vt=de[0],wt=de[1],Jt=pt[0]=At(vt,wt);++Re<$e;)pt[Re]=(Jt+(Jt=At(vt=wt,wt=de[Re+1])))/2;return pt[Re]=Jt,pt}function Pt(de){for(var Re=[],$e,pt,vt,wt,Jt=_t(de),Rt=-1,or=de.length-1;++Rt<or;)$e=At(de[Rt],de[Rt+1]),l($e)<Ke?Jt[Rt]=Jt[Rt+1]=0:(pt=Jt[Rt]/$e,vt=Jt[Rt+1]/$e,wt=pt*pt+vt*vt,wt>9&&(wt=$e*3/Math.sqrt(wt),Jt[Rt]=wt*pt,Jt[Rt+1]=wt*vt));for(Rt=-1;++Rt<=or;)wt=(de[Math.min(or,Rt+1)][0]-de[Math.max(0,Rt-1)][0])/(6*(1+Jt[Rt]*Jt[Rt])),Re.push([wt||0,Jt[Rt]*wt||0]);return Re}function er(de){return de.length<3?pc(de):de[0]+bt(de,Pt(de))}g.svg.line.radial=function(){var de=Nc(nr);return de.radius=de.x,delete de.x,de.angle=de.y,delete de.y,de};function nr(de){for(var Re,$e=-1,pt=de.length,vt,wt;++$e<pt;)Re=de[$e],vt=Re[0],wt=Re[1]-Te,Re[0]=vt*Math.cos(wt),Re[1]=vt*Math.sin(wt);return de}function pr(de){var Re=Lo,$e=Lo,pt=0,vt=Xi,wt=Po,Jt=pc,Rt=Jt.key,or=Jt,Dr="L",Or=.7;function va(fa){var Va=[],Xa=[],_a=[],Ra=-1,Na=fa.length,Qa,Ya=$r(Re),Da=$r(pt),zi=Re===$e?function(){return Qi}:$r($e),Ni=pt===vt?function(){return hn}:$r(vt),Qi,hn;function Un(){Va.push("M",Jt(de(_a),Or),Dr,or(de(Xa.reverse()),Or),"Z")}for(;++Ra<Na;)wt.call(this,Qa=fa[Ra],Ra)?(Xa.push([Qi=+Ya.call(this,Qa,Ra),hn=+Da.call(this,Qa,Ra)]),_a.push([+zi.call(this,Qa,Ra),+Ni.call(this,Qa,Ra)])):Xa.length&&(Un(),Xa=[],_a=[]);return Xa.length&&Un(),Va.length?Va.join(""):null}return va.x=function(fa){return arguments.length?(Re=$e=fa,va):$e},va.x0=function(fa){return arguments.length?(Re=fa,va):Re},va.x1=function(fa){return arguments.length?($e=fa,va):$e},va.y=function(fa){return arguments.length?(pt=vt=fa,va):vt},va.y0=function(fa){return arguments.length?(pt=fa,va):pt},va.y1=function(fa){return arguments.length?(vt=fa,va):vt},va.defined=function(fa){return arguments.length?(wt=fa,va):wt},va.interpolate=function(fa){return arguments.length?(typeof fa=="function"?Rt=Jt=fa:Rt=(Jt=hc.get(fa)||pc).key,or=Jt.reverse||Jt,Dr=Jt.closed?"M":"L",va):Rt},va.tension=function(fa){return arguments.length?(Or=fa,va):Or},va}ae.reverse=we,we.reverse=ae,g.svg.area=function(){return pr(F)},g.svg.area.radial=function(){var de=pr(nr);return de.radius=de.x,delete de.x,de.innerRadius=de.x0,delete de.x0,de.outerRadius=de.x1,delete de.x1,de.angle=de.y,delete de.y,de.startAngle=de.y0,delete de.y0,de.endAngle=de.y1,delete de.y1,de};function Sr(de){return de.source}function Wr(de){return de.target}g.svg.chord=function(){var de=Sr,Re=Wr,$e=ha,pt=yu,vt=Bc;function wt(Or,va){var fa=Jt(this,de,Or,va),Va=Jt(this,Re,Or,va);return"M"+fa.p0+or(fa.r,fa.p1,fa.a1-fa.a0)+(Rt(fa,Va)?Dr(fa.r,fa.p1,fa.r,fa.p0):Dr(fa.r,fa.p1,Va.r,Va.p0)+or(Va.r,Va.p1,Va.a1-Va.a0)+Dr(Va.r,Va.p1,fa.r,fa.p0))+"Z"}function Jt(Or,va,fa,Va){var Xa=va.call(Or,fa,Va),_a=$e.call(Or,Xa,Va),Ra=pt.call(Or,Xa,Va)-Te,Na=vt.call(Or,Xa,Va)-Te;return{r:_a,a0:Ra,a1:Na,p0:[_a*Math.cos(Ra),_a*Math.sin(Ra)],p1:[_a*Math.cos(Na),_a*Math.sin(Na)]}}function Rt(Or,va){return Or.a0==va.a0&&Or.a1==va.a1}function or(Or,va,fa){return"A"+Or+","+Or+" 0 "+ +(fa>Ee)+",1 "+va}function Dr(Or,va,fa,Va){return"Q 0,0 "+Va}return wt.radius=function(Or){return arguments.length?($e=$r(Or),wt):$e},wt.source=function(Or){return arguments.length?(de=$r(Or),wt):de},wt.target=function(Or){return arguments.length?(Re=$r(Or),wt):Re},wt.startAngle=function(Or){return arguments.length?(pt=$r(Or),wt):pt},wt.endAngle=function(Or){return arguments.length?(vt=$r(Or),wt):vt},wt};function ha(de){return de.radius}g.svg.diagonal=function(){var de=Sr,Re=Wr,$e=ga;function pt(vt,wt){var Jt=de.call(this,vt,wt),Rt=Re.call(this,vt,wt),or=(Jt.y+Rt.y)/2,Dr=[Jt,{x:Jt.x,y:or},{x:Rt.x,y:or},Rt];return Dr=Dr.map($e),"M"+Dr[0]+"C"+Dr[1]+" "+Dr[2]+" "+Dr[3]}return pt.source=function(vt){return arguments.length?(de=$r(vt),pt):de},pt.target=function(vt){return arguments.length?(Re=$r(vt),pt):Re},pt.projection=function(vt){return arguments.length?($e=vt,pt):$e},pt};function ga(de){return[de.x,de.y]}g.svg.diagonal.radial=function(){var de=g.svg.diagonal(),Re=ga,$e=de.projection;return de.projection=function(pt){return arguments.length?$e(Pa(Re=pt)):Re},de};function Pa(de){return function(){var Re=de.apply(this,arguments),$e=Re[0],pt=Re[1]-Te;return[$e*Math.cos(pt),$e*Math.sin(pt)]}}g.svg.symbol=function(){var de=di,Re=Ja;function $e(pt,vt){return(Ci.get(de.call(this,pt,vt))||pi)(Re.call(this,pt,vt))}return $e.type=function(pt){return arguments.length?(de=$r(pt),$e):de},$e.size=function(pt){return arguments.length?(Re=$r(pt),$e):Re},$e};function Ja(){return 64}function di(){return"circle"}function pi(de){var Re=Math.sqrt(de/Ee);return"M0,"+Re+"A"+Re+","+Re+" 0 1,1 0,"+-Re+"A"+Re+","+Re+" 0 1,1 0,"+Re+"Z"}var Ci=g.map({circle:pi,cross:function(de){var Re=Math.sqrt(de/5)/2;return"M"+-3*Re+","+-Re+"H"+-Re+"V"+-3*Re+"H"+Re+"V"+-Re+"H"+3*Re+"V"+Re+"H"+Re+"V"+3*Re+"H"+-Re+"V"+Re+"H"+-3*Re+"Z"},diamond:function(de){var Re=Math.sqrt(de/(2*Bn)),$e=Re*Bn;return"M0,"+-Re+"L"+$e+",0 0,"+Re+" "+-$e+",0Z"},square:function(de){var Re=Math.sqrt(de)/2;return"M"+-Re+","+-Re+"L"+Re+","+-Re+" "+Re+","+Re+" "+-Re+","+Re+"Z"},"triangle-down":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+$e+"L"+Re+","+-$e+" "+-Re+","+-$e+"Z"},"triangle-up":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+-$e+"L"+Re+","+$e+" "+-Re+","+$e+"Z"}});g.svg.symbolTypes=Ci.keys();var $i=Math.sqrt(3),Bn=Math.tan(30*Le);ne.transition=function(de){for(var Re=ls||++Vo,$e=Go(de),pt=[],vt,wt,Jt=rl||{time:Date.now(),ease:cu,delay:0,duration:250},Rt=-1,or=this.length;++Rt<or;){pt.push(vt=[]);for(var Dr=this[Rt],Or=-1,va=Dr.length;++Or<va;)(wt=Dr[Or])&&Rl(wt,Or,$e,Re,Jt),vt.push(wt)}return ts(pt,$e,Re)},ne.interrupt=function(de){return this.each(de==null?Sn:ho(Go(de)))};var Sn=ho(Go());function ho(de){return function(){var Re,$e,pt;(Re=this[de])&&(pt=Re[$e=Re.active])&&(pt.timer.c=null,pt.timer.t=NaN,--Re.count?delete Re[$e]:delete this[de],Re.active+=.5,pt.event&&pt.event.interrupt.call(this,this.__data__,pt.index))}}function ts(de,Re,$e){return G(de,yo),de.namespace=Re,de.id=$e,de}var yo=[],Vo=0,ls,rl;yo.call=ne.call,yo.empty=ne.empty,yo.node=ne.node,yo.size=ne.size,g.transition=function(de,Re){return de&&de.transition?ls?de.transition(Re):de:g.selection().transition(de)},g.transition.prototype=yo,yo.select=function(de){var Re=this.id,$e=this.namespace,pt=[],vt,wt,Jt;de=j(de);for(var Rt=-1,or=this.length;++Rt<or;){pt.push(vt=[]);for(var Dr=this[Rt],Or=-1,va=Dr.length;++Or<va;)(Jt=Dr[Or])&&(wt=de.call(Jt,Jt.__data__,Or,Rt))?("__data__"in Jt&&(wt.__data__=Jt.__data__),Rl(wt,Or,$e,Re,Jt[$e][Re]),vt.push(wt)):vt.push(null)}return ts(pt,$e,Re)},yo.selectAll=function(de){var Re=this.id,$e=this.namespace,pt=[],vt,wt,Jt,Rt,or;de=ee(de);for(var Dr=-1,Or=this.length;++Dr<Or;)for(var va=this[Dr],fa=-1,Va=va.length;++fa<Va;)if(Jt=va[fa]){or=Jt[$e][Re],wt=de.call(Jt,Jt.__data__,fa,Dr),pt.push(vt=[]);for(var Xa=-1,_a=wt.length;++Xa<_a;)(Rt=wt[Xa])&&Rl(Rt,Xa,$e,Re,or),vt.push(Rt)}return ts(pt,$e,Re)},yo.filter=function(de){var Re=[],$e,pt,vt;typeof de!="function"&&(de=ce(de));for(var wt=0,Jt=this.length;wt<Jt;wt++){Re.push($e=[]);for(var pt=this[wt],Rt=0,or=pt.length;Rt<or;Rt++)(vt=pt[Rt])&&de.call(vt,vt.__data__,Rt,wt)&&$e.push(vt)}return ts(Re,this.namespace,this.id)},yo.tween=function(de,Re){var $e=this.id,pt=this.namespace;return arguments.length<2?this.node()[pt][$e].tween.get(de):tt(this,Re==null?function(vt){vt[pt][$e].tween.remove(de)}:function(vt){vt[pt][$e].tween.set(de,Re)})};function Ys(de,Re,$e,pt){var vt=de.id,wt=de.namespace;return tt(de,typeof $e=="function"?function(Jt,Rt,or){Jt[wt][vt].tween.set(Re,pt($e.call(Jt,Jt.__data__,Rt,or)))}:($e=pt($e),function(Jt){Jt[wt][vt].tween.set(Re,$e)}))}yo.attr=function(de,Re){if(arguments.length<2){for(Re in de)this.attr(Re,de[Re]);return this}var $e=de=="transform"?df:zl,pt=g.ns.qualify(de);function vt(){this.removeAttribute(pt)}function wt(){this.removeAttributeNS(pt.space,pt.local)}function Jt(or){return or==null?vt:(or+="",function(){var Dr=this.getAttribute(pt),Or;return Dr!==or&&(Or=$e(Dr,or),function(va){this.setAttribute(pt,Or(va))})})}function Rt(or){return or==null?wt:(or+="",function(){var Dr=this.getAttributeNS(pt.space,pt.local),Or;return Dr!==or&&(Or=$e(Dr,or),function(va){this.setAttributeNS(pt.space,pt.local,Or(va))})})}return Ys(this,"attr."+de,Re,pt.local?Rt:Jt)},yo.attrTween=function(de,Re){var $e=g.ns.qualify(de);function pt(wt,Jt){var Rt=Re.call(this,wt,Jt,this.getAttribute($e));return Rt&&function(or){this.setAttribute($e,Rt(or))}}function vt(wt,Jt){var Rt=Re.call(this,wt,Jt,this.getAttributeNS($e.space,$e.local));return Rt&&function(or){this.setAttributeNS($e.space,$e.local,Rt(or))}}return this.tween("attr."+de,$e.local?vt:pt)},yo.style=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re="");for($e in de)this.style($e,de[$e],Re);return this}$e=""}function vt(){this.style.removeProperty(de)}function wt(Jt){return Jt==null?vt:(Jt+="",function(){var Rt=t(this).getComputedStyle(this,null).getPropertyValue(de),or;return Rt!==Jt&&(or=zl(Rt,Jt),function(Dr){this.style.setProperty(de,or(Dr),$e)})})}return Ys(this,"style."+de,Re,wt)},yo.styleTween=function(de,Re,$e){arguments.length<3&&($e="");function pt(vt,wt){var Jt=Re.call(this,vt,wt,t(this).getComputedStyle(this,null).getPropertyValue(de));return Jt&&function(Rt){this.style.setProperty(de,Jt(Rt),$e)}}return this.tween("style."+de,pt)},yo.text=function(de){return Ys(this,"text",de,Zo)};function Zo(de){return de==null&&(de=""),function(){this.textContent=de}}yo.remove=function(){var de=this.namespace;return this.each("end.transition",function(){var Re;this[de].count<2&&(Re=this.parentNode)&&Re.removeChild(this)})},yo.ease=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].ease:(typeof de!="function"&&(de=g.ease.apply(g,arguments)),tt(this,function(pt){pt[$e][Re].ease=de}))},yo.delay=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].delay:tt(this,typeof de=="function"?function(pt,vt,wt){pt[$e][Re].delay=+de.call(pt,pt.__data__,vt,wt)}:(de=+de,function(pt){pt[$e][Re].delay=de}))},yo.duration=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].duration:tt(this,typeof de=="function"?function(pt,vt,wt){pt[$e][Re].duration=Math.max(1,de.call(pt,pt.__data__,vt,wt))}:(de=Math.max(1,de),function(pt){pt[$e][Re].duration=de}))},yo.each=function(de,Re){var $e=this.id,pt=this.namespace;if(arguments.length<2){var vt=rl,wt=ls;try{ls=$e,tt(this,function(Jt,Rt,or){rl=Jt[pt][$e],de.call(Jt,Jt.__data__,Rt,or)})}finally{rl=vt,ls=wt}}else tt(this,function(Jt){var Rt=Jt[pt][$e];(Rt.event||(Rt.event=g.dispatch("start","end","interrupt"))).on(de,Re)});return this},yo.transition=function(){for(var de=this.id,Re=++Vo,$e=this.namespace,pt=[],vt,wt,Jt,Rt,or=0,Dr=this.length;or<Dr;or++){pt.push(vt=[]);for(var wt=this[or],Or=0,va=wt.length;Or<va;Or++)(Jt=wt[Or])&&(Rt=Jt[$e][de],Rl(Jt,Or,$e,Re,{time:Rt.time,ease:Rt.ease,delay:Rt.delay+Rt.duration,duration:Rt.duration})),vt.push(Jt)}return ts(pt,$e,Re)};function Go(de){return de==null?"__transition__":"__transition_"+de+"__"}function Rl(de,Re,$e,pt,vt){var wt=de[$e]||(de[$e]={active:0,count:0}),Jt=wt[pt],Rt,or,Dr,Or,va;function fa(_a){var Ra=Jt.delay;if(or.t=Ra+Rt,Ra<=_a)return Va(_a-Ra);or.c=Va}function Va(_a){var Ra=wt.active,Na=wt[Ra];Na&&(Na.timer.c=null,Na.timer.t=NaN,--wt.count,delete wt[Ra],Na.event&&Na.event.interrupt.call(de,de.__data__,Na.index));for(var Qa in wt)if(+Qa<pt){var Ya=wt[Qa];Ya.timer.c=null,Ya.timer.t=NaN,--wt.count,delete wt[Qa]}or.c=Xa,Mn(function(){return or.c&&Xa(_a||1)&&(or.c=null,or.t=NaN),1},0,Rt),wt.active=pt,Jt.event&&Jt.event.start.call(de,de.__data__,Re),va=[],Jt.tween.forEach(function(Da,zi){(zi=zi.call(de,de.__data__,Re))&&va.push(zi)}),Or=Jt.ease,Dr=Jt.duration}function Xa(_a){for(var Ra=_a/Dr,Na=Or(Ra),Qa=va.length;Qa>0;)va[--Qa].call(de,Na);if(Ra>=1)return Jt.event&&Jt.event.end.call(de,de.__data__,Re),--wt.count?delete wt[pt]:delete de[$e],1}Jt||(Rt=vt.time,or=Mn(fa,0,Rt),Jt=wt[pt]={tween:new S,time:Rt,timer:or,delay:vt.delay,duration:vt.duration,ease:vt.ease,index:Re},vt=null,++wt.count)}g.svg.axis=function(){var de=g.scale.linear(),Re=Xl,$e=6,pt=6,vt=3,wt=[10],Jt=null,Rt;function or(Dr){Dr.each(function(){var Or=g.select(this),va=this.__chart__||de,fa=this.__chart__=de.copy(),Va=Jt??(fa.ticks?fa.ticks.apply(fa,wt):fa.domain()),Xa=Rt??(fa.tickFormat?fa.tickFormat.apply(fa,wt):F),_a=Or.selectAll(".tick").data(Va,fa),Ra=_a.enter().insert("g",".domain").attr("class","tick").style("opacity",Ke),Na=g.transition(_a.exit()).style("opacity",Ke).remove(),Qa=g.transition(_a.order()).style("opacity",1),Ya=Math.max($e,0)+vt,Da,zi=ki(fa),Ni=Or.selectAll(".domain").data([0]),Qi=(Ni.enter().append("path").attr("class","domain"),g.transition(Ni));Ra.append("line"),Ra.append("text");var hn=Ra.select("line"),Un=Qa.select("line"),Vn=_a.select("text").text(Xa),No=Ra.select("text"),Gn=Qa.select("text"),Fo=Re==="top"||Re==="left"?-1:1,Ks,Gs,sl,Vi;if(Re==="bottom"||Re==="top"?(Da=fu,Ks="x",sl="y",Gs="x2",Vi="y2",Vn.attr("dy",Fo<0?"0em":".71em").style("text-anchor","middle"),Qi.attr("d","M"+zi[0]+","+Fo*pt+"V0H"+zi[1]+"V"+Fo*pt)):(Da=bl,Ks="y",sl="x",Gs="y2",Vi="x2",Vn.attr("dy",".32em").style("text-anchor",Fo<0?"end":"start"),Qi.attr("d","M"+Fo*pt+","+zi[0]+"H0V"+zi[1]+"H"+Fo*pt)),hn.attr(Vi,Fo*$e),No.attr(sl,Fo*Ya),Un.attr(Gs,0).attr(Vi,Fo*$e),Gn.attr(Ks,0).attr(sl,Fo*Ya),fa.rangeBand){var ao=fa,ns=ao.rangeBand()/2;va=fa=function(hs){return ao(hs)+ns}}else va.rangeBand?va=fa:Na.call(Da,fa,va);Ra.call(Da,va,fa),Qa.call(Da,fa,fa)})}return or.scale=function(Dr){return arguments.length?(de=Dr,or):de},or.orient=function(Dr){return arguments.length?(Re=Dr in qu?Dr+"":Xl,or):Re},or.ticks=function(){return arguments.length?(wt=A(arguments),or):wt},or.tickValues=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.tickFormat=function(Dr){return arguments.length?(Rt=Dr,or):Rt},or.tickSize=function(Dr){var Or=arguments.length;return Or?($e=+Dr,pt=+arguments[Or-1],or):$e},or.innerTickSize=function(Dr){return arguments.length?($e=+Dr,or):$e},or.outerTickSize=function(Dr){return arguments.length?(pt=+Dr,or):pt},or.tickPadding=function(Dr){return arguments.length?(vt=+Dr,or):vt},or.tickSubdivide=function(){return arguments.length&&or},or};var Xl="bottom",qu={top:1,right:1,bottom:1,left:1};function fu(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate("+(isFinite(vt)?vt:$e(pt))+",0)"})}function bl(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate(0,"+(isFinite(vt)?vt:$e(pt))+")"})}g.svg.brush=function(){var de=se(Or,"brushstart","brush","brushend"),Re=null,$e=null,pt=[0,0],vt=[0,0],wt,Jt,Rt=!0,or=!0,Dr=Sc[0];function Or(_a){_a.each(function(){var Ra=g.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Xa).on("touchstart.brush",Xa),Na=Ra.selectAll(".background").data([0]);Na.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ra.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Qa=Ra.selectAll(".resize").data(Dr,F);Qa.exit().remove(),Qa.enter().append("g").attr("class",function(Ni){return"resize "+Ni}).style("cursor",function(Ni){return ou[Ni]}).append("rect").attr("x",function(Ni){return/[ew]$/.test(Ni)?-3:null}).attr("y",function(Ni){return/^[ns]/.test(Ni)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Qa.style("display",Or.empty()?"none":null);var Ya=g.transition(Ra),Da=g.transition(Na),zi;Re&&(zi=ki(Re),Da.attr("x",zi[0]).attr("width",zi[1]-zi[0]),fa(Ya)),$e&&(zi=ki($e),Da.attr("y",zi[0]).attr("height",zi[1]-zi[0]),Va(Ya)),va(Ya)})}Or.event=function(_a){_a.each(function(){var Ra=de.of(this,arguments),Na={x:pt,y:vt,i:wt,j:Jt},Qa=this.__chart__||Na;this.__chart__=Na,ls?g.select(this).transition().each("start.brush",function(){wt=Qa.i,Jt=Qa.j,pt=Qa.x,vt=Qa.y,Ra({type:"brushstart"})}).tween("brush:brush",function(){var Ya=Yu(pt,Na.x),Da=Yu(vt,Na.y);return wt=Jt=null,function(zi){pt=Na.x=Ya(zi),vt=Na.y=Da(zi),Ra({type:"brush",mode:"resize"})}}).each("end.brush",function(){wt=Na.i,Jt=Na.j,Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"})}):(Ra({type:"brushstart"}),Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"}))})};function va(_a){_a.selectAll(".resize").attr("transform",function(Ra){return"translate("+pt[+/e$/.test(Ra)]+","+vt[+/^s/.test(Ra)]+")"})}function fa(_a){_a.select(".extent").attr("x",pt[0]),_a.selectAll(".extent,.n>rect,.s>rect").attr("width",pt[1]-pt[0])}function Va(_a){_a.select(".extent").attr("y",vt[0]),_a.selectAll(".extent,.e>rect,.w>rect").attr("height",vt[1]-vt[0])}function Xa(){var _a=this,Ra=g.select(g.event.target),Na=de.of(_a,arguments),Qa=g.select(_a),Ya=Ra.datum(),Da=!/^(n|s)$/.test(Ya)&&Re,zi=!/^(e|w)$/.test(Ya)&&$e,Ni=Ra.classed("extent"),Qi=vr(_a),hn,Un=g.mouse(_a),Vn,No=g.select(t(_a)).on("keydown.brush",Ks).on("keyup.brush",Gs);if(g.event.changedTouches?No.on("touchmove.brush",sl).on("touchend.brush",ao):No.on("mousemove.brush",sl).on("mouseup.brush",ao),Qa.interrupt().selectAll("*").interrupt(),Ni)Un[0]=pt[0]-Un[0],Un[1]=vt[0]-Un[1];else if(Ya){var Gn=+/w$/.test(Ya),Fo=+/^n/.test(Ya);Vn=[pt[1-Gn]-Un[0],vt[1-Fo]-Un[1]],Un[0]=pt[Gn],Un[1]=vt[Fo]}else g.event.altKey&&(hn=Un.slice());Qa.style("pointer-events","none").selectAll(".resize").style("display",null),g.select("body").style("cursor",Ra.style("cursor")),Na({type:"brushstart"}),sl();function Ks(){g.event.keyCode==32&&(Ni||(hn=null,Un[0]-=pt[1],Un[1]-=vt[1],Ni=2),Q())}function Gs(){g.event.keyCode==32&&Ni==2&&(Un[0]+=pt[1],Un[1]+=vt[1],Ni=0,Q())}function sl(){var ns=g.mouse(_a),hs=!1;Vn&&(ns[0]+=Vn[0],ns[1]+=Vn[1]),Ni||(g.event.altKey?(hn||(hn=[(pt[0]+pt[1])/2,(vt[0]+vt[1])/2]),Un[0]=pt[+(ns[0]<hn[0])],Un[1]=vt[+(ns[1]<hn[1])]):hn=null),Da&&Vi(ns,Re,0)&&(fa(Qa),hs=!0),zi&&Vi(ns,$e,1)&&(Va(Qa),hs=!0),hs&&(va(Qa),Na({type:"brush",mode:Ni?"move":"resize"}))}function Vi(ns,hs,hl){var Dl=ki(hs),hu=Dl[0],Ll=Dl[1],dc=Un[hl],Qt=hl?vt:pt,ra=Qt[1]-Qt[0],Ta,si;if(Ni&&(hu-=dc,Ll-=ra+dc),Ta=(hl?or:Rt)?Math.max(hu,Math.min(Ll,ns[hl])):ns[hl],Ni?si=(Ta+=dc)+ra:(hn&&(dc=Math.max(hu,Math.min(Ll,2*hn[hl]-Ta))),dc<Ta?(si=Ta,Ta=dc):si=dc),Qt[0]!=Ta||Qt[1]!=si)return hl?Jt=null:wt=null,Qt[0]=Ta,Qt[1]=si,!0}function ao(){sl(),Qa.style("pointer-events","all").selectAll(".resize").style("display",Or.empty()?"none":null),g.select("body").style("cursor",null),No.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),Qi(),Na({type:"brushend"})}}return Or.x=function(_a){return arguments.length?(Re=_a,Dr=Sc[!Re<<1|!$e],Or):Re},Or.y=function(_a){return arguments.length?($e=_a,Dr=Sc[!Re<<1|!$e],Or):$e},Or.clamp=function(_a){return arguments.length?(Re&&$e?(Rt=!!_a[0],or=!!_a[1]):Re?Rt=!!_a:$e&&(or=!!_a),Or):Re&&$e?[Rt,or]:Re?Rt:$e?or:null},Or.extent=function(_a){var Ra,Na,Qa,Ya,Da;return arguments.length?(Re&&(Ra=_a[0],Na=_a[1],$e&&(Ra=Ra[0],Na=Na[0]),wt=[Ra,Na],Re.invert&&(Ra=Re(Ra),Na=Re(Na)),Na<Ra&&(Da=Ra,Ra=Na,Na=Da),(Ra!=pt[0]||Na!=pt[1])&&(pt=[Ra,Na])),$e&&(Qa=_a[0],Ya=_a[1],Re&&(Qa=Qa[1],Ya=Ya[1]),Jt=[Qa,Ya],$e.invert&&(Qa=$e(Qa),Ya=$e(Ya)),Ya<Qa&&(Da=Qa,Qa=Ya,Ya=Da),(Qa!=vt[0]||Ya!=vt[1])&&(vt=[Qa,Ya])),Or):(Re&&(wt?(Ra=wt[0],Na=wt[1]):(Ra=pt[0],Na=pt[1],Re.invert&&(Ra=Re.invert(Ra),Na=Re.invert(Na)),Na<Ra&&(Da=Ra,Ra=Na,Na=Da))),$e&&(Jt?(Qa=Jt[0],Ya=Jt[1]):(Qa=vt[0],Ya=vt[1],$e.invert&&(Qa=$e.invert(Qa),Ya=$e.invert(Ya)),Ya<Qa&&(Da=Qa,Qa=Ya,Ya=Da))),Re&&$e?[[Ra,Qa],[Na,Ya]]:Re?[Ra,Na]:$e&&[Qa,Ya])},Or.clear=function(){return Or.empty()||(pt=[0,0],vt=[0,0],wt=Jt=null),Or},Or.empty=function(){return!!Re&&pt[0]==pt[1]||!!$e&&vt[0]==vt[1]},g.rebind(Or,de,"on")};var ou={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Sc=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];g.text=ma(function(de){return de.responseText}),g.json=function(de,Re){return Ba(de,"application/json",ql,Re)};function ql(de){return JSON.parse(de.responseText)}g.html=function(de,Re){return Ba(de,"text/html",Hl,Re)};function Hl(de){var Re=M.createRange();return Re.selectNode(M.body),Re.createContextualFragment(de.responseText)}g.xml=ma(function(de){return de.responseXML}),typeof H=="object"&&H.exports?H.exports=g:this.d3=g}).apply(self)}}),$p=Ye({"node_modules/d3-time/dist/d3-time.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=new Date,A=new Date;function M(ce,ze,tt,nt){function Qe(Ct){return ce(Ct=arguments.length===0?new Date:new Date(+Ct)),Ct}return Qe.floor=function(Ct){return ce(Ct=new Date(+Ct)),Ct},Qe.ceil=function(Ct){return ce(Ct=new Date(Ct-1)),ze(Ct,1),ce(Ct),Ct},Qe.round=function(Ct){var St=Qe(Ct),Ot=Qe.ceil(Ct);return Ct-St<Ot-Ct?St:Ot},Qe.offset=function(Ct,St){return ze(Ct=new Date(+Ct),St==null?1:Math.floor(St)),Ct},Qe.range=function(Ct,St,Ot){var jt=[],ur;if(Ct=Qe.ceil(Ct),Ot=Ot==null?1:Math.floor(Ot),!(Ct<St)||!(Ot>0))return jt;do jt.push(ur=new Date(+Ct)),ze(Ct,Ot),ce(Ct);while(ur<Ct&&Ct<St);return jt},Qe.filter=function(Ct){return M(function(St){if(St>=St)for(;ce(St),!Ct(St);)St.setTime(St-1)},function(St,Ot){if(St>=St)if(Ot<0)for(;++Ot<=0;)for(;ze(St,-1),!Ct(St););else for(;--Ot>=0;)for(;ze(St,1),!Ct(St););})},tt&&(Qe.count=function(Ct,St){return x.setTime(+Ct),A.setTime(+St),ce(x),ce(A),Math.floor(tt(x,A))},Qe.every=function(Ct){return Ct=Math.floor(Ct),!isFinite(Ct)||!(Ct>0)?null:Ct>1?Qe.filter(nt?function(St){return nt(St)%Ct===0}:function(St){return Qe.count(0,St)%Ct===0}):Qe}),Qe}var e=M(function(){},function(ce,ze){ce.setTime(+ce+ze)},function(ce,ze){return ze-ce});e.every=function(ce){return ce=Math.floor(ce),!isFinite(ce)||!(ce>0)?null:ce>1?M(function(ze){ze.setTime(Math.floor(ze/ce)*ce)},function(ze,tt){ze.setTime(+ze+tt*ce)},function(ze,tt){return(tt-ze)/ce}):e};var t=e.range,r=1e3,o=6e4,a=36e5,i=864e5,n=6048e5,s=M(function(ce){ce.setTime(ce-ce.getMilliseconds())},function(ce,ze){ce.setTime(+ce+ze*r)},function(ce,ze){return(ze-ce)/r},function(ce){return ce.getUTCSeconds()}),c=s.range,h=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getMinutes()}),v=h.range,p=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r-ce.getMinutes()*o)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getHours()}),T=p.range,l=M(function(ce){ce.setHours(0,0,0,0)},function(ce,ze){ce.setDate(ce.getDate()+ze)},function(ce,ze){return(ze-ce-(ze.getTimezoneOffset()-ce.getTimezoneOffset())*o)/i},function(ce){return ce.getDate()-1}),_=l.range;function w(ce){return M(function(ze){ze.setDate(ze.getDate()-(ze.getDay()+7-ce)%7),ze.setHours(0,0,0,0)},function(ze,tt){ze.setDate(ze.getDate()+tt*7)},function(ze,tt){return(tt-ze-(tt.getTimezoneOffset()-ze.getTimezoneOffset())*o)/n})}var S=w(0),E=w(1),m=w(2),b=w(3),d=w(4),u=w(5),y=w(6),f=S.range,P=E.range,L=m.range,z=b.range,F=d.range,B=u.range,O=y.range,I=M(function(ce){ce.setDate(1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setMonth(ce.getMonth()+ze)},function(ce,ze){return ze.getMonth()-ce.getMonth()+(ze.getFullYear()-ce.getFullYear())*12},function(ce){return ce.getMonth()}),N=I.range,U=M(function(ce){ce.setMonth(0,1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setFullYear(ce.getFullYear()+ze)},function(ce,ze){return ze.getFullYear()-ce.getFullYear()},function(ce){return ce.getFullYear()});U.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setFullYear(Math.floor(ze.getFullYear()/ce)*ce),ze.setMonth(0,1),ze.setHours(0,0,0,0)},function(ze,tt){ze.setFullYear(ze.getFullYear()+tt*ce)})};var W=U.range,Q=M(function(ce){ce.setUTCSeconds(0,0)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getUTCMinutes()}),ue=Q.range,se=M(function(ce){ce.setUTCMinutes(0,0,0)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getUTCHours()}),he=se.range,G=M(function(ce){ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCDate(ce.getUTCDate()+ze)},function(ce,ze){return(ze-ce)/i},function(ce){return ce.getUTCDate()-1}),$=G.range;function J(ce){return M(function(ze){ze.setUTCDate(ze.getUTCDate()-(ze.getUTCDay()+7-ce)%7),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCDate(ze.getUTCDate()+tt*7)},function(ze,tt){return(tt-ze)/n})}var Z=J(0),re=J(1),ne=J(2),j=J(3),ee=J(4),ie=J(5),fe=J(6),be=Z.range,Ae=re.range,Be=ne.range,Ie=j.range,Ze=ee.range,at=ie.range,it=fe.range,et=M(function(ce){ce.setUTCDate(1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCMonth(ce.getUTCMonth()+ze)},function(ce,ze){return ze.getUTCMonth()-ce.getUTCMonth()+(ze.getUTCFullYear()-ce.getUTCFullYear())*12},function(ce){return ce.getUTCMonth()}),lt=et.range,Me=M(function(ce){ce.setUTCMonth(0,1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCFullYear(ce.getUTCFullYear()+ze)},function(ce,ze){return ze.getUTCFullYear()-ce.getUTCFullYear()},function(ce){return ce.getUTCFullYear()});Me.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setUTCFullYear(Math.floor(ze.getUTCFullYear()/ce)*ce),ze.setUTCMonth(0,1),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCFullYear(ze.getUTCFullYear()+tt*ce)})};var ge=Me.range;g.timeDay=l,g.timeDays=_,g.timeFriday=u,g.timeFridays=B,g.timeHour=p,g.timeHours=T,g.timeInterval=M,g.timeMillisecond=e,g.timeMilliseconds=t,g.timeMinute=h,g.timeMinutes=v,g.timeMonday=E,g.timeMondays=P,g.timeMonth=I,g.timeMonths=N,g.timeSaturday=y,g.timeSaturdays=O,g.timeSecond=s,g.timeSeconds=c,g.timeSunday=S,g.timeSundays=f,g.timeThursday=d,g.timeThursdays=F,g.timeTuesday=m,g.timeTuesdays=L,g.timeWednesday=b,g.timeWednesdays=z,g.timeWeek=S,g.timeWeeks=f,g.timeYear=U,g.timeYears=W,g.utcDay=G,g.utcDays=$,g.utcFriday=ie,g.utcFridays=at,g.utcHour=se,g.utcHours=he,g.utcMillisecond=e,g.utcMilliseconds=t,g.utcMinute=Q,g.utcMinutes=ue,g.utcMonday=re,g.utcMondays=Ae,g.utcMonth=et,g.utcMonths=lt,g.utcSaturday=fe,g.utcSaturdays=it,g.utcSecond=s,g.utcSeconds=c,g.utcSunday=Z,g.utcSundays=be,g.utcThursday=ee,g.utcThursdays=Ze,g.utcTuesday=ne,g.utcTuesdays=Be,g.utcWednesday=j,g.utcWednesdays=Ie,g.utcWeek=Z,g.utcWeeks=be,g.utcYear=Me,g.utcYears=ge,Object.defineProperty(g,"__esModule",{value:!0})})}}),Np=Ye({"node_modules/d3-time-format/dist/d3-time-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,$p()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ke.setFullYear(Fe.y),Ke}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function M(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ke.setUTCFullYear(Fe.y),Ke}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function e(Fe,Ke,Ne){return{y:Fe,m:Ke,d:Ne,H:0,M:0,S:0,L:0}}function t(Fe){var Ke=Fe.dateTime,Ne=Fe.date,Ee=Fe.time,Ve=Fe.periods,ke=Fe.days,Te=Fe.shortDays,Le=Fe.months,rt=Fe.shortMonths,dt=c(Ve),xt=h(Ve),It=c(ke),Bt=h(ke),Gt=c(Te),Kt=h(Te),sr=c(Le),sa=h(Le),Aa=c(rt),La=h(rt),ka={a:Fa,A:qa,b:ya,B:$a,c:null,d:I,e:I,f:ue,H:N,I:U,j:W,L:Q,m:se,M:he,p:mt,q:gt,Q:St,s:Ot,S:G,u:$,U:J,V:Z,w:re,W:ne,x:null,X:null,y:j,Y:ee,Z:ie,"%":Ct},Ga={a:Er,A:kr,b:br,B:Tr,c:null,d:fe,e:fe,f:Ze,H:be,I:Ae,j:Be,L:Ie,m:at,M:it,p:Mr,q:Fr,Q:St,s:Ot,S:et,u:lt,U:Me,V:ge,w:ce,W:ze,x:null,X:null,y:tt,Y:nt,Z:Qe,"%":Ct},Ma={a:Vt,A:Ut,b:xr,B:Zr,c:pa,d,e:d,f:z,H:y,I:y,j:u,L,m:b,M:f,p:zt,q:m,Q:B,s:O,S:P,u:p,U:T,V:l,w:v,W:_,x:Xr,X:Ea,y:S,Y:w,Z:E,"%":F};ka.x=Ua(Ne,ka),ka.X=Ua(Ee,ka),ka.c=Ua(Ke,ka),Ga.x=Ua(Ne,Ga),Ga.X=Ua(Ee,Ga),Ga.c=Ua(Ke,Ga);function Ua(Lr,Jr){return function(oa){var ca=[],kt=-1,ir=0,mr=Lr.length,$r,ma,Ba;for(oa instanceof Date||(oa=new Date(+oa));++kt<mr;)Lr.charCodeAt(kt)===37&&(ca.push(Lr.slice(ir,kt)),(ma=r[$r=Lr.charAt(++kt)])!=null?$r=Lr.charAt(++kt):ma=$r==="e"?" ":"0",(Ba=Jr[$r])&&($r=Ba(oa,ma)),ca.push($r),ir=kt+1);return ca.push(Lr.slice(ir,kt)),ca.join("")}}function ni(Lr,Jr){return function(oa){var ca=e(1900,void 0,1),kt=Wt(ca,Lr,oa+="",0),ir,mr;if(kt!=oa.length)return null;if("Q"in ca)return new Date(ca.Q);if("s"in ca)return new Date(ca.s*1e3+("L"in ca?ca.L:0));if(Jr&&!("Z"in ca)&&(ca.Z=0),"p"in ca&&(ca.H=ca.H%12+ca.p*12),ca.m===void 0&&(ca.m="q"in ca?ca.q:0),"V"in ca){if(ca.V<1||ca.V>53)return null;"w"in ca||(ca.w=1),"Z"in ca?(ir=M(e(ca.y,0,1)),mr=ir.getUTCDay(),ir=mr>4||mr===0?x.utcMonday.ceil(ir):x.utcMonday(ir),ir=x.utcDay.offset(ir,(ca.V-1)*7),ca.y=ir.getUTCFullYear(),ca.m=ir.getUTCMonth(),ca.d=ir.getUTCDate()+(ca.w+6)%7):(ir=A(e(ca.y,0,1)),mr=ir.getDay(),ir=mr>4||mr===0?x.timeMonday.ceil(ir):x.timeMonday(ir),ir=x.timeDay.offset(ir,(ca.V-1)*7),ca.y=ir.getFullYear(),ca.m=ir.getMonth(),ca.d=ir.getDate()+(ca.w+6)%7)}else("W"in ca||"U"in ca)&&("w"in ca||(ca.w="u"in ca?ca.u%7:"W"in ca?1:0),mr="Z"in ca?M(e(ca.y,0,1)).getUTCDay():A(e(ca.y,0,1)).getDay(),ca.m=0,ca.d="W"in ca?(ca.w+6)%7+ca.W*7-(mr+5)%7:ca.w+ca.U*7-(mr+6)%7);return"Z"in ca?(ca.H+=ca.Z/100|0,ca.M+=ca.Z%100,M(ca)):A(ca)}}function Wt(Lr,Jr,oa,ca){for(var kt=0,ir=Jr.length,mr=oa.length,$r,ma;kt<ir;){if(ca>=mr)return-1;if($r=Jr.charCodeAt(kt++),$r===37){if($r=Jr.charAt(kt++),ma=Ma[$r in r?Jr.charAt(kt++):$r],!ma||(ca=ma(Lr,oa,ca))<0)return-1}else if($r!=oa.charCodeAt(ca++))return-1}return ca}function zt(Lr,Jr,oa){var ca=dt.exec(Jr.slice(oa));return ca?(Lr.p=xt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Vt(Lr,Jr,oa){var ca=Gt.exec(Jr.slice(oa));return ca?(Lr.w=Kt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Ut(Lr,Jr,oa){var ca=It.exec(Jr.slice(oa));return ca?(Lr.w=Bt[ca[0].toLowerCase()],oa+ca[0].length):-1}function xr(Lr,Jr,oa){var ca=Aa.exec(Jr.slice(oa));return ca?(Lr.m=La[ca[0].toLowerCase()],oa+ca[0].length):-1}function Zr(Lr,Jr,oa){var ca=sr.exec(Jr.slice(oa));return ca?(Lr.m=sa[ca[0].toLowerCase()],oa+ca[0].length):-1}function pa(Lr,Jr,oa){return Wt(Lr,Ke,Jr,oa)}function Xr(Lr,Jr,oa){return Wt(Lr,Ne,Jr,oa)}function Ea(Lr,Jr,oa){return Wt(Lr,Ee,Jr,oa)}function Fa(Lr){return Te[Lr.getDay()]}function qa(Lr){return ke[Lr.getDay()]}function ya(Lr){return rt[Lr.getMonth()]}function $a(Lr){return Le[Lr.getMonth()]}function mt(Lr){return Ve[+(Lr.getHours()>=12)]}function gt(Lr){return 1+~~(Lr.getMonth()/3)}function Er(Lr){return Te[Lr.getUTCDay()]}function kr(Lr){return ke[Lr.getUTCDay()]}function br(Lr){return rt[Lr.getUTCMonth()]}function Tr(Lr){return Le[Lr.getUTCMonth()]}function Mr(Lr){return Ve[+(Lr.getUTCHours()>=12)]}function Fr(Lr){return 1+~~(Lr.getUTCMonth()/3)}return{format:function(Lr){var Jr=Ua(Lr+="",ka);return Jr.toString=function(){return Lr},Jr},parse:function(Lr){var Jr=ni(Lr+="",!1);return Jr.toString=function(){return Lr},Jr},utcFormat:function(Lr){var Jr=Ua(Lr+="",Ga);return Jr.toString=function(){return Lr},Jr},utcParse:function(Lr){var Jr=ni(Lr+="",!0);return Jr.toString=function(){return Lr},Jr}}}var r={"-":"",_:" ",0:"0"},o=/^\s*\d+/,a=/^%/,i=/[\\^$*+?|[\]().{}]/g;function n(Fe,Ke,Ne){var Ee=Fe<0?"-":"",Ve=(Ee?-Fe:Fe)+"",ke=Ve.length;return Ee+(ke<Ne?new Array(Ne-ke+1).join(Ke)+Ve:Ve)}function s(Fe){return Fe.replace(i,"\\$&")}function c(Fe){return new RegExp("^(?:"+Fe.map(s).join("|")+")","i")}function h(Fe){for(var Ke={},Ne=-1,Ee=Fe.length;++Ne<Ee;)Ke[Fe[Ne].toLowerCase()]=Ne;return Ke}function v(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.w=+Ee[0],Ne+Ee[0].length):-1}function p(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.u=+Ee[0],Ne+Ee[0].length):-1}function T(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.U=+Ee[0],Ne+Ee[0].length):-1}function l(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.V=+Ee[0],Ne+Ee[0].length):-1}function _(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.W=+Ee[0],Ne+Ee[0].length):-1}function w(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+4));return Ee?(Fe.y=+Ee[0],Ne+Ee[0].length):-1}function S(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.y=+Ee[0]+(+Ee[0]>68?1900:2e3),Ne+Ee[0].length):-1}function E(Fe,Ke,Ne){var Ee=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.Z=Ee[1]?0:-(Ee[2]+(Ee[3]||"00")),Ne+Ee[0].length):-1}function m(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.q=Ee[0]*3-3,Ne+Ee[0].length):-1}function b(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.m=Ee[0]-1,Ne+Ee[0].length):-1}function d(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.d=+Ee[0],Ne+Ee[0].length):-1}function u(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.m=0,Fe.d=+Ee[0],Ne+Ee[0].length):-1}function y(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.H=+Ee[0],Ne+Ee[0].length):-1}function f(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.M=+Ee[0],Ne+Ee[0].length):-1}function P(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.S=+Ee[0],Ne+Ee[0].length):-1}function L(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.L=+Ee[0],Ne+Ee[0].length):-1}function z(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.L=Math.floor(Ee[0]/1e3),Ne+Ee[0].length):-1}function F(Fe,Ke,Ne){var Ee=a.exec(Ke.slice(Ne,Ne+1));return Ee?Ne+Ee[0].length:-1}function B(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.Q=+Ee[0],Ne+Ee[0].length):-1}function O(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.s=+Ee[0],Ne+Ee[0].length):-1}function I(Fe,Ke){return n(Fe.getDate(),Ke,2)}function N(Fe,Ke){return n(Fe.getHours(),Ke,2)}function U(Fe,Ke){return n(Fe.getHours()%12||12,Ke,2)}function W(Fe,Ke){return n(1+x.timeDay.count(x.timeYear(Fe),Fe),Ke,3)}function Q(Fe,Ke){return n(Fe.getMilliseconds(),Ke,3)}function ue(Fe,Ke){return Q(Fe,Ke)+"000"}function se(Fe,Ke){return n(Fe.getMonth()+1,Ke,2)}function he(Fe,Ke){return n(Fe.getMinutes(),Ke,2)}function G(Fe,Ke){return n(Fe.getSeconds(),Ke,2)}function $(Fe){var Ke=Fe.getDay();return Ke===0?7:Ke}function J(Fe,Ke){return n(x.timeSunday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function Z(Fe,Ke){var Ne=Fe.getDay();return Fe=Ne>=4||Ne===0?x.timeThursday(Fe):x.timeThursday.ceil(Fe),n(x.timeThursday.count(x.timeYear(Fe),Fe)+(x.timeYear(Fe).getDay()===4),Ke,2)}function re(Fe){return Fe.getDay()}function ne(Fe,Ke){return n(x.timeMonday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function j(Fe,Ke){return n(Fe.getFullYear()%100,Ke,2)}function ee(Fe,Ke){return n(Fe.getFullYear()%1e4,Ke,4)}function ie(Fe){var Ke=Fe.getTimezoneOffset();return(Ke>0?"-":(Ke*=-1,"+"))+n(Ke/60|0,"0",2)+n(Ke%60,"0",2)}function fe(Fe,Ke){return n(Fe.getUTCDate(),Ke,2)}function be(Fe,Ke){return n(Fe.getUTCHours(),Ke,2)}function Ae(Fe,Ke){return n(Fe.getUTCHours()%12||12,Ke,2)}function Be(Fe,Ke){return n(1+x.utcDay.count(x.utcYear(Fe),Fe),Ke,3)}function Ie(Fe,Ke){return n(Fe.getUTCMilliseconds(),Ke,3)}function Ze(Fe,Ke){return Ie(Fe,Ke)+"000"}function at(Fe,Ke){return n(Fe.getUTCMonth()+1,Ke,2)}function it(Fe,Ke){return n(Fe.getUTCMinutes(),Ke,2)}function et(Fe,Ke){return n(Fe.getUTCSeconds(),Ke,2)}function lt(Fe){var Ke=Fe.getUTCDay();return Ke===0?7:Ke}function Me(Fe,Ke){return n(x.utcSunday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function ge(Fe,Ke){var Ne=Fe.getUTCDay();return Fe=Ne>=4||Ne===0?x.utcThursday(Fe):x.utcThursday.ceil(Fe),n(x.utcThursday.count(x.utcYear(Fe),Fe)+(x.utcYear(Fe).getUTCDay()===4),Ke,2)}function ce(Fe){return Fe.getUTCDay()}function ze(Fe,Ke){return n(x.utcMonday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function tt(Fe,Ke){return n(Fe.getUTCFullYear()%100,Ke,2)}function nt(Fe,Ke){return n(Fe.getUTCFullYear()%1e4,Ke,4)}function Qe(){return"+0000"}function Ct(){return"%"}function St(Fe){return+Fe}function Ot(Fe){return Math.floor(+Fe/1e3)}var jt;ur({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function ur(Fe){return jt=t(Fe),g.timeFormat=jt.format,g.timeParse=jt.parse,g.utcFormat=jt.utcFormat,g.utcParse=jt.utcParse,jt}var ar="%Y-%m-%dT%H:%M:%S.%LZ";function Cr(Fe){return Fe.toISOString()}var vr=Date.prototype.toISOString?Cr:g.utcFormat(ar);function _r(Fe){var Ke=new Date(Fe);return isNaN(Ke)?null:Ke}var yt=+new Date("2000-01-01T00:00:00.000Z")?_r:g.utcParse(ar);g.isoFormat=vr,g.isoParse=yt,g.timeFormatDefaultLocale=ur,g.timeFormatLocale=t,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zy=Ye({"node_modules/d3-format/dist/d3-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){return Math.abs(b=Math.round(b))>=1e21?b.toLocaleString("en").replace(/,/g,""):b.toString(10)}function A(b,d){if((u=(b=d?b.toExponential(d-1):b.toExponential()).indexOf("e"))<0)return null;var u,y=b.slice(0,u);return[y.length>1?y[0]+y.slice(2):y,+b.slice(u+1)]}function M(b){return b=A(Math.abs(b)),b?b[1]:NaN}function e(b,d){return function(u,y){for(var f=u.length,P=[],L=0,z=b[0],F=0;f>0&&z>0&&(F+z+1>y&&(z=Math.max(1,y-F)),P.push(u.substring(f-=z,f+z)),!((F+=z+1)>y));)z=b[L=(L+1)%b.length];return P.reverse().join(d)}}function t(b){return function(d){return d.replace(/[0-9]/g,function(u){return b[+u]})}}var r=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(b){if(!(d=r.exec(b)))throw new Error("invalid format: "+b);var d;return new a({fill:d[1],align:d[2],sign:d[3],symbol:d[4],zero:d[5],width:d[6],comma:d[7],precision:d[8]&&d[8].slice(1),trim:d[9],type:d[10]})}o.prototype=a.prototype;function a(b){this.fill=b.fill===void 0?" ":b.fill+"",this.align=b.align===void 0?">":b.align+"",this.sign=b.sign===void 0?"-":b.sign+"",this.symbol=b.symbol===void 0?"":b.symbol+"",this.zero=!!b.zero,this.width=b.width===void 0?void 0:+b.width,this.comma=!!b.comma,this.precision=b.precision===void 0?void 0:+b.precision,this.trim=!!b.trim,this.type=b.type===void 0?"":b.type+""}a.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function i(b){e:for(var d=b.length,u=1,y=-1,f;u<d;++u)switch(b[u]){case".":y=f=u;break;case"0":y===0&&(y=u),f=u;break;default:if(!+b[u])break e;y>0&&(y=0);break}return y>0?b.slice(0,y)+b.slice(f+1):b}var n;function s(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1],P=f-(n=Math.max(-8,Math.min(8,Math.floor(f/3)))*3)+1,L=y.length;return P===L?y:P>L?y+new Array(P-L+1).join("0"):P>0?y.slice(0,P)+"."+y.slice(P):"0."+new Array(1-P).join("0")+A(b,Math.max(0,d+P-1))[0]}function c(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1];return f<0?"0."+new Array(-f).join("0")+y:y.length>f+1?y.slice(0,f+1)+"."+y.slice(f+1):y+new Array(f-y.length+2).join("0")}var h={"%":function(b,d){return(b*100).toFixed(d)},b:function(b){return Math.round(b).toString(2)},c:function(b){return b+""},d:x,e:function(b,d){return b.toExponential(d)},f:function(b,d){return b.toFixed(d)},g:function(b,d){return b.toPrecision(d)},o:function(b){return Math.round(b).toString(8)},p:function(b,d){return c(b*100,d)},r:c,s,X:function(b){return Math.round(b).toString(16).toUpperCase()},x:function(b){return Math.round(b).toString(16)}};function v(b){return b}var p=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function l(b){var d=b.grouping===void 0||b.thousands===void 0?v:e(p.call(b.grouping,Number),b.thousands+""),u=b.currency===void 0?"":b.currency[0]+"",y=b.currency===void 0?"":b.currency[1]+"",f=b.decimal===void 0?".":b.decimal+"",P=b.numerals===void 0?v:t(p.call(b.numerals,String)),L=b.percent===void 0?"%":b.percent+"",z=b.minus===void 0?"-":b.minus+"",F=b.nan===void 0?"NaN":b.nan+"";function B(I){I=o(I);var N=I.fill,U=I.align,W=I.sign,Q=I.symbol,ue=I.zero,se=I.width,he=I.comma,G=I.precision,$=I.trim,J=I.type;J==="n"?(he=!0,J="g"):h[J]||(G===void 0&&(G=12),$=!0,J="g"),(ue||N==="0"&&U==="=")&&(ue=!0,N="0",U="=");var Z=Q==="$"?u:Q==="#"&&/[boxX]/.test(J)?"0"+J.toLowerCase():"",re=Q==="$"?y:/[%p]/.test(J)?L:"",ne=h[J],j=/[defgprs%]/.test(J);G=G===void 0?6:/[gprs]/.test(J)?Math.max(1,Math.min(21,G)):Math.max(0,Math.min(20,G));function ee(ie){var fe=Z,be=re,Ae,Be,Ie;if(J==="c")be=ne(ie)+be,ie="";else{ie=+ie;var Ze=ie<0||1/ie<0;if(ie=isNaN(ie)?F:ne(Math.abs(ie),G),$&&(ie=i(ie)),Ze&&+ie==0&&W!=="+"&&(Ze=!1),fe=(Ze?W==="("?W:z:W==="-"||W==="("?"":W)+fe,be=(J==="s"?T[8+n/3]:"")+be+(Ze&&W==="("?")":""),j){for(Ae=-1,Be=ie.length;++Ae<Be;)if(Ie=ie.charCodeAt(Ae),48>Ie||Ie>57){be=(Ie===46?f+ie.slice(Ae+1):ie.slice(Ae))+be,ie=ie.slice(0,Ae);break}}}he&&!ue&&(ie=d(ie,1/0));var at=fe.length+ie.length+be.length,it=at<se?new Array(se-at+1).join(N):"";switch(he&&ue&&(ie=d(it+ie,it.length?se-be.length:1/0),it=""),U){case"<":ie=fe+ie+be+it;break;case"=":ie=fe+it+ie+be;break;case"^":ie=it.slice(0,at=it.length>>1)+fe+ie+be+it.slice(at);break;default:ie=it+fe+ie+be;break}return P(ie)}return ee.toString=function(){return I+""},ee}function O(I,N){var U=B((I=o(I),I.type="f",I)),W=Math.max(-8,Math.min(8,Math.floor(M(N)/3)))*3,Q=Math.pow(10,-W),ue=T[8+W/3];return function(se){return U(Q*se)+ue}}return{format:B,formatPrefix:O}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(b){return _=l(b),g.format=_.format,g.formatPrefix=_.formatPrefix,_}function S(b){return Math.max(0,-M(Math.abs(b)))}function E(b,d){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(M(d)/3)))*3-M(Math.abs(b)))}function m(b,d){return b=Math.abs(b),d=Math.abs(d)-b,Math.max(0,M(d)-M(b))+1}g.FormatSpecifier=a,g.formatDefaultLocale=w,g.formatLocale=l,g.formatSpecifier=o,g.precisionFixed=S,g.precisionPrefix=E,g.precisionRound=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),aF=Ye({"node_modules/is-string-blank/index.js"(X,H){"use strict";H.exports=function(g){for(var x=g.length,A,M=0;M<x;M++)if(A=g.charCodeAt(M),(A<9||A>13)&&A!==32&&A!==133&&A!==160&&A!==5760&&A!==6158&&(A<8192||A>8205)&&A!==8232&&A!==8233&&A!==8239&&A!==8287&&A!==8288&&A!==12288&&A!==65279)return!1;return!0}}}),jo=Ye({"node_modules/fast-isnumeric/index.js"(X,H){"use strict";var g=aF();H.exports=function(x){var A=typeof x;if(A==="string"){var M=x;if(x=+x,x===0&&g(M))return!1}else if(A!=="number")return!1;return x-x<1}}}),ks=Ye({"src/constants/numerical.js"(X,H){"use strict";H.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}}}),XA=Ye({"node_modules/base64-arraybuffer/dist/base64-arraybuffer.umd.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g["base64-arraybuffer"]={}))})(X,function(g){"use strict";for(var x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A=typeof Uint8Array>"u"?[]:new Uint8Array(256),M=0;M<x.length;M++)A[x.charCodeAt(M)]=M;var e=function(r){var o=new Uint8Array(r),a,i=o.length,n="";for(a=0;a<i;a+=3)n+=x[o[a]>>2],n+=x[(o[a]&3)<<4|o[a+1]>>4],n+=x[(o[a+1]&15)<<2|o[a+2]>>6],n+=x[o[a+2]&63];return i%3===2?n=n.substring(0,n.length-1)+"=":i%3===1&&(n=n.substring(0,n.length-2)+"=="),n},t=function(r){var o=r.length*.75,a=r.length,i,n=0,s,c,h,v;r[r.length-1]==="="&&(o--,r[r.length-2]==="="&&o--);var p=new ArrayBuffer(o),T=new Uint8Array(p);for(i=0;i<a;i+=4)s=A[r.charCodeAt(i)],c=A[r.charCodeAt(i+1)],h=A[r.charCodeAt(i+2)],v=A[r.charCodeAt(i+3)],T[n++]=s<<2|c>>4,T[n++]=(c&15)<<4|h>>2,T[n++]=(h&3)<<6|v&63;return p};g.decode=t,g.encode=e,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zv=Ye({"src/lib/is_plain_object.js"(X,H){"use strict";H.exports=function(x){return window&&window.process&&window.process.versions?Object.prototype.toString.call(x)==="[object Object]":Object.prototype.toString.call(x)==="[object Object]"&&Object.getPrototypeOf(x).hasOwnProperty("hasOwnProperty")}}}),xp=Ye({"src/lib/array.js"(X){"use strict";var H=XA().decode,g=Zv(),x=Array.isArray,A=ArrayBuffer,M=DataView;function e(s){return A.isView(s)&&!(s instanceof M)}X.isTypedArray=e;function t(s){return x(s)||e(s)}X.isArrayOrTypedArray=t;function r(s){return!t(s[0])}X.isArray1D=r,X.ensureArray=function(s,c){return x(s)||(s=[]),s.length=c,s};var o={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};o.uint8c=o.u1c,o.uint8=o.u1,o.int8=o.i1,o.uint16=o.u2,o.int16=o.i2,o.uint32=o.u4,o.int32=o.i4,o.float32=o.f4,o.float64=o.f8;function a(s){return s.constructor===ArrayBuffer}X.isArrayBuffer=a,X.decodeTypedArraySpec=function(s){var c=[],h=i(s),v=h.dtype,p=o[v];if(!p)throw new Error('Error in dtype: "'+v+'"');var T=p.BYTES_PER_ELEMENT,l=h.bdata;a(l)||(l=H(l));var _=h.shape===void 0?[l.byteLength/T]:(""+h.shape).split(",");_.reverse();var w=_.length,S,E,m=+_[0],b=T*m,d=0;if(w===1)c=new p(l);else if(w===2)for(S=+_[1],E=0;E<S;E++)c[E]=new p(l,d,m),d+=b;else if(w===3){S=+_[1];for(var u=+_[2],y=0;y<u;y++)for(c[y]=[],E=0;E<S;E++)c[y][E]=new p(l,d,m),d+=b}else throw new Error("ndim: "+w+'is not supported with the shape:"'+h.shape+'"');return c.bdata=h.bdata,c.dtype=h.dtype,c.shape=_.reverse().join(","),s._inputArray=c,c},X.isTypedArraySpec=function(s){return g(s)&&s.hasOwnProperty("dtype")&&typeof s.dtype=="string"&&s.hasOwnProperty("bdata")&&(typeof s.bdata=="string"||a(s.bdata))&&(s.shape===void 0||s.hasOwnProperty("shape")&&(typeof s.shape=="string"||typeof s.shape=="number"))};function i(s){return{bdata:s.bdata,dtype:s.dtype,shape:s.shape}}X.concat=function(){var s=[],c=!0,h=0,v,p,T,l,_,w,S,E;for(T=0;T<arguments.length;T++)l=arguments[T],w=l.length,w&&(p?s.push(l):(p=l,_=w),x(l)?v=!1:(c=!1,h?v!==l.constructor&&(v=!1):v=l.constructor),h+=w);if(!h)return[];if(!s.length)return p;if(c)return p.concat.apply(p,s);if(v){for(S=new v(h),S.set(p),T=0;T<s.length;T++)l=s[T],S.set(l,_),_+=l.length;return S}for(S=new Array(h),E=0;E<p.length;E++)S[E]=p[E];for(T=0;T<s.length;T++){for(l=s[T],E=0;E<l.length;E++)S[_+E]=l[E];_+=E}return S},X.maxRowLength=function(s){return n(s,Math.max,0)},X.minRowLength=function(s){return n(s,Math.min,1/0)};function n(s,c,h){if(t(s))if(t(s[0])){for(var v=h,p=0;p<s.length;p++)v=c(v,s[p].length);return v}else return s.length;return 0}}}),__=Ye({"src/lib/nested_property.js"(X,H){"use strict";var g=jo(),x=xp().isArrayOrTypedArray;H.exports=function(s,c){if(g(c))c=String(c);else if(typeof c!="string"||c.substr(c.length-4)==="[-1]")throw"bad property string";var h=c.split("."),v,p,T,l;for(l=0;l<h.length;l++)if(String(h[l]).slice(0,2)==="__")throw"bad property string";for(l=0;l<h.length;){if(v=String(h[l]).match(/^([^\[\]]*)((\[\-?[0-9]*\])+)$/),v){if(v[1])h[l]=v[1];else if(l===0)h.splice(0,1);else throw"bad property string";for(p=v[2].substr(1,v[2].length-2).split("]["),T=0;T<p.length;T++)l++,h.splice(l,0,Number(p[T]))}l++}return typeof s!="object"?i(s,c,h):{set:t(s,h,c),get:A(s,h),astr:c,parts:h,obj:s}};function A(n,s){return function(c){var h=n,v,p,T,l,_;for(l=0;l<s.length-1;l++){if(v=s[l],v===-1){for(p=!0,T=[],_=0;_<h.length;_++)T[_]=A(h[_],s.slice(l+1))(c),T[_]!==T[0]&&(p=!1);return p?T[0]:T}if(typeof v=="number"&&!x(h)||(h=h[v],typeof h!="object"||h===null))return}if(!(typeof h!="object"||h===null)&&(T=h[s[l]],!(!c&&T===null)))return T}}var M=/(^|\.)args\[/;function e(n,s){return n===void 0||n===null&&!s.match(M)}function t(n,s,c){return function(h){var v=n,p="",T=[[n,p]],l=e(h,c),_,w;for(w=0;w<s.length-1;w++){if(_=s[w],typeof _=="number"&&!x(v))throw"array index but container is not an array";if(_===-1){if(l=!o(v,s.slice(w+1),h,c),l)break;return}if(!a(v,_,s[w+1],l))break;if(v=v[_],typeof v!="object"||v===null)throw"container is not an object";p=r(p,_),T.push([v,p])}if(l){if(w===s.length-1&&(delete v[s[w]],Array.isArray(v)&&+s[w]===v.length-1))for(;v.length&&v[v.length-1]===void 0;)v.pop()}else v[s[w]]=h}}function r(n,s){var c=s;return g(s)?c="["+s+"]":n&&(c="."+s),n+c}function o(n,s,c,h){var v=x(c),p=!0,T=c,l=h.replace("-1",0),_=v?!1:e(c,l),w=s[0],S;for(S=0;S<n.length;S++)l=h.replace("-1",S),v&&(T=c[S%c.length],_=e(T,l)),_&&(p=!1),a(n,S,w,_)&&t(n[S],s,h.replace("-1",S))(T);return p}function a(n,s,c,h){if(n[s]===void 0){if(h)return!1;typeof c=="number"?n[s]=[]:n[s]={}}return!0}function i(n,s,c){return{set:function(){throw"bad container"},get:function(){},astr:s,parts:c,obj:n}}}}),iF=Ye({"src/lib/keyed_container.js"(X,H){"use strict";var g=__(),x=/^\w*$/,A=0,M=1,e=2,t=3,r=4;H.exports=function(a,i,n,s){n=n||"name",s=s||"value";var c,h,v,p={};i&&i.length?(v=g(a,i),h=v.get()):h=a,i=i||"";var T={};if(h)for(c=0;c<h.length;c++)T[h[c][n]]=c;var l=x.test(s),_={set:function(w,S){var E=S===null?r:A;if(!h){if(!v||E===r)return;h=[],v.set(h)}var m=T[w];if(m===void 0){if(E===r)return;E=E|t,m=h.length,T[w]=m}else S!==(l?h[m][s]:g(h[m],s).get())&&(E=E|e);var b=h[m]=h[m]||{};return b[n]=w,l?b[s]=S:g(b,s).set(S),S!==null&&(E=E&~r),p[m]=p[m]|E,_},get:function(w){if(h){var S=T[w];if(S!==void 0)return l?h[S][s]:g(h[S],s).get()}},rename:function(w,S){var E=T[w];return E===void 0||(p[E]=p[E]|M,T[S]=E,delete T[w],h[E][n]=S),_},remove:function(w){var S=T[w];if(S===void 0)return _;var E=h[S];if(Object.keys(E).length>2)return p[S]=p[S]|e,_.set(w,null);if(l){for(c=S;c<h.length;c++)p[c]=p[c]|t;for(c=S;c<h.length;c++)T[h[c][n]]--;h.splice(S,1),delete T[w]}else g(E,s).set(null),p[S]=p[S]|e|r;return _},constructUpdate:function(){for(var w,S,E={},m=Object.keys(p),b=0;b<m.length;b++)S=m[b],w=i+"["+S+"]",h[S]?(p[S]&M&&(E[w+"."+n]=h[S][n]),p[S]&e&&(l?E[w+"."+s]=p[S]&r?null:h[S][s]:E[w+"."+s]=p[S]&r?null:g(h[S],s).get())):E[w]=null;return E}};return _}}}),nF=Ye({"src/lib/relative_attr.js"(X,H){"use strict";var g=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,x=/^[^\.\[\]]+$/;H.exports=function(A,M){for(;M;){var e=A.match(g);if(e)A=e[1];else if(A.match(x))A="";else throw new Error("bad relativeAttr call:"+[A,M]);if(M.charAt(0)==="^")M=M.slice(1);else break}return A&&M.charAt(0)!=="["?A+"."+M:A+M}}}),c2=Ye({"src/lib/to_log_range.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){if(A>0)return Math.log(A)/Math.LN10;var e=Math.log(Math.min(M[0],M[1]))/Math.LN10;return g(e)||(e=Math.log(Math.max(M[0],M[1]))/Math.LN10-6),e}}}),oF=Ye({"src/lib/relink_private.js"(X,H){"use strict";var g=xp().isArrayOrTypedArray,x=Zv();H.exports=function A(M,e){for(var t in e){var r=e[t],o=M[t];if(o!==r)if(t.charAt(0)==="_"||typeof r=="function"){if(t in M)continue;M[t]=r}else if(g(r)&&g(o)&&x(r[0])){if(t==="customdata"||t==="ids")continue;for(var a=Math.min(r.length,o.length),i=0;i<a;i++)o[i]!==r[i]&&x(r[i])&&x(o[i])&&A(o[i],r[i])}else x(r)&&x(o)&&(A(o,r),Object.keys(o).length||delete M[t])}}}}),Xy=Ye({"src/lib/mod.js"(X,H){"use strict";function g(A,M){var e=A%M;return e<0?e+M:e}function x(A,M){return Math.abs(A)>M/2?A-Math.round(A/M)*M:A}H.exports={mod:g,modHalf:x}}}),bh=Ye({"node_modules/tinycolor2/tinycolor.js"(X,H){(function(g){var x=/^\s+/,A=/\s+$/,M=0,e=g.round,t=g.min,r=g.max,o=g.random;function a(j,ee){if(j=j||"",ee=ee||{},j instanceof a)return j;if(!(this instanceof a))return new a(j,ee);var ie=i(j);this._originalInput=j,this._r=ie.r,this._g=ie.g,this._b=ie.b,this._a=ie.a,this._roundA=e(100*this._a)/100,this._format=ee.format||ie.format,this._gradientType=ee.gradientType,this._r<1&&(this._r=e(this._r)),this._g<1&&(this._g=e(this._g)),this._b<1&&(this._b=e(this._b)),this._ok=ie.ok,this._tc_id=M++}a.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var j=this.toRgb();return(j.r*299+j.g*587+j.b*114)/1e3},getLuminance:function(){var j=this.toRgb(),ee,ie,fe,be,Ae,Be;return ee=j.r/255,ie=j.g/255,fe=j.b/255,ee<=.03928?be=ee/12.92:be=g.pow((ee+.055)/1.055,2.4),ie<=.03928?Ae=ie/12.92:Ae=g.pow((ie+.055)/1.055,2.4),fe<=.03928?Be=fe/12.92:Be=g.pow((fe+.055)/1.055,2.4),.2126*be+.7152*Ae+.0722*Be},setAlpha:function(j){return this._a=I(j),this._roundA=e(100*this._a)/100,this},toHsv:function(){var j=h(this._r,this._g,this._b);return{h:j.h*360,s:j.s,v:j.v,a:this._a}},toHsvString:function(){var j=h(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.v*100);return this._a==1?"hsv("+ee+", "+ie+"%, "+fe+"%)":"hsva("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHsl:function(){var j=s(this._r,this._g,this._b);return{h:j.h*360,s:j.s,l:j.l,a:this._a}},toHslString:function(){var j=s(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.l*100);return this._a==1?"hsl("+ee+", "+ie+"%, "+fe+"%)":"hsla("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHex:function(j){return p(this._r,this._g,this._b,j)},toHexString:function(j){return"#"+this.toHex(j)},toHex8:function(j){return T(this._r,this._g,this._b,this._a,j)},toHex8String:function(j){return"#"+this.toHex8(j)},toRgb:function(){return{r:e(this._r),g:e(this._g),b:e(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+e(this._r)+", "+e(this._g)+", "+e(this._b)+")":"rgba("+e(this._r)+", "+e(this._g)+", "+e(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:e(N(this._r,255)*100)+"%",g:e(N(this._g,255)*100)+"%",b:e(N(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%)":"rgba("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:B[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(j){var ee="#"+l(this._r,this._g,this._b,this._a),ie=ee,fe=this._gradientType?"GradientType = 1, ":"";if(j){var be=a(j);ie="#"+l(be._r,be._g,be._b,be._a)}return"progid:DXImageTransform.Microsoft.gradient("+fe+"startColorstr="+ee+",endColorstr="+ie+")"},toString:function(j){var ee=!!j;j=j||this._format;var ie=!1,fe=this._a<1&&this._a>=0,be=!ee&&fe&&(j==="hex"||j==="hex6"||j==="hex3"||j==="hex4"||j==="hex8"||j==="name");return be?j==="name"&&this._a===0?this.toName():this.toRgbString():(j==="rgb"&&(ie=this.toRgbString()),j==="prgb"&&(ie=this.toPercentageRgbString()),(j==="hex"||j==="hex6")&&(ie=this.toHexString()),j==="hex3"&&(ie=this.toHexString(!0)),j==="hex4"&&(ie=this.toHex8String(!0)),j==="hex8"&&(ie=this.toHex8String()),j==="name"&&(ie=this.toName()),j==="hsl"&&(ie=this.toHslString()),j==="hsv"&&(ie=this.toHsvString()),ie||this.toHexString())},clone:function(){return a(this.toString())},_applyModification:function(j,ee){var ie=j.apply(null,[this].concat([].slice.call(ee)));return this._r=ie._r,this._g=ie._g,this._b=ie._b,this.setAlpha(ie._a),this},lighten:function(){return this._applyModification(E,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(b,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(S,arguments)},spin:function(){return this._applyModification(d,arguments)},_applyCombination:function(j,ee){return j.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(L,arguments)},complement:function(){return this._applyCombination(u,arguments)},monochromatic:function(){return this._applyCombination(z,arguments)},splitcomplement:function(){return this._applyCombination(P,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(f,arguments)}},a.fromRatio=function(j,ee){if(typeof j=="object"){var ie={};for(var fe in j)j.hasOwnProperty(fe)&&(fe==="a"?ie[fe]=j[fe]:ie[fe]=he(j[fe]));j=ie}return a(j,ee)};function i(j){var ee={r:0,g:0,b:0},ie=1,fe=null,be=null,Ae=null,Be=!1,Ie=!1;return typeof j=="string"&&(j=re(j)),typeof j=="object"&&(Z(j.r)&&Z(j.g)&&Z(j.b)?(ee=n(j.r,j.g,j.b),Be=!0,Ie=String(j.r).substr(-1)==="%"?"prgb":"rgb"):Z(j.h)&&Z(j.s)&&Z(j.v)?(fe=he(j.s),be=he(j.v),ee=v(j.h,fe,be),Be=!0,Ie="hsv"):Z(j.h)&&Z(j.s)&&Z(j.l)&&(fe=he(j.s),Ae=he(j.l),ee=c(j.h,fe,Ae),Be=!0,Ie="hsl"),j.hasOwnProperty("a")&&(ie=j.a)),ie=I(ie),{ok:Be,format:j.format||Ie,r:t(255,r(ee.r,0)),g:t(255,r(ee.g,0)),b:t(255,r(ee.b,0)),a:ie}}function n(j,ee,ie){return{r:N(j,255)*255,g:N(ee,255)*255,b:N(ie,255)*255}}function s(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=(fe+be)/2;if(fe==be)Ae=Be=0;else{var Ze=fe-be;switch(Be=Ie>.5?Ze/(2-fe-be):Ze/(fe+be),fe){case j:Ae=(ee-ie)/Ze+(ee<ie?6:0);break;case ee:Ae=(ie-j)/Ze+2;break;case ie:Ae=(j-ee)/Ze+4;break}Ae/=6}return{h:Ae,s:Be,l:Ie}}function c(j,ee,ie){var fe,be,Ae;j=N(j,360),ee=N(ee,100),ie=N(ie,100);function Be(at,it,et){return et<0&&(et+=1),et>1&&(et-=1),et<1/6?at+(it-at)*6*et:et<1/2?it:et<2/3?at+(it-at)*(2/3-et)*6:at}if(ee===0)fe=be=Ae=ie;else{var Ie=ie<.5?ie*(1+ee):ie+ee-ie*ee,Ze=2*ie-Ie;fe=Be(Ze,Ie,j+1/3),be=Be(Ze,Ie,j),Ae=Be(Ze,Ie,j-1/3)}return{r:fe*255,g:be*255,b:Ae*255}}function h(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=fe,Ze=fe-be;if(Be=fe===0?0:Ze/fe,fe==be)Ae=0;else{switch(fe){case j:Ae=(ee-ie)/Ze+(ee<ie?6:0);break;case ee:Ae=(ie-j)/Ze+2;break;case ie:Ae=(j-ee)/Ze+4;break}Ae/=6}return{h:Ae,s:Be,v:Ie}}function v(j,ee,ie){j=N(j,360)*6,ee=N(ee,100),ie=N(ie,100);var fe=g.floor(j),be=j-fe,Ae=ie*(1-ee),Be=ie*(1-be*ee),Ie=ie*(1-(1-be)*ee),Ze=fe%6,at=[ie,Be,Ae,Ae,Ie,ie][Ze],it=[Ie,ie,ie,Be,Ae,Ae][Ze],et=[Ae,Ae,Ie,ie,ie,Be][Ze];return{r:at*255,g:it*255,b:et*255}}function p(j,ee,ie,fe){var be=[se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16))];return fe&&be[0].charAt(0)==be[0].charAt(1)&&be[1].charAt(0)==be[1].charAt(1)&&be[2].charAt(0)==be[2].charAt(1)?be[0].charAt(0)+be[1].charAt(0)+be[2].charAt(0):be.join("")}function T(j,ee,ie,fe,be){var Ae=[se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16)),se(G(fe))];return be&&Ae[0].charAt(0)==Ae[0].charAt(1)&&Ae[1].charAt(0)==Ae[1].charAt(1)&&Ae[2].charAt(0)==Ae[2].charAt(1)&&Ae[3].charAt(0)==Ae[3].charAt(1)?Ae[0].charAt(0)+Ae[1].charAt(0)+Ae[2].charAt(0)+Ae[3].charAt(0):Ae.join("")}function l(j,ee,ie,fe){var be=[se(G(fe)),se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16))];return be.join("")}a.equals=function(j,ee){return!j||!ee?!1:a(j).toRgbString()==a(ee).toRgbString()},a.random=function(){return a.fromRatio({r:o(),g:o(),b:o()})};function _(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.s-=ee/100,ie.s=U(ie.s),a(ie)}function w(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.s+=ee/100,ie.s=U(ie.s),a(ie)}function S(j){return a(j).desaturate(100)}function E(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.l+=ee/100,ie.l=U(ie.l),a(ie)}function m(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toRgb();return ie.r=r(0,t(255,ie.r-e(255*-(ee/100)))),ie.g=r(0,t(255,ie.g-e(255*-(ee/100)))),ie.b=r(0,t(255,ie.b-e(255*-(ee/100)))),a(ie)}function b(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.l-=ee/100,ie.l=U(ie.l),a(ie)}function d(j,ee){var ie=a(j).toHsl(),fe=(ie.h+ee)%360;return ie.h=fe<0?360+fe:fe,a(ie)}function u(j){var ee=a(j).toHsl();return ee.h=(ee.h+180)%360,a(ee)}function y(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+120)%360,s:ee.s,l:ee.l}),a({h:(ie+240)%360,s:ee.s,l:ee.l})]}function f(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+90)%360,s:ee.s,l:ee.l}),a({h:(ie+180)%360,s:ee.s,l:ee.l}),a({h:(ie+270)%360,s:ee.s,l:ee.l})]}function P(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+72)%360,s:ee.s,l:ee.l}),a({h:(ie+216)%360,s:ee.s,l:ee.l})]}function L(j,ee,ie){ee=ee||6,ie=ie||30;var fe=a(j).toHsl(),be=360/ie,Ae=[a(j)];for(fe.h=(fe.h-(be*ee>>1)+720)%360;--ee;)fe.h=(fe.h+be)%360,Ae.push(a(fe));return Ae}function z(j,ee){ee=ee||6;for(var ie=a(j).toHsv(),fe=ie.h,be=ie.s,Ae=ie.v,Be=[],Ie=1/ee;ee--;)Be.push(a({h:fe,s:be,v:Ae})),Ae=(Ae+Ie)%1;return Be}a.mix=function(j,ee,ie){ie=ie===0?0:ie||50;var fe=a(j).toRgb(),be=a(ee).toRgb(),Ae=ie/100,Be={r:(be.r-fe.r)*Ae+fe.r,g:(be.g-fe.g)*Ae+fe.g,b:(be.b-fe.b)*Ae+fe.b,a:(be.a-fe.a)*Ae+fe.a};return a(Be)},a.readability=function(j,ee){var ie=a(j),fe=a(ee);return(g.max(ie.getLuminance(),fe.getLuminance())+.05)/(g.min(ie.getLuminance(),fe.getLuminance())+.05)},a.isReadable=function(j,ee,ie){var fe=a.readability(j,ee),be,Ae;switch(Ae=!1,be=ne(ie),be.level+be.size){case"AAsmall":case"AAAlarge":Ae=fe>=4.5;break;case"AAlarge":Ae=fe>=3;break;case"AAAsmall":Ae=fe>=7;break}return Ae},a.mostReadable=function(j,ee,ie){var fe=null,be=0,Ae,Be,Ie,Ze;ie=ie||{},Be=ie.includeFallbackColors,Ie=ie.level,Ze=ie.size;for(var at=0;at<ee.length;at++)Ae=a.readability(j,ee[at]),Ae>be&&(be=Ae,fe=a(ee[at]));return a.isReadable(j,fe,{level:Ie,size:Ze})||!Be?fe:(ie.includeFallbackColors=!1,a.mostReadable(j,["#fff","#000"],ie))};var F=a.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},B=a.hexNames=O(F);function O(j){var ee={};for(var ie in j)j.hasOwnProperty(ie)&&(ee[j[ie]]=ie);return ee}function I(j){return j=parseFloat(j),(isNaN(j)||j<0||j>1)&&(j=1),j}function N(j,ee){Q(j)&&(j="100%");var ie=ue(j);return j=t(ee,r(0,parseFloat(j))),ie&&(j=parseInt(j*ee,10)/100),g.abs(j-ee)<1e-6?1:j%ee/parseFloat(ee)}function U(j){return t(1,r(0,j))}function W(j){return parseInt(j,16)}function Q(j){return typeof j=="string"&&j.indexOf(".")!=-1&&parseFloat(j)===1}function ue(j){return typeof j=="string"&&j.indexOf("%")!=-1}function se(j){return j.length==1?"0"+j:""+j}function he(j){return j<=1&&(j=j*100+"%"),j}function G(j){return g.round(parseFloat(j)*255).toString(16)}function $(j){return W(j)/255}var J=function(){var j="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",ie="(?:"+ee+")|(?:"+j+")",fe="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?",be="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?";return{CSS_UNIT:new RegExp(ie),rgb:new RegExp("rgb"+fe),rgba:new RegExp("rgba"+be),hsl:new RegExp("hsl"+fe),hsla:new RegExp("hsla"+be),hsv:new RegExp("hsv"+fe),hsva:new RegExp("hsva"+be),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Z(j){return!!J.CSS_UNIT.exec(j)}function re(j){j=j.replace(x,"").replace(A,"").toLowerCase();var ee=!1;if(F[j])j=F[j],ee=!0;else if(j=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ie;return(ie=J.rgb.exec(j))?{r:ie[1],g:ie[2],b:ie[3]}:(ie=J.rgba.exec(j))?{r:ie[1],g:ie[2],b:ie[3],a:ie[4]}:(ie=J.hsl.exec(j))?{h:ie[1],s:ie[2],l:ie[3]}:(ie=J.hsla.exec(j))?{h:ie[1],s:ie[2],l:ie[3],a:ie[4]}:(ie=J.hsv.exec(j))?{h:ie[1],s:ie[2],v:ie[3]}:(ie=J.hsva.exec(j))?{h:ie[1],s:ie[2],v:ie[3],a:ie[4]}:(ie=J.hex8.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),a:$(ie[4]),format:ee?"name":"hex8"}:(ie=J.hex6.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),format:ee?"name":"hex"}:(ie=J.hex4.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),a:$(ie[4]+""+ie[4]),format:ee?"name":"hex8"}:(ie=J.hex3.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),format:ee?"name":"hex"}:!1}function ne(j){var ee,ie;return j=j||{level:"AA",size:"small"},ee=(j.level||"AA").toUpperCase(),ie=(j.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),ie!=="small"&&ie!=="large"&&(ie="small"),{level:ee,size:ie}}typeof H<"u"&&H.exports?H.exports=a:window.tinycolor=a})(Math)}}),Oo=Ye({"src/lib/extend.js"(X){"use strict";var H=Zv(),g=Array.isArray;function x(M,e){var t,r;for(t=0;t<M.length;t++){if(r=M[t],r!==null&&typeof r=="object")return!1;r!==void 0&&(e[t]=r)}return!0}X.extendFlat=function(){return A(arguments,!1,!1,!1)},X.extendDeep=function(){return A(arguments,!0,!1,!1)},X.extendDeepAll=function(){return A(arguments,!0,!0,!1)},X.extendDeepNoArrays=function(){return A(arguments,!0,!1,!0)};function A(M,e,t,r){var o=M[0],a=M.length,i,n,s,c,h,v,p;if(a===2&&g(o)&&g(M[1])&&o.length===0){if(p=x(M[1],o),p)return o;o.splice(0,o.length)}for(var T=1;T<a;T++){i=M[T];for(n in i)s=o[n],c=i[n],r&&g(c)?o[n]=c:e&&c&&(H(c)||(h=g(c)))?(h?(h=!1,v=s&&g(s)?s:[]):v=s&&H(s)?s:{},o[n]=A([v,c],e,t,r)):(typeof c<"u"||t)&&(o[n]=c)}return o}}}),Au=Ye({"src/plots/font_attributes.js"(X,H){"use strict";H.exports=function(g){var x=g.variantValues,A=g.editType,M=g.colorEditType;M===void 0&&(M=A);var e={editType:A,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};g.noNumericWeightValues&&(e.valType="enumerated",e.values=e.extras,e.extras=void 0,e.min=void 0,e.max=void 0);var t={family:{valType:"string",noBlank:!0,strict:!0,editType:A},size:{valType:"number",min:1,editType:A},color:{valType:"color",editType:M},weight:e,style:{editType:A,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:g.noFontVariant?void 0:{editType:A,valType:"enumerated",values:x||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:g.noFontTextcase?void 0:{editType:A,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:g.noFontLineposition?void 0:{editType:A,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:g.noFontShadow?void 0:{editType:A,valType:"string",dflt:g.autoShadowDflt?"auto":"none"},editType:A};return g.autoSize&&(t.size.dflt="auto"),g.autoColor&&(t.color.dflt="auto"),g.arrayOk&&(t.family.arrayOk=!0,t.weight.arrayOk=!0,t.style.arrayOk=!0,g.noFontVariant||(t.variant.arrayOk=!0),g.noFontTextcase||(t.textcase.arrayOk=!0),g.noFontLineposition||(t.lineposition.arrayOk=!0),g.noFontShadow||(t.shadow.arrayOk=!0),t.size.arrayOk=!0,t.color.arrayOk=!0),t}}}),x_=Ye({"src/components/fx/constants.js"(X,H){"use strict";H.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}}}),Zm=Ye({"src/components/fx/layout_attributes.js"(X,H){"use strict";var g=x_(),x=Au(),A=x({editType:"none"});A.family.dflt=g.HOVERFONT,A.size.dflt=g.HOVERFONTSIZE,H.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:A,grouptitlefont:x({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}}}),Yy=Ye({"src/components/fx/attributes.js"(X,H){"use strict";var g=Au(),x=Zm().hoverlabel,A=Oo().extendFlat;H.exports={hoverlabel:{bgcolor:A({},x.bgcolor,{arrayOk:!0}),bordercolor:A({},x.bordercolor,{arrayOk:!0}),font:g({arrayOk:!0,editType:"none"}),align:A({},x.align,{arrayOk:!0}),namelength:A({},x.namelength,{arrayOk:!0}),editType:"none"}}}}),Pl=Ye({"src/plots/attributes.js"(X,H){"use strict";var g=Au(),x=Yy();H.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:g({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:x.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}}}),Hg=Ye({"src/components/colorscale/scales.js"(X,H){"use strict";var g=bh(),x={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},A=x.RdBu;function M(r,o){if(o||(o=A),!r)return o;function a(){try{r=x[r]||JSON.parse(r)}catch{r=o}}return typeof r=="string"&&(a(),typeof r=="string"&&a()),e(r)?r:o}function e(r){var o=0;if(!Array.isArray(r)||r.length<2||!r[0]||!r[r.length-1]||+r[0][0]!=0||+r[r.length-1][0]!=1)return!1;for(var a=0;a<r.length;a++){var i=r[a];if(i.length!==2||+i[0]<o||!g(i[1]).isValid())return!1;o=+i[0]}return!0}function t(r){return x[r]!==void 0?!0:e(r)}H.exports={scales:x,defaultScale:A,get:M,isValid:t}}}),Gf=Ye({"src/components/color/attributes.js"(X){"use strict";X.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],X.defaultLine="#444",X.lightLine="#eee",X.background="#fff",X.borderLine="#BEC8D9",X.lightFraction=100*10/11}}),Fn=Ye({"src/components/color/index.js"(X,H){"use strict";var g=bh(),x=jo(),A=xp().isTypedArray,M=H.exports={},e=Gf();M.defaults=e.defaults;var t=M.defaultLine=e.defaultLine;M.lightLine=e.lightLine;var r=M.background=e.background;M.tinyRGB=function(a){var i=a.toRgb();return"rgb("+Math.round(i.r)+", "+Math.round(i.g)+", "+Math.round(i.b)+")"},M.rgb=function(a){return M.tinyRGB(g(a))},M.opacity=function(a){return a?g(a).getAlpha():0},M.addOpacity=function(a,i){var n=g(a).toRgb();return"rgba("+Math.round(n.r)+", "+Math.round(n.g)+", "+Math.round(n.b)+", "+i+")"},M.combine=function(a,i){var n=g(a).toRgb();if(n.a===1)return g(a).toRgbString();var s=g(i||r).toRgb(),c=s.a===1?s:{r:255*(1-s.a)+s.r*s.a,g:255*(1-s.a)+s.g*s.a,b:255*(1-s.a)+s.b*s.a},h={r:c.r*(1-n.a)+n.r*n.a,g:c.g*(1-n.a)+n.g*n.a,b:c.b*(1-n.a)+n.b*n.a};return g(h).toRgbString()},M.interpolate=function(a,i,n){var s=g(a).toRgb(),c=g(i).toRgb(),h={r:n*s.r+(1-n)*c.r,g:n*s.g+(1-n)*c.g,b:n*s.b+(1-n)*c.b};return g(h).toRgbString()},M.contrast=function(a,i,n){var s=g(a);s.getAlpha()!==1&&(s=g(M.combine(a,r)));var c=s.isDark()?i?s.lighten(i):r:n?s.darken(n):t;return c.toString()},M.stroke=function(a,i){var n=g(i);a.style({stroke:M.tinyRGB(n),"stroke-opacity":n.getAlpha()})},M.fill=function(a,i){var n=g(i);a.style({fill:M.tinyRGB(n),"fill-opacity":n.getAlpha()})},M.clean=function(a){if(!(!a||typeof a!="object")){var i=Object.keys(a),n,s,c,h;for(n=0;n<i.length;n++)if(c=i[n],h=a[c],c.substr(c.length-5)==="color")if(Array.isArray(h))for(s=0;s<h.length;s++)h[s]=o(h[s]);else a[c]=o(h);else if(c.substr(c.length-10)==="colorscale"&&Array.isArray(h))for(s=0;s<h.length;s++)Array.isArray(h[s])&&(h[s][1]=o(h[s][1]));else if(Array.isArray(h)){var v=h[0];if(!Array.isArray(v)&&v&&typeof v=="object")for(s=0;s<h.length;s++)M.clean(h[s])}else h&&typeof h=="object"&&!A(h)&&M.clean(h)}};function o(a){if(x(a)||typeof a!="string")return a;var i=a.trim();if(i.substr(0,3)!=="rgb")return a;var n=i.match(/^rgba?\s*\(([^()]*)\)$/);if(!n)return a;var s=n[1].trim().split(/\s*[\s,]\s*/),c=i.charAt(3)==="a"&&s.length===4;if(!c&&s.length!==3)return a;for(var h=0;h<s.length;h++){if(!s[h].length||(s[h]=Number(s[h]),!(s[h]>=0)))return a;if(h===3)s[h]>1&&(s[h]=1);else if(s[h]>=1)return a}var v=Math.round(s[0]*255)+", "+Math.round(s[1]*255)+", "+Math.round(s[2]*255);return c?"rgba("+v+", "+s[3]+")":"rgb("+v+")"}}}),Xm=Ye({"src/constants/interactions.js"(X,H){"use strict";H.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}}}),Ky=Ye({"src/lib/regex.js"(X){"use strict";X.counter=function(H,g,x,A){var M=(g||"")+(x?"":"$"),e=A===!1?"":"^";return H==="xy"?new RegExp(e+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+M):new RegExp(e+H+"([2-9]|[1-9][0-9]+)?"+M)}}}),sF=Ye({"src/lib/coerce.js"(X){"use strict";var H=jo(),g=bh(),x=Oo().extendFlat,A=Pl(),M=Hg(),e=Fn(),t=Xm().DESELECTDIM,r=__(),o=Ky().counter,a=Xy().modHalf,i=xp().isArrayOrTypedArray,n=xp().isTypedArraySpec,s=xp().decodeTypedArraySpec;X.valObjectMeta={data_array:{coerceFunction:function(h,v,p){v.set(i(h)?h:n(h)?s(h):p)}},enumerated:{coerceFunction:function(h,v,p,T){T.coerceNumber&&(h=+h),T.values.indexOf(h)===-1?v.set(p):v.set(h)},validateFunction:function(h,v){v.coerceNumber&&(h=+h);for(var p=v.values,T=0;T<p.length;T++){var l=String(p[T]);if(l.charAt(0)==="/"&&l.charAt(l.length-1)==="/"){var _=new RegExp(l.substr(1,l.length-2));if(_.test(h))return!0}else if(h===p[T])return!0}return!1}},boolean:{coerceFunction:function(h,v,p){h===!0||h===!1?v.set(h):v.set(p)}},number:{coerceFunction:function(h,v,p,T){n(h)&&(h=s(h)),!H(h)||T.min!==void 0&&h<T.min||T.max!==void 0&&h>T.max?v.set(p):v.set(+h)}},integer:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}n(h)&&(h=s(h)),h%1||!H(h)||T.min!==void 0&&h<T.min||T.max!==void 0&&h>T.max?v.set(p):v.set(+h)}},string:{coerceFunction:function(h,v,p,T){if(typeof h!="string"){var l=typeof h=="number";T.strict===!0||!l?v.set(p):v.set(String(h))}else T.noBlank&&!h?v.set(p):v.set(h)}},color:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),g(h).isValid()?v.set(h):v.set(p)}},colorlist:{coerceFunction:function(h,v,p){function T(l){return g(l).isValid()}!Array.isArray(h)||!h.length?v.set(p):h.every(T)?v.set(h):v.set(p)}},colorscale:{coerceFunction:function(h,v,p){v.set(M.get(h,p))}},angle:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),h==="auto"?v.set("auto"):H(h)?v.set(a(+h,360)):v.set(p)}},subplotid:{coerceFunction:function(h,v,p,T){var l=T.regex||o(p);if(typeof h=="string"&&l.test(h)){v.set(h);return}v.set(p)},validateFunction:function(h,v){var p=v.dflt;return h===p?!0:typeof h!="string"?!1:!!o(p).test(h)}},flaglist:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}if(typeof h!="string"){v.set(p);return}for(var l=h.split("+"),_=0;_<l.length;){var w=l[_];T.flags.indexOf(w)===-1||l.indexOf(w)<_?l.splice(_,1):_++}l.length?v.set(l.join("+")):v.set(p)}},any:{coerceFunction:function(h,v,p){h===void 0?v.set(p):v.set(n(h)?s(h):h)}},info_array:{coerceFunction:function(h,v,p,T){function l(F,B,O){var I,N={set:function(U){I=U}};return O===void 0&&(O=B.dflt),X.valObjectMeta[B.valType].coerceFunction(F,N,O,B),I}if(n(h)&&(h=s(h)),!i(h)){v.set(p);return}var _=T.dimensions===2||T.dimensions==="1-2"&&Array.isArray(h)&&i(h[0]),w=T.items,S=[],E=Array.isArray(w),m=E&&_&&i(w[0]),b=_&&E&&!m,d=E&&!b?w.length:h.length,u,y,f,P,L,z;if(p=Array.isArray(p)?p:[],_)for(u=0;u<d;u++)for(S[u]=[],f=i(h[u])?h[u]:[],b?L=w.length:E?L=w[u].length:L=f.length,y=0;y<L;y++)b?P=w[y]:E?P=w[u][y]:P=w,z=l(f[y],P,(p[u]||[])[y]),z!==void 0&&(S[u][y]=z);else for(u=0;u<d;u++)z=l(h[u],E?w[u]:w,p[u]),z!==void 0&&(S[u]=z);v.set(S)},validateFunction:function(h,v){if(!i(h))return!1;var p=v.items,T=Array.isArray(p),l=v.dimensions===2;if(!v.freeLength&&h.length!==p.length)return!1;for(var _=0;_<h.length;_++)if(l){if(!i(h[_])||!v.freeLength&&h[_].length!==p[_].length)return!1;for(var w=0;w<h[_].length;w++)if(!c(h[_][w],T?p[_][w]:p))return!1}else if(!c(h[_],T?p[_]:p))return!1;return!0}}},X.coerce=function(h,v,p,T,l){var _=r(p,T).get(),w=r(h,T),S=r(v,T),E=w.get(),m=v._template;if(E===void 0&&m&&(E=r(m,T).get(),m=0),l===void 0&&(l=_.dflt),_.arrayOk){if(i(E))return S.set(E),E;if(n(E))return E=s(E),S.set(E),E}var b=X.valObjectMeta[_.valType].coerceFunction;b(E,S,l,_);var d=S.get();return m&&d===l&&!c(E,_)&&(E=r(m,T).get(),b(E,S,l,_),d=S.get()),d},X.coerce2=function(h,v,p,T,l){var _=r(h,T),w=X.coerce(h,v,p,T,l),S=_.get();return S!=null?w:!1},X.coerceFont=function(h,v,p,T){T||(T={}),p=x({},p),p=x(p,T.overrideDflt||{});var l={family:h(v+".family",p.family),size:h(v+".size",p.size),color:h(v+".color",p.color),weight:h(v+".weight",p.weight),style:h(v+".style",p.style)};if(T.noFontVariant||(l.variant=h(v+".variant",p.variant)),T.noFontLineposition||(l.lineposition=h(v+".lineposition",p.lineposition)),T.noFontTextcase||(l.textcase=h(v+".textcase",p.textcase)),!T.noFontShadow){var _=p.shadow;_==="none"&&T.autoShadowDflt&&(_="auto"),l.shadow=h(v+".shadow",_)}return l},X.coercePattern=function(h,v,p,T){var l=h(v+".shape");if(l){h(v+".solidity"),h(v+".size");var _=h(v+".fillmode"),w=_==="overlay";if(!T){var S=h(v+".bgcolor",w?p:void 0);h(v+".fgcolor",w?e.contrast(S):p)}h(v+".fgopacity",w?.5:1)}},X.coerceHoverinfo=function(h,v,p){var T=v._module.attributes,l=T.hoverinfo?T:A,_=l.hoverinfo,w;if(p._dataLength===1){var S=_.dflt==="all"?_.flags.slice():_.dflt.split("+");S.splice(S.indexOf("name"),1),w=S.join("+")}return X.coerce(h,v,l,"hoverinfo",w)},X.coerceSelectionMarkerOpacity=function(h,v){if(h.marker){var p=h.marker.opacity;if(p!==void 0){var T,l;!i(p)&&!h.selected&&!h.unselected&&(T=p,l=t*p),v("selected.marker.opacity",T),v("unselected.marker.opacity",l)}}};function c(h,v){var p=X.valObjectMeta[v.valType];if(v.arrayOk&&i(h))return!0;if(p.validateFunction)return p.validateFunction(h,v);var T={},l=T,_={set:function(w){l=w}};return p.coerceFunction(h,_,T,v),l!==T}X.validate=c}}),Gg=Ye({"src/plot_api/plot_config.js"(X,H){"use strict";var g={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},x={};function A(M,e){for(var t in M){var r=M[t];r.valType?e[t]=r.dflt:(e[t]||(e[t]={}),A(r,e[t]))}}A(g,x),H.exports={configAttributes:g,dfltConfig:x}}}),YA=Ye({"src/lib/notifier.js"(X,H){"use strict";var g=_n(),x=jo(),A=[];H.exports=function(M,e){if(A.indexOf(M)!==-1)return;A.push(M);var t=1e3;x(e)?t=e:e==="long"&&(t=3e3);var r=g.select("body").selectAll(".plotly-notifier").data([0]);r.enter().append("div").classed("plotly-notifier",!0);var o=r.selectAll(".notifier-note").data(A);function a(i){i.duration(700).style("opacity",0).each("end",function(n){var s=A.indexOf(n);s!==-1&&A.splice(s,1),g.select(this).remove()})}o.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var n=g.select(this);n.append("button").classed("notifier-close",!0).html("&times;").on("click",function(){n.transition().call(a)});for(var s=n.append("p"),c=i.split(/<br\s*\/?>/g),h=0;h<c.length;h++)h&&s.append("br"),s.append("span").text(c[h]);e==="stick"?n.transition().duration(350).style("opacity",1):n.transition().duration(700).style("opacity",1).transition().delay(t).call(a)})}}}),Ym=Ye({"src/lib/loggers.js"(X,H){"use strict";var g=Gg().dfltConfig,x=YA(),A=H.exports={};A.log=function(){var M;if(g.logging>1){var e=["LOG:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.trace.apply(console,e)}if(g.notifyOnLogging>1){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"long")}},A.warn=function(){var M;if(g.logging>0){var e=["WARN:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.trace.apply(console,e)}if(g.notifyOnLogging>0){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"stick")}},A.error=function(){var M;if(g.logging>0){var e=["ERROR:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.error.apply(console,e)}if(g.notifyOnLogging>0){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"stick")}}}}),f2=Ye({"src/lib/noop.js"(X,H){"use strict";H.exports=function(){}}}),KA=Ye({"src/lib/push_unique.js"(X,H){"use strict";H.exports=function(x,A){if(A instanceof RegExp){for(var M=A.toString(),e=0;e<x.length;e++)if(x[e]instanceof RegExp&&x[e].toString()===M)return x;x.push(A)}else(A||A===0)&&x.indexOf(A)===-1&&x.push(A);return x}}}),lF=Ye({"node_modules/gl-mat4/create.js"(X,H){H.exports=g;function g(){var x=new Float32Array(16);return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),uF=Ye({"node_modules/gl-mat4/clone.js"(X,H){H.exports=g;function g(x){var A=new Float32Array(16);return A[0]=x[0],A[1]=x[1],A[2]=x[2],A[3]=x[3],A[4]=x[4],A[5]=x[5],A[6]=x[6],A[7]=x[7],A[8]=x[8],A[9]=x[9],A[10]=x[10],A[11]=x[11],A[12]=x[12],A[13]=x[13],A[14]=x[14],A[15]=x[15],A}}}),cF=Ye({"node_modules/gl-mat4/copy.js"(X,H){H.exports=g;function g(x,A){return x[0]=A[0],x[1]=A[1],x[2]=A[2],x[3]=A[3],x[4]=A[4],x[5]=A[5],x[6]=A[6],x[7]=A[7],x[8]=A[8],x[9]=A[9],x[10]=A[10],x[11]=A[11],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15],x}}}),JA=Ye({"node_modules/gl-mat4/identity.js"(X,H){H.exports=g;function g(x){return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),fF=Ye({"node_modules/gl-mat4/transpose.js"(X,H){H.exports=g;function g(x,A){if(x===A){var M=A[1],e=A[2],t=A[3],r=A[6],o=A[7],a=A[11];x[1]=A[4],x[2]=A[8],x[3]=A[12],x[4]=M,x[6]=A[9],x[7]=A[13],x[8]=e,x[9]=r,x[11]=A[14],x[12]=t,x[13]=o,x[14]=a}else x[0]=A[0],x[1]=A[4],x[2]=A[8],x[3]=A[12],x[4]=A[1],x[5]=A[5],x[6]=A[9],x[7]=A[13],x[8]=A[2],x[9]=A[6],x[10]=A[10],x[11]=A[14],x[12]=A[3],x[13]=A[7],x[14]=A[11],x[15]=A[15];return x}}}),hF=Ye({"node_modules/gl-mat4/invert.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=A[4],a=A[5],i=A[6],n=A[7],s=A[8],c=A[9],h=A[10],v=A[11],p=A[12],T=A[13],l=A[14],_=A[15],w=M*a-e*o,S=M*i-t*o,E=M*n-r*o,m=e*i-t*a,b=e*n-r*a,d=t*n-r*i,u=s*T-c*p,y=s*l-h*p,f=s*_-v*p,P=c*l-h*T,L=c*_-v*T,z=h*_-v*l,F=w*z-S*L+E*P+m*f-b*y+d*u;return F?(F=1/F,x[0]=(a*z-i*L+n*P)*F,x[1]=(t*L-e*z-r*P)*F,x[2]=(T*d-l*b+_*m)*F,x[3]=(h*b-c*d-v*m)*F,x[4]=(i*f-o*z-n*y)*F,x[5]=(M*z-t*f+r*y)*F,x[6]=(l*E-p*d-_*S)*F,x[7]=(s*d-h*E+v*S)*F,x[8]=(o*L-a*f+n*u)*F,x[9]=(e*f-M*L-r*u)*F,x[10]=(p*b-T*E+_*w)*F,x[11]=(c*E-s*b-v*w)*F,x[12]=(a*y-o*P-i*u)*F,x[13]=(M*P-e*y+t*u)*F,x[14]=(T*S-p*m-l*w)*F,x[15]=(s*m-c*S+h*w)*F,x):null}}}),pF=Ye({"node_modules/gl-mat4/adjoint.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=A[4],a=A[5],i=A[6],n=A[7],s=A[8],c=A[9],h=A[10],v=A[11],p=A[12],T=A[13],l=A[14],_=A[15];return x[0]=a*(h*_-v*l)-c*(i*_-n*l)+T*(i*v-n*h),x[1]=-(e*(h*_-v*l)-c*(t*_-r*l)+T*(t*v-r*h)),x[2]=e*(i*_-n*l)-a*(t*_-r*l)+T*(t*n-r*i),x[3]=-(e*(i*v-n*h)-a*(t*v-r*h)+c*(t*n-r*i)),x[4]=-(o*(h*_-v*l)-s*(i*_-n*l)+p*(i*v-n*h)),x[5]=M*(h*_-v*l)-s*(t*_-r*l)+p*(t*v-r*h),x[6]=-(M*(i*_-n*l)-o*(t*_-r*l)+p*(t*n-r*i)),x[7]=M*(i*v-n*h)-o*(t*v-r*h)+s*(t*n-r*i),x[8]=o*(c*_-v*T)-s*(a*_-n*T)+p*(a*v-n*c),x[9]=-(M*(c*_-v*T)-s*(e*_-r*T)+p*(e*v-r*c)),x[10]=M*(a*_-n*T)-o*(e*_-r*T)+p*(e*n-r*a),x[11]=-(M*(a*v-n*c)-o*(e*v-r*c)+s*(e*n-r*a)),x[12]=-(o*(c*l-h*T)-s*(a*l-i*T)+p*(a*h-i*c)),x[13]=M*(c*l-h*T)-s*(e*l-t*T)+p*(e*h-t*c),x[14]=-(M*(a*l-i*T)-o*(e*l-t*T)+p*(e*i-t*a)),x[15]=M*(a*h-i*c)-o*(e*h-t*c)+s*(e*i-t*a),x}}}),dF=Ye({"node_modules/gl-mat4/determinant.js"(X,H){H.exports=g;function g(x){var A=x[0],M=x[1],e=x[2],t=x[3],r=x[4],o=x[5],a=x[6],i=x[7],n=x[8],s=x[9],c=x[10],h=x[11],v=x[12],p=x[13],T=x[14],l=x[15],_=A*o-M*r,w=A*a-e*r,S=A*i-t*r,E=M*a-e*o,m=M*i-t*o,b=e*i-t*a,d=n*p-s*v,u=n*T-c*v,y=n*l-h*v,f=s*T-c*p,P=s*l-h*p,L=c*l-h*T;return _*L-w*P+S*f+E*y-m*u+b*d}}}),vF=Ye({"node_modules/gl-mat4/multiply.js"(X,H){H.exports=g;function g(x,A,M){var e=A[0],t=A[1],r=A[2],o=A[3],a=A[4],i=A[5],n=A[6],s=A[7],c=A[8],h=A[9],v=A[10],p=A[11],T=A[12],l=A[13],_=A[14],w=A[15],S=M[0],E=M[1],m=M[2],b=M[3];return x[0]=S*e+E*a+m*c+b*T,x[1]=S*t+E*i+m*h+b*l,x[2]=S*r+E*n+m*v+b*_,x[3]=S*o+E*s+m*p+b*w,S=M[4],E=M[5],m=M[6],b=M[7],x[4]=S*e+E*a+m*c+b*T,x[5]=S*t+E*i+m*h+b*l,x[6]=S*r+E*n+m*v+b*_,x[7]=S*o+E*s+m*p+b*w,S=M[8],E=M[9],m=M[10],b=M[11],x[8]=S*e+E*a+m*c+b*T,x[9]=S*t+E*i+m*h+b*l,x[10]=S*r+E*n+m*v+b*_,x[11]=S*o+E*s+m*p+b*w,S=M[12],E=M[13],m=M[14],b=M[15],x[12]=S*e+E*a+m*c+b*T,x[13]=S*t+E*i+m*h+b*l,x[14]=S*r+E*n+m*v+b*_,x[15]=S*o+E*s+m*p+b*w,x}}}),mF=Ye({"node_modules/gl-mat4/translate.js"(X,H){H.exports=g;function g(x,A,M){var e=M[0],t=M[1],r=M[2],o,a,i,n,s,c,h,v,p,T,l,_;return A===x?(x[12]=A[0]*e+A[4]*t+A[8]*r+A[12],x[13]=A[1]*e+A[5]*t+A[9]*r+A[13],x[14]=A[2]*e+A[6]*t+A[10]*r+A[14],x[15]=A[3]*e+A[7]*t+A[11]*r+A[15]):(o=A[0],a=A[1],i=A[2],n=A[3],s=A[4],c=A[5],h=A[6],v=A[7],p=A[8],T=A[9],l=A[10],_=A[11],x[0]=o,x[1]=a,x[2]=i,x[3]=n,x[4]=s,x[5]=c,x[6]=h,x[7]=v,x[8]=p,x[9]=T,x[10]=l,x[11]=_,x[12]=o*e+s*t+p*r+A[12],x[13]=a*e+c*t+T*r+A[13],x[14]=i*e+h*t+l*r+A[14],x[15]=n*e+v*t+_*r+A[15]),x}}}),gF=Ye({"node_modules/gl-mat4/scale.js"(X,H){H.exports=g;function g(x,A,M){var e=M[0],t=M[1],r=M[2];return x[0]=A[0]*e,x[1]=A[1]*e,x[2]=A[2]*e,x[3]=A[3]*e,x[4]=A[4]*t,x[5]=A[5]*t,x[6]=A[6]*t,x[7]=A[7]*t,x[8]=A[8]*r,x[9]=A[9]*r,x[10]=A[10]*r,x[11]=A[11]*r,x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15],x}}}),yF=Ye({"node_modules/gl-mat4/rotate.js"(X,H){H.exports=g;function g(x,A,M,e){var t=e[0],r=e[1],o=e[2],a=Math.sqrt(t*t+r*r+o*o),i,n,s,c,h,v,p,T,l,_,w,S,E,m,b,d,u,y,f,P,L,z,F,B;return Math.abs(a)<1e-6?null:(a=1/a,t*=a,r*=a,o*=a,i=Math.sin(M),n=Math.cos(M),s=1-n,c=A[0],h=A[1],v=A[2],p=A[3],T=A[4],l=A[5],_=A[6],w=A[7],S=A[8],E=A[9],m=A[10],b=A[11],d=t*t*s+n,u=r*t*s+o*i,y=o*t*s-r*i,f=t*r*s-o*i,P=r*r*s+n,L=o*r*s+t*i,z=t*o*s+r*i,F=r*o*s-t*i,B=o*o*s+n,x[0]=c*d+T*u+S*y,x[1]=h*d+l*u+E*y,x[2]=v*d+_*u+m*y,x[3]=p*d+w*u+b*y,x[4]=c*f+T*P+S*L,x[5]=h*f+l*P+E*L,x[6]=v*f+_*P+m*L,x[7]=p*f+w*P+b*L,x[8]=c*z+T*F+S*B,x[9]=h*z+l*F+E*B,x[10]=v*z+_*F+m*B,x[11]=p*z+w*F+b*B,A!==x&&(x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x)}}}),_F=Ye({"node_modules/gl-mat4/rotateX.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[4],o=A[5],a=A[6],i=A[7],n=A[8],s=A[9],c=A[10],h=A[11];return A!==x&&(x[0]=A[0],x[1]=A[1],x[2]=A[2],x[3]=A[3],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[4]=r*t+n*e,x[5]=o*t+s*e,x[6]=a*t+c*e,x[7]=i*t+h*e,x[8]=n*t-r*e,x[9]=s*t-o*e,x[10]=c*t-a*e,x[11]=h*t-i*e,x}}}),xF=Ye({"node_modules/gl-mat4/rotateY.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[0],o=A[1],a=A[2],i=A[3],n=A[8],s=A[9],c=A[10],h=A[11];return A!==x&&(x[4]=A[4],x[5]=A[5],x[6]=A[6],x[7]=A[7],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[0]=r*t-n*e,x[1]=o*t-s*e,x[2]=a*t-c*e,x[3]=i*t-h*e,x[8]=r*e+n*t,x[9]=o*e+s*t,x[10]=a*e+c*t,x[11]=i*e+h*t,x}}}),bF=Ye({"node_modules/gl-mat4/rotateZ.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[0],o=A[1],a=A[2],i=A[3],n=A[4],s=A[5],c=A[6],h=A[7];return A!==x&&(x[8]=A[8],x[9]=A[9],x[10]=A[10],x[11]=A[11],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[0]=r*t+n*e,x[1]=o*t+s*e,x[2]=a*t+c*e,x[3]=i*t+h*e,x[4]=n*t-r*e,x[5]=s*t-o*e,x[6]=c*t-a*e,x[7]=h*t-i*e,x}}}),wF=Ye({"node_modules/gl-mat4/fromRotation.js"(X,H){H.exports=g;function g(x,A,M){var e,t,r,o=M[0],a=M[1],i=M[2],n=Math.sqrt(o*o+a*a+i*i);return Math.abs(n)<1e-6?null:(n=1/n,o*=n,a*=n,i*=n,e=Math.sin(A),t=Math.cos(A),r=1-t,x[0]=o*o*r+t,x[1]=a*o*r+i*e,x[2]=i*o*r-a*e,x[3]=0,x[4]=o*a*r-i*e,x[5]=a*a*r+t,x[6]=i*a*r+o*e,x[7]=0,x[8]=o*i*r+a*e,x[9]=a*i*r-o*e,x[10]=i*i*r+t,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x)}}}),TF=Ye({"node_modules/gl-mat4/fromRotationTranslation.js"(X,H){H.exports=g;function g(x,A,M){var e=A[0],t=A[1],r=A[2],o=A[3],a=e+e,i=t+t,n=r+r,s=e*a,c=e*i,h=e*n,v=t*i,p=t*n,T=r*n,l=o*a,_=o*i,w=o*n;return x[0]=1-(v+T),x[1]=c+w,x[2]=h-_,x[3]=0,x[4]=c-w,x[5]=1-(s+T),x[6]=p+l,x[7]=0,x[8]=h+_,x[9]=p-l,x[10]=1-(s+v),x[11]=0,x[12]=M[0],x[13]=M[1],x[14]=M[2],x[15]=1,x}}}),AF=Ye({"node_modules/gl-mat4/fromScaling.js"(X,H){H.exports=g;function g(x,A){return x[0]=A[0],x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=A[1],x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=A[2],x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),SF=Ye({"node_modules/gl-mat4/fromTranslation.js"(X,H){H.exports=g;function g(x,A){return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=A[0],x[13]=A[1],x[14]=A[2],x[15]=1,x}}}),MF=Ye({"node_modules/gl-mat4/fromXRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=e,x[6]=M,x[7]=0,x[8]=0,x[9]=-M,x[10]=e,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),EF=Ye({"node_modules/gl-mat4/fromYRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=e,x[1]=0,x[2]=-M,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=M,x[9]=0,x[10]=e,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),kF=Ye({"node_modules/gl-mat4/fromZRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=e,x[1]=M,x[2]=0,x[3]=0,x[4]=-M,x[5]=e,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),$A=Ye({"node_modules/gl-mat4/fromQuat.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=M+M,a=e+e,i=t+t,n=M*o,s=e*o,c=e*a,h=t*o,v=t*a,p=t*i,T=r*o,l=r*a,_=r*i;return x[0]=1-c-p,x[1]=s+_,x[2]=h-l,x[3]=0,x[4]=s-_,x[5]=1-n-p,x[6]=v+T,x[7]=0,x[8]=h+l,x[9]=v-T,x[10]=1-n-c,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),CF=Ye({"node_modules/gl-mat4/frustum.js"(X,H){H.exports=g;function g(x,A,M,e,t,r,o){var a=1/(M-A),i=1/(t-e),n=1/(r-o);return x[0]=r*2*a,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=r*2*i,x[6]=0,x[7]=0,x[8]=(M+A)*a,x[9]=(t+e)*i,x[10]=(o+r)*n,x[11]=-1,x[12]=0,x[13]=0,x[14]=o*r*2*n,x[15]=0,x}}}),LF=Ye({"node_modules/gl-mat4/perspective.js"(X,H){H.exports=g;function g(x,A,M,e,t){var r=1/Math.tan(A/2),o=1/(e-t);return x[0]=r/M,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=r,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=(t+e)*o,x[11]=-1,x[12]=0,x[13]=0,x[14]=2*t*e*o,x[15]=0,x}}}),PF=Ye({"node_modules/gl-mat4/perspectiveFromFieldOfView.js"(X,H){H.exports=g;function g(x,A,M,e){var t=Math.tan(A.upDegrees*Math.PI/180),r=Math.tan(A.downDegrees*Math.PI/180),o=Math.tan(A.leftDegrees*Math.PI/180),a=Math.tan(A.rightDegrees*Math.PI/180),i=2/(o+a),n=2/(t+r);return x[0]=i,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=n,x[6]=0,x[7]=0,x[8]=-((o-a)*i*.5),x[9]=(t-r)*n*.5,x[10]=e/(M-e),x[11]=-1,x[12]=0,x[13]=0,x[14]=e*M/(M-e),x[15]=0,x}}}),IF=Ye({"node_modules/gl-mat4/ortho.js"(X,H){H.exports=g;function g(x,A,M,e,t,r,o){var a=1/(A-M),i=1/(e-t),n=1/(r-o);return x[0]=-2*a,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=-2*i,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=2*n,x[11]=0,x[12]=(A+M)*a,x[13]=(t+e)*i,x[14]=(o+r)*n,x[15]=1,x}}}),RF=Ye({"node_modules/gl-mat4/lookAt.js"(X,H){var g=JA();H.exports=x;function x(A,M,e,t){var r,o,a,i,n,s,c,h,v,p,T=M[0],l=M[1],_=M[2],w=t[0],S=t[1],E=t[2],m=e[0],b=e[1],d=e[2];return Math.abs(T-m)<1e-6&&Math.abs(l-b)<1e-6&&Math.abs(_-d)<1e-6?g(A):(c=T-m,h=l-b,v=_-d,p=1/Math.sqrt(c*c+h*h+v*v),c*=p,h*=p,v*=p,r=S*v-E*h,o=E*c-w*v,a=w*h-S*c,p=Math.sqrt(r*r+o*o+a*a),p?(p=1/p,r*=p,o*=p,a*=p):(r=0,o=0,a=0),i=h*a-v*o,n=v*r-c*a,s=c*o-h*r,p=Math.sqrt(i*i+n*n+s*s),p?(p=1/p,i*=p,n*=p,s*=p):(i=0,n=0,s=0),A[0]=r,A[1]=i,A[2]=c,A[3]=0,A[4]=o,A[5]=n,A[6]=h,A[7]=0,A[8]=a,A[9]=s,A[10]=v,A[11]=0,A[12]=-(r*T+o*l+a*_),A[13]=-(i*T+n*l+s*_),A[14]=-(c*T+h*l+v*_),A[15]=1,A)}}}),DF=Ye({"node_modules/gl-mat4/str.js"(X,H){H.exports=g;function g(x){return"mat4("+x[0]+", "+x[1]+", "+x[2]+", "+x[3]+", "+x[4]+", "+x[5]+", "+x[6]+", "+x[7]+", "+x[8]+", "+x[9]+", "+x[10]+", "+x[11]+", "+x[12]+", "+x[13]+", "+x[14]+", "+x[15]+")"}}}),QA=Ye({"node_modules/gl-mat4/index.js"(X,H){H.exports={create:lF(),clone:uF(),copy:cF(),identity:JA(),transpose:fF(),invert:hF(),adjoint:pF(),determinant:dF(),multiply:vF(),translate:mF(),scale:gF(),rotate:yF(),rotateX:_F(),rotateY:xF(),rotateZ:bF(),fromRotation:wF(),fromRotationTranslation:TF(),fromScaling:AF(),fromTranslation:SF(),fromXRotation:MF(),fromYRotation:EF(),fromZRotation:kF(),fromQuat:$A(),frustum:CF(),perspective:LF(),perspectiveFromFieldOfView:PF(),ortho:IF(),lookAt:RF(),str:DF()}}}),h2=Ye({"src/lib/matrix.js"(X){"use strict";var H=QA();X.init2dArray=function(g,x){for(var A=new Array(g),M=0;M<g;M++)A[M]=new Array(x);return A},X.transposeRagged=function(g){var x=0,A=g.length,M,e;for(M=0;M<A;M++)x=Math.max(x,g[M].length);var t=new Array(x);for(M=0;M<x;M++)for(t[M]=new Array(A),e=0;e<A;e++)t[M][e]=g[e][M];return t},X.dot=function(g,x){if(!(g.length&&x.length)||g.length!==x.length)return null;var A=g.length,M,e;if(g[0].length)for(M=new Array(A),e=0;e<A;e++)M[e]=X.dot(g[e],x);else if(x[0].length){var t=X.transposeRagged(x);for(M=new Array(t.length),e=0;e<t.length;e++)M[e]=X.dot(g,t[e])}else for(M=0,e=0;e<A;e++)M+=g[e]*x[e];return M},X.translationMatrix=function(g,x){return[[1,0,g],[0,1,x],[0,0,1]]},X.rotationMatrix=function(g){var x=g*Math.PI/180;return[[Math.cos(x),-Math.sin(x),0],[Math.sin(x),Math.cos(x),0],[0,0,1]]},X.rotationXYMatrix=function(g,x,A){return X.dot(X.dot(X.translationMatrix(x,A),X.rotationMatrix(g)),X.translationMatrix(-x,-A))},X.apply3DTransform=function(g){return function(){var x=arguments,A=arguments.length===1?x[0]:[x[0],x[1],x[2]||0];return X.dot(g,[A[0],A[1],A[2],1]).slice(0,3)}},X.apply2DTransform=function(g){return function(){var x=arguments;x.length===3&&(x=x[0]);var A=arguments.length===1?x[0]:[x[0],x[1]];return X.dot(g,[A[0],A[1],1]).slice(0,2)}},X.apply2DTransform2=function(g){var x=X.apply2DTransform(g);return function(A){return x(A.slice(0,2)).concat(x(A.slice(2,4)))}},X.convertCssMatrix=function(g){if(g){var x=g.length;if(x===16)return g;if(x===6)return[g[0],g[1],0,0,g[2],g[3],0,0,0,0,1,0,g[4],g[5],0,1]}return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},X.inverseTransformMatrix=function(g){var x=[];return H.invert(x,g),[[x[0],x[1],x[2],x[3]],[x[4],x[5],x[6],x[7]],[x[8],x[9],x[10],x[11]],[x[12],x[13],x[14],x[15]]]}}}),b_=Ye({"src/lib/dom.js"(X,H){"use strict";var g=_n(),x=Ym(),A=h2(),M=QA();function e(T){var l;if(typeof T=="string"){if(l=document.getElementById(T),l===null)throw new Error("No DOM element with id '"+T+"' exists on the page.");return l}else if(T==null)throw new Error("DOM element provided is null or undefined");return T}function t(T){var l=g.select(T);return l.node()instanceof HTMLElement&&l.size()&&l.classed("js-plotly-plot")}function r(T){var l=T&&T.parentNode;l&&l.removeChild(T)}function o(T,l){a("global",T,l)}function a(T,l,_){var w="plotly.js-style-"+T,S=document.getElementById(w);if(!(S&&S.matches(".no-inline-styles"))){S||(S=document.createElement("style"),S.setAttribute("id",w),S.appendChild(document.createTextNode("")),document.head.appendChild(S));var E=S.sheet;E?E.insertRule?E.insertRule(l+"{"+_+"}",0):E.addRule?E.addRule(l,_,0):x.warn("addStyleRule failed"):x.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function i(T){var l="plotly.js-style-"+T,_=document.getElementById(l);_&&r(_)}function n(T,l,_,w,S,E){var m=w.split(":"),b=S.split(":"),d="data-btn-style-event-added";E||(E=document),E.querySelectorAll(T).forEach(function(u){u.getAttribute(d)||(u.addEventListener("mouseenter",function(){var y=this.querySelector(_);y&&(y.style[m[0]]=m[1])}),u.addEventListener("mouseleave",function(){var y=this.querySelector(_);y&&(l&&this.matches(l)?y.style[m[0]]=m[1]:y.style[b[0]]=b[1])}),u.setAttribute(d,!0))})}function s(T){var l=h(T),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return l.forEach(function(w){var S=c(w);if(S){var E=A.convertCssMatrix(S);_=M.multiply(_,_,E)}}),_}function c(T){var l=window.getComputedStyle(T,null),_=l.getPropertyValue("-webkit-transform")||l.getPropertyValue("-moz-transform")||l.getPropertyValue("-ms-transform")||l.getPropertyValue("-o-transform")||l.getPropertyValue("transform");return _==="none"?null:_.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(w){return+w})}function h(T){for(var l=[];v(T);)l.push(T),T=T.parentNode,typeof ShadowRoot=="function"&&T instanceof ShadowRoot&&(T=T.host);return l}function v(T){return T&&(T instanceof Element||T instanceof HTMLElement)}function p(T,l){return T&&l&&T.top===l.top&&T.left===l.left&&T.right===l.right&&T.bottom===l.bottom}H.exports={getGraphDiv:e,isPlotDiv:t,removeElement:r,addStyleRule:o,addRelatedStyleRule:a,deleteRelatedStyleRule:i,setStyleOnHover:n,getFullTransformMatrix:s,getElementTransformMatrix:c,getElementAndAncestors:h,equalDomRects:p}}}),w_=Ye({"src/plots/animation_attributes.js"(X,H){"use strict";H.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}}}),Ou=Ye({"src/plot_api/edit_types.js"(X,H){"use strict";var g=Oo().extendFlat,x=Zv(),A={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},M={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},e=A.flags.slice().concat(["fullReplot"]),t=M.flags.slice().concat("layoutReplot");H.exports={traces:A,layout:M,traceFlags:function(){return r(e)},layoutFlags:function(){return r(t)},update:function(i,n){var s=n.editType;if(s&&s!=="none")for(var c=s.split("+"),h=0;h<c.length;h++)i[c[h]]=!0},overrideAll:o};function r(i){for(var n={},s=0;s<i.length;s++)n[i[s]]=!1;return n}function o(i,n,s){var c=g({},i);for(var h in c){var v=c[h];x(v)&&(c[h]=a(v,n,s,h))}return s==="from-root"&&(c.editType=n),c}function a(i,n,s,c){if(i.valType){var h=g({},i);if(h.editType=n,Array.isArray(i.items)){h.items=new Array(i.items.length);for(var v=0;v<i.items.length;v++)h.items[v]=a(i.items[v],n,"from-root")}return h}else return o(i,n,c.charAt(0)==="_"?"nested":"from-root")}}}),Uh=Ye({"src/components/drawing/attributes.js"(X){"use strict";X.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"},X.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}}}),eS=Ye({"src/constants/docs.js"(X,H){"use strict";H.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}}}),xs=Ye({"src/plots/template_attributes.js"(X){"use strict";var H=eS(),g=H.FORMAT_LINK,x=H.DATE_FORMAT_LINK;function A(M){var e=M.description?" "+M.description:"",t=M.keys||[];if(t.length>0){for(var r=[],o=0;o<t.length;o++)r[o]="`"+t[o]+"`";e=e+"Finally, the template string has access to ",t.length===1?e=e+"variable "+r[0]:e=e+"variables "+r.slice(0,-1).join(", ")+" and "+r.slice(-1)+"."}return e}X.hovertemplateAttrs=function(M,e){M=M||{},e=e||{};var t=A(e),r={valType:"string",dflt:"",editType:M.editType||"none"};return M.arrayOk!==!1&&(r.arrayOk=!0),r},X.texttemplateAttrs=function(M,e){M=M||{},e=e||{};var t=A(e),r={valType:"string",dflt:"",editType:M.editType||"calc"};return M.arrayOk!==!1&&(r.arrayOk=!0),r},X.shapeTexttemplateAttrs=function(M,e){M=M||{},e=e||{};var t=M.newshape?"new ":"",r=A(e),o={valType:"string",dflt:"",editType:M.editType||"arraydraw"};return o}}}),p2=Ye({"src/components/shapes/label_texttemplate.js"(X,H){"use strict";function g(_,w){return w?w.d2l(_):_}function x(_,w){return w?w.l2d(_):_}function A(_){return _.x0}function M(_){return _.x1}function e(_){return _.y0}function t(_){return _.y1}function r(_){return _.x0shift||0}function o(_){return _.x1shift||0}function a(_){return _.y0shift||0}function i(_){return _.y1shift||0}function n(_,w){return g(_.x1,w)+o(_)-g(_.x0,w)-r(_)}function s(_,w,S){return g(_.y1,S)+i(_)-g(_.y0,S)-a(_)}function c(_,w){return Math.abs(n(_,w))}function h(_,w,S){return Math.abs(s(_,w,S))}function v(_,w,S){return _.type!=="line"?void 0:Math.sqrt(Math.pow(n(_,w),2)+Math.pow(s(_,w,S),2))}function p(_,w){return x((g(_.x1,w)+o(_)+g(_.x0,w)+r(_))/2,w)}function T(_,w,S){return x((g(_.y1,S)+i(_)+g(_.y0,S)+a(_))/2,S)}function l(_,w,S){return _.type!=="line"?void 0:s(_,w,S)/n(_,w)}H.exports={x0:A,x1:M,y0:e,y1:t,slope:l,dx:n,dy:s,width:c,height:h,length:v,xcenter:p,ycenter:T}}}),zF=Ye({"src/components/shapes/draw_newshape/attributes.js"(X,H){"use strict";var g=Ou().overrideAll,x=Pl(),A=Au(),M=Uh().dash,e=Oo().extendFlat,t=xs().shapeTexttemplateAttrs,r=p2();H.exports=g({newshape:{visible:e({},x.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:e({},x.legend,{}),legendgroup:e({},x.legendgroup,{}),legendgrouptitle:{text:e({},x.legendgrouptitle.text,{}),font:A({})},legendrank:e({},x.legendrank,{}),legendwidth:e({},x.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:e({},M,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:e({},x.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:t({newshape:!0},{keys:Object.keys(r)}),font:A({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")}}),FF=Ye({"src/components/selections/draw_newselection/attributes.js"(X,H){"use strict";var g=Uh().dash,x=Oo().extendFlat;H.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:x({},g,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}}}),d2=Ye({"src/plots/pad_attributes.js"(X,H){"use strict";H.exports=function(g){var x=g.editType;return{t:{valType:"number",dflt:0,editType:x},r:{valType:"number",dflt:0,editType:x},b:{valType:"number",dflt:0,editType:x},l:{valType:"number",dflt:0,editType:x},editType:x}}}}),Jy=Ye({"src/plots/layout_attributes.js"(X,H){"use strict";var g=Au(),x=w_(),A=Gf(),M=zF(),e=FF(),t=d2(),r=Oo().extendFlat,o=g({editType:"calc"});o.family.dflt='"Open Sans", verdana, arial, sans-serif',o.size.dflt=12,o.color.dflt=A.defaultLine,H.exports={font:o,title:{text:{valType:"string",editType:"layoutstyle"},font:g({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:g({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:r(t({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:A.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:A.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:A.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:M.newshape,activeshape:M.activeshape,newselection:e.newselection,activeselection:e.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:r({},x.transition,{editType:"none"})}}}),OF=Qn({"temp_stylePlugin:node_modules/maplibre-gl/dist/maplibre-gl.css"(){}}),Qfe={},BF=Qn({"stylePlugin:/Users/ekl/code/plotly.js/node_modules/maplibre-gl/dist/maplibre-gl.css"(){OF()}}),Hn=Ye({"src/registry.js"(X){"use strict";var H=Ym(),g=f2(),x=KA(),A=Zv(),M=b_().addStyleRule,e=Oo(),t=Pl(),r=Jy(),o=e.extendFlat,a=e.extendDeepAll;X.modules={},X.allCategories={},X.allTypes=[],X.subplotsRegistry={},X.componentsRegistry={},X.layoutArrayContainers=[],X.layoutArrayRegexes=[],X.traceLayoutAttributes={},X.localeRegistry={},X.apiMethodRegistry={},X.collectableSubplotTypes=null,X.register=function(w){if(X.collectableSubplotTypes=null,w)w&&!Array.isArray(w)&&(w=[w]);else throw new Error("No argument passed to Plotly.register.");for(var S=0;S<w.length;S++){var E=w[S];if(!E)throw new Error("Invalid module was attempted to be registered!");switch(E.moduleType){case"trace":i(E);break;case"transform":c(E);break;case"component":s(E);break;case"locale":h(E);break;case"apiMethod":var m=E.name;X.apiMethodRegistry[m]=E.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}},X.getModule=function(_){var w=X.modules[l(_)];return w?w._module:!1},X.traceIs=function(_,w){if(_=l(_),_==="various")return!1;var S=X.modules[_];return S||(_&&H.log("Unrecognized trace type "+_+"."),S=X.modules[t.type.dflt]),!!S.categories[w]},X.getComponentMethod=function(_,w){var S=X.componentsRegistry[_];return S&&S[w]||g},X.call=function(){var _=arguments[0],w=[].slice.call(arguments,1);return X.apiMethodRegistry[_].apply(null,w)};function i(_){var w=_.name,S=_.categories,E=_.meta;if(X.modules[w]){H.log("Type "+w+" already registered");return}X.subplotsRegistry[_.basePlotModule.name]||n(_.basePlotModule);for(var m={},b=0;b<S.length;b++)m[S[b]]=!0,X.allCategories[S[b]]=!0;X.modules[w]={_module:_,categories:m},E&&Object.keys(E).length&&(X.modules[w].meta=E),X.allTypes.push(w);for(var d in X.componentsRegistry)p(d,w);_.layoutAttributes&&o(X.traceLayoutAttributes,_.layoutAttributes);var u=_.basePlotModule,y=u.name;if(y==="mapbox"){var f=u.constants.styleRules;for(var P in f)M(".js-plotly-plot .plotly .mapboxgl-"+P,f[P])}y==="map"&&BF(),(y==="geo"||y==="mapbox"||y==="map")&&window.PlotlyGeoAssets===void 0&&(window.PlotlyGeoAssets={topojson:{}})}function n(_){var w=_.name;if(X.subplotsRegistry[w]){H.log("Plot type "+w+" already registered.");return}v(_),X.subplotsRegistry[w]=_;for(var S in X.componentsRegistry)T(S,_.name)}function s(_){if(typeof _.name!="string")throw new Error("Component module *name* must be a string.");var w=_.name;X.componentsRegistry[w]=_,_.layoutAttributes&&(_.layoutAttributes._isLinkedToArray&&x(X.layoutArrayContainers,w),v(_));for(var S in X.modules)p(w,S);for(var E in X.subplotsRegistry)T(w,E);_.schema&&_.schema.layout&&a(r,_.schema.layout)}function c(_){if(typeof _.name!="string")throw new Error("Transform module *name* must be a string.");var w="Transform module "+_.name,S=typeof _.transform=="function",E=typeof _.calcTransform=="function";if(!S&&!E)throw new Error(w+" is missing a *transform* or *calcTransform* method.");S&&E&&H.log([w+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),A(_.attributes)||H.log(w+" registered without an *attributes* object."),typeof _.supplyDefaults!="function"&&H.log(w+" registered without a *supplyDefaults* method.")}function h(_){var w=_.name,S=w.split("-")[0],E=_.dictionary,m=_.format,b=E&&Object.keys(E).length,d=m&&Object.keys(m).length,u=X.localeRegistry,y=u[w];if(y||(u[w]=y={}),S!==w){var f=u[S];f||(u[S]=f={}),b&&f.dictionary===y.dictionary&&(f.dictionary=E),d&&f.format===y.format&&(f.format=m)}b&&(y.dictionary=E),d&&(y.format=m)}function v(_){if(_.layoutAttributes){var w=_.layoutAttributes._arrayAttrRegexps;if(w)for(var S=0;S<w.length;S++)x(X.layoutArrayRegexes,w[S])}}function p(_,w){var S=X.componentsRegistry[_].schema;if(!(!S||!S.traces)){var E=S.traces[w];E&&a(X.modules[w]._module.attributes,E)}}function T(_,w){var S=X.componentsRegistry[_].schema;if(!(!S||!S.subplots)){var E=X.subplotsRegistry[w],m=E.layoutAttributes,b=E.attr==="subplot"?E.name:E.attr;Array.isArray(b)&&(b=b[0]);var d=S.subplots[b];m&&d&&a(m,d)}}function l(_){return typeof _=="object"&&(_=_.type),_}}}),NF=Ye({"src/lib/dates.js"(X){"use strict";var H=Np().timeFormat,g=jo(),x=Ym(),A=Xy().mod,M=ks(),e=M.BADNUM,t=M.ONEDAY,r=M.ONEHOUR,o=M.ONEMIN,a=M.ONESEC,i=M.EPOCHJD,n=Hn(),s=Np().utcFormat,c=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,h=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,v=new Date().getFullYear()-70;function p(F){return F&&n.componentsRegistry.calendars&&typeof F=="string"&&F!=="gregorian"}X.dateTick0=function(F,B){var O=T(F,!!B);if(B<2)return O;var I=X.dateTime2ms(O,F);return I+=t*(B-1),X.ms2DateTime(I,0,F)};function T(F,B){return p(F)?B?n.getComponentMethod("calendars","CANONICAL_SUNDAY")[F]:n.getComponentMethod("calendars","CANONICAL_TICK")[F]:B?"2000-01-02":"2000-01-01"}X.dfltRange=function(F){return p(F)?n.getComponentMethod("calendars","DFLTRANGE")[F]:["2000-01-01","2001-01-01"]},X.isJSDate=function(F){return typeof F=="object"&&F!==null&&typeof F.getTime=="function"};var l,_;X.dateTime2ms=function(F,B){if(X.isJSDate(F)){var O=F.getTimezoneOffset()*o,I=(F.getUTCMinutes()-F.getMinutes())*o+(F.getUTCSeconds()-F.getSeconds())*a+(F.getUTCMilliseconds()-F.getMilliseconds());if(I){var N=3*o;O=O-N/2+A(I-O+N/2,N)}return F=Number(F)-O,F>=l&&F<=_?F:e}if(typeof F!="string"&&typeof F!="number")return e;F=String(F);var U=p(B),W=F.charAt(0);U&&(W==="G"||W==="g")&&(F=F.substr(1),B="");var Q=U&&B.substr(0,7)==="chinese",ue=F.match(Q?h:c);if(!ue)return e;var se=ue[1],he=ue[3]||"1",G=Number(ue[5]||1),$=Number(ue[7]||0),J=Number(ue[9]||0),Z=Number(ue[11]||0);if(U){if(se.length===2)return e;se=Number(se);var re;try{var ne=n.getComponentMethod("calendars","getCal")(B);if(Q){var j=he.charAt(he.length-1)==="i";he=parseInt(he,10),re=ne.newDate(se,ne.toMonthIndex(se,he,j),G)}else re=ne.newDate(se,Number(he),G)}catch{return e}return re?(re.toJD()-i)*t+$*r+J*o+Z*a:e}se.length===2?se=(Number(se)+2e3-v)%100+v:se=Number(se),he-=1;var ee=new Date(Date.UTC(2e3,he,G,$,J));return ee.setUTCFullYear(se),ee.getUTCMonth()!==he||ee.getUTCDate()!==G?e:ee.getTime()+Z*a},l=X.MIN_MS=X.dateTime2ms("-9999"),_=X.MAX_MS=X.dateTime2ms("9999-12-31 23:59:59.9999"),X.isDateTime=function(F,B){return X.dateTime2ms(F,B)!==e};function w(F,B){return String(F+Math.pow(10,B)).substr(1)}var S=90*t,E=3*r,m=5*o;X.ms2DateTime=function(F,B,O){if(typeof F!="number"||!(F>=l&&F<=_))return e;B||(B=0);var I=Math.floor(A(F+.05,1)*10),N=Math.round(F-I/10),U,W,Q,ue,se,he;if(p(O)){var G=Math.floor(N/t)+i,$=Math.floor(A(F,t));try{U=n.getComponentMethod("calendars","getCal")(O).fromJD(G).formatDate("yyyy-mm-dd")}catch{U=s("G%Y-%m-%d")(new Date(N))}if(U.charAt(0)==="-")for(;U.length<11;)U="-0"+U.substr(1);else for(;U.length<10;)U="0"+U;W=B<S?Math.floor($/r):0,Q=B<S?Math.floor($%r/o):0,ue=B<E?Math.floor($%o/a):0,se=B<m?$%a*10+I:0}else he=new Date(N),U=s("%Y-%m-%d")(he),W=B<S?he.getUTCHours():0,Q=B<S?he.getUTCMinutes():0,ue=B<E?he.getUTCSeconds():0,se=B<m?he.getUTCMilliseconds()*10+I:0;return b(U,W,Q,ue,se)},X.ms2DateTimeLocal=function(F){if(!(F>=l+t&&F<=_-t))return e;var B=Math.floor(A(F+.05,1)*10),O=new Date(Math.round(F-B/10)),I=H("%Y-%m-%d")(O),N=O.getHours(),U=O.getMinutes(),W=O.getSeconds(),Q=O.getUTCMilliseconds()*10+B;return b(I,N,U,W,Q)};function b(F,B,O,I,N){if((B||O||I||N)&&(F+=" "+w(B,2)+":"+w(O,2),(I||N)&&(F+=":"+w(I,2),N))){for(var U=4;N%10===0;)U-=1,N/=10;F+="."+w(N,U)}return F}X.cleanDate=function(F,B,O){if(F===e)return B;if(X.isJSDate(F)||typeof F=="number"&&isFinite(F)){if(p(O))return x.error("JS Dates and milliseconds are incompatible with world calendars",F),B;if(F=X.ms2DateTimeLocal(+F),!F&&B!==void 0)return B}else if(!X.isDateTime(F,O))return x.error("unrecognized date",F),B;return F};var d=/%\d?f/g,u=/%h/g,y={1:"1",2:"1",3:"2",4:"2"};function f(F,B,O,I){F=F.replace(d,function(U){var W=Math.min(+U.charAt(1)||6,6),Q=(B/1e3%1+2).toFixed(W).substr(2).replace(/0+$/,"")||"0";return Q});var N=new Date(Math.floor(B+.05));if(F=F.replace(u,function(){return y[O("%q")(N)]}),p(I))try{F=n.getComponentMethod("calendars","worldCalFmt")(F,B,I)}catch{return"Invalid"}return O(F)(N)}var P=[59,59.9,59.99,59.999,59.9999];function L(F,B){var O=A(F+.05,t),I=w(Math.floor(O/r),2)+":"+w(A(Math.floor(O/o),60),2);if(B!=="M"){g(B)||(B=0);var N=Math.min(A(F/a,60),P[B]),U=(100+N).toFixed(B).substr(1);B>0&&(U=U.replace(/0+$/,"").replace(/[\.]$/,"")),I+=":"+U}return I}X.formatDate=function(F,B,O,I,N,U){if(N=p(N)&&N,!B)if(O==="y")B=U.year;else if(O==="m")B=U.month;else if(O==="d")B=U.dayMonth+`
`+U.year;else return L(F,O)+`
`+f(U.dayMonthYear,F,I,N);return f(B,F,I,N)};var z=3*t;X.incrementMonth=function(F,B,O){O=p(O)&&O;var I=A(F,t);if(F=Math.round(F-I),O)try{var N=Math.round(F/t)+i,U=n.getComponentMethod("calendars","getCal")(O),W=U.fromJD(N);return B%12?U.add(W,B,"m"):U.add(W,B/12,"y"),(W.toJD()-i)*t+I}catch{x.error("invalid ms "+F+" in calendar "+O)}var Q=new Date(F+z);return Q.setUTCMonth(Q.getUTCMonth()+B)+I-z},X.findExactDates=function(F,B){for(var O=0,I=0,N=0,U=0,W,Q,ue=p(B)&&n.getComponentMethod("calendars","getCal")(B),se=0;se<F.length;se++){if(Q=F[se],!g(Q)){U++;continue}if(!(Q%t))if(ue)try{W=ue.fromJD(Q/t+i),W.day()===1?W.month()===1?O++:I++:N++}catch{}else W=new Date(Q),W.getUTCDate()===1?W.getUTCMonth()===0?O++:I++:N++}I+=O,N+=I;var he=F.length-U;return{exactYears:O/he,exactMonths:I/he,exactDays:N/he}}}}),T_=Ye({"src/lib/identity.js"(X,H){"use strict";H.exports=function(x){return x}}}),v2=Ye({"src/lib/search.js"(X){"use strict";var H=jo(),g=Ym(),x=T_(),A=ks().BADNUM,M=1e-9;X.findBin=function(a,i,n){if(H(i.start))return n?Math.ceil((a-i.start)/i.size-M)-1:Math.floor((a-i.start)/i.size+M);var s=0,c=i.length,h=0,v=c>1?(i[c-1]-i[0])/(c-1):1,p,T;for(v>=0?T=n?e:t:T=n?o:r,a+=v*M*(n?-1:1)*(v>=0?1:-1);s<c&&h++<100;)p=Math.floor((s+c)/2),T(i[p],a)?s=p+1:c=p;return h>90&&g.log("Long binary search..."),s-1};function e(a,i){return a<i}function t(a,i){return a<=i}function r(a,i){return a>i}function o(a,i){return a>=i}X.sorterAsc=function(a,i){return a-i},X.sorterDes=function(a,i){return i-a},X.distinctVals=function(a){var i=a.slice();i.sort(X.sorterAsc);var n;for(n=i.length-1;n>-1&&i[n]===A;n--);for(var s=i[n]-i[0]||1,c=s/(n||1)/1e4,h=[],v,p=0;p<=n;p++){var T=i[p],l=T-v;v===void 0?(h.push(T),v=T):l>c&&(s=Math.min(s,l),h.push(T),v=T)}return{vals:h,minDiff:s}},X.roundUp=function(a,i,n){for(var s=0,c=i.length-1,h,v=0,p=n?0:1,T=n?1:0,l=n?Math.ceil:Math.floor;s<c&&v++<100;)h=l((s+c)/2),i[h]<=a?s=h+p:c=h-T;return i[s]},X.sort=function(a,i){for(var n=0,s=0,c=1;c<a.length;c++){var h=i(a[c],a[c-1]);if(h<0?n=1:h>0&&(s=1),n&&s)return a.sort(i)}return s?a:a.reverse()},X.findIndexOfMin=function(a,i){i=i||x;for(var n=1/0,s,c=0;c<a.length;c++){var h=i(a[c]);h<n&&(n=h,s=c)}return s}}}),Km=Ye({"src/lib/sort_object_keys.js"(X,H){"use strict";H.exports=function(x){return Object.keys(x).sort()}}}),UF=Ye({"src/lib/stats.js"(X){"use strict";var H=jo(),g=xp().isArrayOrTypedArray;X.aggNums=function(x,A,M,e){var t,r;if((!e||e>M.length)&&(e=M.length),H(A)||(A=!1),g(M[0])){for(r=new Array(e),t=0;t<e;t++)r[t]=X.aggNums(x,A,M[t]);M=r}for(t=0;t<e;t++)H(A)?H(M[t])&&(A=x(+A,+M[t])):A=M[t];return A},X.len=function(x){return X.aggNums(function(A){return A+1},0,x)},X.mean=function(x,A){return A||(A=X.len(x)),X.aggNums(function(M,e){return M+e},0,x)/A},X.geometricMean=function(x,A){return A||(A=X.len(x)),Math.pow(X.aggNums(function(M,e){return M*e},1,x),1/A)},X.midRange=function(x){if(!(x===void 0||x.length===0))return(X.aggNums(Math.max,null,x)+X.aggNums(Math.min,null,x))/2},X.variance=function(x,A,M){return A||(A=X.len(x)),H(M)||(M=X.mean(x,A)),X.aggNums(function(e,t){return e+Math.pow(t-M,2)},0,x)/A},X.stdev=function(x,A,M){return Math.sqrt(X.variance(x,A,M))},X.median=function(x){var A=x.slice().sort();return X.interp(A,.5)},X.interp=function(x,A){if(!H(A))throw"n should be a finite number";if(A=A*x.length-.5,A<0)return x[0];if(A>x.length-1)return x[x.length-1];var M=A%1;return M*x[Math.ceil(A)]+(1-M)*x[Math.floor(A)]}}}),jF=Ye({"src/lib/angles.js"(X,H){"use strict";var g=Xy(),x=g.mod,A=g.modHalf,M=Math.PI,e=2*M;function t(T){return T/180*M}function r(T){return T/M*180}function o(T){return Math.abs(T[1]-T[0])>e-1e-14}function a(T,l){return A(l-T,e)}function i(T,l){return Math.abs(a(T,l))}function n(T,l){if(o(l))return!0;var _,w;l[0]<l[1]?(_=l[0],w=l[1]):(_=l[1],w=l[0]),_=x(_,e),w=x(w,e),_>w&&(w+=e);var S=x(T,e),E=S+e;return S>=_&&S<=w||E>=_&&E<=w}function s(T,l,_,w){if(!n(l,w))return!1;var S,E;return _[0]<_[1]?(S=_[0],E=_[1]):(S=_[1],E=_[0]),T>=S&&T<=E}function c(T,l,_,w,S,E,m){S=S||0,E=E||0;var b=o([_,w]),d,u,y,f,P;b?(d=0,u=M,y=e):_<w?(d=_,y=w):(d=w,y=_),T<l?(f=T,P=l):(f=l,P=T);function L(O,I){return[O*Math.cos(I)+S,E-O*Math.sin(I)]}var z=Math.abs(y-d)<=M?0:1;function F(O,I,N){return"A"+[O,O]+" "+[0,z,N]+" "+L(O,I)}var B;return b?f===null?B="M"+L(P,d)+F(P,u,0)+F(P,y,0)+"Z":B="M"+L(f,d)+F(f,u,0)+F(f,y,0)+"ZM"+L(P,d)+F(P,u,1)+F(P,y,1)+"Z":f===null?(B="M"+L(P,d)+F(P,y,0),m&&(B+="L0,0Z")):B="M"+L(f,d)+"L"+L(P,d)+F(P,y,0)+"L"+L(f,y)+F(f,d,1)+"Z",B}function h(T,l,_,w,S){return c(null,T,l,_,w,S,0)}function v(T,l,_,w,S){return c(null,T,l,_,w,S,1)}function p(T,l,_,w,S,E){return c(T,l,_,w,S,E,1)}H.exports={deg2rad:t,rad2deg:r,angleDelta:a,angleDist:i,isFullCircle:o,isAngleInsideSector:n,isPtInsideSector:s,pathArc:h,pathSector:v,pathAnnulus:p}}}),VF=Ye({"src/lib/anchor_utils.js"(X){"use strict";X.isLeftAnchor=function(g){return g.xanchor==="left"||g.xanchor==="auto"&&g.x<=1/3},X.isCenterAnchor=function(g){return g.xanchor==="center"||g.xanchor==="auto"&&g.x>1/3&&g.x<2/3},X.isRightAnchor=function(g){return g.xanchor==="right"||g.xanchor==="auto"&&g.x>=2/3},X.isTopAnchor=function(g){return g.yanchor==="top"||g.yanchor==="auto"&&g.y>=2/3},X.isMiddleAnchor=function(g){return g.yanchor==="middle"||g.yanchor==="auto"&&g.y>1/3&&g.y<2/3},X.isBottomAnchor=function(g){return g.yanchor==="bottom"||g.yanchor==="auto"&&g.y<=1/3}}}),qF=Ye({"src/lib/geometry2d.js"(X){"use strict";var H=Xy().mod;X.segmentsIntersect=g;function g(t,r,o,a,i,n,s,c){var h=o-t,v=i-t,p=s-i,T=a-r,l=n-r,_=c-n,w=h*_-p*T;if(w===0)return null;var S=(v*_-p*l)/w,E=(v*T-h*l)/w;return E<0||E>1||S<0||S>1?null:{x:t+h*S,y:r+T*S}}X.segmentDistance=function(r,o,a,i,n,s,c,h){if(g(r,o,a,i,n,s,c,h))return 0;var v=a-r,p=i-o,T=c-n,l=h-s,_=v*v+p*p,w=T*T+l*l,S=Math.min(x(v,p,_,n-r,s-o),x(v,p,_,c-r,h-o),x(T,l,w,r-n,o-s),x(T,l,w,a-n,i-s));return Math.sqrt(S)};function x(t,r,o,a,i){var n=a*t+i*r;if(n<0)return a*a+i*i;if(n>o){var s=a-t,c=i-r;return s*s+c*c}else{var h=a*r-i*t;return h*h/o}}var A,M,e;X.getTextLocation=function(r,o,a,i){if((r!==M||i!==e)&&(A={},M=r,e=i),A[a])return A[a];var n=r.getPointAtLength(H(a-i/2,o)),s=r.getPointAtLength(H(a+i/2,o)),c=Math.atan((s.y-n.y)/(s.x-n.x)),h=r.getPointAtLength(H(a,o)),v=(h.x*4+n.x+s.x)/6,p=(h.y*4+n.y+s.y)/6,T={x:v,y:p,theta:c};return A[a]=T,T},X.clearLocationCache=function(){M=null},X.getVisibleSegment=function(r,o,a){var i=o.left,n=o.right,s=o.top,c=o.bottom,h=0,v=r.getTotalLength(),p=v,T,l;function _(S){var E=r.getPointAtLength(S);S===0?T=E:S===v&&(l=E);var m=E.x<i?i-E.x:E.x>n?E.x-n:0,b=E.y<s?s-E.y:E.y>c?E.y-c:0;return Math.sqrt(m*m+b*b)}for(var w=_(h);w;){if(h+=w+a,h>p)return;w=_(h)}for(w=_(p);w;){if(p-=w+a,h>p)return;w=_(p)}return{min:h,max:p,len:p-h,total:v,isClosed:h===0&&p===v&&Math.abs(T.x-l.x)<.1&&Math.abs(T.y-l.y)<.1}},X.findPointOnPath=function(r,o,a,i){i=i||{};for(var n=i.pathLength||r.getTotalLength(),s=i.tolerance||.001,c=i.iterationLimit||30,h=r.getPointAtLength(0)[a]>r.getPointAtLength(n)[a]?-1:1,v=0,p=0,T=n,l,_,w;v<c;){if(l=(p+T)/2,_=r.getPointAtLength(l),w=_[a]-o,Math.abs(w)<s)return _;h*w>0?T=l:p=l,v++}return _}}}),m2=Ye({"src/lib/throttle.js"(X){"use strict";var H={};X.throttle=function(A,M,e){var t=H[A],r=Date.now();if(!t){for(var o in H)H[o].ts<r-6e4&&delete H[o];t=H[A]={ts:0,timer:null}}g(t);function a(){e(),t.ts=Date.now(),t.onDone&&(t.onDone(),t.onDone=null)}if(r>t.ts+M){a();return}t.timer=setTimeout(function(){a(),t.timer=null},M)},X.done=function(x){var A=H[x];return!A||!A.timer?Promise.resolve():new Promise(function(M){var e=A.onDone;A.onDone=function(){e&&e(),M(),A.onDone=null}})},X.clear=function(x){if(x)g(H[x]),delete H[x];else for(var A in H)X.clear(A)};function g(x){x&&x.timer!==null&&(clearTimeout(x.timer),x.timer=null)}}}),HF=Ye({"src/lib/clear_responsive.js"(X,H){"use strict";H.exports=function(x){x._responsiveChartHandler&&(window.removeEventListener("resize",x._responsiveChartHandler),delete x._responsiveChartHandler)}}}),GF=Ye({"node_modules/is-mobile/index.js"(X,H){"use strict";H.exports=M,H.exports.isMobile=M,H.exports.default=M;var g=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,x=/CrOS/,A=/android|ipad|playbook|silk/i;function M(e){e||(e={});let t=e.ua;if(!t&&typeof navigator<"u"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=g.test(t)&&!x.test(t)||!!e.tablet&&A.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}}}),WF=Ye({"src/lib/preserve_drawing_buffer.js"(X,H){"use strict";var g=jo(),x=GF();H.exports=function(e){var t;if(e&&e.hasOwnProperty("userAgent")?t=e.userAgent:t=A(),typeof t!="string")return!0;var r=x({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var o=t.split(" "),a=1;a<o.length;a++){var i=o[a];if(i.indexOf("Safari")!==-1)for(var n=a-1;n>-1;n--){var s=o[n];if(s.substr(0,8)==="Version/"){var c=s.substr(8).split(".")[0];if(g(c)&&(c=+c),c>=13)return!0}}}return r};function A(){var M;return typeof navigator<"u"&&(M=navigator.userAgent),M&&M.headers&&typeof M.headers["user-agent"]=="string"&&(M=M.headers["user-agent"]),M}}}),ZF=Ye({"src/lib/make_trace_groups.js"(X,H){"use strict";var g=_n();H.exports=function(A,M,e){var t=A.selectAll("g."+e.replace(/\s/g,".")).data(M,function(o){return o[0].trace.uid});t.exit().remove(),t.enter().append("g").attr("class",e),t.order();var r=A.classed("rangeplot")?"nodeRangePlot3":"node3";return t.each(function(o){o[0][r]=g.select(this)}),t}}}),XF=Ye({"src/lib/localize.js"(X,H){"use strict";var g=Hn();H.exports=function(A,M){for(var e=A._context.locale,t=0;t<2;t++){for(var r=A._context.locales,o=0;o<2;o++){var a=(r[e]||{}).dictionary;if(a){var i=a[M];if(i)return i}r=g.localeRegistry}var n=e.split("-")[0];if(n===e)break;e=n}return M}}}),tS=Ye({"src/lib/filter_unique.js"(X,H){"use strict";H.exports=function(x){for(var A={},M=[],e=0,t=0;t<x.length;t++){var r=x[t];A[r]!==1&&(A[r]=1,M[e++]=r)}return M}}}),YF=Ye({"src/lib/filter_visible.js"(X,H){"use strict";H.exports=function(e){for(var t=A(e)?x:g,r=[],o=0;o<e.length;o++){var a=e[o];t(a)&&r.push(a)}return r};function g(M){return M.visible===!0}function x(M){var e=M[0].trace;return e.visible===!0&&e._length!==0}function A(M){return Array.isArray(M)&&Array.isArray(M[0])&&M[0][0]&&M[0][0].trace}}}),KF=Ye({"src/lib/increment.js"(X,H){"use strict";H.exports=function(x,A){if(!A)return x;var M=1/Math.abs(A),e=M>1?(M*x+M*A)/M:x+A,t=String(e).length;if(t>16){var r=String(A).length,o=String(x).length;if(t>=o+r){var a=parseFloat(e).toPrecision(12);a.indexOf("e+")===-1&&(e=+a)}}return e}}}),JF=Ye({"src/lib/clean_number.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;H.exports=function(e){return typeof e=="string"&&(e=e.replace(A,"")),g(e)?Number(e):x}}}),ta=Ye({"src/lib/index.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=Zy().format,M=jo(),e=ks(),t=e.FP_SAFE,r=-t,o=e.BADNUM,a=H.exports={};a.adjustFormat=function(ne){return!ne||/^\d[.]\df/.test(ne)||/[.]\d%/.test(ne)?ne:ne==="0.f"?"~f":/^\d%/.test(ne)?"~%":/^\ds/.test(ne)?"~s":!/^[~,.0$]/.test(ne)&&/[&fps]/.test(ne)?"~"+ne:ne};var i={};a.warnBadFormat=function(re){var ne=String(re);i[ne]||(i[ne]=1,a.warn('encountered bad format: "'+ne+'"'))},a.noFormat=function(re){return String(re)},a.numberFormat=function(re){var ne;try{ne=A(a.adjustFormat(re))}catch{return a.warnBadFormat(re),a.noFormat}return ne},a.nestedProperty=__(),a.keyedContainer=iF(),a.relativeAttr=nF(),a.isPlainObject=Zv(),a.toLogRange=c2(),a.relinkPrivateKeys=oF();var n=xp();a.isArrayBuffer=n.isArrayBuffer,a.isTypedArray=n.isTypedArray,a.isArrayOrTypedArray=n.isArrayOrTypedArray,a.isArray1D=n.isArray1D,a.ensureArray=n.ensureArray,a.concat=n.concat,a.maxRowLength=n.maxRowLength,a.minRowLength=n.minRowLength;var s=Xy();a.mod=s.mod,a.modHalf=s.modHalf;var c=sF();a.valObjectMeta=c.valObjectMeta,a.coerce=c.coerce,a.coerce2=c.coerce2,a.coerceFont=c.coerceFont,a.coercePattern=c.coercePattern,a.coerceHoverinfo=c.coerceHoverinfo,a.coerceSelectionMarkerOpacity=c.coerceSelectionMarkerOpacity,a.validate=c.validate;var h=NF();a.dateTime2ms=h.dateTime2ms,a.isDateTime=h.isDateTime,a.ms2DateTime=h.ms2DateTime,a.ms2DateTimeLocal=h.ms2DateTimeLocal,a.cleanDate=h.cleanDate,a.isJSDate=h.isJSDate,a.formatDate=h.formatDate,a.incrementMonth=h.incrementMonth,a.dateTick0=h.dateTick0,a.dfltRange=h.dfltRange,a.findExactDates=h.findExactDates,a.MIN_MS=h.MIN_MS,a.MAX_MS=h.MAX_MS;var v=v2();a.findBin=v.findBin,a.sorterAsc=v.sorterAsc,a.sorterDes=v.sorterDes,a.distinctVals=v.distinctVals,a.roundUp=v.roundUp,a.sort=v.sort,a.findIndexOfMin=v.findIndexOfMin,a.sortObjectKeys=Km();var p=UF();a.aggNums=p.aggNums,a.len=p.len,a.mean=p.mean,a.geometricMean=p.geometricMean,a.median=p.median,a.midRange=p.midRange,a.variance=p.variance,a.stdev=p.stdev,a.interp=p.interp;var T=h2();a.init2dArray=T.init2dArray,a.transposeRagged=T.transposeRagged,a.dot=T.dot,a.translationMatrix=T.translationMatrix,a.rotationMatrix=T.rotationMatrix,a.rotationXYMatrix=T.rotationXYMatrix,a.apply3DTransform=T.apply3DTransform,a.apply2DTransform=T.apply2DTransform,a.apply2DTransform2=T.apply2DTransform2,a.convertCssMatrix=T.convertCssMatrix,a.inverseTransformMatrix=T.inverseTransformMatrix;var l=jF();a.deg2rad=l.deg2rad,a.rad2deg=l.rad2deg,a.angleDelta=l.angleDelta,a.angleDist=l.angleDist,a.isFullCircle=l.isFullCircle,a.isAngleInsideSector=l.isAngleInsideSector,a.isPtInsideSector=l.isPtInsideSector,a.pathArc=l.pathArc,a.pathSector=l.pathSector,a.pathAnnulus=l.pathAnnulus;var _=VF();a.isLeftAnchor=_.isLeftAnchor,a.isCenterAnchor=_.isCenterAnchor,a.isRightAnchor=_.isRightAnchor,a.isTopAnchor=_.isTopAnchor,a.isMiddleAnchor=_.isMiddleAnchor,a.isBottomAnchor=_.isBottomAnchor;var w=qF();a.segmentsIntersect=w.segmentsIntersect,a.segmentDistance=w.segmentDistance,a.getTextLocation=w.getTextLocation,a.clearLocationCache=w.clearLocationCache,a.getVisibleSegment=w.getVisibleSegment,a.findPointOnPath=w.findPointOnPath;var S=Oo();a.extendFlat=S.extendFlat,a.extendDeep=S.extendDeep,a.extendDeepAll=S.extendDeepAll,a.extendDeepNoArrays=S.extendDeepNoArrays;var E=Ym();a.log=E.log,a.warn=E.warn,a.error=E.error;var m=Ky();a.counterRegex=m.counter;var b=m2();a.throttle=b.throttle,a.throttleDone=b.done,a.clearThrottle=b.clear;var d=b_();a.getGraphDiv=d.getGraphDiv,a.isPlotDiv=d.isPlotDiv,a.removeElement=d.removeElement,a.addStyleRule=d.addStyleRule,a.addRelatedStyleRule=d.addRelatedStyleRule,a.deleteRelatedStyleRule=d.deleteRelatedStyleRule,a.setStyleOnHover=d.setStyleOnHover,a.getFullTransformMatrix=d.getFullTransformMatrix,a.getElementTransformMatrix=d.getElementTransformMatrix,a.getElementAndAncestors=d.getElementAndAncestors,a.equalDomRects=d.equalDomRects,a.clearResponsive=HF(),a.preserveDrawingBuffer=WF(),a.makeTraceGroups=ZF(),a._=XF(),a.notifier=YA(),a.filterUnique=tS(),a.filterVisible=YF(),a.pushUnique=KA(),a.increment=KF(),a.cleanNumber=JF(),a.ensureNumber=function(ne){return M(ne)?(ne=Number(ne),ne>t||ne<r?o:ne):o},a.isIndex=function(re,ne){return ne!==void 0&&re>=ne?!1:M(re)&&re>=0&&re%1===0},a.noop=f2(),a.identity=T_(),a.repeat=function(re,ne){for(var j=new Array(ne),ee=0;ee<ne;ee++)j[ee]=re;return j},a.swapAttrs=function(re,ne,j,ee){j||(j="x"),ee||(ee="y");for(var ie=0;ie<ne.length;ie++){var fe=ne[ie],be=a.nestedProperty(re,fe.replace("?",j)),Ae=a.nestedProperty(re,fe.replace("?",ee)),Be=be.get();be.set(Ae.get()),Ae.set(Be)}},a.raiseToTop=function(ne){ne.parentNode.appendChild(ne)},a.cancelTransition=function(re){return re.transition().duration(0)},a.constrain=function(re,ne,j){return ne>j?Math.max(j,Math.min(ne,re)):Math.max(ne,Math.min(j,re))},a.bBoxIntersect=function(re,ne,j){return j=j||0,re.left<=ne.right+j&&ne.left<=re.right+j&&re.top<=ne.bottom+j&&ne.top<=re.bottom+j},a.simpleMap=function(re,ne,j,ee,ie){for(var fe=re.length,be=new Array(fe),Ae=0;Ae<fe;Ae++)be[Ae]=ne(re[Ae],j,ee,ie);return be},a.randstr=function re(ne,j,ee,ie){if(ee||(ee=16),j===void 0&&(j=24),j<=0)return"0";var fe=Math.log(Math.pow(2,j))/Math.log(ee),be="",Ae,Be,Ie;for(Ae=2;fe===1/0;Ae*=2)fe=Math.log(Math.pow(2,j/Ae))/Math.log(ee)*Ae;var Ze=fe-Math.floor(fe);for(Ae=0;Ae<Math.floor(fe);Ae++)Ie=Math.floor(Math.random()*ee).toString(ee),be=Ie+be;Ze&&(Be=Math.pow(ee,Ze),Ie=Math.floor(Math.random()*Be).toString(ee),be=Ie+be);var at=parseInt(be,ee);return ne&&ne[be]||at!==1/0&&at>=Math.pow(2,j)?ie>10?(a.warn("randstr failed uniqueness"),be):re(ne,j,ee,(ie||0)+1):be},a.OptionControl=function(re,ne){re||(re={}),ne||(ne="opt");var j={};return j.optionList=[],j._newoption=function(ee){ee[ne]=re,j[ee.name]=ee,j.optionList.push(ee)},j["_"+ne]=re,j},a.smooth=function(re,ne){if(ne=Math.round(ne)||0,ne<2)return re;var j=re.length,ee=2*j,ie=2*ne-1,fe=new Array(ie),be=new Array(j),Ae,Be,Ie,Ze;for(Ae=0;Ae<ie;Ae++)fe[Ae]=(1-Math.cos(Math.PI*(Ae+1)/ne))/(2*ne);for(Ae=0;Ae<j;Ae++){for(Ze=0,Be=0;Be<ie;Be++)Ie=Ae+Be+1-ne,Ie<-j?Ie-=ee*Math.round(Ie/ee):Ie>=ee&&(Ie-=ee*Math.floor(Ie/ee)),Ie<0?Ie=-1-Ie:Ie>=j&&(Ie=ee-1-Ie),Ze+=re[Ie]*fe[Be];be[Ae]=Ze}return be},a.syncOrAsync=function(re,ne,j){var ee,ie;function fe(){return a.syncOrAsync(re,ne,j)}for(;re.length;)if(ie=re.splice(0,1)[0],ee=ie(ne),ee&&ee.then)return ee.then(fe);return j&&j(ne)},a.stripTrailingSlash=function(re){return re.substr(-1)==="/"?re.substr(0,re.length-1):re},a.noneOrAll=function(re,ne,j){if(re){var ee=!1,ie=!0,fe,be;for(fe=0;fe<j.length;fe++)be=re[j[fe]],be!=null?ee=!0:ie=!1;if(ee&&!ie)for(fe=0;fe<j.length;fe++)re[j[fe]]=ne[j[fe]]}},a.mergeArray=function(re,ne,j,ee){var ie=typeof ee=="function";if(a.isArrayOrTypedArray(re))for(var fe=Math.min(re.length,ne.length),be=0;be<fe;be++){var Ae=re[be];ne[be][j]=ie?ee(Ae):Ae}},a.mergeArrayCastPositive=function(re,ne,j){return a.mergeArray(re,ne,j,function(ee){var ie=+ee;return isFinite(ie)&&ie>0?ie:0})},a.fillArray=function(re,ne,j,ee){if(ee=ee||a.identity,a.isArrayOrTypedArray(re))for(var ie=0;ie<ne.length;ie++)ne[ie][j]=ee(re[ie])},a.castOption=function(re,ne,j,ee){ee=ee||a.identity;var ie=a.nestedProperty(re,j).get();return a.isArrayOrTypedArray(ie)?Array.isArray(ne)&&a.isArrayOrTypedArray(ie[ne[0]])?ee(ie[ne[0]][ne[1]]):ee(ie[ne]):ie},a.extractOption=function(re,ne,j,ee){if(j in re)return re[j];var ie=a.nestedProperty(ne,ee).get();if(!Array.isArray(ie))return ie};function u(re){var ne={};for(var j in re)for(var ee=re[j],ie=0;ie<ee.length;ie++)ne[ee[ie]]=+j;return ne}a.tagSelected=function(re,ne,j){var ee=ne.selectedpoints,ie=ne._indexToPoints,fe;ie&&(fe=u(ie));function be(at){return at!==void 0&&at<re.length}for(var Ae=0;Ae<ee.length;Ae++){var Be=ee[Ae];if(a.isIndex(Be)||a.isArrayOrTypedArray(Be)&&a.isIndex(Be[0])&&a.isIndex(Be[1])){var Ie=fe?fe[Be]:Be,Ze=j?j[Ie]:Ie;be(Ze)&&(re[Ze].selected=1)}}},a.selIndices2selPoints=function(re){var ne=re.selectedpoints,j=re._indexToPoints;if(j){for(var ee=u(j),ie=[],fe=0;fe<ne.length;fe++){var be=ne[fe];if(a.isIndex(be)){var Ae=ee[be];a.isIndex(Ae)&&ie.push(Ae)}}return ie}else return ne},a.getTargetArray=function(re,ne){var j=ne.target;if(typeof j=="string"&&j){var ee=a.nestedProperty(re,j).get();return a.isArrayOrTypedArray(ee)?ee:!1}else if(a.isArrayOrTypedArray(j))return j;return!1};function y(re,ne,j){var ee={};typeof ne!="object"&&(ne={});var ie=j==="pieLike"?-1:3,fe=Object.keys(re),be,Ae,Be;for(be=0;be<fe.length;be++)Ae=fe[be],Be=re[Ae],!(Ae.charAt(0)==="_"||typeof Be=="function")&&(Ae==="module"?ee[Ae]=Be:Array.isArray(Be)?Ae==="colorscale"||ie===-1?ee[Ae]=Be.slice():ee[Ae]=Be.slice(0,ie):a.isTypedArray(Be)?ie===-1?ee[Ae]=Be.subarray():ee[Ae]=Be.subarray(0,ie):Be&&typeof Be=="object"?ee[Ae]=y(re[Ae],ne[Ae],j):ee[Ae]=Be);for(fe=Object.keys(ne),be=0;be<fe.length;be++)Ae=fe[be],Be=ne[Ae],(typeof Be!="object"||!(Ae in ee)||typeof ee[Ae]!="object")&&(ee[Ae]=Be);return ee}a.minExtend=y,a.titleCase=function(re){return re.charAt(0).toUpperCase()+re.substr(1)},a.containsAny=function(re,ne){for(var j=0;j<ne.length;j++)if(re.indexOf(ne[j])!==-1)return!0;return!1};var f=/Version\/[\d\.]+.*Safari/;a.isSafari=function(){return f.test(window.navigator.userAgent)};var P=/iPad|iPhone|iPod/;a.isIOS=function(){return P.test(window.navigator.userAgent)};var L=/Firefox\/(\d+)\.\d+/;a.getFirefoxVersion=function(){var re=L.exec(window.navigator.userAgent);if(re&&re.length===2){var ne=parseInt(re[1]);if(!isNaN(ne))return ne}return null},a.isD3Selection=function(re){return re instanceof g.selection},a.ensureSingle=function(re,ne,j,ee){var ie=re.select(ne+(j?"."+j:""));if(ie.size())return ie;var fe=re.append(ne);return j&&fe.classed(j,!0),ee&&fe.call(ee),fe},a.ensureSingleById=function(re,ne,j,ee){var ie=re.select(ne+"#"+j);if(ie.size())return ie;var fe=re.append(ne).attr("id",j);return ee&&fe.call(ee),fe},a.objectFromPath=function(re,ne){for(var j=re.split("."),ee,ie=ee={},fe=0;fe<j.length;fe++){var be=j[fe],Ae=null,Be=j[fe].match(/(.*)\[([0-9]+)\]/);Be?(be=Be[1],Ae=Be[2],ee=ee[be]=[],fe===j.length-1?ee[Ae]=ne:ee[Ae]={},ee=ee[Ae]):(fe===j.length-1?ee[be]=ne:ee[be]={},ee=ee[be])}return ie};var z=/^([^\[\.]+)\.(.+)?/,F=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;function B(re){return re.slice(0,2)==="__"}a.expandObjectPaths=function(re){var ne,j,ee,ie,fe,be,Ae;if(typeof re=="object"&&!Array.isArray(re)){for(j in re)if(re.hasOwnProperty(j))if(ne=j.match(z)){if(ie=re[j],ee=ne[1],B(ee))continue;delete re[j],re[ee]=a.extendDeepNoArrays(re[ee]||{},a.objectFromPath(j,a.expandObjectPaths(ie))[ee])}else if(ne=j.match(F)){if(ie=re[j],ee=ne[1],B(ee))continue;if(fe=parseInt(ne[2]),delete re[j],re[ee]=re[ee]||[],ne[3]===".")Ae=ne[4],be=re[ee][fe]=re[ee][fe]||{},a.extendDeepNoArrays(be,a.objectFromPath(Ae,a.expandObjectPaths(ie)));else{if(B(ee))continue;re[ee][fe]=a.expandObjectPaths(ie)}}else{if(B(j))continue;re[j]=a.expandObjectPaths(re[j])}}return re},a.numSeparate=function(re,ne,j){if(j||(j=!1),typeof ne!="string"||ne.length===0)throw new Error("Separator string required for formatting!");typeof re=="number"&&(re=String(re));var ee=/(\d+)(\d{3})/,ie=ne.charAt(0),fe=ne.charAt(1),be=re.split("."),Ae=be[0],Be=be.length>1?ie+be[1]:"";if(fe&&(be.length>1||Ae.length>4||j))for(;ee.test(Ae);)Ae=Ae.replace(ee,"$1"+fe+"$2");return Ae+Be},a.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var O=/^\w*$/;a.templateString=function(re,ne){var j={};return re.replace(a.TEMPLATE_STRING_REGEX,function(ee,ie){var fe;return O.test(ie)?fe=ne[ie]:(j[ie]=j[ie]||a.nestedProperty(ne,ie).get,fe=j[ie](!0)),fe!==void 0?fe:""})};var I={max:10,count:0,name:"hovertemplate"};a.hovertemplateString=function(){return se.apply(I,arguments)};var N={max:10,count:0,name:"texttemplate"};a.texttemplateString=function(){return se.apply(N,arguments)};var U=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function W(re){var ne=re.match(U);return ne?{key:ne[1],op:ne[2],number:Number(ne[3])}:{key:re,op:null,number:null}}var Q={max:10,count:0,name:"texttemplate",parseMultDiv:!0};a.texttemplateStringForShapes=function(){return se.apply(Q,arguments)};var ue=/^[:|\|]/;function se(re,ne,j){var ee=this,ie=arguments;return ne||(ne={}),re.replace(a.TEMPLATE_STRING_REGEX,function(fe,be,Ae){var Be=be==="xother"||be==="yother",Ie=be==="_xother"||be==="_yother",Ze=be==="_xother_"||be==="_yother_",at=be==="xother_"||be==="yother_",it=Be||Ie||at||Ze,et=be;(Ie||Ze)&&(et=et.substring(1)),(at||Ze)&&(et=et.substring(0,et.length-1));var lt=null,Me=null;if(ee.parseMultDiv){var ge=W(et);et=ge.key,lt=ge.op,Me=ge.number}var ce;if(it){if(ce=ne[et],ce===void 0)return""}else{var ze,tt;for(tt=3;tt<ie.length;tt++)if(ze=ie[tt],!!ze){if(ze.hasOwnProperty(et)){ce=ze[et];break}if(O.test(et)||(ce=a.nestedProperty(ze,et).get(!0)),ce!==void 0)break}}if(ce!==void 0&&(lt==="*"&&(ce*=Me),lt==="/"&&(ce/=Me)),ce===void 0&&ee)return ee.count<ee.max&&(a.warn("Variable '"+et+"' in "+ee.name+" could not be found!"),ce=fe),ee.count===ee.max&&a.warn("Too many "+ee.name+" warnings - additional warnings will be suppressed"),ee.count++,fe;if(Ae){var nt;if(Ae[0]===":"&&(nt=j?j.numberFormat:a.numberFormat,ce!==""&&(ce=nt(Ae.replace(ue,""))(ce))),Ae[0]==="|"){nt=j?j.timeFormat:x;var Qe=a.dateTime2ms(ce);ce=a.formatDate(Qe,Ae.replace(ue,""),!1,nt)}}else{var Ct=et+"Label";ne.hasOwnProperty(Ct)&&(ce=ne[Ct])}return it&&(ce="("+ce+")",(Ie||Ze)&&(ce=" "+ce),(at||Ze)&&(ce=ce+" ")),ce})}var he=48,G=57;a.subplotSort=function(re,ne){for(var j=Math.min(re.length,ne.length)+1,ee=0,ie=0,fe=0;fe<j;fe++){var be=re.charCodeAt(fe)||0,Ae=ne.charCodeAt(fe)||0,Be=be>=he&&be<=G,Ie=Ae>=he&&Ae<=G;if(Be&&(ee=10*ee+be-he),Ie&&(ie=10*ie+Ae-he),!Be||!Ie){if(ee!==ie)return ee-ie;if(be!==Ae)return be-Ae}}return ie-ee};var $=2e9;a.seedPseudoRandom=function(){$=2e9},a.pseudoRandom=function(){var re=$;return $=(69069*$+1)%4294967296,Math.abs($-re)<429496729?a.pseudoRandom():$/4294967296},a.fillText=function(re,ne,j){var ee=Array.isArray(j)?function(be){j.push(be)}:function(be){j.text=be},ie=a.extractOption(re,ne,"htx","hovertext");if(a.isValidTextValue(ie))return ee(ie);var fe=a.extractOption(re,ne,"tx","text");if(a.isValidTextValue(fe))return ee(fe)},a.isValidTextValue=function(re){return re||re===0},a.formatPercent=function(re,ne){ne=ne||0;for(var j=(Math.round(100*re*Math.pow(10,ne))*Math.pow(.1,ne)).toFixed(ne)+"%",ee=0;ee<ne;ee++)j.indexOf(".")!==-1&&(j=j.replace("0%","%"),j=j.replace(".%","%"));return j},a.isHidden=function(re){var ne=window.getComputedStyle(re).display;return!ne||ne==="none"},a.strTranslate=function(re,ne){return re||ne?"translate("+re+","+ne+")":""},a.strRotate=function(re){return re?"rotate("+re+")":""},a.strScale=function(re){return re!==1?"scale("+re+")":""},a.getTextTransform=function(re){var ne=re.noCenter,j=re.textX,ee=re.textY,ie=re.targetX,fe=re.targetY,be=re.anchorX||0,Ae=re.anchorY||0,Be=re.rotate,Ie=re.scale;return Ie?Ie>1&&(Ie=1):Ie=0,a.strTranslate(ie-Ie*(j+be),fe-Ie*(ee+Ae))+a.strScale(Ie)+(Be?"rotate("+Be+(ne?"":" "+j+" "+ee)+")":"")},a.setTransormAndDisplay=function(re,ne){re.attr("transform",a.getTextTransform(ne)),re.style("display",ne.scale?null:"none")},a.ensureUniformFontSize=function(re,ne){var j=a.extendFlat({},ne);return j.size=Math.max(ne.size,re._fullLayout.uniformtext.minsize||0),j},a.join2=function(re,ne,j){var ee=re.length;return ee>1?re.slice(0,-1).join(ne)+j+re[ee-1]:re.join(ne)},a.bigFont=function(re){return Math.round(1.2*re)};var J=a.getFirefoxVersion(),Z=J!==null&&J<86;a.getPositionFromD3Event=function(){return Z?[g.event.layerX,g.event.layerY]:[g.event.offsetX,g.event.offsetY]}}}),$F=Ye({"build/plotcss.js"(){"use strict";var X=ta(),H={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(x in H)g=x.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),X.addStyleRule(g,H[x]);var g,x}}),rS=Ye({"node_modules/is-browser/client.js"(X,H){H.exports=!0}}),aS=Ye({"node_modules/has-hover/index.js"(X,H){"use strict";var g=rS(),x;typeof window.matchMedia=="function"?x=!window.matchMedia("(hover: none)").matches:x=g,H.exports=x}}),Wg=Ye({"node_modules/events/events.js"(X,H){"use strict";var g=typeof Reflect=="object"?Reflect:null,x=g&&typeof g.apply=="function"?g.apply:function(E,m,b){return Function.prototype.apply.call(E,m,b)},A;g&&typeof g.ownKeys=="function"?A=g.ownKeys:Object.getOwnPropertySymbols?A=function(E){return Object.getOwnPropertyNames(E).concat(Object.getOwnPropertySymbols(E))}:A=function(E){return Object.getOwnPropertyNames(E)};function M(S){console&&console.warn&&console.warn(S)}var e=Number.isNaN||function(E){return E!==E};function t(){t.init.call(this)}H.exports=t,H.exports.once=l,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._eventsCount=0,t.prototype._maxListeners=void 0;var r=10;function o(S){if(typeof S!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof S)}Object.defineProperty(t,"defaultMaxListeners",{enumerable:!0,get:function(){return r},set:function(S){if(typeof S!="number"||S<0||e(S))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+S+".");r=S}}),t.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},t.prototype.setMaxListeners=function(E){if(typeof E!="number"||E<0||e(E))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+E+".");return this._maxListeners=E,this};function a(S){return S._maxListeners===void 0?t.defaultMaxListeners:S._maxListeners}t.prototype.getMaxListeners=function(){return a(this)},t.prototype.emit=function(E){for(var m=[],b=1;b<arguments.length;b++)m.push(arguments[b]);var d=E==="error",u=this._events;if(u!==void 0)d=d&&u.error===void 0;else if(!d)return!1;if(d){var y;if(m.length>0&&(y=m[0]),y instanceof Error)throw y;var f=new Error("Unhandled error."+(y?" ("+y.message+")":""));throw f.context=y,f}var P=u[E];if(P===void 0)return!1;if(typeof P=="function")x(P,this,m);else for(var L=P.length,z=v(P,L),b=0;b<L;++b)x(z[b],this,m);return!0};function i(S,E,m,b){var d,u,y;if(o(m),u=S._events,u===void 0?(u=S._events=Object.create(null),S._eventsCount=0):(u.newListener!==void 0&&(S.emit("newListener",E,m.listener?m.listener:m),u=S._events),y=u[E]),y===void 0)y=u[E]=m,++S._eventsCount;else if(typeof y=="function"?y=u[E]=b?[m,y]:[y,m]:b?y.unshift(m):y.push(m),d=a(S),d>0&&y.length>d&&!y.warned){y.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+y.length+" "+String(E)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=S,f.type=E,f.count=y.length,M(f)}return S}t.prototype.addListener=function(E,m){return i(this,E,m,!1)},t.prototype.on=t.prototype.addListener,t.prototype.prependListener=function(E,m){return i(this,E,m,!0)};function n(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function s(S,E,m){var b={fired:!1,wrapFn:void 0,target:S,type:E,listener:m},d=n.bind(b);return d.listener=m,b.wrapFn=d,d}t.prototype.once=function(E,m){return o(m),this.on(E,s(this,E,m)),this},t.prototype.prependOnceListener=function(E,m){return o(m),this.prependListener(E,s(this,E,m)),this},t.prototype.removeListener=function(E,m){var b,d,u,y,f;if(o(m),d=this._events,d===void 0)return this;if(b=d[E],b===void 0)return this;if(b===m||b.listener===m)--this._eventsCount===0?this._events=Object.create(null):(delete d[E],d.removeListener&&this.emit("removeListener",E,b.listener||m));else if(typeof b!="function"){for(u=-1,y=b.length-1;y>=0;y--)if(b[y]===m||b[y].listener===m){f=b[y].listener,u=y;break}if(u<0)return this;u===0?b.shift():p(b,u),b.length===1&&(d[E]=b[0]),d.removeListener!==void 0&&this.emit("removeListener",E,f||m)}return this},t.prototype.off=t.prototype.removeListener,t.prototype.removeAllListeners=function(E){var m,b,d;if(b=this._events,b===void 0)return this;if(b.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):b[E]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete b[E]),this;if(arguments.length===0){var u=Object.keys(b),y;for(d=0;d<u.length;++d)y=u[d],y!=="removeListener"&&this.removeAllListeners(y);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(m=b[E],typeof m=="function")this.removeListener(E,m);else if(m!==void 0)for(d=m.length-1;d>=0;d--)this.removeListener(E,m[d]);return this};function c(S,E,m){var b=S._events;if(b===void 0)return[];var d=b[E];return d===void 0?[]:typeof d=="function"?m?[d.listener||d]:[d]:m?T(d):v(d,d.length)}t.prototype.listeners=function(E){return c(this,E,!0)},t.prototype.rawListeners=function(E){return c(this,E,!1)},t.listenerCount=function(S,E){return typeof S.listenerCount=="function"?S.listenerCount(E):h.call(S,E)},t.prototype.listenerCount=h;function h(S){var E=this._events;if(E!==void 0){var m=E[S];if(typeof m=="function")return 1;if(m!==void 0)return m.length}return 0}t.prototype.eventNames=function(){return this._eventsCount>0?A(this._events):[]};function v(S,E){for(var m=new Array(E),b=0;b<E;++b)m[b]=S[b];return m}function p(S,E){for(;E+1<S.length;E++)S[E]=S[E+1];S.pop()}function T(S){for(var E=new Array(S.length),m=0;m<E.length;++m)E[m]=S[m].listener||S[m];return E}function l(S,E){return new Promise(function(m,b){function d(y){S.removeListener(E,u),b(y)}function u(){typeof S.removeListener=="function"&&S.removeListener("error",d),m([].slice.call(arguments))}w(S,E,u,{once:!0}),E!=="error"&&_(S,d,{once:!0})})}function _(S,E,m){typeof S.on=="function"&&w(S,"error",E,m)}function w(S,E,m,b){if(typeof S.on=="function")b.once?S.once(E,m):S.on(E,m);else if(typeof S.addEventListener=="function")S.addEventListener(E,function d(u){b.once&&S.removeEventListener(E,d),m(u)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof S)}}}),$y=Ye({"src/lib/events.js"(X,H){"use strict";var g=Wg().EventEmitter,x={init:function(A){if(A._ev instanceof g)return A;var M=new g,e=new g;return A._ev=M,A._internalEv=e,A.on=M.on.bind(M),A.once=M.once.bind(M),A.removeListener=M.removeListener.bind(M),A.removeAllListeners=M.removeAllListeners.bind(M),A._internalOn=e.on.bind(e),A._internalOnce=e.once.bind(e),A._removeInternalListener=e.removeListener.bind(e),A._removeAllInternalListeners=e.removeAllListeners.bind(e),A.emit=function(t,r){M.emit(t,r),e.emit(t,r)},A},triggerHandler:function(A,M,e){var t,r=A._ev;if(!r)return;var o=r._events[M];if(!o)return;function a(n){if(n.listener){if(r.removeListener(M,n.listener),!n.fired)return n.fired=!0,n.listener.apply(r,[e])}else return n.apply(r,[e])}o=Array.isArray(o)?o:[o];var i;for(i=0;i<o.length-1;i++)a(o[i]);return t=a(o[i]),t},purge:function(A){return delete A._ev,delete A.on,delete A.once,delete A.removeListener,delete A.removeAllListeners,delete A.emit,delete A._ev,delete A._internalEv,delete A._internalOn,delete A._internalOnce,delete A._removeInternalListener,delete A._removeAllInternalListeners,A}};H.exports=x}}),QF=Ye({"src/lib/queue.js"(X,H){"use strict";var g=ta(),x=Gg().dfltConfig;function A(e,t){for(var r=[],o,a=0;a<t.length;a++)o=t[a],o===e?r[a]=o:typeof o=="object"?r[a]=Array.isArray(o)?g.extendDeep([],o):g.extendDeepAll({},o):r[a]=o;return r}var M={};M.add=function(e,t,r,o,a){var i,n;if(e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},n=e.undoQueue.index,e.autoplay){e.undoQueue.inSequence||(e.autoplay=!1);return}!e.undoQueue.sequence||e.undoQueue.beginSequence?(i={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},e.undoQueue.queue.splice(n,e.undoQueue.queue.length-n,i),e.undoQueue.index+=1):i=e.undoQueue.queue[n-1],e.undoQueue.beginSequence=!1,i&&(i.undo.calls.unshift(t),i.undo.args.unshift(r),i.redo.calls.push(o),i.redo.args.push(a)),e.undoQueue.queue.length>x.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)},M.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},M.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},M.undo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o<r.undo.calls.length;o++)M.plotDo(t,r.undo.calls[o],r.undo.args[o]);t.undoQueue.inSequence=!1,t.autoplay=!1}},M.redo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o<r.redo.calls.length;o++)M.plotDo(t,r.redo.calls[o],r.redo.args[o]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}},M.plotDo=function(e,t,r){e.autoplay=!0,r=A(e,r),t.apply(null,r)},H.exports=M}}),iS=Ye({"src/plots/frame_attributes.js"(X,H){"use strict";H.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}}}),Qy=Ye({"src/plot_api/plot_schema.js"(X){"use strict";var H=Hn(),g=ta(),x=Pl(),A=Jy(),M=iS(),e=w_(),t=Gg().configAttributes,r=Ou(),o=g.extendDeepAll,a=g.isPlainObject,i=g.isArrayOrTypedArray,n=g.nestedProperty,s=g.valObjectMeta,c="_isSubplotObj",h="_isLinkedToArray",v="_arrayAttrRegexps",p="_deprecated",T=[c,h,v,p];X.IS_SUBPLOT_OBJ=c,X.IS_LINKED_TO_ARRAY=h,X.DEPRECATED=p,X.UNDERSCORE_ATTRS=T,X.get=function(){var L={};return H.allTypes.forEach(function(z){L[z]=S(z)}),{defs:{valObjects:s,metaKeys:T.concat(["description","role","editType","impliedEdits"]),editType:{traces:r.traces,layout:r.layout},impliedEdits:{}},traces:L,layout:E(),frames:m(),animation:b(e),config:b(t)}},X.crawl=function(L,z,F,B){var O=F||0;B=B||"",Object.keys(L).forEach(function(I){var N=L[I];if(T.indexOf(I)===-1){var U=(B?B+".":"")+I;z(N,I,L,O,U),!X.isValObject(N)&&a(N)&&I!=="impliedEdits"&&X.crawl(N,z,O+1,U)}})},X.isValObject=function(L){return L&&L.valType!==void 0},X.findArrayAttributes=function(L){var z=[],F=[],B=[],O,I;function N(W,Q,ue,se){F=F.slice(0,se).concat([Q]),B=B.slice(0,se).concat([W&&W._isLinkedToArray]);var he=W&&(W.valType==="data_array"||W.arrayOk===!0)&&!(F[se-1]==="colorbar"&&(Q==="ticktext"||Q==="tickvals"));he&&U(O,0,"")}function U(W,Q,ue){var se=W[F[Q]],he=ue+F[Q];if(Q===F.length-1)i(se)&&z.push(I+he);else if(B[Q]){if(Array.isArray(se))for(var G=0;G<se.length;G++)a(se[G])&&U(se[G],Q+1,he+"["+G+"].")}else a(se)&&U(se,Q+1,he+".")}return O=L,I="",X.crawl(x,N),L._module&&L._module.attributes&&X.crawl(L._module.attributes,N),z},X.getTraceValObject=function(L,z){var F=z[0],B=1,O,I,N=L._module;if(N||(N=(H.modules[L.type||x.type.dflt]||{})._module),!N)return!1;if(O=N.attributes,I=O&&O[F],!I){var U=N.basePlotModule;U&&U.attributes&&(I=U.attributes[F])}return I||(I=x[F]),_(I,z,B)},X.getLayoutValObject=function(L,z){var F=l(L,z[0]);return _(F,z,1)};function l(L,z){var F,B,O,I,N=L._basePlotModules;if(N){var U;for(F=0;F<N.length;F++){if(O=N[F],O.attrRegex&&O.attrRegex.test(z)){if(O.layoutAttrOverrides)return O.layoutAttrOverrides;!U&&O.layoutAttributes&&(U=O.layoutAttributes)}var W=O.baseLayoutAttrOverrides;if(W&&z in W)return W[z]}if(U)return U}var Q=L._modules;if(Q){for(F=0;F<Q.length;F++)if(I=Q[F].layoutAttributes,I&&z in I)return I[z]}for(B in H.componentsRegistry){if(O=H.componentsRegistry[B],O.name==="colorscale"&&z.indexOf("coloraxis")===0)return O.layoutAttributes[z];if(!O.schema&&z===O.name)return O.layoutAttributes}return z in A?A[z]:!1}function _(L,z,F){if(!L)return!1;if(L._isLinkedToArray){if(w(z[F]))F++;else if(F<z.length)return!1}for(;F<z.length;F++){var B=L[z[F]];if(a(B))L=B;else break;if(F===z.length-1)break;if(L._isLinkedToArray){if(F++,!w(z[F]))return!1}else if(L.valType==="info_array"){F++;var O=z[F];if(!w(O))return!1;var I=L.items;if(Array.isArray(I)){if(O>=I.length)return!1;if(L.dimensions===2){if(F++,z.length===F)return L;var N=z[F];if(!w(N))return!1;L=I[O][N]}else L=I[O]}else L=I}}return L}function w(L){return L===Math.round(L)&&L>=0}function S(L){var z,F;z=H.modules[L]._module,F=z.basePlotModule;var B={};B.type=null;var O=o({},x),I=o({},z.attributes);X.crawl(I,function(W,Q,ue,se,he){n(O,he).set(void 0),W===void 0&&n(I,he).set(void 0)}),o(B,O),H.traceIs(L,"noOpacity")&&delete B.opacity,H.traceIs(L,"showLegend")||(delete B.showlegend,delete B.legendgroup),H.traceIs(L,"noHover")&&(delete B.hoverinfo,delete B.hoverlabel),z.selectPoints||delete B.selectedpoints,o(B,I),F.attributes&&o(B,F.attributes),B.type=L;var N={meta:z.meta||{},categories:z.categories||{},animatable:!!z.animatable,type:L,attributes:b(B)};if(z.layoutAttributes){var U={};o(U,z.layoutAttributes),N.layoutAttributes=b(U)}return z.animatable||X.crawl(N,function(W){X.isValObject(W)&&"anim"in W&&delete W.anim}),N}function E(){var L={},z,F;o(L,A);for(z in H.subplotsRegistry)if(F=H.subplotsRegistry[z],!!F.layoutAttributes)if(Array.isArray(F.attr))for(var B=0;B<F.attr.length;B++)f(L,F,F.attr[B]);else{var O=F.attr==="subplot"?F.name:F.attr;f(L,F,O)}for(z in H.componentsRegistry){F=H.componentsRegistry[z];var I=F.schema;if(I&&(I.subplots||I.layout)){var N=I.subplots;if(N&&N.xaxis&&!N.yaxis)for(var U in N.xaxis)delete L.yaxis[U];delete L.xaxis.shift,delete L.xaxis.autoshift}else F.name==="colorscale"?o(L,F.layoutAttributes):F.layoutAttributes&&P(L,F.layoutAttributes,F.name)}return{layoutAttributes:b(L)}}function m(){var L={frames:o({},M)};return b(L),L.frames}function b(L){return d(L),u(L),y(L),L}function d(L){function z(B){return{valType:"string",editType:"none"}}function F(B,O,I){X.isValObject(B)?(B.arrayOk===!0||B.valType==="data_array")&&(I[O+"src"]=z(O)):a(B)&&(B.role="object")}X.crawl(L,F)}function u(L){function z(F,B,O){if(F){var I=F[h];I&&(delete F[h],O[B]={items:{}},O[B].items[I]=F,O[B].role="object")}}X.crawl(L,z)}function y(L){function z(F){for(var B in F)if(a(F[B]))z(F[B]);else if(Array.isArray(F[B]))for(var O=0;O<F[B].length;O++)z(F[B][O]);else F[B]instanceof RegExp&&(F[B]=F[B].toString())}z(L)}function f(L,z,F){var B=n(L,F),O=o({},z.layoutAttributes);O[c]=!0,B.set(O)}function P(L,z,F){var B=n(L,F);B.set(o(B.get()||{},z))}}}),cl=Ye({"src/plot_api/plot_template.js"(X){"use strict";var H=ta(),g=Pl(),x="templateitemname",A={name:{valType:"string",editType:"none"}};A[x]={valType:"string",editType:"calc"},X.templatedArray=function(t,r){return r._isLinkedToArray=t,r.name=A.name,r[x]=A[x],r},X.traceTemplater=function(t){var r={},o,a;for(o in t)a=t[o],Array.isArray(a)&&a.length&&(r[o]=0);function i(n){o=H.coerce(n,{},g,"type");var s={type:o,_template:null};if(o in r){a=t[o];var c=r[o]%a.length;r[o]++,s._template=a[c]}return s}return{newTrace:i}},X.newContainer=function(t,r,o){var a=t._template,i=a&&(a[r]||o&&a[o]);H.isPlainObject(i)||(i=null);var n=t[r]={_template:i};return n},X.arrayTemplater=function(t,r,o){var a=t._template,i=a&&a[e(r)],n=a&&a[r];(!Array.isArray(n)||!n.length)&&(n=[]);var s={};function c(v){var p={name:v.name,_input:v},T=p[x]=v[x];if(!M(T))return p._template=i,p;for(var l=0;l<n.length;l++){var _=n[l];if(_.name===T)return s[T]=1,p._template=_,p}return p[o]=v[o]||!1,p._template=!1,p}function h(){for(var v=[],p=0;p<n.length;p++){var T=n[p],l=T.name;if(M(l)&&!s[l]){var _={_template:T,name:l,_input:{_templateitemname:l}};_[x]=T[x],v.push(_),s[l]=1}}return v}return{newItem:c,defaultItems:h}};function M(t){return t&&typeof t=="string"}function e(t){var r=t.length-1;return t.charAt(r)!=="s"&&H.warn("bad argument to arrayDefaultKey: "+t),t.substr(0,t.length-1)+"defaults"}X.arrayDefaultKey=e,X.arrayEditor=function(t,r,o){var a=(H.nestedProperty(t,r).get()||[]).length,i=o._index,n=i>=a&&(o._input||{})._templateitemname;n&&(i=a);var s=r+"["+i+"]",c;function h(){c={},n&&(c[s]={},c[s][x]=n)}h();function v(_,w){c[_]=w}function p(_,w){n?H.nestedProperty(c[s],_).set(w):c[s+"."+_]=w}function T(){var _=c;return h(),_}function l(_,w){_&&p(_,w);var S=T();for(var E in S)H.nestedProperty(t,E).set(S[E])}return{modifyBase:v,modifyItem:p,getUpdateObj:T,applyUpdate:l}}}}),wh=Ye({"src/plots/cartesian/constants.js"(X,H){"use strict";var g=Ky().counter;H.exports={idRegex:{x:g("x","( domain)?"),y:g("y","( domain)?")},attrRegex:g("[xy]axis"),xAxisMatch:g("xaxis"),yAxisMatch:g("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}}}),Xc=Ye({"src/plots/cartesian/axis_ids.js"(X){"use strict";var H=Hn(),g=wh();X.id2name=function(M){if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))){var e=M.split(" ")[0].substr(1);return e==="1"&&(e=""),M.charAt(0)+"axis"+e}},X.name2id=function(M){if(M.match(g.AX_NAME_PATTERN)){var e=M.substr(5);return e==="1"&&(e=""),M.charAt(0)+e}},X.cleanId=function(M,e,t){var r=/( domain)$/.test(M);if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))&&!(e&&M.charAt(0)!==e)&&!(r&&!t)){var o=M.split(" ")[0].substr(1).replace(/^0+/,"");return o==="1"&&(o=""),M.charAt(0)+o+(r&&t?" domain":"")}},X.list=function(A,M,e){var t=A._fullLayout;if(!t)return[];var r=X.listIds(A,M),o=new Array(r.length),a;for(a=0;a<r.length;a++){var i=r[a];o[a]=t[i.charAt(0)+"axis"+i.substr(1)]}if(!e){var n=t._subplots.gl3d||[];for(a=0;a<n.length;a++){var s=t[n[a]];M?o.push(s[M+"axis"]):o.push(s.xaxis,s.yaxis,s.zaxis)}}return o},X.listIds=function(A,M){var e=A._fullLayout;if(!e)return[];var t=e._subplots;return M?t[M+"axis"]:t.xaxis.concat(t.yaxis)},X.getFromId=function(A,M,e){var t=A._fullLayout;return M=M===void 0||typeof M!="string"?M:M.replace(" domain",""),e==="x"?M=M.replace(/y[0-9]*/,""):e==="y"&&(M=M.replace(/x[0-9]*/,"")),t[X.id2name(M)]},X.getFromTrace=function(A,M,e){var t=A._fullLayout,r=null;if(H.traceIs(M,"gl3d")){var o=M.scene;o.substr(0,5)==="scene"&&(r=t[o][e+"axis"])}else r=X.getFromId(A,M[e+"axis"]||e);return r},X.idSort=function(A,M){var e=A.charAt(0),t=M.charAt(0);return e!==t?e>t?1:-1:+(A.substr(1)||1)-+(M.substr(1)||1)},X.ref2id=function(A){return/^[xyz]/.test(A)?A.split(" ")[0]:!1};function x(A,M){if(M&&M.length){for(var e=0;e<M.length;e++)if(M[e][A])return!0}return!1}X.isLinked=function(A,M){return x(M,A._axisMatchGroups)||x(M,A._axisConstraintGroups)}}}),Jm=Ye({"src/components/shapes/handle_outline.js"(X,H){"use strict";function g(A){var M=A._fullLayout._zoomlayer;M&&M.selectAll(".outline-controllers").remove()}function x(A){var M=A._fullLayout._zoomlayer;M&&M.selectAll(".select-outline").remove(),A._fullLayout._outlining=!1}H.exports={clearOutlineControllers:g,clearOutline:x}}}),g2=Ye({"src/traces/scatter/layout_attributes.js"(X,H){"use strict";H.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}}}),jh=Ye({"src/plots/get_data.js"(X){"use strict";var H=Hn(),g=wh().SUBPLOT_PATTERN;X.getSubplotCalcData=function(x,A,M){var e=H.subplotsRegistry[A];if(!e)return[];for(var t=e.attr,r=[],o=0;o<x.length;o++){var a=x[o],i=a[0].trace;i[t]===M&&r.push(a)}return r},X.getModuleCalcData=function(x,A,M){var e=[],t=[],r;if(typeof A=="string"?r=H.getModule(A).plot:typeof A=="function"?r=A:r=A.plot,!r)return[e,x];for(var o=M,a=0;a<x.length;a++){var i=x[a],n=i[0].trace,s=n.zorder!==void 0;n.visible!==!0||n._length===0||(n._module&&n._module.plot===r&&(!s||n.zorder===o)?e.push(i):t.push(i))}return[e,t]},X.getSubplotData=function(A,M,e){if(!H.subplotsRegistry[M])return[];for(var t=H.subplotsRegistry[M].attr,r=[],o,a,i,n=0;n<A.length;n++)o=A[n],o[t]===e&&r.push(o);return r}}}),eO=Ye({"src/plots/command.js"(X){"use strict";var H=Hn(),g=ta();X.manageCommandObserver=function(r,o,a,i){var n={},s=!0;o&&o._commandObserver&&(n=o._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var c=X.hasSimpleAPICommandBindings(r,a,n.lookupTable);if(o&&o._commandObserver){if(c)return n;if(o._commandObserver.remove)return o._commandObserver.remove(),o._commandObserver=null,n}if(c){x(r,c,n.cache),n.check=function(){if(s){var T=x(r,c,n.cache);return T.changed&&i&&n.lookupTable[T.value]!==void 0&&(n.disable(),Promise.resolve(i({value:T.value,type:c.type,prop:c.prop,traces:c.traces,index:n.lookupTable[T.value]})).then(n.enable,n.enable)),T.changed}};for(var h=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],v=0;v<h.length;v++)r._internalOn(h[v],n.check);n.remove=function(){for(var p=0;p<h.length;p++)r._removeInternalListener(h[p],n.check)}}else g.log("Unable to automatically bind plot updates to API command"),n.lookupTable={},n.remove=function(){};return n.disable=function(){s=!1},n.enable=function(){s=!0},o&&(o._commandObserver=n),n},X.hasSimpleAPICommandBindings=function(r,o,a){var i,n=o.length,s;for(i=0;i<n;i++){var c,h=o[i],v=h.method,p=h.args;if(Array.isArray(p)||(p=[]),!v)return!1;var T=X.computeAPICommandBindings(r,v,p);if(T.length!==1)return!1;if(!s)s=T[0],Array.isArray(s.traces)&&s.traces.sort();else{if(c=T[0],c.type!==s.type||c.prop!==s.prop)return!1;if(Array.isArray(s.traces))if(Array.isArray(c.traces)){c.traces.sort();for(var l=0;l<s.traces.length;l++)if(s.traces[l]!==c.traces[l])return!1}else return!1;else if(c.prop!==s.prop)return!1}c=T[0];var _=c.value;if(Array.isArray(_))if(_.length===1)_=_[0];else return!1;a&&(a[_]=i)}return s};function x(r,o,a){var i,n,s,c=!1;if(o.type==="data")i=r._fullData[o.traces!==null?o.traces[0]:0];else if(o.type==="layout")i=r._fullLayout;else return!1;return n=g.nestedProperty(i,o.prop).get(),s=a[o.type]=a[o.type]||{},s.hasOwnProperty(o.prop)&&s[o.prop]!==n&&(c=!0),s[o.prop]=n,{changed:c,value:n}}X.executeAPICommand=function(r,o,a){if(o==="skip")return Promise.resolve();var i=H.apiMethodRegistry[o],n=[r];Array.isArray(a)||(a=[]);for(var s=0;s<a.length;s++)n.push(a[s]);return i.apply(null,n).catch(function(c){return g.warn("API call to Plotly."+o+" rejected.",c),Promise.reject(c)})},X.computeAPICommandBindings=function(r,o,a){var i;switch(Array.isArray(a)||(a=[]),o){case"restyle":i=e(r,a);break;case"relayout":i=M(r,a);break;case"update":i=e(r,[a[0],a[2]]).concat(M(r,[a[1]]));break;case"animate":i=A(r,a);break;default:i=[]}return i};function A(r,o){return Array.isArray(o[0])&&o[0].length===1&&["string","number"].indexOf(typeof o[0][0])!==-1?[{type:"layout",prop:"_currentFrame",value:o[0][0].toString()}]:[]}function M(r,o){var a=[],i=o[0],n={};if(typeof i=="string")n[i]=o[1];else if(g.isPlainObject(i))n=i;else return a;return t(n,function(s,c,h){a.push({type:"layout",prop:s,value:h})},"",0),a}function e(r,o){var a,i,n,s,c=[];if(i=o[0],n=o[1],a=o[2],s={},typeof i=="string")s[i]=n;else if(g.isPlainObject(i))s=i,a===void 0&&(a=n);else return c;return a===void 0&&(a=null),t(s,function(h,v,p){var T,l;if(Array.isArray(p)){l=p.slice();var _=Math.min(l.length,r.data.length);a&&(_=Math.min(_,a.length)),T=[];for(var w=0;w<_;w++)T[w]=a?a[w]:w}else l=p,T=a?a.slice():null;if(T===null)Array.isArray(l)&&(l=l[0]);else if(Array.isArray(T)){if(!Array.isArray(l)){var S=l;l=[];for(var E=0;E<T.length;E++)l[E]=S}l.length=Math.min(T.length,l.length)}c.push({type:"data",prop:h,traces:T,value:l})},"",0),c}function t(r,o,a,i){Object.keys(r).forEach(function(n){var s=r[n];if(n[0]!=="_"){var c=a+(i>0?".":"")+n;g.isPlainObject(s)?t(s,o,c,i+1):o(c,n,s)}})}}}),Gu=Ye({"src/plots/plots.js"(X,H){"use strict";var g=_n(),x=Np().timeFormatLocale,A=Zy().formatLocale,M=jo(),e=XA(),t=Hn(),r=Qy(),o=cl(),a=ta(),i=Fn(),n=ks().BADNUM,s=Xc(),c=Jm().clearOutline,h=g2(),v=w_(),p=iS(),T=jh().getModuleCalcData,l=a.relinkPrivateKeys,_=a._,w=H.exports={};a.extendFlat(w,t),w.attributes=Pl(),w.attributes.type.values=w.allTypes,w.fontAttrs=Au(),w.layoutAttributes=Jy();var S=eO();w.executeAPICommand=S.executeAPICommand,w.computeAPICommandBindings=S.computeAPICommandBindings,w.manageCommandObserver=S.manageCommandObserver,w.hasSimpleAPICommandBindings=S.hasSimpleAPICommandBindings,w.redrawText=function(G){return G=a.getGraphDiv(G),new Promise(function($){setTimeout(function(){G._fullLayout&&(t.getComponentMethod("annotations","draw")(G),t.getComponentMethod("legend","draw")(G),t.getComponentMethod("colorbar","draw")(G),$(w.previousPromises(G)))},300)})},w.resize=function(G){G=a.getGraphDiv(G);var $,J=new Promise(function(Z,re){(!G||a.isHidden(G))&&re(new Error("Resize must be passed a displayed plot div element.")),G._redrawTimer&&clearTimeout(G._redrawTimer),G._resolveResize&&($=G._resolveResize),G._resolveResize=Z,G._redrawTimer=setTimeout(function(){if(!G.layout||G.layout.width&&G.layout.height||a.isHidden(G)){Z(G);return}delete G.layout.width,delete G.layout.height;var ne=G.changed;G.autoplay=!0,t.call("relayout",G,{autosize:!0}).then(function(){G.changed=ne,G._resolveResize===Z&&(delete G._resolveResize,Z(G))})},100)});return $&&$(J),J},w.previousPromises=function(G){if((G._promises||[]).length)return Promise.all(G._promises).then(function(){G._promises=[]})},w.addLinks=function(G){if(!(!G._context.showLink&&!G._context.showSources)){var $=G._fullLayout,J=a.ensureSingle($._paper,"text","js-plot-link-container",function(ie){ie.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:i.defaultLine,"pointer-events":"all"}).each(function(){var fe=g.select(this);fe.append("tspan").classed("js-link-to-tool",!0),fe.append("tspan").classed("js-link-spacer",!0),fe.append("tspan").classed("js-sourcelinks",!0)})}),Z=J.node(),re={y:$._paper.attr("height")-9};document.body.contains(Z)&&Z.getComputedTextLength()>=$.width-20?(re["text-anchor"]="start",re.x=5):(re["text-anchor"]="end",re.x=$._paper.attr("width")-7),J.attr(re);var ne=J.select(".js-link-to-tool"),j=J.select(".js-link-spacer"),ee=J.select(".js-sourcelinks");G._context.showSources&&G._context.showSources(G),G._context.showLink&&E(G,ne),j.text(ne.text()&&ee.text()?" - ":"")}};function E(G,$){$.text("");var J=$.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(G._context.linkText+" \xBB");if(G._context.sendData)J.on("click",function(){w.sendDataToCloud(G)});else{var Z=window.location.pathname.split("/"),re=window.location.search;J.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+Z[2].split(".")[0]+"/"+Z[1]+re})}}w.sendDataToCloud=function(G){var $=(window.PLOTLYENV||{}).BASE_URL||G._context.plotlyServerURL;if($){G.emit("plotly_beforeexport");var J=g.select(G).append("div").attr("id","hiddenform").style("display","none"),Z=J.append("form").attr({action:$+"/external",method:"post",target:"_blank"}),re=Z.append("input").attr({type:"text",name:"data"});return re.node().value=w.graphJson(G,!1,"keepdata"),Z.node().submit(),J.remove(),G.emit("plotly_afterexport"),!1}};var m=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],b=["year","month","dayMonth","dayMonthYear"];w.supplyDefaults=function(G,$){var J=$&&$.skipUpdateCalc,Z=G._fullLayout||{};if(Z._skipDefaults){delete Z._skipDefaults;return}var re=G._fullLayout={},ne=G.layout||{},j=G._fullData||[],ee=G._fullData=[],ie=G.data||[],fe=G.calcdata||[],be=G._context||{},Ae;G._transitionData||w.createTransitionData(G),re._dfltTitle={plot:_(G,"Click to enter Plot title"),subtitle:_(G,"Click to enter Plot subtitle"),x:_(G,"Click to enter X axis title"),y:_(G,"Click to enter Y axis title"),colorbar:_(G,"Click to enter Colorscale title"),annotation:_(G,"new text")},re._traceWord=_(G,"trace");var Be=y(G,m);if(re._mapboxAccessToken=be.mapboxAccessToken,Z._initialAutoSizeIsDone){var Ie=Z.width,Ze=Z.height;w.supplyLayoutGlobalDefaults(ne,re,Be),ne.width||(re.width=Ie),ne.height||(re.height=Ze),w.sanitizeMargins(re)}else{w.supplyLayoutGlobalDefaults(ne,re,Be);var at=!ne.width||!ne.height,it=re.autosize,et=be.autosizable,lt=at&&(it||et);lt?w.plotAutoSize(G,ne,re):at&&w.sanitizeMargins(re),!it&&at&&(ne.width=re.width,ne.height=re.height)}re._d3locale=f(Be,re.separators),re._extraFormat=y(G,b),re._initialAutoSizeIsDone=!0,re._dataLength=ie.length,re._modules=[],re._visibleModules=[],re._basePlotModules=[];var Me=re._subplots=u(),ge=re._splomAxes={x:{},y:{}},ce=re._splomSubplots={};re._splomGridDflt={},re._scatterStackOpts={},re._firstScatter={},re._alignmentOpts={},re._colorAxes={},re._requestRangeslider={},re._traceUids=d(j,ie),w.supplyDataDefaults(ie,ee,ne,re);var ze=Object.keys(ge.x),tt=Object.keys(ge.y);if(ze.length>1&&tt.length>1){for(t.getComponentMethod("grid","sizeDefaults")(ne,re),Ae=0;Ae<ze.length;Ae++)a.pushUnique(Me.xaxis,ze[Ae]);for(Ae=0;Ae<tt.length;Ae++)a.pushUnique(Me.yaxis,tt[Ae]);for(var nt in ce)a.pushUnique(Me.cartesian,nt)}if(re._has=w._hasPlotType.bind(re),j.length===ee.length)for(Ae=0;Ae<ee.length;Ae++)l(ee[Ae],j[Ae]);w.supplyLayoutModuleDefaults(ne,re,ee,G._transitionData);var Qe=re._visibleModules,Ct=[];for(Ae=0;Ae<Qe.length;Ae++){var St=Qe[Ae].crossTraceDefaults;St&&a.pushUnique(Ct,St)}for(Ae=0;Ae<Ct.length;Ae++)Ct[Ae](ee,re);re._hasOnlyLargeSploms=re._basePlotModules.length===1&&re._basePlotModules[0].name==="splom"&&ze.length>15&&tt.length>15&&re.shapes.length===0&&re.images.length===0,w.linkSubplots(ee,re,j,Z),w.cleanPlot(ee,re,j,Z);var Ot=!!(Z._has&&Z._has("cartesian")),jt=!!(re._has&&re._has("cartesian")),ur=Ot,ar=jt;ur&&!ar?Z._bgLayer.remove():ar&&!ur&&(re._shouldCreateBgLayer=!0),Z._zoomlayer&&!G._dragging&&c({_fullLayout:Z}),P(ee,re),l(re,Z),t.getComponentMethod("colorscale","crossTraceDefaults")(ee,re),re._preGUI||(re._preGUI={}),re._tracePreGUI||(re._tracePreGUI={});var Cr=re._tracePreGUI,vr={},_r;for(_r in Cr)vr[_r]="old";for(Ae=0;Ae<ee.length;Ae++)_r=ee[Ae]._fullInput.uid,vr[_r]||(Cr[_r]={}),vr[_r]="new";for(_r in vr)vr[_r]==="old"&&delete Cr[_r];F(re),t.getComponentMethod("rangeslider","makeData")(re),!J&&fe.length===ee.length&&w.supplyDefaultsUpdateCalc(fe,ee)},w.supplyDefaultsUpdateCalc=function(G,$){for(var J=0;J<$.length;J++){var Z=$[J],re=(G[J]||[])[0];if(re&&re.trace){var ne=re.trace;if(ne._hasCalcTransform){var j=ne._arrayAttrs,ee,ie,fe;for(ee=0;ee<j.length;ee++)ie=j[ee],fe=a.nestedProperty(ne,ie).get().slice(),a.nestedProperty(Z,ie).set(fe)}re.trace=Z}}};function d(G,$){var J=$.length,Z=[],re,ne;for(re=0;re<G.length;re++){var j=G[re]._fullInput;j!==ne&&Z.push(j),ne=j}var ee=Z.length,ie=new Array(J),fe={};function be(Ie,Ze){ie[Ze]=Ie,fe[Ie]=1}function Ae(Ie,Ze){if(Ie&&typeof Ie=="string"&&!fe[Ie])return be(Ie,Ze),!0}for(re=0;re<J;re++){var Be=$[re].uid;typeof Be=="number"&&(Be=String(Be)),!Ae(Be,re)&&(re<ee&&Ae(Z[re].uid,re)||be(a.randstr(fe),re))}return ie}function u(){var G=t.collectableSubplotTypes,$={},J,Z;if(!G){G=[];var re=t.subplotsRegistry;for(var ne in re){var j=re[ne],ee=j.attr;if(ee&&(G.push(ne),Array.isArray(ee)))for(Z=0;Z<ee.length;Z++)a.pushUnique(G,ee[Z])}}for(J=0;J<G.length;J++)$[G[J]]=[];return $}function y(G,$){var J=G._context.locale;J||(J="en-US");var Z=!1,re={};function ne(Ae){for(var Be=!0,Ie=0;Ie<$.length;Ie++){var Ze=$[Ie];re[Ze]||(Ae[Ze]?re[Ze]=Ae[Ze]:Be=!1)}Be&&(Z=!0)}for(var j=0;j<2;j++){for(var ee=G._context.locales,ie=0;ie<2;ie++){var fe=(ee[J]||{}).format;if(fe&&(ne(fe),Z))break;ee=t.localeRegistry}var be=J.split("-")[0];if(Z||be===J)break;J=be}return Z||ne(t.localeRegistry.en.format),re}function f(G,$){return G.decimal=$.charAt(0),G.thousands=$.charAt(1),{numberFormat:function(J){try{J=A(G).format(a.adjustFormat(J))}catch{return a.warnBadFormat(J),a.noFormat}return J},timeFormat:x(G).utcFormat}}function P(G,$){var J,Z=[];$.meta&&(J=$._meta={meta:$.meta,layout:{meta:$.meta}});for(var re=0;re<G.length;re++){var ne=G[re];ne.meta?Z[ne.index]=ne._meta={meta:ne.meta}:$.meta&&(ne._meta={meta:$.meta}),$.meta&&(ne._meta.layout={meta:$.meta})}Z.length&&(J||(J=$._meta={}),J.data=Z)}w.createTransitionData=function(G){G._transitionData||(G._transitionData={}),G._transitionData._frames||(G._transitionData._frames=[]),G._transitionData._frameHash||(G._transitionData._frameHash={}),G._transitionData._counter||(G._transitionData._counter=0),G._transitionData._interruptCallbacks||(G._transitionData._interruptCallbacks=[])},w._hasPlotType=function(G){var $,J=this._basePlotModules||[];for($=0;$<J.length;$++)if(J[$].name===G)return!0;var Z=this._modules||[];for($=0;$<Z.length;$++){var re=Z[$].name;if(re===G)return!0;var ne=t.modules[re];if(ne&&ne.categories[G])return!0}return!1},w.cleanPlot=function(G,$,J,Z){var re,ne,j=Z._basePlotModules||[];for(re=0;re<j.length;re++){var ee=j[re];ee.clean&&ee.clean(G,$,J,Z)}var ie=Z._has&&Z._has("gl"),fe=$._has&&$._has("gl");ie&&!fe&&Z._glcontainer!==void 0&&(Z._glcontainer.selectAll(".gl-canvas").remove(),Z._glcontainer.selectAll(".no-webgl").remove(),Z._glcanvas=null);var be=!!Z._infolayer;e:for(re=0;re<J.length;re++){var Ae=J[re],Be=Ae.uid;for(ne=0;ne<G.length;ne++){var Ie=G[ne];if(Be===Ie.uid)continue e}be&&Z._infolayer.select(".cb"+Be).remove()}},w.linkSubplots=function(G,$,J,Z){var re,ne,j=Z._plots||{},ee=$._plots={},ie=$._subplots,fe={_fullData:G,_fullLayout:$},be=ie.cartesian||[];for(re=0;re<be.length;re++){var Ae=be[re],Be=j[Ae],Ie=s.getFromId(fe,Ae,"x"),Ze=s.getFromId(fe,Ae,"y"),at;for(Be?at=ee[Ae]=Be:(at=ee[Ae]={},at.id=Ae),Ie._counterAxes.push(Ze._id),Ze._counterAxes.push(Ie._id),Ie._subplotsWith.push(Ae),Ze._subplotsWith.push(Ae),at.xaxis=Ie,at.yaxis=Ze,at._hasClipOnAxisFalse=!1,ne=0;ne<G.length;ne++){var it=G[ne];if(it.xaxis===at.xaxis._id&&it.yaxis===at.yaxis._id&&it.cliponaxis===!1){at._hasClipOnAxisFalse=!0;break}}}var et=s.list(fe,null,!0),lt;for(re=0;re<et.length;re++){lt=et[re];var Me=null;lt.overlaying&&(Me=s.getFromId(fe,lt.overlaying),Me&&Me.overlaying&&(lt.overlaying=!1,Me=null)),lt._mainAxis=Me||lt,Me&&(lt.domain=Me.domain.slice()),lt._anchorAxis=lt.anchor==="free"?null:s.getFromId(fe,lt.anchor)}for(re=0;re<et.length;re++)if(lt=et[re],lt._counterAxes.sort(s.idSort),lt._subplotsWith.sort(a.subplotSort),lt._mainSubplot=L(lt,$),lt._counterAxes.length&&(lt.spikemode&&lt.spikemode.indexOf("across")!==-1||lt.automargin&&lt.mirror&&lt.anchor!=="free"||t.getComponentMethod("rangeslider","isVisible")(lt))){var ge=1,ce=0;for(ne=0;ne<lt._counterAxes.length;ne++){var ze=s.getFromId(fe,lt._counterAxes[ne]);ge=Math.min(ge,ze.domain[0]),ce=Math.max(ce,ze.domain[1])}ge<ce&&(lt._counterDomainMin=ge,lt._counterDomainMax=ce)}};function L(G,$){var J={_fullLayout:$},Z=G._id.charAt(0)==="x",re=G._mainAxis._anchorAxis,ne="",j="",ee="";if(re&&(ee=re._mainAxis._id,ne=Z?G._id+ee:ee+G._id),!ne||!$._plots[ne]){ne="";for(var ie=G._counterAxes,fe=0;fe<ie.length;fe++){var be=ie[fe],Ae=Z?G._id+be:be+G._id;j||(j=Ae);var Be=s.getFromId(J,be);if(ee&&Be.overlaying===ee){ne=Ae;break}}}return ne||j}w.clearExpandedTraceDefaultColors=function(G){var $,J,Z;function re(j,ee,ie,fe){J[fe]=ee,J.length=fe+1,j.valType==="color"&&j.dflt===void 0&&$.push(J.join("."))}for(J=[],$=G._module._colorAttrs,$||(G._module._colorAttrs=$=[],r.crawl(G._module.attributes,re)),Z=0;Z<$.length;Z++){var ne=a.nestedProperty(G,"_input."+$[Z]);ne.get()||a.nestedProperty(G,$[Z]).set(null)}},w.supplyDataDefaults=function(G,$,J,Z){var re=Z._modules,ne=Z._visibleModules,j=Z._basePlotModules,ee=0,ie=0,fe,be,Ae;Z._transformModules=[];function Be(lt){$.push(lt);var Me=lt._module;Me&&(a.pushUnique(re,Me),lt.visible===!0&&a.pushUnique(ne,Me),a.pushUnique(j,lt._module.basePlotModule),ee++,lt._input.visible!==!1&&ie++)}var Ie={},Ze=[],at=(J.template||{}).data||{},it=o.traceTemplater(at);for(fe=0;fe<G.length;fe++)Ae=G[fe],be=it.newTrace(Ae),be.uid=Z._traceUids[fe],w.supplyTraceDefaults(Ae,be,ie,Z,fe),be.index=fe,be._input=Ae,be._fullInput=be,Be(be),t.traceIs(be,"carpetAxis")&&(Ie[be.carpet]=be),t.traceIs(be,"carpetDependent")&&Ze.push(fe);for(fe=0;fe<Ze.length;fe++)if(be=$[Ze[fe]],!!be.visible){var et=Ie[be.carpet];if(be._carpet=et,!et||!et.visible){be.visible=!1;continue}be.xaxis=et.xaxis,be.yaxis=et.yaxis}},w.supplyAnimationDefaults=function(G){G=G||{};var $,J={};function Z(re,ne){return a.coerce(G||{},J,v,re,ne)}if(Z("mode"),Z("direction"),Z("fromcurrent"),Array.isArray(G.frame))for(J.frame=[],$=0;$<G.frame.length;$++)J.frame[$]=w.supplyAnimationFrameDefaults(G.frame[$]||{});else J.frame=w.supplyAnimationFrameDefaults(G.frame||{});if(Array.isArray(G.transition))for(J.transition=[],$=0;$<G.transition.length;$++)J.transition[$]=w.supplyAnimationTransitionDefaults(G.transition[$]||{});else J.transition=w.supplyAnimationTransitionDefaults(G.transition||{});return J},w.supplyAnimationFrameDefaults=function(G){var $={};function J(Z,re){return a.coerce(G||{},$,v.frame,Z,re)}return J("duration"),J("redraw"),$},w.supplyAnimationTransitionDefaults=function(G){var $={};function J(Z,re){return a.coerce(G||{},$,v.transition,Z,re)}return J("duration"),J("easing"),$},w.supplyFrameDefaults=function(G){var $={};function J(Z,re){return a.coerce(G,$,p,Z,re)}return J("group"),J("name"),J("traces"),J("baseframe"),J("data"),J("layout"),$},w.supplyTraceDefaults=function(G,$,J,Z,re){var ne=Z.colorway||i.defaults,j=ne[J%ne.length],ee;function ie(Me,ge){return a.coerce(G,$,w.attributes,Me,ge)}var fe=ie("visible");ie("type"),ie("name",Z._traceWord+" "+re),ie("uirevision",Z.uirevision);var be=w.getModule($);if($._module=be,be){var Ae=be.basePlotModule,Be=Ae.attr,Ie=Ae.attributes;if(Be&&Ie){var Ze=Z._subplots,at="";if(Array.isArray(Be))for(ee=0;ee<Be.length;ee++){var it=Be[ee],et=a.coerce(G,$,Ie,it);Ze[it]&&a.pushUnique(Ze[it],et),at+=et}else at=a.coerce(G,$,Ie,Be);Ze[Ae.name]&&a.pushUnique(Ze[Ae.name],at)}}if(fe&&(ie("customdata"),ie("ids"),ie("meta"),t.traceIs($,"showLegend")?(a.coerce(G,$,be.attributes.showlegend?be.attributes:w.attributes,"showlegend"),ie("legend"),ie("legendwidth"),ie("legendgroup"),ie("legendgrouptitle.text"),ie("legendrank"),$._dfltShowLegend=!0):$._dfltShowLegend=!1,be&&be.supplyDefaults(G,$,j,Z),t.traceIs($,"noOpacity")||ie("opacity"),t.traceIs($,"notLegendIsolatable")&&($.visible=!!$.visible),t.traceIs($,"noHover")||($.hovertemplate||a.coerceHoverinfo(G,$,Z),$.type!=="parcats"&&t.getComponentMethod("fx","supplyDefaults")(G,$,j,Z)),be&&be.selectPoints)){var lt=ie("selectedpoints");a.isTypedArray(lt)&&($.selectedpoints=Array.from(lt))}return $},w.supplyLayoutGlobalDefaults=function(G,$,J){function Z(Ae,Be){return a.coerce(G,$,w.layoutAttributes,Ae,Be)}var re=G.template;a.isPlainObject(re)&&($.template=re,$._template=re.layout,$._dataTemplate=re.data),Z("autotypenumbers");var ne=a.coerceFont(Z,"font"),j=ne.size;a.coerceFont(Z,"title.font",ne,{overrideDflt:{size:Math.round(j*1.4)}}),Z("title.text",$._dfltTitle.plot),Z("title.xref");var ee=Z("title.yref");Z("title.pad.t"),Z("title.pad.r"),Z("title.pad.b"),Z("title.pad.l");var ie=Z("title.automargin");Z("title.x"),Z("title.xanchor"),Z("title.y"),Z("title.yanchor"),Z("title.subtitle.text",$._dfltTitle.subtitle),a.coerceFont(Z,"title.subtitle.font",ne,{overrideDflt:{size:Math.round($.title.font.size*.7)}}),ie&&(ee==="paper"&&($.title.y!==0&&($.title.y=1),$.title.yanchor==="auto"&&($.title.yanchor=$.title.y===0?"top":"bottom")),ee==="container"&&($.title.y==="auto"&&($.title.y=1),$.title.yanchor==="auto"&&($.title.yanchor=$.title.y<.5?"bottom":"top")));var fe=Z("uniformtext.mode");fe&&Z("uniformtext.minsize"),Z("autosize",!(G.width&&G.height)),Z("width"),Z("height"),Z("minreducedwidth"),Z("minreducedheight"),Z("margin.l"),Z("margin.r"),Z("margin.t"),Z("margin.b"),Z("margin.pad"),Z("margin.autoexpand"),G.width&&G.height&&w.sanitizeMargins($),t.getComponentMethod("grid","sizeDefaults")(G,$),Z("paper_bgcolor"),Z("separators",J.decimal+J.thousands),Z("hidesources"),Z("colorway"),Z("datarevision");var be=Z("uirevision");Z("editrevision",be),Z("selectionrevision",be),t.getComponentMethod("modebar","supplyLayoutDefaults")(G,$),t.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(G,$,Z),t.getComponentMethod("selections","supplyDrawNewSelectionDefaults")(G,$,Z),Z("meta"),a.isPlainObject(G.transition)&&(Z("transition.duration"),Z("transition.easing"),Z("transition.ordering")),t.getComponentMethod("calendars","handleDefaults")(G,$,"calendar"),t.getComponentMethod("fx","supplyLayoutGlobalDefaults")(G,$,Z),a.coerce(G,$,h,"scattermode")};function z(G){return typeof G=="string"&&G.substr(G.length-2)==="px"&&parseFloat(G)}w.plotAutoSize=function($,J,Z){var re=$._context||{},ne=re.frameMargins,j,ee,ie=a.isPlotDiv($);if(ie&&$.emit("plotly_autosize"),re.fillFrame)j=window.innerWidth,ee=window.innerHeight,document.body.style.overflow="hidden";else{var fe=ie?window.getComputedStyle($):{};if(j=z(fe.width)||z(fe.maxWidth)||Z.width,ee=z(fe.height)||z(fe.maxHeight)||Z.height,M(ne)&&ne>0){var be=1-2*ne;j=Math.round(be*j),ee=Math.round(be*ee)}}var Ae=w.layoutAttributes.width.min,Be=w.layoutAttributes.height.min;j<Ae&&(j=Ae),ee<Be&&(ee=Be);var Ie=!J.width&&Math.abs(Z.width-j)>1,Ze=!J.height&&Math.abs(Z.height-ee)>1;(Ze||Ie)&&(Ie&&(Z.width=j),Ze&&(Z.height=ee)),$._initialAutoSize||($._initialAutoSize={width:j,height:ee}),w.sanitizeMargins(Z)},w.supplyLayoutModuleDefaults=function(G,$,J,Z){var re=t.componentsRegistry,ne=$._basePlotModules,j,ee,ie,fe=t.subplotsRegistry.cartesian;for(j in re)ie=re[j],ie.includeBasePlot&&ie.includeBasePlot(G,$);ne.length||ne.push(fe),$._has("cartesian")&&(t.getComponentMethod("grid","contentDefaults")(G,$),fe.finalizeSubplots(G,$));for(var be in $._subplots)$._subplots[be].sort(a.subplotSort);for(ee=0;ee<ne.length;ee++)ie=ne[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J);var Ae=$._modules;for(ee=0;ee<Ae.length;ee++)ie=Ae[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J);var Be=$._transformModules;for(ee=0;ee<Be.length;ee++)ie=Be[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J,Z);for(j in re)ie=re[j],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J)},w.purge=function(G){var $=G._fullLayout||{};$._glcontainer!==void 0&&($._glcontainer.selectAll(".gl-canvas").remove(),$._glcontainer.remove(),$._glcanvas=null),$._modeBar&&$._modeBar.destroy(),G._transitionData&&(G._transitionData._interruptCallbacks&&(G._transitionData._interruptCallbacks.length=0),G._transitionData._animationRaf&&window.cancelAnimationFrame(G._transitionData._animationRaf)),a.clearThrottle(),a.clearResponsive(G),delete G.data,delete G.layout,delete G._fullData,delete G._fullLayout,delete G.calcdata,delete G.empty,delete G.fid,delete G.undoqueue,delete G.undonum,delete G.autoplay,delete G.changed,delete G._promises,delete G._redrawTimer,delete G._hmlumcount,delete G._hmpixcount,delete G._transitionData,delete G._transitioning,delete G._initialAutoSize,delete G._transitioningWithDuration,delete G._dragging,delete G._dragged,delete G._dragdata,delete G._hoverdata,delete G._snapshotInProgress,delete G._editing,delete G._mouseDownTime,delete G._legendMouseDownTime,G.removeAllListeners&&G.removeAllListeners()},w.style=function(G){var $=G._fullLayout._visibleModules,J=[],Z;for(Z=0;Z<$.length;Z++){var re=$[Z];re.style&&a.pushUnique(J,re.style)}for(Z=0;Z<J.length;Z++)J[Z](G)},w.sanitizeMargins=function(G){if(!(!G||!G.margin)){var $=G.width,J=G.height,Z=G.margin,re=$-(Z.l+Z.r),ne=J-(Z.t+Z.b),j;re<0&&(j=($-1)/(Z.l+Z.r),Z.l=Math.floor(j*Z.l),Z.r=Math.floor(j*Z.r)),ne<0&&(j=(J-1)/(Z.t+Z.b),Z.t=Math.floor(j*Z.t),Z.b=Math.floor(j*Z.b))}},w.clearAutoMarginIds=function(G){G._fullLayout._pushmarginIds={}},w.allowAutoMargin=function(G,$){G._fullLayout._pushmarginIds[$]=1};function F(G){var $=G.margin;if(!G._size){var J=G._size={l:Math.round($.l),r:Math.round($.r),t:Math.round($.t),b:Math.round($.b),p:Math.round($.pad)};J.w=Math.round(G.width)-J.l-J.r,J.h=Math.round(G.height)-J.t-J.b}G._pushmargin||(G._pushmargin={}),G._pushmarginIds||(G._pushmarginIds={}),G._reservedMargin||(G._reservedMargin={})}var B=2,O=2;w.autoMargin=function(G,$,J){var Z=G._fullLayout,re=Z.width,ne=Z.height,j=Z.margin,ee=Z.minreducedwidth,ie=Z.minreducedheight,fe=a.constrain(re-j.l-j.r,B,ee),be=a.constrain(ne-j.t-j.b,O,ie),Ae=Math.max(0,re-fe),Be=Math.max(0,ne-be),Ie=Z._pushmargin,Ze=Z._pushmarginIds;if(j.autoexpand!==!1){if(!J)delete Ie[$],delete Ze[$];else{var at=J.pad;if(at===void 0&&(at=Math.min(12,j.l,j.r,j.t,j.b)),Ae){var it=(J.l+J.r)/Ae;it>1&&(J.l/=it,J.r/=it)}if(Be){var et=(J.t+J.b)/Be;et>1&&(J.t/=et,J.b/=et)}var lt=J.xl!==void 0?J.xl:J.x,Me=J.xr!==void 0?J.xr:J.x,ge=J.yt!==void 0?J.yt:J.y,ce=J.yb!==void 0?J.yb:J.y;Ie[$]={l:{val:lt,size:J.l+at},r:{val:Me,size:J.r+at},b:{val:ce,size:J.b+at},t:{val:ge,size:J.t+at}},Ze[$]=1}if(!Z._replotting)return w.doAutoMargin(G)}};function I(G){if("_redrawFromAutoMarginCount"in G._fullLayout)return!1;var $=s.list(G,"",!0);for(var J in $)if($[J].autoshift||$[J].shift)return!0;return!1}w.doAutoMargin=function(G){var $=G._fullLayout,J=$.width,Z=$.height;$._size||($._size={}),F($);var re=$._size,ne=$.margin,j={t:0,b:0,l:0,r:0},ee=a.extendFlat({},re),ie=ne.l,fe=ne.r,be=ne.t,Ae=ne.b,Be=$._pushmargin,Ie=$._pushmarginIds,Ze=$.minreducedwidth,at=$.minreducedheight;if(ne.autoexpand!==!1){for(var it in Be)Ie[it]||delete Be[it];var et=G._fullLayout._reservedMargin;for(var lt in et)for(var Me in et[lt]){var ge=et[lt][Me];j[Me]=Math.max(j[Me],ge)}Be.base={l:{val:0,size:ie},r:{val:1,size:fe},t:{val:1,size:be},b:{val:0,size:Ae}};for(var ce in j){var ze=0;for(var tt in Be)tt!=="base"&&M(Be[tt][ce].size)&&(ze=Be[tt][ce].size>ze?Be[tt][ce].size:ze);var nt=Math.max(0,ne[ce]-ze);j[ce]=Math.max(0,j[ce]-nt)}for(var Qe in Be){var Ct=Be[Qe].l||{},St=Be[Qe].b||{},Ot=Ct.val,jt=Ct.size,ur=St.val,ar=St.size,Cr=J-j.r-j.l,vr=Z-j.t-j.b;for(var _r in Be){if(M(jt)&&Be[_r].r){var yt=Be[_r].r.val,Fe=Be[_r].r.size;if(yt>Ot){var Ke=(jt*yt+(Fe-Cr)*Ot)/(yt-Ot),Ne=(Fe*(1-Ot)+(jt-Cr)*(1-yt))/(yt-Ot);Ke+Ne>ie+fe&&(ie=Ke,fe=Ne)}}if(M(ar)&&Be[_r].t){var Ee=Be[_r].t.val,Ve=Be[_r].t.size;if(Ee>ur){var ke=(ar*Ee+(Ve-vr)*ur)/(Ee-ur),Te=(Ve*(1-ur)+(ar-vr)*(1-Ee))/(Ee-ur);ke+Te>Ae+be&&(Ae=ke,be=Te)}}}}}var Le=a.constrain(J-ne.l-ne.r,B,Ze),rt=a.constrain(Z-ne.t-ne.b,O,at),dt=Math.max(0,J-Le),xt=Math.max(0,Z-rt);if(dt){var It=(ie+fe)/dt;It>1&&(ie/=It,fe/=It)}if(xt){var Bt=(Ae+be)/xt;Bt>1&&(Ae/=Bt,be/=Bt)}if(re.l=Math.round(ie)+j.l,re.r=Math.round(fe)+j.r,re.t=Math.round(be)+j.t,re.b=Math.round(Ae)+j.b,re.p=Math.round(ne.pad),re.w=Math.round(J)-re.l-re.r,re.h=Math.round(Z)-re.t-re.b,!$._replotting&&(w.didMarginChange(ee,re)||I(G))){"_redrawFromAutoMarginCount"in $?$._redrawFromAutoMarginCount++:$._redrawFromAutoMarginCount=1;var Gt=3*(1+Object.keys(Ie).length);if($._redrawFromAutoMarginCount<Gt)return t.call("_doPlot",G);$._size=ee,a.warn("Too many auto-margin redraws.")}N(G)};function N(G){var $=s.list(G,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(J){for(var Z=0;Z<$.length;Z++){var re=$[Z][J];re&&re()}})}var U=["l","r","t","b","p","w","h"];w.didMarginChange=function(G,$){for(var J=0;J<U.length;J++){var Z=U[J],re=G[Z],ne=$[Z];if(!M(re)||Math.abs(ne-re)>1)return!0}return!1},w.graphJson=function(G,$,J,Z,re,ne){(re&&$&&!G._fullData||re&&!$&&!G._fullLayout)&&w.supplyDefaults(G);var j=re?G._fullData:G.data,ee=re?G._fullLayout:G.layout,ie=(G._transitionData||{})._frames;function fe(Be,Ie){if(typeof Be=="function")return Ie?"_function_":null;if(a.isPlainObject(Be)){var Ze={},at;return Object.keys(Be).sort().forEach(function(Me){if(["_","["].indexOf(Me.charAt(0))===-1){if(typeof Be[Me]=="function"){Ie&&(Ze[Me]="_function");return}if(J==="keepdata"){if(Me.substr(Me.length-3)==="src")return}else if(J==="keepstream"){if(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0&&!a.isPlainObject(Be.stream))return}else if(J!=="keepall"&&(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0))return;Ze[Me]=fe(Be[Me],Ie)}}),Ze}var it=Array.isArray(Be),et=a.isTypedArray(Be);if((it||et)&&Be.dtype&&Be.shape){var lt=Be.bdata;return fe({dtype:Be.dtype,shape:Be.shape,bdata:a.isArrayBuffer(lt)?e.encode(lt):lt},Ie)}return it?Be.map(function(Me){return fe(Me,Ie)}):et?a.simpleMap(Be,a.identity):a.isJSDate(Be)?a.ms2DateTimeLocal(+Be):Be}var be={data:(j||[]).map(function(Be){var Ie=fe(Be);return $&&delete Ie.fit,Ie})};if(!$&&(be.layout=fe(ee),re)){var Ae=ee._size;be.layout.computed={margin:{b:Ae.b,l:Ae.l,r:Ae.r,t:Ae.t}}}return ie&&(be.frames=fe(ie)),ne&&(be.config=fe(G._context,!0)),Z==="object"?be:JSON.stringify(be)},w.modifyFrames=function(G,$){var J,Z,re,ne=G._transitionData._frames,j=G._transitionData._frameHash;for(J=0;J<$.length;J++)switch(Z=$[J],Z.type){case"replace":re=Z.value;var ee=(ne[Z.index]||{}).name,ie=re.name;ne[Z.index]=j[ie]=re,ie!==ee&&(delete j[ee],j[ie]=re);break;case"insert":re=Z.value,j[re.name]=re,ne.splice(Z.index,0,re);break;case"delete":re=ne[Z.index],delete j[re.name],ne.splice(Z.index,1);break}return Promise.resolve()},w.computeFrame=function(G,$){var J=G._transitionData._frameHash,Z,re,ne,j;if(!$)throw new Error("computeFrame must be given a string frame name");var ee=J[$.toString()];if(!ee)return!1;for(var ie=[ee],fe=[ee.name];ee.baseframe&&(ee=J[ee.baseframe.toString()])&&fe.indexOf(ee.name)===-1;)ie.push(ee),fe.push(ee.name);for(var be={};ee=ie.pop();)if(ee.layout&&(be.layout=w.extendLayout(be.layout,ee.layout)),ee.data){if(be.data||(be.data=[]),re=ee.traces,!re)for(re=[],Z=0;Z<ee.data.length;Z++)re[Z]=Z;for(be.traces||(be.traces=[]),Z=0;Z<ee.data.length;Z++)ne=re[Z],ne!=null&&(j=be.traces.indexOf(ne),j===-1&&(j=be.data.length,be.traces[j]=ne),be.data[j]=w.extendTrace(be.data[j],ee.data[Z]))}return be},w.recomputeFrameHash=function(G){for(var $=G._transitionData._frameHash={},J=G._transitionData._frames,Z=0;Z<J.length;Z++){var re=J[Z];re&&re.name&&($[re.name]=re)}},w.extendObjectWithContainers=function(G,$,J){var Z,re,ne,j,ee,ie,fe,be,Ae=a.extendDeepNoArrays({},$||{}),Be=a.expandObjectPaths(Ae),Ie={};if(J&&J.length)for(ne=0;ne<J.length;ne++)Z=a.nestedProperty(Be,J[ne]),re=Z.get(),re===void 0?a.nestedProperty(Ie,J[ne]).set(null):(Z.set(null),a.nestedProperty(Ie,J[ne]).set(re));if(G=a.extendDeepNoArrays(G||{},Be),J&&J.length){for(ne=0;ne<J.length;ne++)if(ee=a.nestedProperty(Ie,J[ne]),fe=ee.get(),!!fe){for(ie=a.nestedProperty(G,J[ne]),be=ie.get(),Array.isArray(be)||(be=[],ie.set(be)),j=0;j<fe.length;j++){var Ze=fe[j];Ze===null?be[j]=null:be[j]=w.extendObjectWithContainers(be[j],Ze)}ie.set(be)}}return G},w.dataArrayContainers=["transforms","dimensions"],w.layoutArrayContainers=t.layoutArrayContainers,w.extendTrace=function(G,$){return w.extendObjectWithContainers(G,$,w.dataArrayContainers)},w.extendLayout=function(G,$){return w.extendObjectWithContainers(G,$,w.layoutArrayContainers)},w.transition=function(G,$,J,Z,re,ne){var j={redraw:re.redraw},ee={},ie=[];return j.prepareFn=function(){for(var fe=Array.isArray($)?$.length:0,be=Z.slice(0,fe),Ae=0;Ae<be.length;Ae++){var Be=be[Ae],Ie=G._fullData[Be],Ze=Ie._module;if(Ze){if(Ze.animatable){var at=Ze.basePlotModule.name;ee[at]||(ee[at]=[]),ee[at].push(Be)}G.data[be[Ae]]=w.extendTrace(G.data[be[Ae]],$[Ae])}}var it=a.expandObjectPaths(a.extendDeepNoArrays({},J)),et=/^[xy]axis[0-9]*$/;for(var lt in it)et.test(lt)&&delete it[lt].range;w.extendLayout(G.layout,it),delete G.calcdata,w.supplyDefaults(G),w.doCalcdata(G);var Me=a.expandObjectPaths(J);if(Me){var ge=G._fullLayout._plots;for(var ce in ge){var ze=ge[ce],tt=ze.xaxis,nt=ze.yaxis,Qe=tt.range.slice(),Ct=nt.range.slice(),St=null,Ot=null,jt=null,ur=null;Array.isArray(Me[tt._name+".range"])?St=Me[tt._name+".range"].slice():Array.isArray((Me[tt._name]||{}).range)&&(St=Me[tt._name].range.slice()),Array.isArray(Me[nt._name+".range"])?Ot=Me[nt._name+".range"].slice():Array.isArray((Me[nt._name]||{}).range)&&(Ot=Me[nt._name].range.slice()),Qe&&St&&(tt.r2l(Qe[0])!==tt.r2l(St[0])||tt.r2l(Qe[1])!==tt.r2l(St[1]))&&(jt={xr0:Qe,xr1:St}),Ct&&Ot&&(nt.r2l(Ct[0])!==nt.r2l(Ot[0])||nt.r2l(Ct[1])!==nt.r2l(Ot[1]))&&(ur={yr0:Ct,yr1:Ot}),(jt||ur)&&ie.push(a.extendFlat({plotinfo:ze},jt,ur))}}return Promise.resolve()},j.runFn=function(fe){var be,Ae=G._fullLayout._basePlotModules,Be=ie.length,Ie;if(J)for(Ie=0;Ie<Ae.length;Ie++)Ae[Ie].transitionAxes&&Ae[Ie].transitionAxes(G,ie,ne,fe);Be?(be=a.extendFlat({},ne),be.duration=0,delete ee.cartesian):be=ne;for(var Ze in ee){var at=ee[Ze],it=G._fullData[at[0]]._module;it.basePlotModule.plot(G,at,be,fe)}},W(G,ne,j)},w.transitionFromReact=function(G,$,J,Z){var re=G._fullLayout,ne=re.transition,j={},ee=[];return j.prepareFn=function(){var ie=re._plots;j.redraw=!1,$.anim==="some"&&(j.redraw=!0),J.anim==="some"&&(j.redraw=!0);for(var fe in ie){var be=ie[fe],Ae=be.xaxis,Be=be.yaxis,Ie=Z[Ae._name].range.slice(),Ze=Z[Be._name].range.slice(),at=Ae.range.slice(),it=Be.range.slice();Ae.setScale(),Be.setScale();var et=null,lt=null;(Ae.r2l(Ie[0])!==Ae.r2l(at[0])||Ae.r2l(Ie[1])!==Ae.r2l(at[1]))&&(et={xr0:Ie,xr1:at}),(Be.r2l(Ze[0])!==Be.r2l(it[0])||Be.r2l(Ze[1])!==Be.r2l(it[1]))&&(lt={yr0:Ze,yr1:it}),(et||lt)&&ee.push(a.extendFlat({plotinfo:be},et,lt))}return Promise.resolve()},j.runFn=function(ie){for(var fe=G._fullData,be=G._fullLayout,Ae=be._basePlotModules,Be,Ie,Ze,at=[],it=0;it<fe.length;it++)at.push(it);function et(){if(G._fullLayout)for(var Me=0;Me<Ae.length;Me++)Ae[Me].transitionAxes&&Ae[Me].transitionAxes(G,ee,Be,ie)}function lt(){if(G._fullLayout)for(var Me=0;Me<Ae.length;Me++)Ae[Me].plot(G,Ze,Ie,ie)}ee.length&&$.anim?ne.ordering==="traces first"?(Be=a.extendFlat({},ne,{duration:0}),Ze=at,Ie=ne,setTimeout(et,ne.duration),lt()):(Be=ne,Ze=null,Ie=a.extendFlat({},ne,{duration:0}),setTimeout(lt,Be.duration),et()):ee.length?(Be=ne,et()):$.anim&&(Ze=at,Ie=ne,lt())},W(G,ne,j)};function W(G,$,J){var Z=!1;function re(Ae){var Be=Promise.resolve();if(!Ae)return Be;for(;Ae.length;)Be=Be.then(Ae.shift());return Be}function ne(Ae){if(Ae)for(;Ae.length;)Ae.shift()}function j(){return G.emit("plotly_transitioning",[]),new Promise(function(Ae){G._transitioning=!0,$.duration>0&&(G._transitioningWithDuration=!0),G._transitionData._interruptCallbacks.push(function(){Z=!0}),J.redraw&&G._transitionData._interruptCallbacks.push(function(){return t.call("redraw",G)}),G._transitionData._interruptCallbacks.push(function(){G.emit("plotly_transitioninterrupted",[])});var Be=0,Ie=0;function Ze(){return Be++,function(){Ie++,!Z&&Ie===Be&&ee(Ae)}}J.runFn(Ze),setTimeout(Ze())})}function ee(Ae){if(G._transitionData)return ne(G._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(J.redraw)return t.call("redraw",G)}).then(function(){G._transitioning=!1,G._transitioningWithDuration=!1,G.emit("plotly_transitioned",[])}).then(Ae)}function ie(){if(G._transitionData)return G._transitioning=!1,re(G._transitionData._interruptCallbacks)}var fe=[w.previousPromises,ie,J.prepareFn,w.rehover,w.reselect,j],be=a.syncOrAsync(fe,G);return(!be||!be.then)&&(be=Promise.resolve()),be.then(function(){return G})}w.doCalcdata=function(G,$){var J=s.list(G),Z=G._fullData,re=G._fullLayout,ne,j,ee,ie,fe=new Array(Z.length),be=(G.calcdata||[]).slice();for(G.calcdata=fe,re._numBoxes=0,re._numViolins=0,re._violinScaleGroupStats={},G._hmpixcount=0,G._hmlumcount=0,re._piecolormap={},re._sunburstcolormap={},re._treemapcolormap={},re._iciclecolormap={},re._funnelareacolormap={},ee=0;ee<Z.length;ee++)if(Array.isArray($)&&$.indexOf(ee)===-1){fe[ee]=be[ee];continue}for(ee=0;ee<Z.length;ee++)ne=Z[ee],ne._arrayAttrs=r.findArrayAttributes(ne),ne._extremes={};var Ae=re._subplots.polar||[];for(ee=0;ee<Ae.length;ee++)J.push(re[Ae[ee]].radialaxis,re[Ae[ee]].angularaxis);for(var Be in re._colorAxes){var Ie=re[Be];Ie.cauto!==!1&&(delete Ie.cmin,delete Ie.cmax)}var Ze=!1;function at(lt){if(ne=Z[lt],j=ne._module,ne.visible===!0&&ne.transforms){if(j&&j.calc){var Me=j.calc(G,ne);Me[0]&&Me[0].t&&Me[0].t._scene&&delete Me[0].t._scene.dirty}for(ie=0;ie<ne.transforms.length;ie++){var ge=ne.transforms[ie];j=transformsRegistry[ge.type],j&&j.calcTransform&&(ne._hasCalcTransform=!0,Ze=!0,j.calcTransform(G,ne,ge))}}}function it(lt,Me){if(ne=Z[lt],j=ne._module,!!j.isContainer===Me){var ge=[];if(ne.visible===!0&&ne._length!==0){delete ne._indexToPoints;var ce=ne.transforms||[];for(ie=ce.length-1;ie>=0;ie--)if(ce[ie].enabled){ne._indexToPoints=ce[ie]._indexToPoints;break}j&&j.calc&&(ge=j.calc(G,ne))}(!Array.isArray(ge)||!ge[0])&&(ge=[{x:n,y:n}]),ge[0].t||(ge[0].t={}),ge[0].trace=ne,fe[lt]=ge}}for(se(J,Z,re),ee=0;ee<Z.length;ee++)it(ee,!0);for(ee=0;ee<Z.length;ee++)at(ee);for(Ze&&se(J,Z,re),ee=0;ee<Z.length;ee++)it(ee,!0);for(ee=0;ee<Z.length;ee++)it(ee,!1);he(G);var et=ue(J,G);if(et.length){for(re._numBoxes=0,re._numViolins=0,ee=0;ee<et.length;ee++)it(et[ee],!0);for(ee=0;ee<et.length;ee++)it(et[ee],!1);he(G)}t.getComponentMethod("fx","calc")(G),t.getComponentMethod("errorbars","calc")(G)};var Q=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function ue(G,$){var J=[],Z,re,ne,j,ee;function ie(_r,yt,Fe){var Ke=yt._id.charAt(0);if(_r==="histogram2dcontour"){var Ne=yt._counterAxes[0],Ee=s.getFromId($,Ne),Ve=Ke==="x"||Ne==="x"&&Ee.type==="category",ke=Ke==="y"||Ne==="y"&&Ee.type==="category";return function(Te,Le){return Te===0||Le===0||Ve&&Te===Fe[Le].length-1||ke&&Le===Fe.length-1?-1:(Ke==="y"?Le:Te)-1}}else return function(Te,Le){return Ke==="y"?Le:Te}}var fe={min:function(_r){return a.aggNums(Math.min,null,_r)},max:function(_r){return a.aggNums(Math.max,null,_r)},sum:function(_r){return a.aggNums(function(yt,Fe){return yt+Fe},null,_r)},total:function(_r){return a.aggNums(function(yt,Fe){return yt+Fe},null,_r)},mean:function(_r){return a.mean(_r)},"geometric mean":function(_r){return a.geometricMean(_r)},median:function(_r){return a.median(_r)}};function be(_r,yt){return _r[1]-yt[1]}function Ae(_r,yt){return yt[1]-_r[1]}for(Z=0;Z<G.length;Z++){var Be=G[Z];if(Be.type==="category"){var Ie=Be.categoryorder.match(Q);if(Ie){var Ze=Ie[1],at=Ie[2],it=Be._id.charAt(0),et=it==="x",lt=[];for(re=0;re<Be._categories.length;re++)lt.push([Be._categories[re],[]]);for(re=0;re<Be._traceIndices.length;re++){var Me=Be._traceIndices[re],ge=$._fullData[Me];if(ge.visible===!0){var ce=ge.type;t.traceIs(ge,"histogram")&&(delete ge._xautoBinFinished,delete ge._yautoBinFinished);var ze=ce==="splom",tt=ce==="scattergl",nt=$.calcdata[Me];for(ne=0;ne<nt.length;ne++){var Qe=nt[ne],Ct,St;if(ze){var Ot=ge._axesDim[Be._id];if(!et){var jt=ge._diag[Ot][0];jt&&(Be=$._fullLayout[s.id2name(jt)])}var ur=Qe.trace.dimensions[Ot].values;for(j=0;j<ur.length;j++)for(Ct=Be._categoriesMap[ur[j]],ee=0;ee<Qe.trace.dimensions.length;ee++)if(ee!==Ot){var ar=Qe.trace.dimensions[ee];lt[Ct][1].push(ar.values[j])}}else if(tt){for(j=0;j<Qe.t.x.length;j++)et?(Ct=Qe.t.x[j],St=Qe.t.y[j]):(Ct=Qe.t.y[j],St=Qe.t.x[j]),lt[Ct][1].push(St);Qe.t&&Qe.t._scene&&delete Qe.t._scene.dirty}else if(Qe.hasOwnProperty("z")){St=Qe.z;var Cr=ie(ge.type,Be,St);for(j=0;j<St.length;j++)for(ee=0;ee<St[j].length;ee++)Ct=Cr(ee,j),Ct+1&&lt[Ct][1].push(St[j][ee])}else for(Ct=Qe.p,Ct===void 0&&(Ct=Qe[it]),St=Qe.s,St===void 0&&(St=Qe.v),St===void 0&&(St=et?Qe.y:Qe.x),Array.isArray(St)||(St===void 0?St=[]:St=[St]),j=0;j<St.length;j++)lt[Ct][1].push(St[j])}}}Be._categoriesValue=lt;var vr=[];for(re=0;re<lt.length;re++)vr.push([lt[re][0],fe[Ze](lt[re][1])]);vr.sort(at==="descending"?Ae:be),Be._categoriesAggregatedValue=vr,Be._initialCategories=vr.map(function(_r){return _r[0]}),J=J.concat(Be.sortByInitialCategories())}}}return J}function se(G,$,J){var Z={};function re(ie){ie.clearCalc(),ie.type==="multicategory"&&ie.setupMultiCategory($),Z[ie._id]=1}a.simpleMap(G,re);for(var ne=J._axisMatchGroups||[],j=0;j<ne.length;j++)for(var ee in ne[j])Z[ee]||re(J[s.id2name(ee)])}function he(G){var $=G._fullLayout,J=$._visibleModules,Z={},re,ne,j;for(ne=0;ne<J.length;ne++){var ee=J[ne],ie=ee.crossTraceCalc;if(ie){var fe=ee.basePlotModule.name;Z[fe]?a.pushUnique(Z[fe],ie):Z[fe]=[ie]}}for(j in Z){var be=Z[j],Ae=$._subplots[j];if(Array.isArray(Ae))for(re=0;re<Ae.length;re++){var Be=Ae[re],Ie=j==="cartesian"?$._plots[Be]:$[Be];for(ne=0;ne<be.length;ne++)be[ne](G,Ie,Be)}else for(ne=0;ne<be.length;ne++)be[ne](G)}}w.rehover=function(G){G._fullLayout._rehover&&G._fullLayout._rehover()},w.redrag=function(G){G._fullLayout._redrag&&G._fullLayout._redrag()},w.reselect=function(G){var $=G._fullLayout,J=(G.layout||{}).selections,Z=$._previousSelections;$._previousSelections=J;var re=$._reselect||JSON.stringify(J)!==JSON.stringify(Z);t.getComponentMethod("selections","reselect")(G,re)},w.generalUpdatePerTraceModule=function(G,$,J,Z){var re=$.traceHash,ne={},j;for(j=0;j<J.length;j++){var ee=J[j],ie=ee[0].trace;ie.visible&&(ne[ie.type]=ne[ie.type]||[],ne[ie.type].push(ee))}for(var fe in re)if(!ne[fe]){var be=re[fe][0],Ae=be[0].trace;Ae.visible=!1,ne[fe]=[be]}for(var Be in ne){var Ie=ne[Be],Ze=Ie[0][0].trace._module;Ze.plot(G,$,a.filterVisible(Ie),Z)}$.traceHash=ne},w.plotBasePlot=function(G,$,J,Z,re){var ne=t.getModule(G),j=T($.calcdata,ne)[0];ne.plot($,j,Z,re)},w.cleanBasePlot=function(G,$,J,Z,re){var ne=re._has&&re._has(G),j=J._has&&J._has(G);ne&&!j&&re["_"+G+"layer"].selectAll("g.trace").remove()}}}),vd=Ye({"src/constants/xmlns_namespaces.js"(X){"use strict";X.xmlns="http://www.w3.org/2000/xmlns/",X.svg="http://www.w3.org/2000/svg",X.xlink="http://www.w3.org/1999/xlink",X.svgAttrs={xmlns:X.svg,"xmlns:xlink":X.xlink}}}),oh=Ye({"src/constants/alignment.js"(X,H){"use strict";H.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}}}),jl=Ye({"src/lib/svg_text_utils.js"(X){"use strict";var H=_n(),g=ta(),x=g.strTranslate,A=vd(),M=oh().LINE_SPACING,e=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;X.convertToTspans=function(O,I,N){var U=O.text(),W=!O.attr("data-notex")&&I&&I._context.typesetMath&&typeof MathJax<"u"&&U.match(e),Q=H.select(O.node().parentNode);if(Q.empty())return;var ue=O.attr("class")?O.attr("class").split(" ")[0]:"text";ue+="-math",Q.selectAll("svg."+ue).remove(),Q.selectAll("g."+ue+"-group").remove(),O.style("display",null).attr({"data-unformatted":U,"data-math":"N"});function se(){Q.empty()||(ue=O.attr("class")+"-math",Q.select("svg."+ue).remove()),O.text("").style("white-space","pre");var he=L(O.node(),U);he&&O.style("pointer-events","all"),X.positionText(O),N&&N.call(O)}return W?(I&&I._promises||[]).push(new Promise(function(he){O.style("display","none");var G=parseInt(O.node().style.fontSize,10),$={fontSize:G};i(W[2],$,function(J,Z,re){Q.selectAll("svg."+ue).remove(),Q.selectAll("g."+ue+"-group").remove();var ne=J&&J.select("svg");if(!ne||!ne.node()){se(),he();return}var j=Q.append("g").classed(ue+"-group",!0).attr({"pointer-events":"none","data-unformatted":U,"data-math":"Y"});j.node().appendChild(ne.node()),Z&&Z.node()&&ne.node().insertBefore(Z.node().cloneNode(!0),ne.node().firstChild);var ee=re.width,ie=re.height;ne.attr({class:ue,height:ie,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var fe=O.node().style.fill||"black",be=ne.select("g");be.attr({fill:fe,stroke:fe});var Ae=be.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height;(Be>ee||Ie>ie)&&(ne.style("overflow","hidden"),Ae=ne.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height);var Ze=+O.attr("x"),at=+O.attr("y"),it=G||O.node().getBoundingClientRect().height,et=-it/4;if(ue[0]==="y")j.attr({transform:"rotate("+[-90,Ze,at]+")"+x(-Be/2,et-Ie/2)});else if(ue[0]==="l")at=et-Ie/2;else if(ue[0]==="a"&&ue.indexOf("atitle")!==0)Ze=0,at=et;else{var lt=O.attr("text-anchor");Ze=Ze-Be*(lt==="middle"?.5:lt==="end"?1:0),at=at+et-Ie/2}ne.attr({x:Ze,y:at}),N&&N.call(O,j),he(j)})})):se(),O};var t=/(<|&lt;|&#60;)/g,r=/(>|&gt;|&#62;)/g;function o(O){return O.replace(t,"\\lt ").replace(r,"\\gt ")}var a=[["$","$"],["\\(","\\)"]];function i(O,I,N){var U=parseInt((MathJax.version||"").split(".")[0]);if(U!==2&&U!==3){g.warn("No MathJax version:",MathJax.version);return}var W,Q,ue,se,he=function(){return Q=g.extendDeepAll({},MathJax.Hub.config),ue=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:a},displayAlign:"left"})},G=function(){Q=g.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=a},$=function(){if(W=MathJax.Hub.config.menuSettings.renderer,W!=="SVG")return MathJax.Hub.setRenderer("SVG")},J=function(){W=MathJax.config.startup.output,W!=="svg"&&(MathJax.config.startup.output="svg")},Z=function(){var fe="math-output-"+g.randstr({},64);se=H.select("body").append("div").attr({id:fe}).style({visibility:"hidden",position:"absolute","font-size":I.fontSize+"px"}).text(o(O));var be=se.node();return U===2?MathJax.Hub.Typeset(be):MathJax.typeset([be])},re=function(){var fe=se.select(U===2?".MathJax_SVG":".MathJax"),be=!fe.empty()&&se.select("svg").node();if(!be)g.log("There was an error in the tex syntax.",O),N();else{var Ae=be.getBoundingClientRect(),Be;U===2?Be=H.select("body").select("#MathJax_SVG_glyphs"):Be=fe.select("defs"),N(fe,Be,Ae)}se.remove()},ne=function(){if(W!=="SVG")return MathJax.Hub.setRenderer(W)},j=function(){W!=="svg"&&(MathJax.config.startup.output=W)},ee=function(){return ue!==void 0&&(MathJax.Hub.processSectionDelay=ue),MathJax.Hub.Config(Q)},ie=function(){MathJax.config=Q};U===2?MathJax.Hub.Queue(he,$,Z,re,ne,ee):U===3&&(G(),J(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){Z(),re(),j(),ie()}))}var n={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},s={sub:"0.3em",sup:"-0.6em"},c={sub:"-0.21em",sup:"0.42em"},h="\u200B",v=["http:","https:","mailto:","",void 0,":"],p=X.NEWLINES=/(\r\n?|\n)/g,T=/(<[^<>]*>)/,l=/<(\/?)([^ >]*)(\s+(.*))?>/i,_=/<br(\s+.*)?>/i;X.BR_TAG_ALL=/<br(\s+.*)?>/gi;var w=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,S=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,E=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,m=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function b(O,I){if(!O)return null;var N=O.match(I),U=N&&(N[3]||N[4]);return U&&f(U)}var d=/(^|;)\s*color:/;X.plainText=function(O,I){I=I||{};for(var N=I.len!==void 0&&I.len!==-1?I.len:1/0,U=I.allowedTags!==void 0?I.allowedTags:["br"],W="...",Q=W.length,ue=O.split(T),se=[],he="",G=0,$=0;$<ue.length;$++){var J=ue[$],Z=J.match(l),re=Z&&Z[2].toLowerCase();if(re)U.indexOf(re)!==-1&&(se.push(J),he=re);else{var ne=J.length;if(G+ne<N)se.push(J),G+=ne;else if(G<N){var j=N-G;he&&(he!=="br"||j<=Q||ne<=Q)&&se.pop(),N>Q?se.push(J.substr(0,j-Q)+W):se.push(J.substr(0,j));break}he=""}}return se.join("")};var u={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},y=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function f(O){return O.replace(y,function(I,N){var U;return N.charAt(0)==="#"?U=P(N.charAt(1)==="x"?parseInt(N.substr(2),16):parseInt(N.substr(1),10)):U=u[N],U||I})}X.convertEntities=f;function P(O){if(!(O>1114111)){var I=String.fromCodePoint;if(I)return I(O);var N=String.fromCharCode;return O<=65535?N(O):N((O>>10)+55232,O%1024+56320)}}function L(O,I){I=I.replace(p," ");var N=!1,U=[],W,Q=-1;function ue(){Q++;var Ie=document.createElementNS(A.svg,"tspan");H.select(Ie).attr({class:"line",dy:Q*M+"em"}),O.appendChild(Ie),W=Ie;var Ze=U;if(U=[{node:Ie}],Ze.length>1)for(var at=1;at<Ze.length;at++)se(Ze[at])}function se(Ie){var Ze=Ie.type,at={},it;if(Ze==="a"){it="a";var et=Ie.target,lt=Ie.href,Me=Ie.popup;lt&&(at={"xlink:xlink:show":et==="_blank"||et.charAt(0)!=="_"?"new":"replace",target:et,"xlink:xlink:href":lt},Me&&(at.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+Me+'");return false;'))}else it="tspan";Ie.style&&(at.style=Ie.style);var ge=document.createElementNS(A.svg,it);if(Ze==="sup"||Ze==="sub"){he(W,h),W.appendChild(ge);var ce=document.createElementNS(A.svg,"tspan");he(ce,h),H.select(ce).attr("dy",c[Ze]),at.dy=s[Ze],W.appendChild(ge),W.appendChild(ce)}else W.appendChild(ge);H.select(ge).attr(at),W=Ie.node=ge,U.push(Ie)}function he(Ie,Ze){Ie.appendChild(document.createTextNode(Ze))}function G(Ie){if(U.length===1){g.log("Ignoring unexpected end tag </"+Ie+">.",I);return}var Ze=U.pop();Ie!==Ze.type&&g.log("Start tag <"+Ze.type+"> doesnt match end tag <"+Ie+">. Pretending it did match.",I),W=U[U.length-1].node}var $=_.test(I);$?ue():(W=O,U=[{node:O}]);for(var J=I.split(T),Z=0;Z<J.length;Z++){var re=J[Z],ne=re.match(l),j=ne&&ne[2].toLowerCase(),ee=n[j];if(j==="br")ue();else if(ee===void 0)he(W,f(re));else if(ne[1])G(j);else{var ie=ne[4],fe={type:j},be=b(ie,w);if(be?(be=be.replace(d,"$1 fill:"),ee&&(be+=";"+ee)):ee&&(be=ee),be&&(fe.style=be),j==="a"){N=!0;var Ae=b(ie,S);if(Ae){var Be=z(Ae);Be&&(fe.href=Be,fe.target=b(ie,E)||"_blank",fe.popup=b(ie,m))}}se(fe)}}return N}function z(O){var I=encodeURI(decodeURI(O)),N=document.createElement("a"),U=document.createElement("a");N.href=O,U.href=I;var W=N.protocol,Q=U.protocol;return v.indexOf(W)!==-1&&v.indexOf(Q)!==-1?I:""}X.sanitizeHTML=function(I){I=I.replace(p," ");for(var N=document.createElement("p"),U=N,W=[],Q=I.split(T),ue=0;ue<Q.length;ue++){var se=Q[ue],he=se.match(l),G=he&&he[2].toLowerCase();if(G in n)if(he[1])W.length&&(U=W.pop());else{var $=he[4],J=b($,w),Z=J?{style:J}:{};if(G==="a"){var re=b($,S);if(re){var ne=z(re);if(ne){Z.href=ne;var j=b($,E);j&&(Z.target=j)}}}var ee=document.createElement(G);U.appendChild(ee),H.select(ee).attr(Z),U=ee,W.push(ee)}else U.appendChild(document.createTextNode(f(se)))}var ie="innerHTML";return N[ie]},X.lineCount=function(I){return I.selectAll("tspan.line").size()||1},X.positionText=function(I,N,U){return I.each(function(){var W=H.select(this);function Q(he,G){return G===void 0?(G=W.attr(he),G===null&&(W.attr(he,0),G=0)):W.attr(he,G),G}var ue=Q("x",N),se=Q("y",U);this.nodeName==="text"&&W.selectAll("tspan.line").attr({x:ue,y:se})})};function F(O,I,N){var U=N.horizontalAlign,W=N.verticalAlign||"top",Q=O.node().getBoundingClientRect(),ue=I.node().getBoundingClientRect(),se,he,G;return W==="bottom"?he=function(){return Q.bottom-se.height}:W==="middle"?he=function(){return Q.top+(Q.height-se.height)/2}:he=function(){return Q.top},U==="right"?G=function(){return Q.right-se.width}:U==="center"?G=function(){return Q.left+(Q.width-se.width)/2}:G=function(){return Q.left},function(){se=this.node().getBoundingClientRect();var $=G()-ue.left,J=he()-ue.top,Z=N.gd||{};if(N.gd){Z._fullLayout._calcInverseTransform(Z);var re=g.apply3DTransform(Z._fullLayout._invTransform)($,J);$=re[0],J=re[1]}return this.style({top:J+"px",left:$+"px","z-index":1e3}),this}}var B="1px ";X.makeTextShadow=function(O){var I=B,N=B,U=B;return I+N+U+O+", -"+I+"-"+N+U+O+", "+I+"-"+N+U+O+", -"+I+N+U+O},X.makeEditable=function(O,I){var N=I.gd,U=I.delegate,W=H.dispatch("edit","input","cancel"),Q=U||O;if(O.style({"pointer-events":U?"none":"all"}),O.size()!==1)throw new Error("boo");function ue(){he(),O.style({opacity:0});var G=Q.attr("class"),$;G?$="."+G.split(" ")[0]+"-math-group":$="[class*=-math-group]",$&&H.select(O.node().parentNode).select($).style({opacity:0})}function se(G){var $=G.node(),J=document.createRange();J.selectNodeContents($);var Z=window.getSelection();Z.removeAllRanges(),Z.addRange(J),$.focus()}function he(){var G=H.select(N),$=G.select(".svg-container"),J=$.append("div"),Z=O.node().style,re=parseFloat(Z.fontSize||12),ne=I.text;ne===void 0&&(ne=O.attr("data-unformatted")),J.classed("plugin-editable editable",!0).style({position:"absolute","font-family":Z.fontFamily||"Arial","font-size":re,color:I.fill||Z.fill||"black",opacity:1,"background-color":I.background||"transparent",outline:"#ffffff33 1px solid",margin:[-re/8+1,0,0,-1].join("px ")+"px",padding:"0","box-sizing":"border-box"}).attr({contenteditable:!0}).text(ne).call(F(O,$,I)).on("blur",function(){N._editing=!1,O.text(this.textContent).style({opacity:1});var j=H.select(this).attr("class"),ee;j?ee="."+j.split(" ")[0]+"-math-group":ee="[class*=-math-group]",ee&&H.select(O.node().parentNode).select(ee).style({opacity:0});var ie=this.textContent;H.select(this).transition().duration(0).remove(),H.select(document).on("mouseup",null),W.edit.call(O,ie)}).on("focus",function(){var j=this;N._editing=!0,H.select(document).on("mouseup",function(){if(H.event.target===j)return!1;document.activeElement===J.node()&&J.node().blur()})}).on("keyup",function(){H.event.which===27?(N._editing=!1,O.style({opacity:1}),H.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),W.cancel.call(O,this.textContent)):(W.input.call(O,this.textContent),H.select(this).call(F(O,$,I)))}).on("keydown",function(){H.event.which===13&&this.blur()}).call(se)}return I.immediate?ue():Q.on("click",ue),H.rebind(O,W,"on")}}}),Up=Ye({"src/components/colorscale/helpers.js"(X,H){"use strict";var g=_n(),x=bh(),A=jo(),M=ta(),e=Fn(),t=Hg().isValid;function r(p,T,l){var _=T?M.nestedProperty(p,T).get()||{}:p,w=_[l||"color"];w&&w._inputArray&&(w=w._inputArray);var S=!1;if(M.isArrayOrTypedArray(w)){for(var E=0;E<w.length;E++)if(A(w[E])){S=!0;break}}return M.isPlainObject(_)&&(S||_.showscale===!0||A(_.cmin)&&A(_.cmax)||t(_.colorscale)||M.isPlainObject(_.colorbar))}var o=["showscale","autocolorscale","colorscale","reversescale","colorbar"],a=["min","max","mid","auto"];function i(p){var T=p._colorAx,l=T||p,_={},w,S,E;for(S=0;S<o.length;S++)E=o[S],_[E]=l[E];if(T)for(w="c",S=0;S<a.length;S++)E=a[S],_[E]=l["c"+E];else{var m;for(S=0;S<a.length;S++){if(E=a[S],m="c"+E,m in l){_[E]=l[m];continue}m="z"+E,m in l&&(_[E]=l[m])}w=m.charAt(0)}return _._sync=function(b,d){var u=a.indexOf(b)!==-1?w+b:b;l[u]=l["_"+u]=d},_}function n(p){for(var T=i(p),l=T.min,_=T.max,w=T.reversescale?s(T.colorscale):T.colorscale,S=w.length,E=new Array(S),m=new Array(S),b=0;b<S;b++){var d=w[b];E[b]=l+d[0]*(_-l),m[b]=d[1]}return{domain:E,range:m}}function s(p){for(var T=p.length,l=new Array(T),_=T-1,w=0;_>=0;_--,w++){var S=p[_];l[w]=[1-S[0],S[1]]}return l}function c(p,T){T=T||{};for(var l=p.domain,_=p.range,w=_.length,S=new Array(w),E=0;E<w;E++){var m=x(_[E]).toRgb();S[E]=[m.r,m.g,m.b,m.a]}var b=g.scale.linear().domain(l).range(S).clamp(!0),d=T.noNumericCheck,u=T.returnArray,y;return d&&u?y=b:d?y=function(f){return v(b(f))}:u?y=function(f){return A(f)?b(f):x(f).isValid()?f:e.defaultLine}:y=function(f){return A(f)?v(b(f)):x(f).isValid()?f:e.defaultLine},y.domain=b.domain,y.range=function(){return _},y}function h(p,T){return c(n(p),T)}function v(p){var T={r:p[0],g:p[1],b:p[2],a:p[3]};return x(T).toRgbString()}H.exports={hasColorscale:r,extractOpts:i,extractScale:n,flipScale:s,makeColorScaleFunc:c,makeColorScaleFuncFromTrace:h}}}),Cc=Ye({"src/plots/cartesian/axis_format_attributes.js"(X,H){"use strict";var g=eS(),x=g.FORMAT_LINK,A=g.DATE_FORMAT_LINK;function M(r,o){return{valType:"string",dflt:"",editType:"none",description:(o?e:t)("hover text",r)+["By default the values are formatted using "+(o?"generic number format":"`"+r+"axis.hoverformat`")+"."].join(" ")}}function e(r,o){return["Sets the "+r+" formatting rule"+(o?"for `"+o+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+x+"."].join(" ")}function t(r,o){return e(r,o)+[" And for dates see: "+A+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}H.exports={axisHoverFormat:M,descriptionOnlyNumbers:e,descriptionWithDates:t}}}),Vh=Ye({"src/plots/cartesian/layout_attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Uh().dash,M=Oo().extendFlat,e=cl().templatedArray,t=Cc().descriptionWithDates,r=ks().ONEDAY,o=wh(),a=o.HOUR_PATTERN,i=o.WEEKDAY_PATTERN,n={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},s=M({},n,{values:n.values.slice().concat(["sync"])});function c(d){return{valType:"integer",min:0,dflt:d?5:0,editType:"ticks"}}var h={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},v={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},p={valType:"data_array",editType:"ticks"},T={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function l(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=5),u}function _(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=1),u}var w={valType:"color",dflt:x.defaultLine,editType:"ticks"},S={valType:"color",dflt:x.lightLine,editType:"ticks"};function E(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=1),u}var m=M({},A,{editType:"ticks"}),b={valType:"boolean",editType:"ticks"};H.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:x.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:g({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[o.idRegex.x.toString(),o.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"calc"},rangebreaks:e("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[i,a,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:r},editType:"calc"}),tickmode:s,nticks:c(),tick0:h,dtick:v,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:p,ticktext:{valType:"data_array",editType:"ticks"},ticks:T,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:l(),tickwidth:_(),tickcolor:w,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:M({},A,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:g({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:t("tick label")},tickformatstops:e("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:t("hover text")},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:x.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:b,gridcolor:S,gridwidth:E(),griddash:m,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:x.defaultLine,editType:"ticks"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:x.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"plot"},minor:{tickmode:n,nticks:c("minor"),tick0:h,dtick:v,tickvals:p,ticks:T,ticklen:l("minor"),tickwidth:_("minor"),tickcolor:w,gridcolor:S,gridwidth:E("minor"),griddash:m,showgrid:b,editType:"ticks"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),y2=Ye({"src/components/colorbar/attributes.js"(X,H){"use strict";var g=Vh(),x=Au(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:g.linecolor,outlinewidth:g.linewidth,bordercolor:g.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:g.minor.tickmode,nticks:g.nticks,tick0:g.tick0,dtick:g.dtick,tickvals:g.tickvals,ticktext:g.ticktext,ticks:A({},g.ticks,{dflt:""}),ticklabeloverflow:A({},g.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:g.ticklen,tickwidth:g.tickwidth,tickcolor:g.tickcolor,ticklabelstep:g.ticklabelstep,showticklabels:g.showticklabels,labelalias:g.labelalias,tickfont:x({}),tickangle:g.tickangle,tickformat:g.tickformat,tickformatstops:g.tickformatstops,tickprefix:g.tickprefix,showtickprefix:g.showtickprefix,ticksuffix:g.ticksuffix,showticksuffix:g.showticksuffix,separatethousands:g.separatethousands,exponentformat:g.exponentformat,minexponent:g.minexponent,showexponent:g.showexponent,title:{text:{valType:"string"},font:x({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")}}),tu=Ye({"src/components/colorscale/attributes.js"(X,H){"use strict";var g=y2(),x=Ky().counter,A=Km(),M=Hg().scales,e=A(M);function t(r){return"`"+r+"`"}H.exports=function(o,a){o=o||"",a=a||{};var i=a.cLetter||"c",n="onlyIfNumerical"in a?a.onlyIfNumerical:!!o,s="noScale"in a?a.noScale:o==="marker.line",c="showScaleDflt"in a?a.showScaleDflt:i==="z",h=typeof a.colorscaleDflt=="string"?M[a.colorscaleDflt]:null,v=a.editTypeOverride||"",p=o?o+".":"",T,l;"colorAttr"in a?(T=a.colorAttr,l=a.colorAttr):(T={z:"z",c:"color"}[i],l="in "+t(p+T));var _=n?" Has an effect only if "+l+" is set to a numerical array.":"",w=i+"auto",S=i+"min",E=i+"max",m=i+"mid",b=t(p+w),d=t(p+S),u=t(p+E),y=d+" and "+u,f={};f[S]=f[E]=void 0;var P={};P[w]=!1;var L={};return T==="color"&&(L.color={valType:"color",arrayOk:!0,editType:v||"style"},a.anim&&(L.color.anim=!0)),L[w]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:f},L[S]={valType:"number",dflt:null,editType:v||"plot",impliedEdits:P},L[E]={valType:"number",dflt:null,editType:v||"plot",impliedEdits:P},L[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:f},L.colorscale={valType:"colorscale",editType:"calc",dflt:h,impliedEdits:{autocolorscale:!1}},L.autocolorscale={valType:"boolean",dflt:a.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},L.reversescale={valType:"boolean",dflt:!1,editType:"plot"},s||(L.showscale={valType:"boolean",dflt:c,editType:"calc"},L.colorbar=g),a.noColorAxis||(L.coloraxis={valType:"subplotid",regex:x("coloraxis"),dflt:null,editType:"calc"}),L}}}),nS=Ye({"src/components/colorscale/layout_attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=tu(),A=Hg().scales;H.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:A.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:A.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:A.RdBu,editType:"calc"}},coloraxis:g({_isSubplotObj:!0,editType:"calc"},x("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}}}),oS=Ye({"src/components/colorbar/has_colorbar.js"(X,H){"use strict";var g=ta();H.exports=function(A){return g.isPlainObject(A.colorbar)}}}),sS=Ye({"src/plots/cartesian/clean_ticks.js"(X){"use strict";var H=jo(),g=ta(),x=ks(),A=x.ONEDAY,M=x.ONEWEEK;X.dtick=function(e,t){var r=t==="log",o=t==="date",a=t==="category",i=o?A:1;if(!e)return i;if(H(e))return e=Number(e),e<=0?i:a?Math.max(1,Math.round(e)):o?Math.max(.1,e):e;if(typeof e!="string"||!(o||r))return i;var n=e.charAt(0),s=e.substr(1);return s=H(s)?Number(s):0,s<=0||!(o&&n==="M"&&s===Math.round(s)||r&&n==="L"||r&&n==="D"&&(s===1||s===2))?i:e},X.tick0=function(e,t,r,o){if(t==="date")return g.cleanDate(e,g.dateTick0(r,o%M===0?1:0));if(!(o==="D1"||o==="D2"))return H(e)?Number(e):0}}}),Zg=Ye({"src/plots/cartesian/tick_value_defaults.js"(X,H){"use strict";var g=sS(),x=ta().isArrayOrTypedArray,A=xp().isTypedArraySpec,M=xp().decodeTypedArraySpec;H.exports=function(t,r,o,a,i){i||(i={});var n=i.isMinor,s=n?t.minor||{}:t,c=n?r.minor:r,h=n?"minor.":"";function v(m){var b=s[m];return A(b)&&(b=M(b)),b!==void 0?b:(c._template||{})[m]}var p=v("tick0"),T=v("dtick"),l=v("tickvals"),_=x(l)?"array":T?"linear":"auto",w=o(h+"tickmode",_);if(w==="auto"||w==="sync")o(h+"nticks");else if(w==="linear"){var S=c.dtick=g.dtick(T,a);c.tick0=g.tick0(p,a,r.calendar,S)}else if(a!=="multicategory"){var E=o(h+"tickvals");E===void 0?c.tickmode="auto":n||o("ticktext")}}}}),e1=Ye({"src/plots/cartesian/tick_mark_defaults.js"(X,H){"use strict";var g=ta(),x=Vh();H.exports=function(M,e,t,r){var o=r.isMinor,a=o?M.minor||{}:M,i=o?e.minor:e,n=o?x.minor:x,s=o?"minor.":"",c=g.coerce2(a,i,n,"ticklen",o?(e.ticklen||5)*.6:void 0),h=g.coerce2(a,i,n,"tickwidth",o?e.tickwidth||1:void 0),v=g.coerce2(a,i,n,"tickcolor",(o?e.tickcolor:void 0)||i.color),p=t(s+"ticks",!o&&r.outerTicks||c||h||v?"outside":"");p||(delete i.ticklen,delete i.tickwidth,delete i.tickcolor)}}}),lS=Ye({"src/plots/cartesian/show_dflt.js"(X,H){"use strict";H.exports=function(x){var A=["showexponent","showtickprefix","showticksuffix"],M=A.filter(function(t){return x[t]!==void 0}),e=function(t){return x[t]===x[M[0]]};if(M.every(e)||M.length===1)return x[M[0]]}}}),up=Ye({"src/plots/array_container_defaults.js"(X,H){"use strict";var g=ta(),x=cl();H.exports=function(M,e,t){var r=t.name,o=t.inclusionAttr||"visible",a=e[r],i=g.isArrayOrTypedArray(M[r])?M[r]:[],n=e[r]=[],s=x.arrayTemplater(e,r,o),c,h;for(c=0;c<i.length;c++){var v=i[c];g.isPlainObject(v)?h=s.newItem(v):(h=s.newItem({}),h[o]=!1),h._index=c,h[o]!==!1&&t.handleItemDefaults(v,h,e,t),n.push(h)}var p=s.defaultItems();for(c=0;c<p.length;c++)h=p[c],h._index=n.length,t.handleItemDefaults({},h,e,t,{}),n.push(h);if(g.isArrayOrTypedArray(a)){var T=Math.min(a.length,n.length);for(c=0;c<T;c++)g.relinkPrivateKeys(n[c],a[c])}return n}}}),$m=Ye({"src/plots/cartesian/tick_label_defaults.js"(X,H){"use strict";var g=ta(),x=Fn().contrast,A=Vh(),M=lS(),e=up();H.exports=function(o,a,i,n,s){s||(s={});var c=i("labelalias");g.isPlainObject(c)||delete a.labelalias;var h=M(o),v=i("showticklabels");if(v){s.noTicklabelshift||i("ticklabelshift"),s.noTicklabelstandoff||i("ticklabelstandoff");var p=s.font||{},T=a.color,l=a.ticklabelposition||"",_=l.indexOf("inside")!==-1?x(s.bgColor):T&&T!==A.color.dflt?T:p.color;if(g.coerceFont(i,"tickfont",p,{overrideDflt:{color:_}}),!s.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&i("ticklabelstep"),!s.noAng){var w=i("tickangle");!s.noAutotickangles&&w==="auto"&&i("autotickangles")}if(n!=="category"){var S=i("tickformat");e(o,a,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:t}),a.tickformatstops.length||delete a.tickformatstops,!s.noExp&&!S&&n!=="date"&&(i("showexponent",h),i("exponentformat"),i("minexponent"),i("separatethousands"))}}};function t(r,o){function a(n,s){return g.coerce(r,o,A.tickformatstops,n,s)}var i=a("enabled");i&&(a("dtickrange"),a("value"))}}}),Qm=Ye({"src/plots/cartesian/prefix_suffix_defaults.js"(X,H){"use strict";var g=lS();H.exports=function(A,M,e,t,r){r||(r={});var o=r.tickSuffixDflt,a=g(A),i=e("tickprefix");i&&e("showtickprefix",a);var n=e("ticksuffix",o);n&&e("showticksuffix",a)}}}),uS=Ye({"src/components/colorbar/defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Zg(),M=e1(),e=$m(),t=Qm(),r=y2();H.exports=function(a,i,n){var s=x.newContainer(i,"colorbar"),c=a.colorbar||{};function h(I,N){return g.coerce(c,s,r,I,N)}var v=n.margin||{t:0,b:0,l:0,r:0},p=n.width-v.l-v.r,T=n.height-v.t-v.b,l=h("orientation"),_=l==="v",w=h("thicknessmode");h("thickness",w==="fraction"?30/(_?p:T):30);var S=h("lenmode");h("len",S==="fraction"?1:_?T:p);var E=h("yref"),m=h("xref"),b=E==="paper",d=m==="paper",u,y,f,P="left";_?(f="middle",P=d?"left":"right",u=d?1.02:1,y=.5):(f=b?"bottom":"top",P="center",u=.5,y=b?1.02:1),g.coerce(c,s,{x:{valType:"number",min:d?-2:0,max:d?3:1,dflt:u}},"x"),g.coerce(c,s,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:y}},"y"),h("xanchor",P),h("xpad"),h("yanchor",f),h("ypad"),g.noneOrAll(c,s,["x","y"]),h("outlinecolor"),h("outlinewidth"),h("bordercolor"),h("borderwidth"),h("bgcolor");var L=g.coerce(c,s,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:_?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");h("ticklabeloverflow",L.indexOf("inside")!==-1?"hide past domain":"hide past div"),A(c,s,h,"linear");var z=n.font,F={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:z};L.indexOf("inside")!==-1&&(F.bgColor="black"),t(c,s,h,"linear",F),e(c,s,h,"linear",F),M(c,s,h,"linear",F),h("title.text",n._dfltTitle.colorbar);var B=s.showticklabels?s.tickfont:z,O=g.extendFlat({},z,{family:B.family,size:g.bigFont(B.size)});g.coerceFont(h,"title.font",O),h("title.side",_?"top":"right")}}}),sh=Ye({"src/components/colorscale/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=oS(),M=uS(),e=Hg().isValid,t=Hn().traceIs;function r(o,a){var i=a.slice(0,a.length-1);return a?x.nestedProperty(o,i).get()||{}:o}H.exports=function o(a,i,n,s,c){var h=c.prefix,v=c.cLetter,p="_module"in i,T=r(a,h),l=r(i,h),_=r(i._template||{},h)||{},w=function(){return delete a.coloraxis,delete i.coloraxis,o(a,i,n,s,c)};if(p){var S=n._colorAxes||{},E=s(h+"coloraxis");if(E){var m=t(i,"contour")&&x.nestedProperty(i,"contours.coloring").get()||"heatmap",b=S[E];b?(b[2].push(w),b[0]!==m&&(b[0]=!1,x.warn(["Ignoring coloraxis:",E,"setting","as it is linked to incompatible colorscales."].join(" ")))):S[E]=[m,i,[w]];return}}var d=T[v+"min"],u=T[v+"max"],y=g(d)&&g(u)&&d<u,f=s(h+v+"auto",!y);f?s(h+v+"mid"):(s(h+v+"min"),s(h+v+"max"));var P=T.colorscale,L=_.colorscale,z;if(P!==void 0&&(z=!e(P)),L!==void 0&&(z=!e(L)),s(h+"autocolorscale",z),s(h+"colorscale"),s(h+"reversescale"),h!=="marker.line."){var F;h&&p&&(F=A(T));var B=s(h+"showscale",F);B&&(h&&_&&(l._template=_),M(T,l,n))}}}}),tO=Ye({"src/components/colorscale/layout_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=nS(),M=sh();H.exports=function(t,r){function o(p,T){return g.coerce(t,r,A,p,T)}o("colorscale.sequential"),o("colorscale.sequentialminus"),o("colorscale.diverging");var a=r._colorAxes,i,n;function s(p,T){return g.coerce(i,n,A.coloraxis,p,T)}for(var c in a){var h=a[c];if(h[0])i=t[c]||{},n=x.newContainer(r,c,"coloraxis"),n._name=c,M(i,n,r,s,{prefix:"",cLetter:"c"});else{for(var v=0;v<h[2].length;v++)h[2][v]();delete r._colorAxes[c]}}}}}),rO=Ye({"src/components/colorscale/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=Up().extractOpts;H.exports=function(e,t){function r(h,v){var p=h["_"+v];p!==void 0&&(h[v]=p)}function o(h,v){var p=v.container?g.nestedProperty(h,v.container).get():h;if(p)if(p.coloraxis)p._colorAx=t[p.coloraxis];else{var T=A(p),l=T.auto;(l||T.min===void 0)&&r(p,v.min),(l||T.max===void 0)&&r(p,v.max),T.autocolorscale&&r(p,"colorscale")}}for(var a=0;a<e.length;a++){var i=e[a],n=i._module.colorbar;if(n)if(Array.isArray(n))for(var s=0;s<n.length;s++)o(i,n[s]);else o(i,n);x(i,"marker.line")&&o(i,{container:"marker.line",min:"cmin",max:"cmax"})}for(var c in t._colorAxes)o(t[c],{min:"cmin",max:"cmax"})}}}),jp=Ye({"src/components/colorscale/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Up().extractOpts;H.exports=function(e,t,r){var o=e._fullLayout,a=r.vals,i=r.containerStr,n=i?x.nestedProperty(t,i).get():t,s=A(n),c=s.auto!==!1,h=s.min,v=s.max,p=s.mid,T=function(){return x.aggNums(Math.min,null,a)},l=function(){return x.aggNums(Math.max,null,a)};if(h===void 0?h=T():c&&(n._colorAx&&g(h)?h=Math.min(h,T()):h=T()),v===void 0?v=l():c&&(n._colorAx&&g(v)?v=Math.max(v,l()):v=l()),c&&p!==void 0&&(v-p>p-h?h=p-(v-p):v-p<p-h&&(v=p+(p-h))),h===v&&(h-=.5,v+=.5),s._sync("min",h),s._sync("max",v),s.autocolorscale){var _;h*v<0?_=o.colorscale.diverging:h>=0?_=o.colorscale.sequential:_=o.colorscale.sequentialminus,s._sync("colorscale",_)}}}}),Su=Ye({"src/components/colorscale/index.js"(X,H){"use strict";var g=Hg(),x=Up();H.exports={moduleType:"component",name:"colorscale",attributes:tu(),layoutAttributes:nS(),supplyLayoutDefaults:tO(),handleDefaults:sh(),crossTraceDefaults:rO(),calc:jp(),scales:g.scales,defaultScale:g.defaultScale,getScale:g.get,isValidScale:g.isValid,hasColorscale:x.hasColorscale,extractOpts:x.extractOpts,extractScale:x.extractScale,flipScale:x.flipScale,makeColorScaleFunc:x.makeColorScaleFunc,makeColorScaleFuncFromTrace:x.makeColorScaleFuncFromTrace}}}),uu=Ye({"src/traces/scatter/subtypes.js"(X,H){"use strict";var g=ta(),x=xp().isTypedArraySpec;H.exports={hasLines:function(A){return A.visible&&A.mode&&A.mode.indexOf("lines")!==-1},hasMarkers:function(A){return A.visible&&(A.mode&&A.mode.indexOf("markers")!==-1||A.type==="splom")},hasText:function(A){return A.visible&&A.mode&&A.mode.indexOf("text")!==-1},isBubble:function(A){var M=A.marker;return g.isPlainObject(M)&&(g.isArrayOrTypedArray(M.size)||x(M.size))}}}}),t1=Ye({"src/traces/scatter/make_bubble_size_func.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){M||(M=2);var e=A.marker,t=e.sizeref||1,r=e.sizemin||0,o=e.sizemode==="area"?function(a){return Math.sqrt(a/t)}:function(a){return a/t};return function(a){var i=o(a/M);return g(i)&&i>0?Math.max(i,r):0}}}}),Qp=Ye({"src/components/fx/helpers.js"(X){"use strict";var H=ta();X.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},X.isTraceInSubplots=function(t,r){if(t.type==="splom"){for(var o=t.xaxes||[],a=t.yaxes||[],i=0;i<o.length;i++)for(var n=0;n<a.length;n++)if(r.indexOf(o[i]+a[n])!==-1)return!0;return!1}return r.indexOf(X.getSubplot(t))!==-1},X.flat=function(t,r){for(var o=new Array(t.length),a=0;a<t.length;a++)o[a]=r;return o},X.p2c=function(t,r){for(var o=new Array(t.length),a=0;a<t.length;a++)o[a]=t[a].p2c(r);return o},X.getDistanceFunction=function(t,r,o,a){return t==="closest"?a||X.quadrature(r,o):t.charAt(0)==="x"?r:o},X.getClosest=function(t,r,o){if(o.index!==!1)o.index>=0&&o.index<t.length?o.distance=0:o.index=!1;else for(var a=1/0,i=t.length,n=0;n<i;n++)a=r(t[n]),a<=o.distance&&(o.index=n,o.distance=a);return o},X.inbox=function(t,r,o){return t*r<0||t===0?o:1/0},X.quadrature=function(t,r){return function(o){var a=t(o),i=r(o);return Math.sqrt(a*a+i*i)}},X.makeEventData=function(t,r,o){var a="index"in t?t.index:t.pointNumber,i={data:r._input,fullData:r,curveNumber:r.index,pointNumber:a};if(r._indexToPoints){var n=r._indexToPoints[a];n.length===1?i.pointIndex=n[0]:i.pointIndices=n}else i.pointIndex=a;return r._module.eventData?i=r._module.eventData(i,t,r,o,a):("xVal"in t?i.x=t.xVal:"x"in t&&(i.x=t.x),"yVal"in t?i.y=t.yVal:"y"in t&&(i.y=t.y),t.xa&&(i.xaxis=t.xa),t.ya&&(i.yaxis=t.ya),t.zLabelVal!==void 0&&(i.z=t.zLabelVal)),X.appendArrayPointValue(i,r,a),i},X.appendArrayPointValue=function(t,r,o){var a=r._arrayAttrs;if(a)for(var i=0;i<a.length;i++){var n=a[i],s=x(n);if(t[s]===void 0){var c=H.nestedProperty(r,n).get(),h=A(c,o);h!==void 0&&(t[s]=h)}}},X.appendArrayMultiPointValues=function(t,r,o){var a=r._arrayAttrs;if(a)for(var i=0;i<a.length;i++){var n=a[i],s=x(n);if(t[s]===void 0){for(var c=H.nestedProperty(r,n).get(),h=new Array(o.length),v=0;v<o.length;v++)h[v]=A(c,o[v]);t[s]=h}}};var g={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function x(t){return g[t]||t}function A(t,r){if(Array.isArray(r)){if(Array.isArray(t)&&Array.isArray(t[r[0]]))return t[r[0]][r[1]]}else return t[r]}var M={x:!0,y:!0},e={"x unified":!0,"y unified":!0};X.isUnifiedHover=function(t){return typeof t!="string"?!1:!!e[t]},X.isXYhover=function(t){return typeof t!="string"?!1:!!M[t]}}}),A_=Ye({"node_modules/parse-svg-path/index.js"(X,H){H.exports=A;var g={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},x=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function A(t){var r=[];return t.replace(x,function(o,a,i){var n=a.toLowerCase();for(i=e(i),n=="m"&&i.length>2&&(r.push([a].concat(i.splice(0,2))),n="l",a=a=="m"?"l":"L");;){if(i.length==g[n])return i.unshift(a),r.push(i);if(i.length<g[n])throw new Error("malformed path data");r.push([a].concat(i.splice(0,g[n])))}}),r}var M=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function e(t){var r=t.match(M);return r?r.map(Number):[]}}}),aO=Ye({"src/components/drawing/symbol_defs.js"(X,H){"use strict";var g=A_(),x=function(v,p){return p?Math.round(v*(p=Math.pow(10,p)))/p:Math.round(v)},A="M0,0Z",M=Math.sqrt(2),e=Math.sqrt(3),t=Math.PI,r=Math.cos,o=Math.sin;H.exports={circle:{n:0,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_="M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z";return T?h(p,T,_):_}},square:{n:1,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")}},diamond:{n:2,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"Z")}},cross:{n:3,f:function(v,p,T){if(a(p))return A;var l=x(v*.4,2),_=x(v*1.2,2);return h(p,T,"M"+_+","+l+"H"+l+"V"+_+"H-"+l+"V"+l+"H-"+_+"V-"+l+"H-"+l+"V-"+_+"H"+l+"V-"+l+"H"+_+"Z")}},x:{n:4,f:function(v,p,T){if(a(p))return A;var l=x(v*.8/M,2),_="l"+l+","+l,w="l"+l+",-"+l,S="l-"+l+",-"+l,E="l-"+l+","+l;return h(p,T,"M0,"+l+_+w+S+w+S+E+S+E+_+E+_+"Z")}},"triangle-up":{n:5,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+l+","+_+"H"+l+"L0,-"+w+"Z")}},"triangle-down":{n:6,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+l+",-"+_+"H"+l+"L0,"+w+"Z")}},"triangle-left":{n:7,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M"+_+",-"+l+"V"+l+"L-"+w+",0Z")}},"triangle-right":{n:8,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+_+",-"+l+"V"+l+"L"+w+",0Z")}},"triangle-ne":{n:9,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M-"+_+",-"+l+"H"+l+"V"+_+"Z")}},"triangle-se":{n:10,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M"+l+",-"+_+"V"+l+"H-"+_+"Z")}},"triangle-sw":{n:11,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M"+_+","+l+"H-"+l+"V-"+_+"Z")}},"triangle-nw":{n:12,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M-"+l+","+_+"V-"+l+"H"+_+"Z")}},pentagon:{n:13,f:function(v,p,T){if(a(p))return A;var l=x(v*.951,2),_=x(v*.588,2),w=x(-v,2),S=x(v*-.309,2),E=x(v*.809,2);return h(p,T,"M"+l+","+S+"L"+_+","+E+"H-"+_+"L-"+l+","+S+"L0,"+w+"Z")}},hexagon:{n:14,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/2,2),w=x(v*e/2,2);return h(p,T,"M"+w+",-"+_+"V"+_+"L0,"+l+"L-"+w+","+_+"V-"+_+"L0,-"+l+"Z")}},hexagon2:{n:15,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/2,2),w=x(v*e/2,2);return h(p,T,"M-"+_+","+w+"H"+_+"L"+l+",0L"+_+",-"+w+"H-"+_+"L-"+l+",0Z")}},octagon:{n:16,f:function(v,p,T){if(a(p))return A;var l=x(v*.924,2),_=x(v*.383,2);return h(p,T,"M-"+_+",-"+l+"H"+_+"L"+l+",-"+_+"V"+_+"L"+_+","+l+"H-"+_+"L-"+l+","+_+"V-"+_+"Z")}},star:{n:17,f:function(v,p,T){if(a(p))return A;var l=v*1.4,_=x(l*.225,2),w=x(l*.951,2),S=x(l*.363,2),E=x(l*.588,2),m=x(-l,2),b=x(l*-.309,2),d=x(l*.118,2),u=x(l*.809,2),y=x(l*.382,2);return h(p,T,"M"+_+","+b+"H"+w+"L"+S+","+d+"L"+E+","+u+"L0,"+y+"L-"+E+","+u+"L-"+S+","+d+"L-"+w+","+b+"H-"+_+"L0,"+m+"Z")}},hexagram:{n:18,f:function(v,p,T){if(a(p))return A;var l=x(v*.66,2),_=x(v*.38,2),w=x(v*.76,2);return h(p,T,"M-"+w+",0l-"+_+",-"+l+"h"+w+"l"+_+",-"+l+"l"+_+","+l+"h"+w+"l-"+_+","+l+"l"+_+","+l+"h-"+w+"l-"+_+","+l+"l-"+_+",-"+l+"h-"+w+"Z")}},"star-triangle-up":{n:19,f:function(v,p,T){if(a(p))return A;var l=x(v*e*.8,2),_=x(v*.8,2),w=x(v*1.6,2),S=x(v*4,2),E="A "+S+","+S+" 0 0 1 ";return h(p,T,"M-"+l+","+_+E+l+","+_+E+"0,-"+w+E+"-"+l+","+_+"Z")}},"star-triangle-down":{n:20,f:function(v,p,T){if(a(p))return A;var l=x(v*e*.8,2),_=x(v*.8,2),w=x(v*1.6,2),S=x(v*4,2),E="A "+S+","+S+" 0 0 1 ";return h(p,T,"M"+l+",-"+_+E+"-"+l+",-"+_+E+"0,"+w+E+l+",-"+_+"Z")}},"star-square":{n:21,f:function(v,p,T){if(a(p))return A;var l=x(v*1.1,2),_=x(v*2,2),w="A "+_+","+_+" 0 0 1 ";return h(p,T,"M-"+l+",-"+l+w+"-"+l+","+l+w+l+","+l+w+l+",-"+l+w+"-"+l+",-"+l+"Z")}},"star-diamond":{n:22,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2),_=x(v*1.9,2),w="A "+_+","+_+" 0 0 1 ";return h(p,T,"M-"+l+",0"+w+"0,"+l+w+l+",0"+w+"0,-"+l+w+"-"+l+",0Z")}},"diamond-tall":{n:23,f:function(v,p,T){if(a(p))return A;var l=x(v*.7,2),_=x(v*1.4,2);return h(p,T,"M0,"+_+"L"+l+",0L0,-"+_+"L-"+l+",0Z")}},"diamond-wide":{n:24,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2),_=x(v*.7,2);return h(p,T,"M0,"+_+"L"+l+",0L0,-"+_+"L-"+l+",0Z")}},hourglass:{n:25,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"H-"+l+"L"+l+",-"+l+"H-"+l+"Z")},noDot:!0},bowtie:{n:26,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"V-"+l+"L-"+l+","+l+"V-"+l+"Z")},noDot:!0},"circle-cross":{n:27,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/M,2);return h(p,T,"M"+_+","+_+"L-"+_+",-"+_+"M"+_+",-"+_+"L-"+_+","+_+"M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l+"M"+l+",-"+l+"L-"+l+","+l+"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"ZM0,-"+l+"V"+l+"M-"+l+",0H"+l)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2),_=x(v*.65,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"ZM-"+_+",-"+_+"L"+_+","+_+"M-"+_+","+_+"L"+_+",-"+_)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l+"M"+l+",-"+l+"L-"+l+","+l)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*.85,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+_+","+_+"L-"+_+",-"+_+"M"+_+",-"+_+"L-"+_+","+_)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(v,p,T){if(a(p))return A;var l=x(v/2,2),_=x(v,2);return h(p,T,"M"+l+","+_+"V-"+_+"M"+(l-_)+",-"+_+"V"+_+"M"+_+","+l+"H-"+_+"M-"+_+","+(l-_)+"H"+_)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+l+","+w+"L0,0M"+l+","+w+"L0,0M0,-"+_+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+l+",-"+w+"L0,0M"+l+",-"+w+"L0,0M0,"+_+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M"+w+","+l+"L0,0M"+w+",-"+l+"L0,0M-"+_+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+w+","+l+"L0,0M-"+w+",-"+l+"L0,0M"+_+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M"+l+",0H-"+l)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M0,"+l+"V-"+l)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+",-"+l+"L-"+l+","+l)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M0,0L-"+l+","+_+"H"+l+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M0,0L-"+l+",-"+_+"H"+l+"Z")},noDot:!0},"arrow-left":{n:47,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,0L"+l+",-"+_+"V"+_+"Z")},noDot:!0},"arrow-right":{n:48,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,0L-"+l+",-"+_+"V"+_+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M-"+l+",0H"+l+"M0,0L-"+l+","+_+"H"+l+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M-"+l+",0H"+l+"M0,0L-"+l+",-"+_+"H"+l+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,-"+_+"V"+_+"M0,0L"+l+",-"+_+"V"+_+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,-"+_+"V"+_+"M0,0L-"+l+",-"+_+"V"+_+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(v,p,T){if(a(p))return A;var l=t/2.5,_=2*v*r(l),w=2*v*o(l);return h(p,T,"M0,0L"+-_+","+w+"L"+_+","+w+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(v,p,T){if(a(p))return A;var l=t/4,_=2*v*r(l),w=2*v*o(l);return h(p,T,"M0,0L"+-_+","+w+"A "+2*v+","+2*v+" 0 0 1 "+_+","+w+"Z")},backoff:.4,noDot:!0}};function a(v){return v===null}var i,n,s,c;function h(v,p,T){if((!v||v%360===0)&&!p)return T;if(s===v&&c===p&&i===T)return n;s=v,c=p,i=T;function l(z,F){var B=r(z),O=o(z),I=F[0],N=F[1]+(p||0);return[I*B-N*O,I*O+N*B]}for(var _=v/180*t,w=0,S=0,E=g(T),m="",b=0;b<E.length;b++){var d=E[b],u=d[0],y=w,f=S;if(u==="M"||u==="L")w=+d[1],S=+d[2];else if(u==="m"||u==="l")w+=+d[1],S+=+d[2];else if(u==="H")w=+d[1];else if(u==="h")w+=+d[1];else if(u==="V")S=+d[1];else if(u==="v")S+=+d[1];else if(u==="A"){w=+d[1],S=+d[2];var P=l(_,[+d[6],+d[7]]);d[6]=P[0],d[7]=P[1],d[3]=+d[3]+v}(u==="H"||u==="V")&&(u="L"),(u==="h"||u==="v")&&(u="l"),(u==="m"||u==="l")&&(w-=y,S-=f);var L=l(_,[w,S]);(u==="H"||u==="V")&&(u="L"),(u==="M"||u==="L"||u==="m"||u==="l")&&(d[1]=L[0],d[2]=L[1]),d[0]=u,m+=d[0]+d.slice(1).join(",")}return n=m,m}}}),Bo=Ye({"src/components/drawing/index.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=jo(),e=bh(),t=Hn(),r=Fn(),o=Su(),a=x.strTranslate,i=jl(),n=vd(),s=oh(),c=s.LINE_SPACING,h=Xm().DESELECTDIM,v=uu(),p=t1(),T=Qp().appendArrayPointValue,l=H.exports={};l.font=function(Me,ge){var ce=ge.variant,ze=ge.style,tt=ge.weight,nt=ge.color,Qe=ge.size,Ct=ge.family,St=ge.shadow,Ot=ge.lineposition,jt=ge.textcase;Ct&&Me.style("font-family",Ct),Qe+1&&Me.style("font-size",Qe+"px"),nt&&Me.call(r.fill,nt),tt&&Me.style("font-weight",tt),ze&&Me.style("font-style",ze),ce&&Me.style("font-variant",ce),jt&&Me.style("text-transform",_(S(jt))),St&&Me.style("text-shadow",St==="auto"?i.makeTextShadow(r.contrast(nt)):_(St)),Ot&&Me.style("text-decoration-line",_(E(Ot)))};function _(Me){return Me==="none"?void 0:Me}var w={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function S(Me){return w[Me]}function E(Me){return Me.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}l.setPosition=function(Me,ge,ce){Me.attr("x",ge).attr("y",ce)},l.setSize=function(Me,ge,ce){Me.attr("width",ge).attr("height",ce)},l.setRect=function(Me,ge,ce,ze,tt){Me.call(l.setPosition,ge,ce).call(l.setSize,ze,tt)},l.translatePoint=function(Me,ge,ce,ze){var tt=ce.c2p(Me.x),nt=ze.c2p(Me.y);if(M(tt)&&M(nt)&&ge.node())ge.node().nodeName==="text"?ge.attr("x",tt).attr("y",nt):ge.attr("transform",a(tt,nt));else return!1;return!0},l.translatePoints=function(Me,ge,ce){Me.each(function(ze){var tt=g.select(this);l.translatePoint(ze,tt,ge,ce)})},l.hideOutsideRangePoint=function(Me,ge,ce,ze,tt,nt){ge.attr("display",ce.isPtWithinRange(Me,tt)&&ze.isPtWithinRange(Me,nt)?null:"none")},l.hideOutsideRangePoints=function(Me,ge){if(ge._hasClipOnAxisFalse){var ce=ge.xaxis,ze=ge.yaxis;Me.each(function(tt){var nt=tt[0].trace,Qe=nt.xcalendar,Ct=nt.ycalendar,St=t.traceIs(nt,"bar-like")?".bartext":".point,.textpoint";Me.selectAll(St).each(function(Ot){l.hideOutsideRangePoint(Ot,g.select(this),ce,ze,Qe,Ct)})})}},l.crispRound=function(Me,ge,ce){return!ge||!M(ge)?ce||0:Me._context.staticPlot?ge:ge<1?1:Math.round(ge)},l.singleLineStyle=function(Me,ge,ce,ze,tt){ge.style("fill","none");var nt=(((Me||[])[0]||{}).trace||{}).line||{},Qe=ce||nt.width||0,Ct=tt||nt.dash||"";r.stroke(ge,ze||nt.color),l.dashLine(ge,Ct,Qe)},l.lineGroupStyle=function(Me,ge,ce,ze){Me.style("fill","none").each(function(tt){var nt=(((tt||[])[0]||{}).trace||{}).line||{},Qe=ge||nt.width||0,Ct=ze||nt.dash||"";g.select(this).call(r.stroke,ce||nt.color).call(l.dashLine,Ct,Qe)})},l.dashLine=function(Me,ge,ce){ce=+ce||0,ge=l.dashStyle(ge,ce),Me.style({"stroke-dasharray":ge,"stroke-width":ce+"px"})},l.dashStyle=function(Me,ge){ge=+ge||1;var ce=Math.max(ge,3);return Me==="solid"?Me="":Me==="dot"?Me=ce+"px,"+ce+"px":Me==="dash"?Me=3*ce+"px,"+3*ce+"px":Me==="longdash"?Me=5*ce+"px,"+5*ce+"px":Me==="dashdot"?Me=3*ce+"px,"+ce+"px,"+ce+"px,"+ce+"px":Me==="longdashdot"&&(Me=5*ce+"px,"+2*ce+"px,"+ce+"px,"+2*ce+"px"),Me};function m(Me,ge,ce,ze){var tt=ge.fillpattern,nt=ge.fillgradient,Qe=tt&&l.getPatternAttr(tt.shape,0,"");if(Qe){var Ct=l.getPatternAttr(tt.bgcolor,0,null),St=l.getPatternAttr(tt.fgcolor,0,null),Ot=tt.fgopacity,jt=l.getPatternAttr(tt.size,0,8),ur=l.getPatternAttr(tt.solidity,0,.3),ar=ge.uid;l.pattern(Me,"point",ce,ar,Qe,jt,ur,void 0,tt.fillmode,Ct,St,Ot)}else if(nt&&nt.type!=="none"){var Cr=nt.type,vr="scatterfill-"+ge.uid;if(ze&&(vr="legendfill-"+ge.uid),!ze&&(nt.start!==void 0||nt.stop!==void 0)){var _r,yt;Cr==="horizontal"?(_r={x:nt.start,y:0},yt={x:nt.stop,y:0}):Cr==="vertical"&&(_r={x:0,y:nt.start},yt={x:0,y:nt.stop}),_r.x=ge._xA.c2p(_r.x===void 0?ge._extremes.x.min[0].val:_r.x,!0),_r.y=ge._yA.c2p(_r.y===void 0?ge._extremes.y.min[0].val:_r.y,!0),yt.x=ge._xA.c2p(yt.x===void 0?ge._extremes.x.max[0].val:yt.x,!0),yt.y=ge._yA.c2p(yt.y===void 0?ge._extremes.y.max[0].val:yt.y,!0),Me.call(L,ce,vr,"linear",nt.colorscale,"fill",_r,yt,!0,!1)}else Cr==="horizontal"&&(Cr=Cr+"reversed"),Me.call(l.gradient,ce,vr,Cr,nt.colorscale,"fill")}else ge.fillcolor&&Me.call(r.fill,ge.fillcolor)}l.singleFillStyle=function(Me,ge){var ce=g.select(Me.node()),ze=ce.data(),tt=((ze[0]||[])[0]||{}).trace||{};m(Me,tt,ge,!1)},l.fillGroupStyle=function(Me,ge,ce){Me.style("stroke-width",0).each(function(ze){var tt=g.select(this);ze[0].trace&&m(tt,ze[0].trace,ge,ce)})};var b=aO();l.symbolNames=[],l.symbolFuncs=[],l.symbolBackOffs=[],l.symbolNeedLines={},l.symbolNoDot={},l.symbolNoFill={},l.symbolList=[],Object.keys(b).forEach(function(Me){var ge=b[Me],ce=ge.n;l.symbolList.push(ce,String(ce),Me,ce+100,String(ce+100),Me+"-open"),l.symbolNames[ce]=Me,l.symbolFuncs[ce]=ge.f,l.symbolBackOffs[ce]=ge.backoff||0,ge.needLine&&(l.symbolNeedLines[ce]=!0),ge.noDot?l.symbolNoDot[ce]=!0:l.symbolList.push(ce+200,String(ce+200),Me+"-dot",ce+300,String(ce+300),Me+"-open-dot"),ge.noFill&&(l.symbolNoFill[ce]=!0)});var d=l.symbolNames.length,u="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";l.symbolNumber=function(Me){if(M(Me))Me=+Me;else if(typeof Me=="string"){var ge=0;Me.indexOf("-open")>0&&(ge=100,Me=Me.replace("-open","")),Me.indexOf("-dot")>0&&(ge+=200,Me=Me.replace("-dot","")),Me=l.symbolNames.indexOf(Me),Me>=0&&(Me+=ge)}return Me%100>=d||Me>=400?0:Math.floor(Math.max(Me,0))};function y(Me,ge,ce,ze){var tt=Me%100;return l.symbolFuncs[tt](ge,ce,ze)+(Me>=200?u:"")}var f=A("~f"),P={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};l.gradient=function(Me,ge,ce,ze,tt,nt){var Qe=P[ze];return L(Me,ge,ce,Qe.type,tt,nt,Qe.start,Qe.stop,!1,Qe.reversed)};function L(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot){var jt=tt.length,ur;ze==="linear"?ur={node:"linearGradient",attrs:{x1:Qe.x,y1:Qe.y,x2:Ct.x,y2:Ct.y,gradientUnits:St?"userSpaceOnUse":"objectBoundingBox"},reversed:Ot}:ze==="radial"&&(ur={node:"radialGradient",reversed:Ot});for(var ar=new Array(jt),Cr=0;Cr<jt;Cr++)ur.reversed?ar[jt-1-Cr]=[f((1-tt[Cr][0])*100),tt[Cr][1]]:ar[Cr]=[f(tt[Cr][0]*100),tt[Cr][1]];var vr=ge._fullLayout,_r="g"+vr._uid+"-"+ce,yt=vr._defs.select(".gradients").selectAll("#"+_r).data([ze+ar.join(";")],x.identity);yt.exit().remove(),yt.enter().append(ur.node).each(function(){var Fe=g.select(this);ur.attrs&&Fe.attr(ur.attrs),Fe.attr("id",_r);var Ke=Fe.selectAll("stop").data(ar);Ke.exit().remove(),Ke.enter().append("stop"),Ke.each(function(Ne){var Ee=e(Ne[1]);g.select(this).attr({offset:Ne[0]+"%","stop-color":r.tinyRGB(Ee),"stop-opacity":Ee.getAlpha()})})}),Me.style(nt,re(_r,ge)).style(nt+"-opacity",null),Me.classed("gradient_filled",!0)}l.pattern=function(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur){var ar=ge==="legend";Ct&&(St==="overlay"?(Ot=Ct,jt=r.contrast(Ot)):(Ot=void 0,jt=Ct));var Cr=ce._fullLayout,vr="p"+Cr._uid+"-"+ze,_r,yt,Fe=function(Bt,Gt,Kt,sr,sa){return sr+(sa-sr)*(Bt-Gt)/(Kt-Gt)},Ke,Ne,Ee,Ve,ke={},Te=e(jt),Le=r.tinyRGB(Te),rt=Te.getAlpha(),dt=ur*rt;switch(tt){case"/":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M-"+_r/4+","+yt/4+"l"+_r/2+",-"+yt/2+"M0,"+yt+"L"+_r+",0M"+_r/4*3+","+yt/4*5+"l"+_r/2+",-"+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"\\":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M"+_r/4*3+",-"+yt/4+"l"+_r/2+","+yt/2+"M0,0L"+_r+","+yt+"M-"+_r/4+","+yt/4*3+"l"+_r/2+","+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"x":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M-"+_r/4+","+yt/4+"l"+_r/2+",-"+yt/2+"M0,"+yt+"L"+_r+",0M"+_r/4*3+","+yt/4*5+"l"+_r/2+",-"+yt/2+"M"+_r/4*3+",-"+yt/4+"l"+_r/2+","+yt/2+"M0,0L"+_r+","+yt+"M-"+_r/4+","+yt/4*3+"l"+_r/2+","+yt/2,Ne=nt-nt*Math.sqrt(1-Qe),Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"|":_r=nt,yt=nt,Ve="path",Ke="M"+_r/2+",0L"+_r/2+","+yt,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"-":_r=nt,yt=nt,Ve="path",Ke="M0,"+yt/2+"L"+_r+","+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"+":_r=nt,yt=nt,Ve="path",Ke="M"+_r/2+",0L"+_r/2+","+yt+"M0,"+yt/2+"L"+_r+","+yt/2,Ne=nt-nt*Math.sqrt(1-Qe),Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case".":_r=nt,yt=nt,Qe<Math.PI/4?Ee=Math.sqrt(Qe*nt*nt/Math.PI):Ee=Fe(Qe,Math.PI/4,1,nt/2,nt/Math.sqrt(2)),Ve="circle",ke={cx:_r/2,cy:yt/2,r:Ee,opacity:dt,fill:Le};break}var xt=[tt||"noSh",Ot||"noBg",jt||"noFg",nt,Qe].join(";"),It=Cr._defs.select(".patterns").selectAll("#"+vr).data([xt],x.identity);It.exit().remove(),It.enter().append("pattern").each(function(){var Bt=g.select(this);if(Bt.attr({id:vr,width:_r+"px",height:yt+"px",patternUnits:"userSpaceOnUse",patternTransform:ar?"scale(0.8)":""}),Ot){var Gt=e(Ot),Kt=r.tinyRGB(Gt),sr=Gt.getAlpha(),sa=Bt.selectAll("rect").data([0]);sa.exit().remove(),sa.enter().append("rect").attr({width:_r+"px",height:yt+"px",fill:Kt,"fill-opacity":sr})}var Aa=Bt.selectAll(Ve).data([0]);Aa.exit().remove(),Aa.enter().append(Ve).attr(ke)}),Me.style("fill",re(vr,ce)).style("fill-opacity",null),Me.classed("pattern_filled",!0)},l.initGradients=function(Me){var ge=Me._fullLayout,ce=x.ensureSingle(ge._defs,"g","gradients");ce.selectAll("linearGradient,radialGradient").remove(),g.select(Me).selectAll(".gradient_filled").classed("gradient_filled",!1)},l.initPatterns=function(Me){var ge=Me._fullLayout,ce=x.ensureSingle(ge._defs,"g","patterns");ce.selectAll("pattern").remove(),g.select(Me).selectAll(".pattern_filled").classed("pattern_filled",!1)},l.getPatternAttr=function(Me,ge,ce){return Me&&x.isArrayOrTypedArray(Me)?ge<Me.length?Me[ge]:ce:Me},l.pointStyle=function(Me,ge,ce,ze){if(Me.size()){var tt=l.makePointStyleFns(ge);Me.each(function(nt){l.singlePointStyle(nt,g.select(this),ge,tt,ce,ze)})}},l.singlePointStyle=function(Me,ge,ce,ze,tt,nt){var Qe=ce.marker,Ct=Qe.line;if(nt&&nt.i>=0&&Me.i===void 0&&(Me.i=nt.i),ge.style("opacity",ze.selectedOpacityFn?ze.selectedOpacityFn(Me):Me.mo===void 0?Qe.opacity:Me.mo),ze.ms2mrc){var St;Me.ms==="various"||Qe.size==="various"?St=3:St=ze.ms2mrc(Me.ms),Me.mrc=St,ze.selectedSizeFn&&(St=Me.mrc=ze.selectedSizeFn(Me));var Ot=l.symbolNumber(Me.mx||Qe.symbol)||0;Me.om=Ot%200>=100;var jt=lt(Me,ce),ur=ee(Me,ce);ge.attr("d",y(Ot,St,jt,ur))}var ar=!1,Cr,vr,_r;if(Me.so)_r=Ct.outlierwidth,vr=Ct.outliercolor,Cr=Qe.outliercolor;else{var yt=(Ct||{}).width;_r=(Me.mlw+1||yt+1||(Me.trace?(Me.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in Me?vr=Me.mlcc=ze.lineScale(Me.mlc):x.isArrayOrTypedArray(Ct.color)?vr=r.defaultLine:vr=Ct.color,x.isArrayOrTypedArray(Qe.color)&&(Cr=r.defaultLine,ar=!0),"mc"in Me?Cr=Me.mcc=ze.markerScale(Me.mc):Cr=Qe.color||Qe.colors||"rgba(0,0,0,0)",ze.selectedColorFn&&(Cr=ze.selectedColorFn(Me))}if(Me.om)ge.call(r.stroke,Cr).style({"stroke-width":(_r||1)+"px",fill:"none"});else{ge.style("stroke-width",(Me.isBlank?0:_r)+"px");var Fe=Qe.gradient,Ke=Me.mgt;Ke?ar=!0:Ke=Fe&&Fe.type,x.isArrayOrTypedArray(Ke)&&(Ke=Ke[0],P[Ke]||(Ke=0));var Ne=Qe.pattern,Ee=Ne&&l.getPatternAttr(Ne.shape,Me.i,"");if(Ke&&Ke!=="none"){var Ve=Me.mgc;Ve?ar=!0:Ve=Fe.color;var ke=ce.uid;ar&&(ke+="-"+Me.i),l.gradient(ge,tt,ke,Ke,[[0,Ve],[1,Cr]],"fill")}else if(Ee){var Te=!1,Le=Ne.fgcolor;!Le&&nt&&nt.color&&(Le=nt.color,Te=!0);var rt=l.getPatternAttr(Le,Me.i,nt&&nt.color||null),dt=l.getPatternAttr(Ne.bgcolor,Me.i,null),xt=Ne.fgopacity,It=l.getPatternAttr(Ne.size,Me.i,8),Bt=l.getPatternAttr(Ne.solidity,Me.i,.3);Te=Te||Me.mcc||x.isArrayOrTypedArray(Ne.shape)||x.isArrayOrTypedArray(Ne.bgcolor)||x.isArrayOrTypedArray(Ne.fgcolor)||x.isArrayOrTypedArray(Ne.size)||x.isArrayOrTypedArray(Ne.solidity);var Gt=ce.uid;Te&&(Gt+="-"+Me.i),l.pattern(ge,"point",tt,Gt,Ee,It,Bt,Me.mcc,Ne.fillmode,dt,rt,xt)}else x.isArrayOrTypedArray(Cr)?r.fill(ge,Cr[Me.i]):r.fill(ge,Cr);_r&&r.stroke(ge,vr)}},l.makePointStyleFns=function(Me){var ge={},ce=Me.marker;return ge.markerScale=l.tryColorscale(ce,""),ge.lineScale=l.tryColorscale(ce,"line"),t.traceIs(Me,"symbols")&&(ge.ms2mrc=v.isBubble(Me)?p(Me):function(){return(ce.size||6)/2}),Me.selectedpoints&&x.extendFlat(ge,l.makeSelectedPointStyleFns(Me)),ge},l.makeSelectedPointStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.marker||{},nt=ce.marker||{},Qe=ze.marker||{},Ct=tt.opacity,St=nt.opacity,Ot=Qe.opacity,jt=St!==void 0,ur=Ot!==void 0;(x.isArrayOrTypedArray(Ct)||jt||ur)&&(ge.selectedOpacityFn=function(Ee){var Ve=Ee.mo===void 0?tt.opacity:Ee.mo;return Ee.selected?jt?St:Ve:ur?Ot:h*Ve});var ar=tt.color,Cr=nt.color,vr=Qe.color;(Cr||vr)&&(ge.selectedColorFn=function(Ee){var Ve=Ee.mcc||ar;return Ee.selected?Cr||Ve:vr||Ve});var _r=tt.size,yt=nt.size,Fe=Qe.size,Ke=yt!==void 0,Ne=Fe!==void 0;return t.traceIs(Me,"symbols")&&(Ke||Ne)&&(ge.selectedSizeFn=function(Ee){var Ve=Ee.mrc||_r/2;return Ee.selected?Ke?yt/2:Ve:Ne?Fe/2:Ve}),ge},l.makeSelectedTextStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.textfont||{},nt=ce.textfont||{},Qe=ze.textfont||{},Ct=tt.color,St=nt.color,Ot=Qe.color;return ge.selectedTextColorFn=function(jt){var ur=jt.tc||Ct;return jt.selected?St||ur:Ot||(St?ur:r.addOpacity(ur,h))},ge},l.selectedPointStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedPointStyleFns(ge),ze=ge.marker||{},tt=[];ce.selectedOpacityFn&&tt.push(function(nt,Qe){nt.style("opacity",ce.selectedOpacityFn(Qe))}),ce.selectedColorFn&&tt.push(function(nt,Qe){r.fill(nt,ce.selectedColorFn(Qe))}),ce.selectedSizeFn&&tt.push(function(nt,Qe){var Ct=Qe.mx||ze.symbol||0,St=ce.selectedSizeFn(Qe);nt.attr("d",y(l.symbolNumber(Ct),St,lt(Qe,ge),ee(Qe,ge))),Qe.mrc2=St}),tt.length&&Me.each(function(nt){for(var Qe=g.select(this),Ct=0;Ct<tt.length;Ct++)tt[Ct](Qe,nt)})}},l.tryColorscale=function(Me,ge){var ce=ge?x.nestedProperty(Me,ge).get():Me;if(ce){var ze=ce.color;if((ce.colorscale||ce._colorAx)&&x.isArrayOrTypedArray(ze))return o.makeColorScaleFuncFromTrace(ce)}return x.identity};var z={start:1,end:-1,middle:0,bottom:1,top:-1};function F(Me,ge,ce,ze,tt){var nt=g.select(Me.node().parentNode),Qe=ge.indexOf("top")!==-1?"top":ge.indexOf("bottom")!==-1?"bottom":"middle",Ct=ge.indexOf("left")!==-1?"end":ge.indexOf("right")!==-1?"start":"middle",St=ze?ze/.8+1:0,Ot=(i.lineCount(Me)-1)*c+1,jt=z[Ct]*St,ur=ce*.75+z[Qe]*St+(z[Qe]-1)*Ot*ce/2;Me.attr("text-anchor",Ct),tt||nt.attr("transform",a(jt,ur))}function B(Me,ge){var ce=Me.ts||ge.textfont.size;return M(ce)&&ce>0?ce:0}l.textPointStyle=function(Me,ge,ce){if(Me.size()){var ze;if(ge.selectedpoints){var tt=l.makeSelectedTextStyleFns(ge);ze=tt.selectedTextColorFn}var nt=ge.texttemplate,Qe=ce._fullLayout;Me.each(function(Ct){var St=g.select(this),Ot=nt?x.extractOption(Ct,ge,"txt","texttemplate"):x.extractOption(Ct,ge,"tx","text");if(!Ot&&Ot!==0){St.remove();return}if(nt){var jt=ge._module.formatLabels,ur=jt?jt(Ct,ge,Qe):{},ar={};T(ar,ge,Ct.i);var Cr=ge._meta||{};Ot=x.texttemplateString(Ot,ur,Qe._d3locale,ar,Ct,Cr)}var vr=Ct.tp||ge.textposition,_r=B(Ct,ge),yt=ze?ze(Ct):Ct.tc||ge.textfont.color;St.call(l.font,{family:Ct.tf||ge.textfont.family,weight:Ct.tw||ge.textfont.weight,style:Ct.ty||ge.textfont.style,variant:Ct.tv||ge.textfont.variant,textcase:Ct.tC||ge.textfont.textcase,lineposition:Ct.tE||ge.textfont.lineposition,shadow:Ct.tS||ge.textfont.shadow,size:_r,color:yt}).text(Ot).call(i.convertToTspans,ce).call(F,vr,_r,Ct.mrc)})}},l.selectedTextStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedTextStyleFns(ge);Me.each(function(ze){var tt=g.select(this),nt=ce.selectedTextColorFn(ze),Qe=ze.tp||ge.textposition,Ct=B(ze,ge);r.fill(tt,nt);var St=t.traceIs(ge,"bar-like");F(tt,Qe,Ct,ze.mrc2||ze.mrc,St)})}};var O=.5;l.smoothopen=function(Me,ge){if(Me.length<3)return"M"+Me.join("L");var ce="M"+Me[0],ze=[],tt;for(tt=1;tt<Me.length-1;tt++)ze.push(ue(Me[tt-1],Me[tt],Me[tt+1],ge));for(ce+="Q"+ze[0][0]+" "+Me[1],tt=2;tt<Me.length-1;tt++)ce+="C"+ze[tt-2][1]+" "+ze[tt-1][0]+" "+Me[tt];return ce+="Q"+ze[Me.length-3][1]+" "+Me[Me.length-1],ce},l.smoothclosed=function(Me,ge){if(Me.length<3)return"M"+Me.join("L")+"Z";var ce="M"+Me[0],ze=Me.length-1,tt=[ue(Me[ze],Me[0],Me[1],ge)],nt;for(nt=1;nt<ze;nt++)tt.push(ue(Me[nt-1],Me[nt],Me[nt+1],ge));for(tt.push(ue(Me[ze-1],Me[ze],Me[0],ge)),nt=1;nt<=ze;nt++)ce+="C"+tt[nt-1][1]+" "+tt[nt][0]+" "+Me[nt];return ce+="C"+tt[ze][1]+" "+tt[0][0]+" "+Me[0]+"Z",ce};var I,N;function U(Me,ge,ce){return ce&&(Me=G(Me)),ge?Q(Me[1]):W(Me[0])}function W(Me){var ge=g.round(Me,2);return I=ge,ge}function Q(Me){var ge=g.round(Me,2);return N=ge,ge}function ue(Me,ge,ce,ze){var tt=Me[0]-ge[0],nt=Me[1]-ge[1],Qe=ce[0]-ge[0],Ct=ce[1]-ge[1],St=Math.pow(tt*tt+nt*nt,O/2),Ot=Math.pow(Qe*Qe+Ct*Ct,O/2),jt=(Ot*Ot*tt-St*St*Qe)*ze,ur=(Ot*Ot*nt-St*St*Ct)*ze,ar=3*Ot*(St+Ot),Cr=3*St*(St+Ot);return[[W(ge[0]+(ar&&jt/ar)),Q(ge[1]+(ar&&ur/ar))],[W(ge[0]-(Cr&&jt/Cr)),Q(ge[1]-(Cr&&ur/Cr))]]}var se={hv:function(Me,ge,ce){return"H"+W(ge[0])+"V"+U(ge,1,ce)},vh:function(Me,ge,ce){return"V"+Q(ge[1])+"H"+U(ge,0,ce)},hvh:function(Me,ge,ce){return"H"+W((Me[0]+ge[0])/2)+"V"+Q(ge[1])+"H"+U(ge,0,ce)},vhv:function(Me,ge,ce){return"V"+Q((Me[1]+ge[1])/2)+"H"+W(ge[0])+"V"+U(ge,1,ce)}},he=function(Me,ge,ce){return"L"+U(ge,0,ce)+","+U(ge,1,ce)};l.steps=function(Me){var ge=se[Me]||he;return function(ce){for(var ze="M"+W(ce[0][0])+","+Q(ce[0][1]),tt=ce.length,nt=1;nt<tt;nt++)ze+=ge(ce[nt-1],ce[nt],nt===tt-1);return ze}};function G(Me,ge){var ce=Me.backoff,ze=Me.trace,tt=Me.d,nt=Me.i;if(ce&&ze&&ze.marker&&ze.marker.angle%360===0&&ze.line&&ze.line.shape!=="spline"){var Qe=x.isArrayOrTypedArray(ce),Ct=Me,St=ge?ge[0]:I||0,Ot=ge?ge[1]:N||0,jt=Ct[0],ur=Ct[1],ar=jt-St,Cr=ur-Ot,vr=Math.atan2(Cr,ar),_r=Qe?ce[nt]:ce;if(_r==="auto"){var yt=Ct.i;ze.type==="scatter"&&yt--;var Fe=Ct.marker,Ke=Fe.symbol;x.isArrayOrTypedArray(Ke)&&(Ke=Ke[yt]);var Ne=Fe.size;x.isArrayOrTypedArray(Ne)&&(Ne=Ne[yt]),_r=Fe?l.symbolBackOffs[l.symbolNumber(Ke)]*Ne:0,_r+=l.getMarkerStandoff(tt[yt],ze)||0}var Ee=jt-_r*Math.cos(vr),Ve=ur-_r*Math.sin(vr);(Ee<=jt&&Ee>=St||Ee>=jt&&Ee<=St)&&(Ve<=ur&&Ve>=Ot||Ve>=ur&&Ve<=Ot)&&(Me=[Ee,Ve])}return Me}l.applyBackoff=G,l.makeTester=function(){var Me=x.ensureSingleById(g.select("body"),"svg","js-plotly-tester",function(ce){ce.attr(n.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),ge=x.ensureSingle(Me,"path","js-reference-point",function(ce){ce.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});l.tester=Me,l.testref=ge},l.savedBBoxes={};var $=0,J=1e4;l.bBox=function(Me,ge,ce){ce||(ce=Z(Me));var ze;if(ce){if(ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}else if(Me.childNodes.length===1){var tt=Me.childNodes[0];if(ce=Z(tt),ce){var nt=+tt.getAttribute("x")||0,Qe=+tt.getAttribute("y")||0,Ct=tt.getAttribute("transform");if(!Ct){var St=l.bBox(tt,!1,ce);return nt&&(St.left+=nt,St.right+=nt),Qe&&(St.top+=Qe,St.bottom+=Qe),St}if(ce+="~"+nt+"~"+Qe+"~"+Ct,ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}}var Ot,jt;ge?Ot=Me:(jt=l.tester.node(),Ot=Me.cloneNode(!0),jt.appendChild(Ot)),g.select(Ot).attr("transform",null).call(i.positionText,0,0);var ur=Ot.getBoundingClientRect(),ar=l.testref.node().getBoundingClientRect();ge||jt.removeChild(Ot);var Cr={height:ur.height,width:ur.width,left:ur.left-ar.left,top:ur.top-ar.top,right:ur.right-ar.left,bottom:ur.bottom-ar.top};return $>=J&&(l.savedBBoxes={},$=0),ce&&(l.savedBBoxes[ce]=Cr),$++,x.extendFlat({},Cr)};function Z(Me){var ge=Me.getAttribute("data-unformatted");if(ge!==null)return ge+Me.getAttribute("data-math")+Me.getAttribute("text-anchor")+Me.getAttribute("style")}l.setClipUrl=function(Me,ge,ce){Me.attr("clip-path",re(ge,ce))};function re(Me,ge){if(!Me)return null;var ce=ge._context,ze=ce._exportedPlot?"":ce._baseUrl||"";return ze?"url('"+ze+"#"+Me+"')":"url(#"+Me+")"}l.getTranslate=function(Me){var ge=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||0,y:+tt[1]||0}},l.setTranslate=function(Me,ge,ce){var ze=/(\btranslate\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||0,ce=ce||0,Qe=Qe.replace(ze,"").trim(),Qe+=a(ge,ce),Qe=Qe.trim(),Me[nt]("transform",Qe),Qe},l.getScale=function(Me){var ge=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||1,y:+tt[1]||1}},l.setScale=function(Me,ge,ce){var ze=/(\bscale\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||1,ce=ce||1,Qe=Qe.replace(ze,"").trim(),Qe+="scale("+ge+","+ce+")",Qe=Qe.trim(),Me[nt]("transform",Qe),Qe};var ne=/\s*sc.*/;l.setPointGroupScale=function(Me,ge,ce){if(ge=ge||1,ce=ce||1,!!Me){var ze=ge===1&&ce===1?"":"scale("+ge+","+ce+")";Me.each(function(){var tt=(this.getAttribute("transform")||"").replace(ne,"");tt+=ze,tt=tt.trim(),this.setAttribute("transform",tt)})}};var j=/translate\([^)]*\)\s*$/;l.setTextPointsScale=function(Me,ge,ce){Me&&Me.each(function(){var ze,tt=g.select(this),nt=tt.select("text");if(nt.node()){var Qe=parseFloat(nt.attr("x")||0),Ct=parseFloat(nt.attr("y")||0),St=(tt.attr("transform")||"").match(j);ge===1&&ce===1?ze=[]:ze=[a(Qe,Ct),"scale("+ge+","+ce+")",a(-Qe,-Ct)],St&&ze.push(St),tt.attr("transform",ze.join(""))}})};function ee(Me,ge){var ce;return Me&&(ce=Me.mf),ce===void 0&&(ce=ge.marker&&ge.marker.standoff||0),!ge._geo&&!ge._xA?-ce:ce}l.getMarkerStandoff=ee;var ie=Math.atan2,fe=Math.cos,be=Math.sin;function Ae(Me,ge){var ce=ge[0],ze=ge[1];return[ce*fe(Me)-ze*be(Me),ce*be(Me)+ze*fe(Me)]}var Be,Ie,Ze,at,it,et;function lt(Me,ge){var ce=Me.ma;ce===void 0&&(ce=ge.marker.angle,(!ce||x.isArrayOrTypedArray(ce))&&(ce=0));var ze,tt,nt=ge.marker.angleref;if(nt==="previous"||nt==="north"){if(ge._geo){var Qe=ge._geo.project(Me.lonlat);ze=Qe[0],tt=Qe[1]}else{var Ct=ge._xA,St=ge._yA;if(Ct&&St)ze=Ct.c2p(Me.x),tt=St.c2p(Me.y);else return 90}if(ge._geo){var Ot=Me.lonlat[0],jt=Me.lonlat[1],ur=ge._geo.project([Ot,jt+1e-5]),ar=ge._geo.project([Ot+1e-5,jt]),Cr=ie(ar[1]-tt,ar[0]-ze),vr=ie(ur[1]-tt,ur[0]-ze),_r;if(nt==="north")_r=ce/180*Math.PI;else if(nt==="previous"){var yt=Ot/180*Math.PI,Fe=jt/180*Math.PI,Ke=Be/180*Math.PI,Ne=Ie/180*Math.PI,Ee=Ke-yt,Ve=fe(Ne)*be(Ee),ke=be(Ne)*fe(Fe)-fe(Ne)*be(Fe)*fe(Ee);_r=-ie(Ve,ke)-Math.PI,Be=Ot,Ie=jt}var Te=Ae(Cr,[fe(_r),0]),Le=Ae(vr,[be(_r),0]);ce=ie(Te[1]+Le[1],Te[0]+Le[0])/Math.PI*180,nt==="previous"&&!(et===ge.uid&&Me.i===it+1)&&(ce=null)}if(nt==="previous"&&!ge._geo)if(et===ge.uid&&Me.i===it+1&&M(ze)&&M(tt)){var rt=ze-Ze,dt=tt-at,xt=ge.line&&ge.line.shape||"",It=xt.slice(xt.length-1);It==="h"&&(dt=0),It==="v"&&(rt=0),ce+=ie(dt,rt)/Math.PI*180+90}else ce=null}return Ze=ze,at=tt,it=Me.i,et=ge.uid,ce}l.getMarkerAngle=lt}}),Xg=Ye({"src/components/titles/index.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=Bo(),o=Fn(),a=jl(),i=Xm(),n=oh().OPPOSITE_SIDE,s=/ [XY][0-9]* /,c=1.6,h=1.6;function v(p,T,l){var _=p._fullLayout,w=l.propContainer,S=l.propName,E=l.placeholder,m=l.traceIndex,b=l.avoid||{},d=l.attributes,u=l.transform,y=l.containerGroup,f=1,P=w.title,L=(P&&P.text?P.text:"").trim(),z=!1,F=P&&P.font?P.font:{},B=F.family,O=F.size,I=F.color,N=F.weight,U=F.style,W=F.variant,Q=F.textcase,ue=F.lineposition,se=F.shadow,he=l.subtitlePropName,G=!!he,$=l.subtitlePlaceholder,J=(w.title||{}).subtitle||{text:"",font:{}},Z=J.text.trim(),re=!1,ne=1,j=J.font,ee=j.family,ie=j.size,fe=j.color,be=j.weight,Ae=j.style,Be=j.variant,Ie=j.textcase,Ze=j.lineposition,at=j.shadow,it;S==="title.text"?it="titleText":S.indexOf("axis")!==-1?it="axisTitleText":S.indexOf("colorbar"!==-1)&&(it="colorbarTitleText");var et=p._context.edits[it];function lt(ar,Cr){return ar===void 0||Cr===void 0?!1:ar.replace(s," % ")===Cr.replace(s," % ")}L===""?f=0:lt(L,E)&&(et||(L=""),f=.2,z=!0),G&&(Z===""?ne=0:lt(Z,$)&&(et||(Z=""),ne=.2,re=!0)),l._meta?L=e.templateString(L,l._meta):_._meta&&(L=e.templateString(L,_._meta));var Me=L||Z||et,ge;y||(y=e.ensureSingle(_._infolayer,"g","g-"+T),ge=_._hColorbarMoveTitle);var ce=y.selectAll("text."+T).data(Me?[0]:[]);ce.enter().append("text"),ce.text(L).attr("class",T),ce.exit().remove();var ze=null,tt=T+"-subtitle",nt=Z||et;if(G&&nt&&(ze=y.selectAll("text."+tt).data(nt?[0]:[]),ze.enter().append("text"),ze.text(Z).attr("class",tt),ze.exit().remove()),!Me)return y;function Qe(ar,Cr){e.syncOrAsync([Ct,St],{title:ar,subtitle:Cr})}function Ct(ar){var Cr=ar.title,vr=ar.subtitle,_r;!u&&ge&&(u={}),u?(_r="",u.rotate&&(_r+="rotate("+[u.rotate,d.x,d.y]+")"),(u.offset||ge)&&(_r+=t(0,(u.offset||0)-(ge||0)))):_r=null,Cr.attr("transform",_r);function yt(ke){if(ke){var Te=g.select(ke.node().parentNode).select("."+tt);if(!Te.empty()){var Le=ke.node().getBBox();if(Le.height){var rt=Le.y+Le.height+c*ie;Te.attr("y",rt)}}}}if(Cr.style("opacity",f*o.opacity(I)).call(r.font,{color:o.rgb(I),size:g.round(O,2),family:B,weight:N,style:U,variant:W,textcase:Q,shadow:se,lineposition:ue}).attr(d).call(a.convertToTspans,p,yt),vr){var Fe=y.select("."+T+"-math-group"),Ke=Cr.node().getBBox(),Ne=Fe.node()?Fe.node().getBBox():void 0,Ee=Ne?Ne.y+Ne.height+c*ie:Ke.y+Ke.height+h*ie,Ve=e.extendFlat({},d,{y:Ee});vr.attr("transform",_r),vr.style("opacity",ne*o.opacity(fe)).call(r.font,{color:o.rgb(fe),size:g.round(ie,2),family:ee,weight:be,style:Ae,variant:Be,textcase:Ie,shadow:at,lineposition:Ze}).attr(Ve).call(a.convertToTspans,p)}return A.previousPromises(p)}function St(ar){var Cr=ar.title,vr=g.select(Cr.node().parentNode);if(b&&b.selection&&b.side&&L){vr.attr("transform",null);var _r=n[b.side],yt=b.side==="left"||b.side==="top"?-1:1,Fe=x(b.pad)?b.pad:2,Ke=r.bBox(vr.node()),Ne={t:0,b:0,l:0,r:0},Ee=p._fullLayout._reservedMargin;for(var Ve in Ee)for(var ke in Ee[Ve]){var Te=Ee[Ve][ke];Ne[ke]=Math.max(Ne[ke],Te)}var Le={left:Ne.l,top:Ne.t,right:_.width-Ne.r,bottom:_.height-Ne.b},rt=b.maxShift||yt*(Le[b.side]-Ke[b.side]),dt=0;if(rt<0)dt=rt;else{var xt=b.offsetLeft||0,It=b.offsetTop||0;Ke.left-=xt,Ke.right-=xt,Ke.top-=It,Ke.bottom-=It,b.selection.each(function(){var Gt=r.bBox(this);e.bBoxIntersect(Ke,Gt,Fe)&&(dt=Math.max(dt,yt*(Gt[b.side]-Ke[_r])+Fe))}),dt=Math.min(rt,dt),w._titleScoot=Math.abs(dt)}if(dt>0||rt<0){var Bt={left:[-dt,0],right:[dt,0],top:[0,-dt],bottom:[0,dt]}[b.side];vr.attr("transform",t(Bt[0],Bt[1]))}}}ce.call(Qe,ze);function Ot(ar,Cr){ar.text(Cr).on("mouseover.opacity",function(){g.select(this).transition().duration(i.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){g.select(this).transition().duration(i.HIDE_PLACEHOLDER).style("opacity",0)})}if(et&&(L?ce.on(".opacity",null):(Ot(ce,E),z=!0),ce.call(a.makeEditable,{gd:p}).on("edit",function(ar){m!==void 0?M.call("_guiRestyle",p,S,ar,m):M.call("_guiRelayout",p,S,ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,d.x,d.y)}),G)){if(G&&!L){var jt=ce.node().getBBox(),ur=jt.y+jt.height+h*ie;ze.attr("y",ur)}Z?ze.on(".opacity",null):(Ot(ze,$),re=!0),ze.call(a.makeEditable,{gd:p}).on("edit",function(ar){M.call("_guiRelayout",p,"title.subtitle.text",ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,ze.attr("x"),ze.attr("y"))})}return ce.classed("js-placeholder",z),ze&&ze.classed("js-placeholder",re),y}H.exports={draw:v,SUBTITLE_PADDING_EM:h,SUBTITLE_PADDING_MATHJAX_EM:c}}}),wv=Ye({"src/plots/cartesian/set_convert.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=ta(),M=A.numberFormat,e=jo(),t=A.cleanNumber,r=A.ms2DateTime,o=A.dateTime2ms,a=A.ensureNumber,i=A.isArrayOrTypedArray,n=ks(),s=n.FP_SAFE,c=n.BADNUM,h=n.LOG_CLIP,v=n.ONEWEEK,p=n.ONEDAY,T=n.ONEHOUR,l=n.ONEMIN,_=n.ONESEC,w=Xc(),S=wh(),E=S.HOUR_PATTERN,m=S.WEEKDAY_PATTERN;function b(u){return Math.pow(10,u)}function d(u){return u!=null}H.exports=function(y,f){f=f||{};var P=y._id||"x",L=P.charAt(0);function z(Z,re){if(Z>0)return Math.log(Z)/Math.LN10;if(Z<=0&&re&&y.range&&y.range.length===2){var ne=y.range[0],j=y.range[1];return .5*(ne+j-2*h*Math.abs(ne-j))}else return c}function F(Z,re,ne,j){if((j||{}).msUTC&&e(Z))return+Z;var ee=o(Z,ne||y.calendar);if(ee===c)if(e(Z)){Z=+Z;var ie=Math.floor(A.mod(Z+.05,1)*10),fe=Math.round(Z-ie/10);ee=o(new Date(fe))+ie/10}else return c;return ee}function B(Z,re,ne){return r(Z,re,ne||y.calendar)}function O(Z){return y._categories[Math.round(Z)]}function I(Z){if(d(Z)){if(y._categoriesMap===void 0&&(y._categoriesMap={}),y._categoriesMap[Z]!==void 0)return y._categoriesMap[Z];y._categories.push(typeof Z=="number"?String(Z):Z);var re=y._categories.length-1;return y._categoriesMap[Z]=re,re}return c}function N(Z,re){for(var ne=new Array(re),j=0;j<re;j++){var ee=(Z[0]||[])[j],ie=(Z[1]||[])[j];ne[j]=U([ee,ie])}return ne}function U(Z){if(y._categoriesMap)return y._categoriesMap[Z]}function W(Z){var re=U(Z);if(re!==void 0)return re;if(e(Z))return+Z}function Q(Z){return e(Z)?+Z:U(Z)}function ue(Z,re,ne){return g.round(ne+re*Z,2)}function se(Z,re,ne){return(Z-ne)/re}var he=function(re){return e(re)?ue(re,y._m,y._b):c},G=function(Z){return se(Z,y._m,y._b)};if(y.rangebreaks){var $=L==="y";he=function(Z){if(!e(Z))return c;var re=y._rangebreaks.length;if(!re)return ue(Z,y._m,y._b);var ne=$;y.range[0]>y.range[1]&&(ne=!ne);for(var j=ne?-1:1,ee=j*Z,ie=0,fe=0;fe<re;fe++){var be=j*y._rangebreaks[fe].min,Ae=j*y._rangebreaks[fe].max;if(ee<be)break;if(ee>Ae)ie=fe+1;else{ie=ee<(be+Ae)/2?fe:fe+1;break}}var Be=y._B[ie]||0;return isFinite(Be)?ue(Z,y._m2,Be):0},G=function(Z){var re=y._rangebreaks.length;if(!re)return se(Z,y._m,y._b);for(var ne=0,j=0;j<re&&!(Z<y._rangebreaks[j].pmin);j++)Z>y._rangebreaks[j].pmax&&(ne=j+1);return se(Z,y._m2,y._B[ne])}}y.c2l=y.type==="log"?z:a,y.l2c=y.type==="log"?b:a,y.l2p=he,y.p2l=G,y.c2p=y.type==="log"?function(Z,re){return he(z(Z,re))}:he,y.p2c=y.type==="log"?function(Z){return b(G(Z))}:G,["linear","-"].indexOf(y.type)!==-1?(y.d2r=y.r2d=y.d2c=y.r2c=y.d2l=y.r2l=t,y.c2d=y.c2r=y.l2d=y.l2r=a,y.d2p=y.r2p=function(Z){return y.l2p(t(Z))},y.p2d=y.p2r=G,y.cleanPos=a):y.type==="log"?(y.d2r=y.d2l=function(Z,re){return z(t(Z),re)},y.r2d=y.r2c=function(Z){return b(t(Z))},y.d2c=y.r2l=t,y.c2d=y.l2r=a,y.c2r=z,y.l2d=b,y.d2p=function(Z,re){return y.l2p(y.d2r(Z,re))},y.p2d=function(Z){return b(G(Z))},y.r2p=function(Z){return y.l2p(t(Z))},y.p2r=G,y.cleanPos=a):y.type==="date"?(y.d2r=y.r2d=A.identity,y.d2c=y.r2c=y.d2l=y.r2l=F,y.c2d=y.c2r=y.l2d=y.l2r=B,y.d2p=y.r2p=function(Z,re,ne){return y.l2p(F(Z,0,ne))},y.p2d=y.p2r=function(Z,re,ne){return B(G(Z),re,ne)},y.cleanPos=function(Z){return A.cleanDate(Z,c,y.calendar)}):y.type==="category"?(y.d2c=y.d2l=I,y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=Q(Z);return re!==void 0?re:y.fraction2r(.5)},y.l2r=y.c2r=a,y.r2l=Q,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return typeof Z=="string"&&Z!==""?Z:a(Z)}):y.type==="multicategory"&&(y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=W(Z);return re!==void 0?re:y.fraction2r(.5)},y.r2c_just_indices=U,y.l2r=y.c2r=a,y.r2l=W,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return Array.isArray(Z)||typeof Z=="string"&&Z!==""?Z:a(Z)},y.setupMultiCategory=function(Z){var re=y._traceIndices,ne,j,ee=y._matchGroup;if(ee&&y._categories.length===0){for(var ie in ee)if(ie!==P){var fe=f[w.id2name(ie)];re=re.concat(fe._traceIndices)}}var be=[[0,{}],[0,{}]],Ae=[];for(ne=0;ne<re.length;ne++){var Be=Z[re[ne]];if(L in Be){var Ie=Be[L],Ze=Be._length||A.minRowLength(Ie);if(i(Ie[0])&&i(Ie[1]))for(j=0;j<Ze;j++){var at=Ie[0][j],it=Ie[1][j];d(at)&&d(it)&&(Ae.push([at,it]),at in be[0][1]||(be[0][1][at]=be[0][0]++),it in be[1][1]||(be[1][1][it]=be[1][0]++))}}}for(Ae.sort(function(et,lt){var Me=be[0][1],ge=Me[et[0]]-Me[lt[0]];if(ge)return ge;var ce=be[1][1];return ce[et[1]]-ce[lt[1]]}),ne=0;ne<Ae.length;ne++)I(Ae[ne])}),y.fraction2r=function(Z){var re=y.r2l(y.range[0]),ne=y.r2l(y.range[1]);return y.l2r(re+Z*(ne-re))},y.r2fraction=function(Z){var re=y.r2l(y.range[0]),ne=y.r2l(y.range[1]);return(y.r2l(Z)-re)/(ne-re)},y.limitRange=function(Z){var re=y.minallowed,ne=y.maxallowed;if(!(re===void 0&&ne===void 0)){Z||(Z="range");var j=A.nestedProperty(y,Z).get(),ee=A.simpleMap(j,y.r2l),ie=ee[1]<ee[0];ie&&ee.reverse();var fe=A.simpleMap([re,ne],y.r2l);if(re!==void 0&&ee[0]<fe[0]&&(j[ie?1:0]=re),ne!==void 0&&ee[1]>fe[1]&&(j[ie?0:1]=ne),j[0]===j[1]){var be=y.l2r(re),Ae=y.l2r(ne);if(re!==void 0){var Be=be+1;ne!==void 0&&(Be=Math.min(Be,Ae)),j[ie?1:0]=Be}if(ne!==void 0){var Ie=Ae+1;re!==void 0&&(Ie=Math.max(Ie,be)),j[ie?0:1]=Ie}}}},y.cleanRange=function(Z,re){y._cleanRange(Z,re),y.limitRange(Z)},y._cleanRange=function(Z,re){re||(re={}),Z||(Z="range");var ne=A.nestedProperty(y,Z).get(),j,ee;if(y.type==="date"?ee=A.dfltRange(y.calendar):L==="y"?ee=S.DFLTRANGEY:y._name==="realaxis"?ee=[0,1]:ee=re.dfltRange||S.DFLTRANGEX,ee=ee.slice(),(y.rangemode==="tozero"||y.rangemode==="nonnegative")&&(ee[0]=0),!ne||ne.length!==2){A.nestedProperty(y,Z).set(ee);return}var ie=ne[0]===null,fe=ne[1]===null;for(y.type==="date"&&!y.autorange&&(ne[0]=A.cleanDate(ne[0],c,y.calendar),ne[1]=A.cleanDate(ne[1],c,y.calendar)),j=0;j<2;j++)if(y.type==="date"){if(!A.isDateTime(ne[j],y.calendar)){y[Z]=ee;break}if(y.r2l(ne[0])===y.r2l(ne[1])){var be=A.constrain(y.r2l(ne[0]),A.MIN_MS+1e3,A.MAX_MS-1e3);ne[0]=y.l2r(be-1e3),ne[1]=y.l2r(be+1e3);break}}else{if(!e(ne[j]))if(!(ie||fe)&&e(ne[1-j]))ne[j]=ne[1-j]*(j?10:.1);else{y[Z]=ee;break}if(ne[j]<-s?ne[j]=-s:ne[j]>s&&(ne[j]=s),ne[0]===ne[1]){var Ae=Math.max(1,Math.abs(ne[0]*1e-6));ne[0]-=Ae,ne[1]+=Ae}}},y.setScale=function(Z){var re=f._size;if(y.overlaying){var ne=w.getFromId({_fullLayout:f},y.overlaying);y.domain=ne.domain}var j=Z&&y._r?"_r":"range",ee=y.calendar;y.cleanRange(j);var ie=y.r2l(y[j][0],ee),fe=y.r2l(y[j][1],ee),be=L==="y";if(be?(y._offset=re.t+(1-y.domain[1])*re.h,y._length=re.h*(y.domain[1]-y.domain[0]),y._m=y._length/(ie-fe),y._b=-y._m*fe):(y._offset=re.l+y.domain[0]*re.w,y._length=re.w*(y.domain[1]-y.domain[0]),y._m=y._length/(fe-ie),y._b=-y._m*ie),y._rangebreaks=[],y._lBreaks=0,y._m2=0,y._B=[],y.rangebreaks){var Ae,Be;if(y._rangebreaks=y.locateBreaks(Math.min(ie,fe),Math.max(ie,fe)),y._rangebreaks.length){for(Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],y._lBreaks+=Math.abs(Be.max-Be.min);var Ie=be;ie>fe&&(Ie=!Ie),Ie&&y._rangebreaks.reverse();var Ze=Ie?-1:1;for(y._m2=Ze*y._length/(Math.abs(fe-ie)-y._lBreaks),y._B.push(-y._m2*(be?fe:ie)),Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],y._B.push(y._B[y._B.length-1]-Ze*y._m2*(Be.max-Be.min));for(Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],Be.pmin=he(Be.min),Be.pmax=he(Be.max)}}if(!isFinite(y._m)||!isFinite(y._b)||y._length<0)throw f._replotting=!1,new Error("Something went wrong with axis scaling")},y.maskBreaks=function(Z){var re=y.rangebreaks||[],ne,j,ee,ie,fe;re._cachedPatterns||(re._cachedPatterns=re.map(function(Me){return Me.enabled&&Me.bounds?A.simpleMap(Me.bounds,Me.pattern?t:y.d2c):null})),re._cachedValues||(re._cachedValues=re.map(function(Me){return Me.enabled&&Me.values?A.simpleMap(Me.values,y.d2c).sort(A.sorterAsc):null}));for(var be=0;be<re.length;be++){var Ae=re[be];if(Ae.enabled){if(Ae.bounds){var Be=Ae.pattern;switch(ne=re._cachedPatterns[be],j=ne[0],ee=ne[1],Be){case m:fe=new Date(Z),ie=fe.getUTCDay(),j>ee&&(ee+=7,ie<j&&(ie+=7));break;case E:fe=new Date(Z);var Ie=fe.getUTCHours(),Ze=fe.getUTCMinutes(),at=fe.getUTCSeconds(),it=fe.getUTCMilliseconds();ie=Ie+(Ze/60+at/3600+it/36e5),j>ee&&(ee+=24,ie<j&&(ie+=24));break;case"":ie=Z;break}if(ie>=j&&ie<ee)return c}else for(var et=re._cachedValues[be],lt=0;lt<et.length;lt++)if(j=et[lt],ee=j+Ae.dvalue,Z>=j&&Z<ee)return c}}return Z},y.locateBreaks=function(Z,re){var ne,j,ee,ie,fe=[];if(!y.rangebreaks)return fe;var be=y.rangebreaks.slice().sort(function(ce,ze){return ce.pattern===m&&ze.pattern===E?-1:ze.pattern===m&&ce.pattern===E?1:0}),Ae=function(ce,ze){if(ce=A.constrain(ce,Z,re),ze=A.constrain(ze,Z,re),ce!==ze){for(var tt=!0,nt=0;nt<fe.length;nt++){var Qe=fe[nt];ce<Qe.max&&ze>=Qe.min&&(ce<Qe.min&&(Qe.min=ce),ze>Qe.max&&(Qe.max=ze),tt=!1)}tt&&fe.push({min:ce,max:ze})}};for(ne=0;ne<be.length;ne++){var Be=be[ne];if(Be.enabled)if(Be.bounds){var Ie=Z,Ze=re;Be.pattern&&(Ie=Math.floor(Ie)),j=A.simpleMap(Be.bounds,Be.pattern?t:y.r2l),ee=j[0],ie=j[1];var at=new Date(Ie),it,et;switch(Be.pattern){case m:et=v,it=((ie<ee?7:0)+(ie-ee))*p,Ie+=ee*p-(at.getUTCDay()*p+at.getUTCHours()*T+at.getUTCMinutes()*l+at.getUTCSeconds()*_+at.getUTCMilliseconds());break;case E:et=p,it=((ie<ee?24:0)+(ie-ee))*T,Ie+=ee*T-(at.getUTCHours()*T+at.getUTCMinutes()*l+at.getUTCSeconds()*_+at.getUTCMilliseconds());break;default:Ie=Math.min(j[0],j[1]),Ze=Math.max(j[0],j[1]),et=Ze-Ie,it=et}for(var lt=Ie;lt<Ze;lt+=et)Ae(lt,lt+it)}else for(var Me=A.simpleMap(Be.values,y.d2c),ge=0;ge<Me.length;ge++)ee=Me[ge],ie=ee+Be.dvalue,Ae(ee,ie)}return fe.sort(function(ce,ze){return ce.min-ze.min}),fe},y.makeCalcdata=function(Z,re,ne){var j,ee,ie,fe,be=y.type,Ae=be==="date"&&Z[re+"calendar"];if(re in Z){if(j=Z[re],fe=Z._length||A.minRowLength(j),A.isTypedArray(j)&&(be==="linear"||be==="log")){if(fe===j.length)return j;if(j.subarray)return j.subarray(0,fe)}if(be==="multicategory")return N(j,fe);for(ee=new Array(fe),ie=0;ie<fe;ie++)ee[ie]=y.d2c(j[ie],0,Ae,ne)}else{var Be=re+"0"in Z?y.d2c(Z[re+"0"],0,Ae):0,Ie=Z["d"+re]?Number(Z["d"+re]):1;for(j=Z[{x:"y",y:"x"}[re]],fe=Z._length||j.length,ee=new Array(fe),ie=0;ie<fe;ie++)ee[ie]=Be+ie*Ie}if(y.rangebreaks)for(ie=0;ie<fe;ie++)ee[ie]=y.maskBreaks(ee[ie]);return ee},y.isValidRange=function(Z,re){return Array.isArray(Z)&&Z.length===2&&(re&&Z[0]===null||e(y.r2l(Z[0])))&&(re&&Z[1]===null||e(y.r2l(Z[1])))},y.getAutorangeDflt=function(Z,re){var ne=!y.isValidRange(Z,"nullOk");return ne&&re&&re.reverseDflt?ne="reversed":Z&&(Z[0]===null&&Z[1]===null?ne=!0:Z[0]===null&&Z[1]!==null?ne="min":Z[0]!==null&&Z[1]===null&&(ne="max")),ne},y.isReversed=function(){var Z=y.autorange;return Z==="reversed"||Z==="min reversed"||Z==="max reversed"},y.isPtWithinRange=function(Z,re){var ne=y.c2l(Z[L],null,re),j=y.r2l(y.range[0]),ee=y.r2l(y.range[1]);return j<ee?j<=ne&&ne<=ee:ee<=ne&&ne<=j},y._emptyCategories=function(){y._categories=[],y._categoriesMap={}},y.clearCalc=function(){var Z=y._matchGroup;if(Z){var re=null,ne=null;for(var j in Z){var ee=f[w.id2name(j)];if(ee._categories){re=ee._categories,ne=ee._categoriesMap;break}}re&&ne?(y._categories=re,y._categoriesMap=ne):y._emptyCategories()}else y._emptyCategories();if(y._initialCategories)for(var ie=0;ie<y._initialCategories.length;ie++)I(y._initialCategories[ie])},y.sortByInitialCategories=function(){var Z=[];if(y._emptyCategories(),y._initialCategories)for(var re=0;re<y._initialCategories.length;re++)I(y._initialCategories[re]);Z=Z.concat(y._traceIndices);var ne=y._matchGroup;for(var j in ne)if(P!==j){var ee=f[w.id2name(j)];ee._categories=y._categories,ee._categoriesMap=y._categoriesMap,Z=Z.concat(ee._traceIndices)}return Z};var J=f._d3locale;y.type==="date"&&(y._dateFormat=J?J.timeFormat:x,y._extraFormat=f._extraFormat),y._separators=f.separators,y._numFormat=J?J.numberFormat:M,delete y._minDtick,delete y._forceTick0}}}),r1=Ye({"src/plots/cartesian/axis_autotype.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=x.isArrayOrTypedArray,e=x.isDateTime,t=x.cleanNumber,r=Math.round;H.exports=function(v,p,T){var l=v,_=T.noMultiCategory;if(M(l)&&!l.length)return"-";if(!_&&c(l))return"multicategory";if(_&&Array.isArray(l[0])){for(var w=[],S=0;S<l.length;S++)if(M(l[S]))for(var E=0;E<l[S].length;E++)w.push(l[S][E]);l=w}if(i(l,p))return"date";var m=T.autotypenumbers!=="strict";return s(l,m)?"category":a(l,m)?"linear":"-"};function o(h,v){return v?g(h):typeof h=="number"}function a(h,v){for(var p=h.length,T=0;T<p;T++)if(o(h[T],v))return!0;return!1}function i(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;S<p;S+=T){var E=r(S),m=h[E],b=String(m);w[b]||(w[b]=1,e(m,v)&&l++,g(m)&&_++)}return l>_*2}function n(h){return Math.max(1,(h-1)/1e3)}function s(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;S<p;S+=T){var E=r(S),m=h[E],b=String(m);if(!w[b]){w[b]=1;var d=typeof m;d==="boolean"?_++:(v?t(m)!==A:d==="number")?l++:d==="string"&&_++}}return _>l*2}function c(h){return M(h[0])&&M(h[1])}}}),Yd=Ye({"src/plots/cartesian/autorange.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=ks().FP_SAFE,e=Hn(),t=Bo(),r=Xc(),o=r.getFromId,a=r.isLinked;H.exports={applyAutorangeOptions:y,getAutoRange:i,makePadFn:s,doAutoRange:p,findExtremes:T,concatExtremes:v};function i(f,P){var L,z,F=[],B=f._fullLayout,O=s(B,P,0),I=s(B,P,1),N=v(f,P),U=N.min,W=N.max;if(U.length===0||W.length===0)return A.simpleMap(P.range,P.r2l);var Q=U[0].val,ue=W[0].val;for(L=1;L<U.length&&Q===ue;L++)Q=Math.min(Q,U[L].val);for(L=1;L<W.length&&Q===ue;L++)ue=Math.max(ue,W[L].val);var se=P.autorange,he=se==="reversed"||se==="min reversed"||se==="max reversed";if(!he&&P.range){var G=A.simpleMap(P.range,P.r2l);he=G[1]<G[0]}P.autorange==="reversed"&&(P.autorange=!0);var $=P.rangemode,J=$==="tozero",Z=$==="nonnegative",re=P._length,ne=re/10,j=0,ee,ie,fe,be,Ae,Be;for(L=0;L<U.length;L++)for(ee=U[L],z=0;z<W.length;z++)ie=W[z],Be=ie.val-ee.val-n(P,ee.val,ie.val),Be>0&&(Ae=re-O(ee)-I(ie),Ae>ne?Be/Ae>j&&(fe=ee,be=ie,j=Be/Ae):Be/re>j&&(fe={val:ee.val,nopad:1},be={val:ie.val,nopad:1},j=Be/re));function Ie(lt,Me){return Math.max(lt,I(Me))}if(Q===ue){var Ze=Q-1,at=Q+1;if(J)if(Q===0)F=[0,1];else{var it=(Q>0?W:U).reduce(Ie,0),et=Q/(1-Math.min(.5,it/re));F=Q>0?[0,et]:[et,0]}else Z?F=[Math.max(0,Ze),Math.max(1,at)]:F=[Ze,at]}else J?(fe.val>=0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:0,nopad:1})):Z&&(fe.val-j*O(fe)<0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:1,nopad:1})),j=(be.val-fe.val-n(P,ee.val,ie.val))/(re-O(fe)-I(be)),F=[fe.val-j*O(fe),be.val+j*I(be)];return F=y(F,P),P.limitRange&&P.limitRange(),he&&F.reverse(),A.simpleMap(F,P.l2r||Number)}function n(f,P,L){var z=0;if(f.rangebreaks)for(var F=f.locateBreaks(P,L),B=0;B<F.length;B++){var O=F[B];z+=O.max-O.min}return z}function s(f,P,L){var z=.05*P._length,F=P._anchorAxis||{};if((P.ticklabelposition||"").indexOf("inside")!==-1||(F.ticklabelposition||"").indexOf("inside")!==-1){var B=P.isReversed();if(!B){var O=A.simpleMap(P.range,P.r2l);B=O[1]<O[0]}B&&(L=!L)}var I=0;return a(f,P._id)||(I=h(f,P,L)),z=Math.max(I,z),P.constrain==="domain"&&P._inputDomain&&(z*=(P._inputDomain[1]-P._inputDomain[0])/(P.domain[1]-P.domain[0])),function(U){return U.nopad?0:U.pad+(U.extrapad?z:I)}}var c=3;function h(f,P,L){var z=0,F=P._id.charAt(0)==="x";for(var B in f._plots){var O=f._plots[B];if(!(P._id!==O.xaxis._id&&P._id!==O.yaxis._id)){var I=(F?O.yaxis:O.xaxis)||{};if((I.ticklabelposition||"").indexOf("inside")!==-1&&(!L&&(I.side==="left"||I.side==="bottom")||L&&(I.side==="top"||I.side==="right"))){if(I._vals){var N=A.deg2rad(I._tickAngles[I._id+"tick"]||0),U=Math.abs(Math.cos(N)),W=Math.abs(Math.sin(N));if(!I._vals[0].bb){var Q=I._id+"tick",ue=I._selections[Q];ue.each(function(Z){var re=g.select(this),ne=re.select(".text-math-group");ne.empty()&&(Z.bb=t.bBox(re.node()))})}for(var se=0;se<I._vals.length;se++){var he=I._vals[se],G=he.bb;if(G){var $=2*c+G.width,J=2*c+G.height;z=Math.max(z,F?Math.max($*U,J*W):Math.max(J*U,$*W))}}}I.ticks==="inside"&&I.ticklabelposition==="inside"&&(z+=I.ticklen||0)}}}return z}function v(f,P,L){var z=P._id,F=f._fullData,B=f._fullLayout,O=[],I=[],N,U,W;function Q($,J){for(N=0;N<J.length;N++){var Z=$[J[N]],re=(Z._extremes||{})[z];if(Z.visible===!0&&re){for(U=0;U<re.min.length;U++)W=re.min[U],l(O,W.val,W.pad,{extrapad:W.extrapad});for(U=0;U<re.max.length;U++)W=re.max[U],_(I,W.val,W.pad,{extrapad:W.extrapad})}}}if(Q(F,P._traceIndices),Q(B.annotations||[],P._annIndices||[]),Q(B.shapes||[],P._shapeIndices||[]),P._matchGroup&&!L){for(var ue in P._matchGroup)if(ue!==P._id){var se=o(f,ue),he=v(f,se,!0),G=P._length/se._length;for(U=0;U<he.min.length;U++)W=he.min[U],l(O,W.val,W.pad*G,{extrapad:W.extrapad});for(U=0;U<he.max.length;U++)W=he.max[U],_(I,W.val,W.pad*G,{extrapad:W.extrapad})}}return{min:O,max:I}}function p(f,P,L){if(P.setScale(),P.autorange){P.range=L?L.slice():i(f,P),P._r=P.range.slice(),P._rl=A.simpleMap(P._r,P.r2l);var z=P._input,F={};F[P._attr+".range"]=P.range,F[P._attr+".autorange"]=P.autorange,e.call("_storeDirectGUIEdit",f.layout,f._fullLayout._preGUI,F),z.range=P.range.slice(),z.autorange=P.autorange}var B=P._anchorAxis;if(B&&B.rangeslider){var O=B.rangeslider[P._name];O&&O.rangemode==="auto"&&(O.range=i(f,P)),B._input.rangeslider[P._name]=A.extendFlat({},O)}}function T(f,P,L){L||(L={}),f._m||f.setScale();var z=[],F=[],B=P.length,O=L.padded||!1,I=L.tozero&&(f.type==="linear"||f.type==="-"),N=f.type==="log",U=!1,W=L.vpadLinearized||!1,Q,ue,se,he,G,$,J,Z,re;function ne(Ie){if(Array.isArray(Ie))return U=!0,function(at){return Math.max(Number(Ie[at]||0),0)};var Ze=Math.max(Number(Ie||0),0);return function(){return Ze}}var j=ne((f._m>0?L.ppadplus:L.ppadminus)||L.ppad||0),ee=ne((f._m>0?L.ppadminus:L.ppadplus)||L.ppad||0),ie=ne(L.vpadplus||L.vpad),fe=ne(L.vpadminus||L.vpad);if(!U){if(Z=1/0,re=-1/0,N)for(Q=0;Q<B;Q++)ue=P[Q],ue<Z&&ue>0&&(Z=ue),ue>re&&ue<M&&(re=ue);else for(Q=0;Q<B;Q++)ue=P[Q],ue<Z&&ue>-M&&(Z=ue),ue>re&&ue<M&&(re=ue);P=[Z,re],B=2}var be={tozero:I,extrapad:O};function Ae(Ie){se=P[Ie],x(se)&&($=j(Ie),J=ee(Ie),W?(he=f.c2l(se)-fe(Ie),G=f.c2l(se)+ie(Ie)):(Z=se-fe(Ie),re=se+ie(Ie),N&&Z<re/10&&(Z=re/10),he=f.c2l(Z),G=f.c2l(re)),I&&(he=Math.min(0,he),G=Math.max(0,G)),S(he)&&l(z,he,J,be),S(G)&&_(F,G,$,be))}var Be=Math.min(6,B);for(Q=0;Q<Be;Q++)Ae(Q);for(Q=B-1;Q>=Be;Q--)Ae(Q);return{min:z,max:F,opts:L}}function l(f,P,L,z){w(f,P,L,z,E)}function _(f,P,L,z){w(f,P,L,z,m)}function w(f,P,L,z,F){for(var B=z.tozero,O=z.extrapad,I=!0,N=0;N<f.length&&I;N++){var U=f[N];if(F(U.val,P)&&U.pad>=L&&(U.extrapad||!O)){I=!1;break}else F(P,U.val)&&U.pad<=L&&(O||!U.extrapad)&&(f.splice(N,1),N--)}if(I){var W=B&&P===0;f.push({val:P,pad:W?0:L,extrapad:W?!1:O})}}function S(f){return x(f)&&Math.abs(f)<M}function E(f,P){return f<=P}function m(f,P){return f>=P}function b(f,P){var L=P.autorangeoptions;return L&&L.minallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.minallowed:L&&L.clipmin!==void 0&&u(P,L.clipmin,L.clipmax)?Math.max(f,P.d2l(L.clipmin)):f}function d(f,P){var L=P.autorangeoptions;return L&&L.maxallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.maxallowed:L&&L.clipmax!==void 0&&u(P,L.clipmin,L.clipmax)?Math.min(f,P.d2l(L.clipmax)):f}function u(f,P,L){return P!==void 0&&L!==void 0?(P=f.d2l(P),L=f.d2l(L),P<L):!0}function y(f,P){if(!P||!P.autorangeoptions)return f;var L=f[0],z=f[1],F=P.autorangeoptions.include;if(F!==void 0){var B=P.d2l(L),O=P.d2l(z);A.isArrayOrTypedArray(F)||(F=[F]);for(var I=0;I<F.length;I++){var N=P.d2l(F[I]);B>=N&&(B=N,L=N),O<=N&&(O=N,z=N)}}return L=b(L,P),z=d(z,P),[L,z]}}}),Co=Ye({"src/plots/cartesian/axes.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=jl(),o=Xg(),a=Fn(),i=Bo(),n=Vh(),s=sS(),c=ks(),h=c.ONEMAXYEAR,v=c.ONEAVGYEAR,p=c.ONEMINYEAR,T=c.ONEMAXQUARTER,l=c.ONEAVGQUARTER,_=c.ONEMINQUARTER,w=c.ONEMAXMONTH,S=c.ONEAVGMONTH,E=c.ONEMINMONTH,m=c.ONEWEEK,b=c.ONEDAY,d=b/2,u=c.ONEHOUR,y=c.ONEMIN,f=c.ONESEC,P=c.ONEMILLI,L=c.ONEMICROSEC,z=c.MINUS_SIGN,F=c.BADNUM,B={K:"zeroline"},O={K:"gridline",L:"path"},I={K:"minor-gridline",L:"path"},N={K:"tick",L:"path"},U={K:"tick",L:"text"},W={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Q=oh(),ue=Q.MID_SHIFT,se=Q.CAP_SHIFT,he=Q.LINE_SPACING,G=Q.OPPOSITE_SIDE,$=3,J=H.exports={};J.setConvert=wv();var Z=r1(),re=Xc(),ne=re.idSort,j=re.isLinked;J.id2name=re.id2name,J.name2id=re.name2id,J.cleanId=re.cleanId,J.list=re.list,J.listIds=re.listIds,J.getFromId=re.getFromId,J.getFromTrace=re.getFromTrace;var ee=Yd();J.getAutoRange=ee.getAutoRange,J.findExtremes=ee.findExtremes;var ie=1e-4;function fe(mt){var gt=(mt[1]-mt[0])*ie;return[mt[0]-gt,mt[1]+gt]}J.coerceRef=function(mt,gt,Er,kr,br,Tr){var Mr=kr.charAt(kr.length-1),Fr=Er._fullLayout._subplots[Mr+"axis"],Lr=kr+"ref",Jr={};return br||(br=Fr[0]||(typeof Tr=="string"?Tr:Tr[0])),Tr||(Tr=br),Fr=Fr.concat(Fr.map(function(oa){return oa+" domain"})),Jr[Lr]={valType:"enumerated",values:Fr.concat(Tr?typeof Tr=="string"?[Tr]:Tr:[]),dflt:br},e.coerce(mt,gt,Jr,Lr)},J.getRefType=function(mt){return mt===void 0?mt:mt==="paper"?"paper":mt==="pixel"?"pixel":/( domain)$/.test(mt)?"domain":"range"},J.coercePosition=function(mt,gt,Er,kr,br,Tr){var Mr,Fr,Lr=J.getRefType(kr);if(Lr!=="range")Mr=e.ensureNumber,Fr=Er(br,Tr);else{var Jr=J.getFromId(gt,kr);Tr=Jr.fraction2r(Tr),Fr=Er(br,Tr),Mr=Jr.cleanPos}mt[br]=Mr(Fr)},J.cleanPosition=function(mt,gt,Er){var kr=Er==="paper"||Er==="pixel"?e.ensureNumber:J.getFromId(gt,Er).cleanPos;return kr(mt)},J.redrawComponents=function(mt,gt){gt=gt||J.listIds(mt);var Er=mt._fullLayout;function kr(br,Tr,Mr,Fr){for(var Lr=M.getComponentMethod(br,Tr),Jr={},oa=0;oa<gt.length;oa++)for(var ca=Er[J.id2name(gt[oa])],kt=ca[Mr],ir=0;ir<kt.length;ir++){var mr=kt[ir];if(!Jr[mr]&&(Lr(mt,mr),Jr[mr]=1,Fr))return}}kr("annotations","drawOne","_annIndices"),kr("shapes","drawOne","_shapeIndices"),kr("images","draw","_imgIndices",!0),kr("selections","drawOne","_selectionIndices")};var be=J.getDataConversions=function(mt,gt,Er,kr){var br,Tr=Er==="x"||Er==="y"||Er==="z"?Er:kr;if(e.isArrayOrTypedArray(Tr)){if(br={type:Z(kr,void 0,{autotypenumbers:mt._fullLayout.autotypenumbers}),_categories:[]},J.setConvert(br),br.type==="category")for(var Mr=0;Mr<kr.length;Mr++)br.d2c(kr[Mr])}else br=J.getFromTrace(mt,gt,Tr);return br?{d2c:br.d2c,c2d:br.c2d}:Tr==="ids"?{d2c:Be,c2d:Be}:{d2c:Ae,c2d:Ae}};function Ae(mt){return+mt}function Be(mt){return String(mt)}J.getDataToCoordFunc=function(mt,gt,Er,kr){return be(mt,gt,Er,kr).d2c},J.counterLetter=function(mt){var gt=mt.charAt(0);if(gt==="x")return"y";if(gt==="y")return"x"},J.minDtick=function(mt,gt,Er,kr){["log","category","multicategory"].indexOf(mt.type)!==-1||!kr?mt._minDtick=0:mt._minDtick===void 0?(mt._minDtick=gt,mt._forceTick0=Er):mt._minDtick&&((mt._minDtick/gt+1e-6)%1<2e-6&&((Er-mt._forceTick0)/gt%1+1.000001)%1<2e-6?(mt._minDtick=gt,mt._forceTick0=Er):((gt/mt._minDtick+1e-6)%1>2e-6||((Er-mt._forceTick0)/mt._minDtick%1+1.000001)%1>2e-6)&&(mt._minDtick=0))},J.saveRangeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br=0;br<Er.length;br++){var Tr=Er[br],Mr=Tr._rangeInitial0===void 0&&Tr._rangeInitial1===void 0,Fr=Mr||Tr.range[0]!==Tr._rangeInitial0||Tr.range[1]!==Tr._rangeInitial1,Lr=Tr.autorange;(Mr&&Lr!==!0||gt&&Fr)&&(Tr._rangeInitial0=Lr==="min"||Lr==="max reversed"?void 0:Tr.range[0],Tr._rangeInitial1=Lr==="max"||Lr==="min reversed"?void 0:Tr.range[1],Tr._autorangeInitial=Lr,kr=!0)}return kr},J.saveShowSpikeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br="on",Tr=0;Tr<Er.length;Tr++){var Mr=Er[Tr],Fr=Mr._showSpikeInitial===void 0,Lr=Fr||Mr.showspikes!==Mr._showspikes;(Fr||gt&&Lr)&&(Mr._showSpikeInitial=Mr.showspikes,kr=!0),br==="on"&&!Mr.showspikes&&(br="off")}return mt._fullLayout._cartesianSpikesEnabled=br,kr},J.autoBin=function(mt,gt,Er,kr,br,Tr){var Mr=e.aggNums(Math.min,null,mt),Fr=e.aggNums(Math.max,null,mt);if(gt.type==="category"||gt.type==="multicategory")return{start:Mr-.5,end:Fr+.5,size:Math.max(1,Math.round(Tr)||1),_dataSpan:Fr-Mr};br||(br=gt.calendar);var Lr;if(gt.type==="log"?Lr={type:"linear",range:[Mr,Fr]}:Lr={type:gt.type,range:e.simpleMap([Mr,Fr],gt.c2r,0,br),calendar:br},J.setConvert(Lr),Tr=Tr&&s.dtick(Tr,Lr.type),Tr)Lr.dtick=Tr,Lr.tick0=s.tick0(void 0,Lr.type,br);else{var Jr;if(Er)Jr=(Fr-Mr)/Er;else{var oa=e.distinctVals(mt),ca=Math.pow(10,Math.floor(Math.log(oa.minDiff)/Math.LN10)),kt=ca*e.roundUp(oa.minDiff/ca,[.9,1.9,4.9,9.9],!0);Jr=Math.max(kt,2*e.stdev(mt)/Math.pow(mt.length,kr?.25:.4)),x(Jr)||(Jr=1)}J.autoTicks(Lr,Jr)}var ir=Lr.dtick,mr=J.tickIncrement(J.tickFirst(Lr),ir,"reverse",br),$r,ma;if(typeof ir=="number")mr=Ie(mr,mt,Lr,Mr,Fr),ma=1+Math.floor((Fr-mr)/ir),$r=mr+ma*ir;else for(Lr.dtick.charAt(0)==="M"&&(mr=Ze(mr,mt,ir,Mr,br)),$r=mr,ma=0;$r<=Fr;)$r=J.tickIncrement($r,ir,!1,br),ma++;return{start:gt.c2r(mr,0,br),end:gt.c2r($r,0,br),size:ir,_dataSpan:Fr-Mr}};function Ie(mt,gt,Er,kr,br){var Tr=0,Mr=0,Fr=0,Lr=0;function Jr(ir){return(1+(ir-mt)*100/Er.dtick)%100<2}for(var oa=0;oa<gt.length;oa++)gt[oa]%1===0?Fr++:x(gt[oa])||Lr++,Jr(gt[oa])&&Tr++,Jr(gt[oa]+Er.dtick/2)&&Mr++;var ca=gt.length-Lr;if(Fr===ca&&Er.type!=="date")Er.dtick<1?mt=kr-.5*Er.dtick:(mt-=.5,mt+Er.dtick<kr&&(mt+=Er.dtick));else if(Mr<ca*.1&&(Tr>ca*.3||Jr(kr)||Jr(br))){var kt=Er.dtick/2;mt+=mt+kt<kr?kt:-kt}return mt}function Ze(mt,gt,Er,kr,br){var Tr=e.findExactDates(gt,br),Mr=.8;if(Tr.exactDays>Mr){var Fr=Number(Er.substr(1));Tr.exactYears>Mr&&Fr%12===0?mt=J.tickIncrement(mt,"M6","reverse")+b*1.5:Tr.exactMonths>Mr?mt=J.tickIncrement(mt,"M1","reverse")+b*15.5:mt-=d;var Lr=J.tickIncrement(mt,Er);if(Lr<=kr)return Lr}return mt}J.prepMinorTicks=function(mt,gt,Er){if(!gt.minor.dtick){delete mt.dtick;var kr=gt.dtick&&x(gt._tmin),br;if(kr){var Tr=J.tickIncrement(gt._tmin,gt.dtick,!0);br=[gt._tmin,Tr*.99+gt._tmin*.01]}else{var Mr=e.simpleMap(gt.range,gt.r2l);br=[Mr[0],.8*Mr[0]+.2*Mr[1]]}if(mt.range=e.simpleMap(br,gt.l2r),mt._isMinor=!0,J.prepTicks(mt,Er),kr){var Fr=x(gt.dtick),Lr=x(mt.dtick),Jr=Fr?gt.dtick:+gt.dtick.substring(1),oa=Lr?mt.dtick:+mt.dtick.substring(1);Fr&&Lr?at(Jr,oa)?Jr===2*m&&oa===2*b&&(mt.dtick=m):Jr===2*m&&oa===3*b?mt.dtick=m:Jr===m&&!(gt._input.minor||{}).nticks?mt.dtick=b:it(Jr/oa,2.5)?mt.dtick=Jr/2:mt.dtick=Jr:String(gt.dtick).charAt(0)==="M"?Lr?mt.dtick="M1":at(Jr,oa)?Jr>=12&&oa===2&&(mt.dtick="M3"):mt.dtick=gt.dtick:String(mt.dtick).charAt(0)==="L"?String(gt.dtick).charAt(0)==="L"?at(Jr,oa)||(mt.dtick=it(Jr/oa,2.5)?gt.dtick/2:gt.dtick):mt.dtick="D1":mt.dtick==="D2"&&+gt.dtick>1&&(mt.dtick=1)}mt.range=gt.range}gt.minor._tick0Init===void 0&&(mt.tick0=gt.tick0)};function at(mt,gt){return Math.abs((mt/gt+.5)%1-.5)<.001}function it(mt,gt){return Math.abs(mt/gt-1)<.001}J.prepTicks=function(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l,void 0,void 0,gt);if(mt.tickmode==="auto"||!mt.dtick){var kr=mt.nticks,br;kr||(mt.type==="category"||mt.type==="multicategory"?(br=mt.tickfont?e.bigFont(mt.tickfont.size||12):15,kr=mt._length/br):(br=mt._id.charAt(0)==="y"?40:80,kr=e.constrain(mt._length/br,4,9)+1),mt._name==="radialaxis"&&(kr*=2)),mt.minor&&mt.minor.tickmode!=="array"||mt.tickmode==="array"&&(kr*=100),mt._roughDTick=Math.abs(Er[1]-Er[0])/kr,J.autoTicks(mt,mt._roughDTick),mt._minDtick>0&&mt.dtick<mt._minDtick*2&&(mt.dtick=mt._minDtick,mt.tick0=mt.l2r(mt._forceTick0))}mt.ticklabelmode==="period"&&lt(mt),mt.tick0||(mt.tick0=mt.type==="date"?"2000-01-01":0),mt.type==="date"&&mt.dtick<.1&&(mt.dtick=.1),ar(mt)};function et(mt){return+mt.substring(1)}function lt(mt){var gt;function Er(){return!(x(mt.dtick)||mt.dtick.charAt(0)!=="M")}var kr=Er(),br=J.getTickFormat(mt);if(br){var Tr=mt._dtickInit!==mt.dtick;/%[fLQsSMX]/.test(br)||(/%[HI]/.test(br)?(gt=u,Tr&&!kr&&mt.dtick<u&&(mt.dtick=u)):/%p/.test(br)?(gt=d,Tr&&!kr&&mt.dtick<d&&(mt.dtick=d)):/%[Aadejuwx]/.test(br)?(gt=b,Tr&&!kr&&mt.dtick<b&&(mt.dtick=b)):/%[UVW]/.test(br)?(gt=m,Tr&&!kr&&mt.dtick<m&&(mt.dtick=m)):/%[Bbm]/.test(br)?(gt=S,Tr&&(kr?et(mt.dtick)<1:mt.dtick<E)&&(mt.dtick="M1")):/%[q]/.test(br)?(gt=l,Tr&&(kr?et(mt.dtick)<3:mt.dtick<_)&&(mt.dtick="M3")):/%[Yy]/.test(br)&&(gt=v,Tr&&(kr?et(mt.dtick)<12:mt.dtick<p)&&(mt.dtick="M12")))}kr=Er(),kr&&mt.tick0===mt._dowTick0&&(mt.tick0=mt._rawTick0),mt._definedDelta=gt}function Me(mt,gt,Er){for(var kr=0;kr<mt.length;kr++){var br=mt[kr].value,Tr=kr,Mr=kr+1;kr<mt.length-1?(Tr=kr,Mr=kr+1):kr>0?(Tr=kr-1,Mr=kr):(Tr=kr,Mr=kr);var Fr=mt[Tr].value,Lr=mt[Mr].value,Jr=Math.abs(Lr-Fr),oa=Er||Jr,ca=0;oa>=p?Jr>=p&&Jr<=h?ca=Jr:ca=v:Er===l&&oa>=_?Jr>=_&&Jr<=T?ca=Jr:ca=l:oa>=E?Jr>=E&&Jr<=w?ca=Jr:ca=S:Er===m&&oa>=m?ca=m:oa>=b?ca=b:Er===d&&oa>=d?ca=d:Er===u&&oa>=u&&(ca=u);var kt;ca>=Jr&&(ca=Jr,kt=!0);var ir=br+ca;if(gt.rangebreaks&&ca>0){for(var mr=84,$r=0,ma=0;ma<mr;ma++){var Ba=(ma+.5)/mr;gt.maskBreaks(br*(1-Ba)+Ba*ir)!==F&&$r++}ca*=$r/mr,ca||(mt[kr].drop=!0),kt&&Jr>m&&(ca=Jr)}(ca>0||kr===0)&&(mt[kr].periodX=br+ca/2)}}J.calcTicks=function(gt,Er){for(var kr=gt.type,br=gt.calendar,Tr=gt.ticklabelstep,Mr=gt.ticklabelmode==="period",Fr=gt.range[0]>gt.range[1],Lr=!gt.ticklabelindex||e.isArrayOrTypedArray(gt.ticklabelindex)?gt.ticklabelindex:[gt.ticklabelindex],Jr=e.simpleMap(gt.range,gt.r2l,void 0,void 0,Er),oa=Jr[1]<Jr[0],ca=Math.min(Jr[0],Jr[1]),kt=Math.max(Jr[0],Jr[1]),ir=Math.max(1e3,gt._length||0),mr=[],$r=[],ma=[],Ba=[],Ca=[],da=gt.minor&&(gt.minor.ticks||gt.minor.showgrid),Sa=1;Sa>=(da?0:1);Sa--){var Ti=!Sa;Sa?(gt._dtickInit=gt.dtick,gt._tick0Init=gt.tick0):(gt.minor._dtickInit=gt.minor.dtick,gt.minor._tick0Init=gt.minor.tick0);var ai=Sa?gt:e.extendFlat({},gt,gt.minor);if(Ti?J.prepMinorTicks(ai,gt,Er):J.prepTicks(ai,Er),ai.tickmode==="array"){Sa?(ma=[],mr=ze(gt,!Ti)):(Ba=[],$r=ze(gt,!Ti));continue}if(ai.tickmode==="sync"){ma=[],mr=ce(gt);continue}var an=fe(Jr),sn=an[0],Mn=an[1],On=x(ai.dtick),$n=kr==="log"&&!(On||ai.dtick.charAt(0)==="L"),Cn=J.tickFirst(ai,Er);if(Sa){if(gt._tmin=Cn,Cn<sn!==oa)break;(kr==="category"||kr==="multicategory")&&(Mn=oa?Math.max(-.5,Mn):Math.min(gt._categories.length-.5,Mn))}var Lo=null,Xi=Cn,Jo;if(Sa){var zo;On?zo=gt.dtick:kr==="date"?typeof gt.dtick=="string"&&gt.dtick.charAt(0)==="M"&&(zo=S*gt.dtick.substring(1)):zo=gt._roughDTick,Jo=Math.round((gt.r2l(Xi)-gt.r2l(gt.tick0))/zo)-1}var as=ai.dtick;for(ai.rangebreaks&&ai._tick0Init!==ai.tick0&&(Xi=Xr(Xi,gt),oa||(Xi=J.tickIncrement(Xi,as,!oa,br))),Sa&&Mr&&(Xi=J.tickIncrement(Xi,as,!oa,br),Jo--);oa?Xi>=Mn:Xi<=Mn;Xi=J.tickIncrement(Xi,as,oa,br)){if(Sa&&Jo++,ai.rangebreaks&&!oa){if(Xi<sn)continue;if(ai.maskBreaks(Xi)===F&&Xr(Xi,ai)>=kt)break}if(ma.length>ir||Xi===Lo)break;Lo=Xi;var Pn={value:Xi};Sa?($n&&Xi!==(Xi|0)&&(Pn.simpleLabel=!0),Tr>1&&Jo%Tr&&(Pn.skipLabel=!0),ma.push(Pn)):(Pn.minor=!0,Ba.push(Pn))}}if(!Ba||Ba.length<2)Lr=!1;else{var go=(Ba[1].value-Ba[0].value)*(Fr?-1:1);$a(go,gt.tickformat)||(Lr=!1)}if(!Lr)Ca=ma;else{var In=ma.concat(Ba);Mr&&ma.length&&(In=In.slice(1)),In=In.sort(function(Yn,_s){return Yn.value-_s.value}).filter(function(Yn,_s,Yo){return _s===0||Yn.value!==Yo[_s-1].value});var Do=In.map(function(Yn,_s){return Yn.minor===void 0&&!Yn.skipLabel?_s:null}).filter(function(Yn){return Yn!==null});Do.forEach(function(Yn){Lr.map(function(_s){var Yo=Yn+_s;Yo>=0&&Yo<In.length&&e.pushUnique(Ca,In[Yo])})})}if(da){var Ho=gt.minor.ticks==="inside"&&gt.ticks==="outside"||gt.minor.ticks==="outside"&&gt.ticks==="inside";if(!Ho){for(var Qo=ma.map(function(Yn){return Yn.value}),Xn=[],po=0;po<Ba.length;po++){var ys=Ba[po],Is=ys.value;if(Qo.indexOf(Is)===-1){for(var Fs=!1,$o=0;!Fs&&$o<ma.length;$o++)1e7+ma[$o].value===1e7+Is&&(Fs=!0);Fs||Xn.push(ys)}}Ba=Xn}}Mr&&Me(Ca,gt,gt._definedDelta);var fi;if(gt.rangebreaks){var mn=gt._id.charAt(0)==="y",ol=1;gt.tickmode==="auto"&&(ol=gt.tickfont?gt.tickfont.size:12);var Os=NaN;for(fi=ma.length-1;fi>-1;fi--){if(ma[fi].drop){ma.splice(fi,1);continue}ma[fi].value=Xr(ma[fi].value,gt);var so=gt.c2p(ma[fi].value);(mn?Os>so-ol:Os<so+ol)?ma.splice(oa?fi+1:fi,1):Os=so}}pa(gt)&&Math.abs(Jr[1]-Jr[0])===360&&ma.pop(),gt._tmax=(ma[ma.length-1]||{}).value,gt._prevDateHead="",gt._inCalcTicks=!0;var Ns,fs=function(Yn){Yn.text="",gt._prevDateHead=Ns};ma=ma.concat(Ba);function al(Yn,_s){var Yo=J.tickText(Yn,_s.value,!1,_s.simpleLabel),Nn=_s.periodX;return Nn!==void 0&&(Yo.periodX=Nn,(Nn>kt||Nn<ca)&&(Nn>kt&&(Yo.periodX=kt),Nn<ca&&(Yo.periodX=ca),fs(Yo))),Yo}var vl;for(fi=0;fi<ma.length;fi++){var ji=ma[fi].minor,To=ma[fi].value;ji?(Lr&&Ca.indexOf(ma[fi])!==-1?vl=al(gt,ma[fi]):vl={x:To},vl.minor=!0,$r.push(vl)):(Ns=gt._prevDateHead,vl=al(gt,ma[fi]),(ma[fi].skipLabel||Lr&&Ca.indexOf(ma[fi])===-1)&&fs(vl),mr.push(vl))}return mr=mr.concat($r),gt._inCalcTicks=!1,Mr&&mr.length&&(mr[0].noTick=!0),mr};function ge(mt,gt){return mt.rangebreaks&&(gt=gt.filter(function(Er){return mt.maskBreaks(Er.x)!==F})),gt}function ce(mt){var gt=mt._mainAxis,Er=[];if(gt._vals){for(var kr=0;kr<gt._vals.length;kr++)if(!gt._vals[kr].noTick){var br=gt.l2p(gt._vals[kr].x),Tr=mt.p2l(br),Mr=J.tickText(mt,Tr);gt._vals[kr].minor&&(Mr.minor=!0,Mr.text=""),Er.push(Mr)}}return Er=ge(mt,Er),Er}function ze(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l),kr=fe(Er),br=Math.min(kr[0],kr[1]),Tr=Math.max(kr[0],kr[1]),Mr=mt.type==="category"?mt.d2l_noadd:mt.d2l;mt.type==="log"&&String(mt.dtick).charAt(0)!=="L"&&(mt.dtick="L"+Math.pow(10,Math.floor(Math.min(mt.range[0],mt.range[1]))-1));for(var Fr=[],Lr=0;Lr<=1;Lr++)if(!(gt!==void 0&&(gt&&Lr||gt===!1&&!Lr))&&!(Lr&&!mt.minor)){var Jr=Lr?mt.minor.tickvals:mt.tickvals,oa=Lr?[]:mt.ticktext;if(Jr){e.isArrayOrTypedArray(oa)||(oa=[]);for(var ca=0;ca<Jr.length;ca++){var kt=Mr(Jr[ca]);if(kt>br&&kt<Tr){var ir=J.tickText(mt,kt,!1,String(oa[ca]));Lr&&(ir.minor=!0,ir.text=""),Fr.push(ir)}}}}return Fr=ge(mt,Fr),Fr}var tt=[2,5,10],nt=[1,2,3,6,12],Qe=[1,2,5,10,15,30],Ct=[1,2,3,7,14],St=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],Ot=[-.301,0,.301,.699,1],jt=[15,30,45,90,180];function ur(mt,gt,Er){return gt*e.roundUp(mt/gt,Er)}J.autoTicks=function(mt,gt,Er){var kr;function br(ca){return Math.pow(ca,Math.floor(Math.log(gt)/Math.LN10))}if(mt.type==="date"){mt.tick0=e.dateTick0(mt.calendar,0);var Tr=2*gt;if(Tr>v)gt/=v,kr=br(10),mt.dtick="M"+12*ur(gt,kr,tt);else if(Tr>S)gt/=S,mt.dtick="M"+ur(gt,1,nt);else if(Tr>b){if(mt.dtick=ur(gt,b,mt._hasDayOfWeekBreaks?[1,2,7,14]:Ct),!Er){var Mr=J.getTickFormat(mt),Fr=mt.ticklabelmode==="period";Fr&&(mt._rawTick0=mt.tick0),/%[uVW]/.test(Mr)?mt.tick0=e.dateTick0(mt.calendar,2):mt.tick0=e.dateTick0(mt.calendar,1),Fr&&(mt._dowTick0=mt.tick0)}}else Tr>u?mt.dtick=ur(gt,u,nt):Tr>y?mt.dtick=ur(gt,y,Qe):Tr>f?mt.dtick=ur(gt,f,Qe):(kr=br(10),mt.dtick=ur(gt,kr,tt))}else if(mt.type==="log"){mt.tick0=0;var Lr=e.simpleMap(mt.range,mt.r2l);if(mt._isMinor&&(gt*=1.5),gt>.7)mt.dtick=Math.ceil(gt);else if(Math.abs(Lr[1]-Lr[0])<1){var Jr=1.5*Math.abs((Lr[1]-Lr[0])/gt);gt=Math.abs(Math.pow(10,Lr[1])-Math.pow(10,Lr[0]))/Jr,kr=br(10),mt.dtick="L"+ur(gt,kr,tt)}else mt.dtick=gt>.3?"D2":"D1"}else mt.type==="category"||mt.type==="multicategory"?(mt.tick0=0,mt.dtick=Math.ceil(Math.max(gt,1))):pa(mt)?(mt.tick0=0,kr=1,mt.dtick=ur(gt,kr,jt)):(mt.tick0=0,kr=br(10),mt.dtick=ur(gt,kr,tt));if(mt.dtick===0&&(mt.dtick=1),!x(mt.dtick)&&typeof mt.dtick!="string"){var oa=mt.dtick;throw mt.dtick=1,"ax.dtick error: "+String(oa)}};function ar(mt){var gt=mt.dtick;if(mt._tickexponent=0,!x(gt)&&typeof gt!="string"&&(gt=1),(mt.type==="category"||mt.type==="multicategory")&&(mt._tickround=null),mt.type==="date"){var Er=mt.r2l(mt.tick0),kr=mt.l2r(Er).replace(/(^-|i)/g,""),br=kr.length;if(String(gt).charAt(0)==="M")br>10||kr.substr(5)!=="01-01"?mt._tickround="d":mt._tickround=+gt.substr(1)%12===0?"y":"m";else if(gt>=b&&br<=10||gt>=b*15)mt._tickround="d";else if(gt>=y&&br<=16||gt>=u)mt._tickround="M";else if(gt>=f&&br<=19||gt>=y)mt._tickround="S";else{var Tr=mt.l2r(Er+gt).replace(/^-/,"").length;mt._tickround=Math.max(br,Tr)-20,mt._tickround<0&&(mt._tickround=4)}}else if(x(gt)||gt.charAt(0)==="L"){var Mr=mt.range.map(mt.r2d||Number);x(gt)||(gt=Number(gt.substr(1))),mt._tickround=2-Math.floor(Math.log(gt)/Math.LN10+.01);var Fr=Math.max(Math.abs(Mr[0]),Math.abs(Mr[1])),Lr=Math.floor(Math.log(Fr)/Math.LN10+.01),Jr=mt.minexponent===void 0?3:mt.minexponent;Math.abs(Lr)>Jr&&(ke(mt.exponentformat)&&!Te(Lr)?mt._tickexponent=3*Math.round((Lr-1)/3):mt._tickexponent=Lr)}else mt._tickround=null}J.tickIncrement=function(mt,gt,Er,kr){var br=Er?-1:1;if(x(gt))return e.increment(mt,br*gt);var Tr=gt.charAt(0),Mr=br*Number(gt.substr(1));if(Tr==="M")return e.incrementMonth(mt,Mr,kr);if(Tr==="L")return Math.log(Math.pow(10,mt)+Mr)/Math.LN10;if(Tr==="D"){var Fr=gt==="D2"?Ot:St,Lr=mt+br*.01,Jr=e.roundUp(e.mod(Lr,1),Fr,Er);return Math.floor(Lr)+Math.log(g.round(Math.pow(10,Jr),1))/Math.LN10}throw"unrecognized dtick "+String(gt)},J.tickFirst=function(mt,gt){var Er=mt.r2l||Number,kr=e.simpleMap(mt.range,Er,void 0,void 0,gt),br=kr[1]<kr[0],Tr=br?Math.floor:Math.ceil,Mr=fe(kr)[0],Fr=mt.dtick,Lr=Er(mt.tick0);if(x(Fr)){var Jr=Tr((Mr-Lr)/Fr)*Fr+Lr;return(mt.type==="category"||mt.type==="multicategory")&&(Jr=e.constrain(Jr,0,mt._categories.length-1)),Jr}var oa=Fr.charAt(0),ca=Number(Fr.substr(1));if(oa==="M"){for(var kt=0,ir=Lr,mr,$r,ma;kt<10;){if(mr=J.tickIncrement(ir,Fr,br,mt.calendar),(mr-Mr)*(ir-Mr)<=0)return br?Math.min(ir,mr):Math.max(ir,mr);$r=(Mr-(ir+mr)/2)/(mr-ir),ma=oa+(Math.abs(Math.round($r))||1)*ca,ir=J.tickIncrement(ir,ma,$r<0?!br:br,mt.calendar),kt++}return e.error("tickFirst did not converge",mt),ir}else{if(oa==="L")return Math.log(Tr((Math.pow(10,Mr)-Lr)/ca)*ca+Lr)/Math.LN10;if(oa==="D"){var Ba=Fr==="D2"?Ot:St,Ca=e.roundUp(e.mod(Mr,1),Ba,br);return Math.floor(Mr)+Math.log(g.round(Math.pow(10,Ca),1))/Math.LN10}else throw"unrecognized dtick "+String(Fr)}},J.tickText=function(mt,gt,Er,kr){var br=Cr(mt,gt),Tr=mt.tickmode==="array",Mr=Er||Tr,Fr=mt.type,Lr=Fr==="category"?mt.d2l_noadd:mt.d2l,Jr,oa=function(ma){var Ba=mt.l2p(ma);return Ba>=0&&Ba<=mt._length?ma:null};if(Tr&&e.isArrayOrTypedArray(mt.ticktext)){var ca=e.simpleMap(mt.range,mt.r2l),kt=(Math.abs(ca[1]-ca[0])-(mt._lBreaks||0))/1e4;for(Jr=0;Jr<mt.ticktext.length&&!(Math.abs(gt-Lr(mt.tickvals[Jr]))<kt);Jr++);if(Jr<mt.ticktext.length)return br.text=String(mt.ticktext[Jr]),br.xbnd=[oa(br.x-.5),oa(br.x+mt.dtick-.5)],br}function ir(ma){if(ma===void 0)return!0;if(Er)return ma==="none";var Ba={first:mt._tmin,last:mt._tmax}[ma];return ma!=="all"&&gt!==Ba}var mr=Er?"never":mt.exponentformat!=="none"&&ir(mt.showexponent)?"hide":"";if(Fr==="date"?vr(mt,br,Er,Mr):Fr==="log"?_r(mt,br,Er,Mr,mr):Fr==="category"?yt(mt,br):Fr==="multicategory"?Fe(mt,br,Er):pa(mt)?Ne(mt,br,Er,Mr,mr):Ke(mt,br,Er,Mr,mr),kr||(mt.tickprefix&&!ir(mt.showtickprefix)&&(br.text=mt.tickprefix+br.text),mt.ticksuffix&&!ir(mt.showticksuffix)&&(br.text+=mt.ticksuffix)),mt.labelalias&&mt.labelalias.hasOwnProperty(br.text)){var $r=mt.labelalias[br.text];typeof $r=="string"&&(br.text=$r)}return(mt.tickson==="boundaries"||mt.showdividers)&&(br.xbnd=[oa(br.x-.5),oa(br.x+mt.dtick-.5)]),br},J.hoverLabelText=function(mt,gt,Er){Er&&(mt=e.extendFlat({},mt,{hoverformat:Er}));var kr=e.isArrayOrTypedArray(gt)?gt[0]:gt,br=e.isArrayOrTypedArray(gt)?gt[1]:void 0;if(br!==void 0&&br!==kr)return J.hoverLabelText(mt,kr,Er)+" - "+J.hoverLabelText(mt,br,Er);var Tr=mt.type==="log"&&kr<=0,Mr=J.tickText(mt,mt.c2l(Tr?-kr:kr),"hover").text;return Tr?kr===0?"0":z+Mr:Mr};function Cr(mt,gt,Er){var kr=mt.tickfont||{};return{x:gt,dx:0,dy:0,text:Er||"",fontSize:kr.size,font:kr.family,fontWeight:kr.weight,fontStyle:kr.style,fontVariant:kr.variant,fontTextcase:kr.textcase,fontLineposition:kr.lineposition,fontShadow:kr.shadow,fontColor:kr.color}}function vr(mt,gt,Er,kr){var br=mt._tickround,Tr=Er&&mt.hoverformat||J.getTickFormat(mt);kr=!Tr&&kr,kr&&(x(br)?br=4:br={y:"m",m:"d",d:"M",M:"S",S:4}[br]);var Mr=e.formatDate(gt.x,Tr,br,mt._dateFormat,mt.calendar,mt._extraFormat),Fr,Lr=Mr.indexOf(`
`);if(Lr!==-1&&(Fr=Mr.substr(Lr+1),Mr=Mr.substr(0,Lr)),kr&&(Fr!==void 0&&(Mr==="00:00:00"||Mr==="00:00")?(Mr=Fr,Fr=""):Mr.length===8&&(Mr=Mr.replace(/:00$/,""))),Fr)if(Er)br==="d"?Mr+=", "+Fr:Mr=Fr+(Mr?", "+Mr:"");else if(!mt._inCalcTicks||mt._prevDateHead!==Fr)mt._prevDateHead=Fr,Mr+="<br>"+Fr;else{var Jr=Ea(mt),oa=mt._trueSide||mt.side;(!Jr&&oa==="top"||Jr&&oa==="bottom")&&(Mr+="<br> ")}gt.text=Mr}function _r(mt,gt,Er,kr,br){var Tr=mt.dtick,Mr=gt.x,Fr=mt.tickformat,Lr=typeof Tr=="string"&&Tr.charAt(0);if(br==="never"&&(br=""),kr&&Lr!=="L"&&(Tr="L3",Lr="L"),Fr||Lr==="L")gt.text=Le(Math.pow(10,Mr),mt,br,kr);else if(x(Tr)||Lr==="D"&&e.mod(Mr+.01,1)<.1){var Jr=Math.round(Mr),oa=Math.abs(Jr),ca=mt.exponentformat;ca==="power"||ke(ca)&&Te(Jr)?(Jr===0?gt.text=1:Jr===1?gt.text="10":gt.text="10<sup>"+(Jr>1?"":z)+oa+"</sup>",gt.fontSize*=1.25):(ca==="e"||ca==="E")&&oa>2?gt.text="1"+ca+(Jr>0?"+":z)+oa:(gt.text=Le(Math.pow(10,Mr),mt,"","fakehover"),Tr==="D1"&&mt._id.charAt(0)==="y"&&(gt.dy-=gt.fontSize/6))}else if(Lr==="D")gt.text=String(Math.round(Math.pow(10,e.mod(Mr,1)))),gt.fontSize*=.75;else throw"unrecognized dtick "+String(Tr);if(mt.dtick==="D1"){var kt=String(gt.text).charAt(0);(kt==="0"||kt==="1")&&(mt._id.charAt(0)==="y"?gt.dx-=gt.fontSize/4:(gt.dy+=gt.fontSize/2,gt.dx+=(mt.range[1]>mt.range[0]?1:-1)*gt.fontSize*(Mr<0?.5:.25)))}}function yt(mt,gt){var Er=mt._categories[Math.round(gt.x)];Er===void 0&&(Er=""),gt.text=String(Er)}function Fe(mt,gt,Er){var kr=Math.round(gt.x),br=mt._categories[kr]||[],Tr=br[1]===void 0?"":String(br[1]),Mr=br[0]===void 0?"":String(br[0]);Er?gt.text=Mr+" - "+Tr:(gt.text=Tr,gt.text2=Mr)}function Ke(mt,gt,Er,kr,br){br==="never"?br="":mt.showexponent==="all"&&Math.abs(gt.x/mt.dtick)<1e-6&&(br="hide"),gt.text=Le(gt.x,mt,br,kr)}function Ne(mt,gt,Er,kr,br){if(mt.thetaunit==="radians"&&!Er){var Tr=gt.x/180;if(Tr===0)gt.text="0";else{var Mr=Ee(Tr);if(Mr[1]>=100)gt.text=Le(e.deg2rad(gt.x),mt,br,kr);else{var Fr=gt.x<0;Mr[1]===1?Mr[0]===1?gt.text="\u03C0":gt.text=Mr[0]+"\u03C0":gt.text=["<sup>",Mr[0],"</sup>","\u2044","<sub>",Mr[1],"</sub>","\u03C0"].join(""),Fr&&(gt.text=z+gt.text)}}}else gt.text=Le(gt.x,mt,br,kr)}function Ee(mt){function gt(Fr,Lr){return Math.abs(Fr-Lr)<=1e-6}function Er(Fr,Lr){return gt(Lr,0)?Fr:Er(Lr,Fr%Lr)}function kr(Fr){for(var Lr=1;!gt(Math.round(Fr*Lr)/Lr,Fr);)Lr*=10;return Lr}var br=kr(mt),Tr=mt*br,Mr=Math.abs(Er(Tr,br));return[Math.round(Tr/Mr),Math.round(br/Mr)]}var Ve=["f","p","n","\u03BC","m","","k","M","G","T"];function ke(mt){return mt==="SI"||mt==="B"}function Te(mt){return mt>14||mt<-15}function Le(mt,gt,Er,kr){var br=mt<0,Tr=gt._tickround,Mr=Er||gt.exponentformat||"B",Fr=gt._tickexponent,Lr=J.getTickFormat(gt),Jr=gt.separatethousands;if(kr){var oa={exponentformat:Mr,minexponent:gt.minexponent,dtick:gt.showexponent==="none"?gt.dtick:x(mt)&&Math.abs(mt)||1,range:gt.showexponent==="none"?gt.range.map(gt.r2d):[0,mt||1]};ar(oa),Tr=(Number(oa._tickround)||0)+4,Fr=oa._tickexponent,gt.hoverformat&&(Lr=gt.hoverformat)}if(Lr)return gt._numFormat(Lr)(mt).replace(/-/g,z);var ca=Math.pow(10,-Tr)/2;if(Mr==="none"&&(Fr=0),mt=Math.abs(mt),mt<ca)mt="0",br=!1;else{if(mt+=ca,Fr&&(mt*=Math.pow(10,-Fr),Tr+=Fr),Tr===0)mt=String(Math.floor(mt));else if(Tr<0){mt=String(Math.round(mt)),mt=mt.substr(0,mt.length+Tr);for(var kt=Tr;kt<0;kt++)mt+="0"}else{mt=String(mt);var ir=mt.indexOf(".")+1;ir&&(mt=mt.substr(0,ir+Tr).replace(/\.?0+$/,""))}mt=e.numSeparate(mt,gt._separators,Jr)}if(Fr&&Mr!=="hide"){ke(Mr)&&Te(Fr)&&(Mr="power");var mr;Fr<0?mr=z+-Fr:Mr!=="power"?mr="+"+Fr:mr=String(Fr),Mr==="e"||Mr==="E"?mt+=Mr+mr:Mr==="power"?mt+="\xD710<sup>"+mr+"</sup>":Mr==="B"&&Fr===9?mt+="B":ke(Mr)&&(mt+=Ve[Fr/3+5])}return br?z+mt:mt}J.getTickFormat=function(mt){var gt;function Er(Lr){return typeof Lr!="string"?Lr:Number(Lr.replace("M",""))*S}function kr(Lr,Jr){var oa=["L","D"];if(typeof Lr==typeof Jr){if(typeof Lr=="number")return Lr-Jr;var ca=oa.indexOf(Lr.charAt(0)),kt=oa.indexOf(Jr.charAt(0));return ca===kt?Number(Lr.replace(/(L|D)/g,""))-Number(Jr.replace(/(L|D)/g,"")):ca-kt}else return typeof Lr=="number"?1:-1}function br(Lr,Jr,oa){var ca=oa||function(mr){return mr},kt=Jr[0],ir=Jr[1];return(!kt&&typeof kt!="number"||ca(kt)<=ca(Lr))&&(!ir&&typeof ir!="number"||ca(ir)>=ca(Lr))}function Tr(Lr,Jr){var oa=Jr[0]===null,ca=Jr[1]===null,kt=kr(Lr,Jr[0])>=0,ir=kr(Lr,Jr[1])<=0;return(oa||kt)&&(ca||ir)}var Mr,Fr;if(mt.tickformatstops&&mt.tickformatstops.length>0)switch(mt.type){case"date":case"linear":{for(gt=0;gt<mt.tickformatstops.length;gt++)if(Fr=mt.tickformatstops[gt],Fr.enabled&&br(mt.dtick,Fr.dtickrange,Er)){Mr=Fr;break}break}case"log":{for(gt=0;gt<mt.tickformatstops.length;gt++)if(Fr=mt.tickformatstops[gt],Fr.enabled&&Tr(mt.dtick,Fr.dtickrange)){Mr=Fr;break}break}default:}return Mr?Mr.value:mt.tickformat},J.getSubplots=function(mt,gt){var Er=mt._fullLayout._subplots,kr=Er.cartesian.concat(Er.gl2d||[]),br=gt?J.findSubplotsWithAxis(kr,gt):kr;return br.sort(function(Tr,Mr){var Fr=Tr.substr(1).split("y"),Lr=Mr.substr(1).split("y");return Fr[0]===Lr[0]?+Fr[1]-+Lr[1]:+Fr[0]-+Lr[0]}),br},J.findSubplotsWithAxis=function(mt,gt){for(var Er=new RegExp(gt._id.charAt(0)==="x"?"^"+gt._id+"y":gt._id+"$"),kr=[],br=0;br<mt.length;br++){var Tr=mt[br];Er.test(Tr)&&kr.push(Tr)}return kr},J.makeClipPaths=function(mt){var gt=mt._fullLayout;if(!gt._hasOnlyLargeSploms){var Er={_offset:0,_length:gt.width,_id:""},kr={_offset:0,_length:gt.height,_id:""},br=J.list(mt,"x",!0),Tr=J.list(mt,"y",!0),Mr=[],Fr,Lr;for(Fr=0;Fr<br.length;Fr++)for(Mr.push({x:br[Fr],y:kr}),Lr=0;Lr<Tr.length;Lr++)Fr===0&&Mr.push({x:Er,y:Tr[Lr]}),Mr.push({x:br[Fr],y:Tr[Lr]});var Jr=gt._clips.selectAll(".axesclip").data(Mr,function(oa){return oa.x._id+oa.y._id});Jr.enter().append("clipPath").classed("axesclip",!0).attr("id",function(oa){return"clip"+gt._uid+oa.x._id+oa.y._id}).append("rect"),Jr.exit().remove(),Jr.each(function(oa){g.select(this).select("rect").attr({x:oa.x._offset||0,y:oa.y._offset||0,width:oa.x._length||1,height:oa.y._length||1})})}},J.draw=function(mt,gt,Er){var kr=mt._fullLayout;gt==="redraw"&&kr._paper.selectAll("g.subplot").each(function(Lr){var Jr=Lr[0],oa=kr._plots[Jr];if(oa){var ca=oa.xaxis,kt=oa.yaxis;oa.xaxislayer.selectAll("."+ca._id+"tick").remove(),oa.yaxislayer.selectAll("."+kt._id+"tick").remove(),oa.xaxislayer.selectAll("."+ca._id+"tick2").remove(),oa.yaxislayer.selectAll("."+kt._id+"tick2").remove(),oa.xaxislayer.selectAll("."+ca._id+"divider").remove(),oa.yaxislayer.selectAll("."+kt._id+"divider").remove(),oa.minorGridlayer&&oa.minorGridlayer.selectAll("path").remove(),oa.gridlayer&&oa.gridlayer.selectAll("path").remove(),oa.zerolinelayer&&oa.zerolinelayer.selectAll("path").remove(),kr._infolayer.select(".g-"+ca._id+"title").remove(),kr._infolayer.select(".g-"+kt._id+"title").remove()}});var br=!gt||gt==="redraw"?J.listIds(mt):gt,Tr=J.list(mt),Mr=Tr.filter(function(Lr){return Lr.autoshift}).map(function(Lr){return Lr.overlaying});br.map(function(Lr){var Jr=J.getFromId(mt,Lr);if(Jr.tickmode==="sync"&&Jr.overlaying){var oa=br.findIndex(function(ca){return ca===Jr.overlaying});oa>=0&&br.unshift(br.splice(oa,1).shift())}});var Fr={false:{left:0,right:0}};return e.syncOrAsync(br.map(function(Lr){return function(){if(Lr){var Jr=J.getFromId(mt,Lr);Er||(Er={}),Er.axShifts=Fr,Er.overlayingShiftedAx=Mr;var oa=J.drawOne(mt,Jr,Er);return Jr._shiftPusher&&qa(Jr,Jr._fullDepth||0,Fr,!0),Jr._r=Jr.range.slice(),Jr._rl=e.simpleMap(Jr._r,Jr.r2l),oa}}}))},J.drawOne=function(mt,gt,Er){Er=Er||{};var kr=Er.axShifts||{},br=Er.overlayingShiftedAx||[],Tr,Mr,Fr;gt.setScale();var Lr=mt._fullLayout,Jr=gt._id,oa=Jr.charAt(0),ca=J.counterLetter(Jr),kt=Lr._plots[gt._mainSubplot];if(!kt)return;if(gt._shiftPusher=gt.autoshift||br.indexOf(gt._id)!==-1||br.indexOf(gt.overlaying)!==-1,gt._shiftPusher&gt.anchor==="free"){var ir=gt.linewidth/2||0;gt.ticks==="inside"&&(ir+=gt.ticklen),qa(gt,ir,kr,!0),qa(gt,gt.shift||0,kr,!1)}(Er.skipTitle!==!0||gt._shift===void 0)&&(gt._shift=ya(gt,kr));var mr=kt[oa+"axislayer"],$r=gt._mainLinePosition,ma=$r+=gt._shift,Ba=gt._mainMirrorPosition,Ca=gt._vals=J.calcTicks(gt),da=[gt.mirror,ma,Ba].join("_");for(Tr=0;Tr<Ca.length;Tr++)Ca[Tr].axInfo=da;gt._selections={},gt._tickAngles&&(gt._prevTickAngles=gt._tickAngles),gt._tickAngles={},gt._depth=null;var Sa={};function Ti(ji){var To=Jr+(ji||"tick");return Sa[To]||(Sa[To]=Bt(gt,To,ma)),Sa[To]}if(gt.visible){var ai=J.makeTransTickFn(gt),an=J.makeTransTickLabelFn(gt),sn,Mn,On=gt.ticks==="inside",$n=gt.ticks==="outside";if(gt.tickson==="boundaries"){var Cn=dt(gt,Ca);Mn=J.clipEnds(gt,Cn),sn=On?Mn:Cn}else Mn=J.clipEnds(gt,Ca),sn=On&&gt.ticklabelmode!=="period"?Mn:Ca;var Lo=gt._gridVals=Mn,Xi=It(gt,Ca);if(!Lr._hasOnlyLargeSploms){var Jo=gt._subplotsWith,zo={};for(Tr=0;Tr<Jo.length;Tr++){Mr=Jo[Tr],Fr=Lr._plots[Mr];var as=Fr[ca+"axis"],Pn=as._mainAxis._id;if(!zo[Pn]){zo[Pn]=1;var go=oa==="x"?"M0,"+as._offset+"v"+as._length:"M"+as._offset+",0h"+as._length;J.drawGrid(mt,gt,{vals:Lo,counterAxis:as,layer:Fr.gridlayer.select("."+Jr),minorLayer:Fr.minorGridlayer.select("."+Jr),path:go,transFn:ai}),J.drawZeroLine(mt,gt,{counterAxis:as,layer:Fr.zerolinelayer,path:go,transFn:ai})}}}var In,Do=J.getTickSigns(gt),Ho=J.getTickSigns(gt,"minor");if(gt.ticks||gt.minor&&gt.minor.ticks){var Qo=J.makeTickPath(gt,ma,Do[2]),Xn=J.makeTickPath(gt,ma,Ho[2],{minor:!0}),po,ys,Is,Fs;if(gt._anchorAxis&&gt.mirror&&gt.mirror!==!0?(po=J.makeTickPath(gt,Ba,Do[3]),ys=J.makeTickPath(gt,Ba,Ho[3],{minor:!0}),Is=Qo+po,Fs=Xn+ys):(po="",ys="",Is=Qo,Fs=Xn),gt.showdividers&&$n&&gt.tickson==="boundaries"){var $o={};for(Tr=0;Tr<Xi.length;Tr++)$o[Xi[Tr].x]=1;In=function(ji){return $o[ji.x]?po:Is}}else In=function(ji){return ji.minor?Fs:Is}}if(J.drawTicks(mt,gt,{vals:sn,layer:mr,path:In,transFn:ai}),gt.mirror==="allticks"){var fi=Object.keys(gt._linepositions||{});for(Tr=0;Tr<fi.length;Tr++){Mr=fi[Tr],Fr=Lr._plots[Mr];var mn=gt._linepositions[Mr]||[],ol=mn[0],Os=mn[1],so=mn[2],Ns=J.makeTickPath(gt,ol,so?Do[0]:Ho[0],{minor:so})+J.makeTickPath(gt,Os,so?Do[1]:Ho[1],{minor:so});J.drawTicks(mt,gt,{vals:sn,layer:Fr[oa+"axislayer"],path:Ns,transFn:ai})}}var fs=[];if(fs.push(function(){return J.drawLabels(mt,gt,{vals:Ca,layer:mr,plotinfo:Fr,transFn:an,labelFns:J.makeLabelFns(gt,ma)})}),gt.type==="multicategory"){var al={x:2,y:10}[oa];fs.push(function(){var ji={x:"height",y:"width"}[oa],To=Ti()[ji]+al+(gt._tickAngles[Jr+"tick"]?gt.tickfont.size*he:0);return J.drawLabels(mt,gt,{vals:xt(gt,Ca),layer:mr,cls:Jr+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:ai,labelFns:J.makeLabelFns(gt,ma+To*Do[4])})}),fs.push(function(){return gt._depth=Do[4]*(Ti("tick2")[gt.side]-ma),sa(mt,gt,{vals:Xi,layer:mr,path:J.makeTickPath(gt,ma,Do[4],{len:gt._depth}),transFn:ai})})}else gt.title.hasOwnProperty("standoff")&&fs.push(function(){gt._depth=Do[4]*(Ti()[gt.side]-ma)});var vl=M.getComponentMethod("rangeslider","isVisible")(gt);return!Er.skipTitle&&!(vl&&gt.side==="bottom")&&fs.push(function(){return La(mt,gt)}),fs.push(function(){var ji=gt.side.charAt(0),To=G[gt.side].charAt(0),Yn=J.getPxPosition(mt,gt),_s=$n?gt.ticklen:0,Yo,Nn,Wl,Zu;(gt.automargin||vl||gt._shiftPusher)&&(gt.type==="multicategory"?Yo=Ti("tick2"):(Yo=Ti(),oa==="x"&&ji==="b"&&(gt._depth=Math.max(Yo.width>0?Yo.bottom-Yn:0,_s))));var ml=0,Bu=0;if(gt._shiftPusher&&(ml=Math.max(_s,Yo.height>0?ji==="l"?Yn-Yo.left:Yo.right-Yn:0),gt.title.text!==Lr._dfltTitle[oa]&&(Bu=(gt._titleStandoff||0)+(gt._titleScoot||0),ji==="l"&&(Bu+=Aa(gt))),gt._fullDepth=Math.max(ml,Bu)),gt.automargin){Nn={x:0,y:0,r:0,l:0,t:0,b:0};var El=[0,1],qs=typeof gt._shift=="number"?gt._shift:0;if(oa==="x"){if(ji==="b"?Nn[ji]=gt._depth:(Nn[ji]=gt._depth=Math.max(Yo.width>0?Yn-Yo.top:0,_s),El.reverse()),Yo.width>0){var Jl=Yo.right-(gt._offset+gt._length);Jl>0&&(Nn.xr=1,Nn.r=Jl);var Nu=gt._offset-Yo.left;Nu>0&&(Nn.xl=0,Nn.l=Nu)}}else if(ji==="l"?(gt._depth=Math.max(Yo.height>0?Yn-Yo.left:0,_s),Nn[ji]=gt._depth-qs):(gt._depth=Math.max(Yo.height>0?Yo.right-Yn:0,_s),Nn[ji]=gt._depth+qs,El.reverse()),Yo.height>0){var Ic=Yo.bottom-(gt._offset+gt._length);Ic>0&&(Nn.yb=0,Nn.b=Ic);var Xu=gt._offset-Yo.top;Xu>0&&(Nn.yt=1,Nn.t=Xu)}Nn[ca]=gt.anchor==="free"?gt.position:gt._anchorAxis.domain[El[0]],gt.title.text!==Lr._dfltTitle[oa]&&(Nn[ji]+=Aa(gt)+(gt.title.standoff||0)),gt.mirror&&gt.anchor!=="free"&&(Wl={x:0,y:0,r:0,l:0,t:0,b:0},Wl[To]=gt.linewidth,gt.mirror&&gt.mirror!==!0&&(Wl[To]+=_s),gt.mirror===!0||gt.mirror==="ticks"?Wl[ca]=gt._anchorAxis.domain[El[1]]:(gt.mirror==="all"||gt.mirror==="allticks")&&(Wl[ca]=[gt._counterDomainMin,gt._counterDomainMax][El[1]]))}vl&&(Zu=M.getComponentMethod("rangeslider","autoMarginOpts")(mt,gt)),typeof gt.automargin=="string"&&(rt(Nn,gt.automargin),rt(Wl,gt.automargin)),A.autoMargin(mt,ni(gt),Nn),A.autoMargin(mt,Wt(gt),Wl),A.autoMargin(mt,zt(gt),Zu)}),e.syncOrAsync(fs)}};function rt(mt,gt){if(mt){var Er=Object.keys(W).reduce(function(kr,br){return gt.indexOf(br)!==-1&&W[br].forEach(function(Tr){kr[Tr]=1}),kr},{});Object.keys(mt).forEach(function(kr){Er[kr]||(kr.length===1?mt[kr]=0:delete mt[kr])})}}function dt(mt,gt){var Er=[],kr,br=function(Tr,Mr){var Fr=Tr.xbnd[Mr];Fr!==null&&Er.push(e.extendFlat({},Tr,{x:Fr}))};if(gt.length){for(kr=0;kr<gt.length;kr++)br(gt[kr],0);br(gt[kr-1],1)}return Er}function xt(mt,gt){for(var Er=[],kr={},br=0;br<gt.length;br++){var Tr=gt[br];kr[Tr.text2]?kr[Tr.text2].push(Tr.x):kr[Tr.text2]=[Tr.x]}for(var Mr in kr)Er.push(Cr(mt,e.interp(kr[Mr],.5),Mr));return Er}function It(mt,gt){var Er=[],kr,br,Tr=gt.length&&gt[gt.length-1].x<gt[0].x,Mr=function(Lr,Jr){var oa=Lr.xbnd[Jr];oa!==null&&Er.push(e.extendFlat({},Lr,{x:oa}))};if(mt.showdividers&&gt.length){for(kr=0;kr<gt.length;kr++){var Fr=gt[kr];Fr.text2!==br&&Mr(Fr,Tr?1:0),br=Fr.text2}Mr(gt[kr-1],Tr?0:1)}return Er}function Bt(mt,gt,Er){var kr,br,Tr,Mr;if(mt._selections[gt].size())kr=1/0,br=-1/0,Tr=1/0,Mr=-1/0,mt._selections[gt].each(function(){var Lr=Ua(this),Jr=i.bBox(Lr.node().parentNode);kr=Math.min(kr,Jr.top),br=Math.max(br,Jr.bottom),Tr=Math.min(Tr,Jr.left),Mr=Math.max(Mr,Jr.right)});else{var Fr=J.makeLabelFns(mt,Er);kr=br=Fr.yFn({dx:0,dy:0,fontSize:0}),Tr=Mr=Fr.xFn({dx:0,dy:0,fontSize:0})}return{top:kr,bottom:br,left:Tr,right:Mr,height:br-kr,width:Mr-Tr}}J.getTickSigns=function(mt,gt){var Er=mt._id.charAt(0),kr={x:"top",y:"right"}[Er],br=mt.side===kr?1:-1,Tr=[-1,1,br,-br],Mr=gt?(mt.minor||{}).ticks:mt.ticks;return Mr!=="inside"==(Er==="x")&&(Tr=Tr.map(function(Fr){return-Fr})),mt.side&&Tr.push({l:-1,t:-1,r:1,b:1}[mt.side.charAt(0)]),Tr},J.makeTransTickFn=function(mt){return mt._id.charAt(0)==="x"?function(gt){return t(mt._offset+mt.l2p(gt.x),0)}:function(gt){return t(0,mt._offset+mt.l2p(gt.x))}},J.makeTransTickLabelFn=function(mt){var gt=Kt(mt),Er=mt.ticklabelshift||0,kr=mt.ticklabelstandoff||0,br=gt[0],Tr=gt[1],Mr=mt.range[0]>mt.range[1],Fr=mt.ticklabelposition&&mt.ticklabelposition.indexOf("inside")!==-1,Lr=!Fr;if(Er){var Jr=Mr?-1:1;Er=Er*Jr}if(kr){var oa=mt.side,ca=Fr&&(oa==="top"||oa==="left")||Lr&&(oa==="bottom"||oa==="right")?1:-1;kr=kr*ca}return mt._id.charAt(0)==="x"?function(kt){return t(br+mt._offset+mt.l2p(Gt(kt))+Er,Tr+kr)}:function(kt){return t(Tr+kr,br+mt._offset+mt.l2p(Gt(kt))+Er)}};function Gt(mt){return mt.periodX!==void 0?mt.periodX:mt.x}function Kt(mt){var gt=mt.ticklabelposition||"",Er=function(ir){return gt.indexOf(ir)!==-1},kr=Er("top"),br=Er("left"),Tr=Er("right"),Mr=Er("bottom"),Fr=Er("inside"),Lr=Mr||br||kr||Tr;if(!Lr&&!Fr)return[0,0];var Jr=mt.side,oa=Lr?(mt.tickwidth||0)/2:0,ca=$,kt=mt.tickfont?mt.tickfont.size:12;return(Mr||kr)&&(oa+=kt*se,ca+=(mt.linewidth||0)/2),(br||Tr)&&(oa+=(mt.linewidth||0)/2,ca+=$),Fr&&Jr==="top"&&(ca-=kt*(1-se)),(br||kr)&&(oa=-oa),(Jr==="bottom"||Jr==="right")&&(ca=-ca),[Lr?oa:0,Fr?ca:0]}J.makeTickPath=function(mt,gt,Er,kr){kr||(kr={});var br=kr.minor;if(br&&!mt.minor)return"";var Tr=kr.len!==void 0?kr.len:br?mt.minor.ticklen:mt.ticklen,Mr=mt._id.charAt(0),Fr=(mt.linewidth||1)/2;return Mr==="x"?"M0,"+(gt+Fr*Er)+"v"+Tr*Er:"M"+(gt+Fr*Er)+",0h"+Tr*Er},J.makeLabelFns=function(mt,gt,Er){var kr=mt.ticklabelposition||"",br=function(Cn){return kr.indexOf(Cn)!==-1},Tr=br("top"),Mr=br("left"),Fr=br("right"),Lr=br("bottom"),Jr=Lr||Mr||Tr||Fr,oa=br("inside"),ca=kr==="inside"&&mt.ticks==="inside"||!oa&&mt.ticks==="outside"&&mt.tickson!=="boundaries",kt=0,ir=0,mr=ca?mt.ticklen:0;if(oa?mr*=-1:Jr&&(mr=0),ca&&(kt+=mr,Er)){var $r=e.deg2rad(Er);kt=mr*Math.cos($r)+1,ir=mr*Math.sin($r)}mt.showticklabels&&(ca||mt.showline)&&(kt+=.2*mt.tickfont.size),kt+=(mt.linewidth||1)/2*(oa?-1:1);var ma={labelStandoff:kt,labelShift:ir},Ba,Ca,da,Sa,Ti=0,ai=mt.side,an=mt._id.charAt(0),sn=mt.tickangle,Mn;if(an==="x")Mn=!oa&&ai==="bottom"||oa&&ai==="top",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=ir*Sa,Ca=gt+kt*Sa,da=Mn?1:-.2,Math.abs(sn)===90&&(oa?da+=ue:sn===-90&&ai==="bottom"?da=se:sn===90&&ai==="top"?da=ue:da=.5,Ti=ue/2*(sn/90)),ma.xFn=function(Cn){return Cn.dx+Ba+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*da},ma.anchorFn=function(Cn,Lo){if(Jr){if(Mr)return"end";if(Fr)return"start"}return!x(Lo)||Lo===0||Lo===180?"middle":Lo*Sa<0!==oa?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return Lo<-60||Lo>60?-.5*Xi:mt.side==="top"!==oa?-Xi:0};else if(an==="y"){if(Mn=!oa&&ai==="left"||oa&&ai==="right",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=kt,Ca=ir*Sa,da=0,!oa&&Math.abs(sn)===90&&(sn===-90&&ai==="left"||sn===90&&ai==="right"?da=se:da=.5),oa){var On=x(sn)?+sn:0;if(On!==0){var $n=e.deg2rad(On);Ti=Math.abs(Math.sin($n))*se*Sa,da=0}}ma.xFn=function(Cn){return Cn.dx+gt-(Ba+Cn.fontSize*da)*Sa+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*ue},ma.anchorFn=function(Cn,Lo){return x(Lo)&&Math.abs(Lo)===90?"middle":Mn?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return mt.side==="right"&&(Lo*=-1),Lo<-30?-Xi:Lo<30?-.5*Xi:0}}return ma};function sr(mt){return[mt.text,mt.x,mt.axInfo,mt.font,mt.fontSize,mt.fontColor].join("_")}J.drawTicks=function(mt,gt,Er){Er=Er||{};var kr=gt._id+"tick",br=[].concat(gt.minor&&gt.minor.ticks?Er.vals.filter(function(Mr){return Mr.minor&&!Mr.noTick}):[]).concat(gt.ticks?Er.vals.filter(function(Mr){return!Mr.minor&&!Mr.noTick}):[]),Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("ticks",1).classed("crisp",Er.crisp!==!1).each(function(Mr){return a.stroke(g.select(this),Mr.minor?gt.minor.tickcolor:gt.tickcolor)}).style("stroke-width",function(Mr){return i.crispRound(mt,Mr.minor?gt.minor.tickwidth:gt.tickwidth,1)+"px"}).attr("d",Er.path).style("display",null),Fa(gt,[N]),Tr.attr("transform",Er.transFn)},J.drawGrid=function(mt,gt,Er){if(Er=Er||{},gt.tickmode!=="sync"){var kr=gt._id+"grid",br=gt.minor&&gt.minor.showgrid,Tr=br?Er.vals.filter(function(Ba){return Ba.minor}):[],Mr=gt.showgrid?Er.vals.filter(function(Ba){return!Ba.minor}):[],Fr=Er.counterAxis;if(Fr&&J.shouldShowZeroLine(mt,gt,Fr))for(var Lr=gt.tickmode==="array",Jr=0;Jr<Mr.length;Jr++){var oa=Mr[Jr].x;if(Lr?!oa:Math.abs(oa)<gt.dtick/100)if(Mr=Mr.slice(0,Jr).concat(Mr.slice(Jr+1)),Lr)Jr--;else break}gt._gw=i.crispRound(mt,gt.gridwidth,1);for(var ca=br?i.crispRound(mt,gt.minor.gridwidth,1):0,kt=Er.layer,ir=Er.minorLayer,mr=1;mr>=0;mr--){var $r=mr?kt:ir;if($r){var ma=$r.selectAll("path."+kr).data(mr?Mr:Tr,sr);ma.exit().remove(),ma.enter().append("path").classed(kr,1).classed("crisp",Er.crisp!==!1),ma.attr("transform",Er.transFn).attr("d",Er.path).each(function(Ba){return a.stroke(g.select(this),Ba.minor?gt.minor.gridcolor:gt.gridcolor||"#ddd")}).style("stroke-dasharray",function(Ba){return i.dashStyle(Ba.minor?gt.minor.griddash:gt.griddash,Ba.minor?gt.minor.gridwidth:gt.gridwidth)}).style("stroke-width",function(Ba){return(Ba.minor?ca:gt._gw)+"px"}).style("display",null),typeof Er.path=="function"&&ma.attr("d",Er.path)}}Fa(gt,[O,I])}},J.drawZeroLine=function(mt,gt,Er){Er=Er||Er;var kr=gt._id+"zl",br=J.shouldShowZeroLine(mt,gt,Er.counterAxis),Tr=Er.layer.selectAll("path."+kr).data(br?[{x:0,id:gt._id}]:[]);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("zl",1).classed("crisp",Er.crisp!==!1).each(function(){Er.layer.selectAll("path").sort(function(Mr,Fr){return ne(Mr.id,Fr.id)})}),Tr.attr("transform",Er.transFn).attr("d",Er.path).call(a.stroke,gt.zerolinecolor||a.defaultLine).style("stroke-width",i.crispRound(mt,gt.zerolinewidth,gt._gw||1)+"px").style("display",null),Fa(gt,[B])},J.drawLabels=function(mt,gt,Er){Er=Er||{};var kr=mt._fullLayout,br=gt._id,Tr=Er.cls||br+"tick",Mr=Er.vals.filter(function(Pn){return Pn.text}),Fr=Er.labelFns,Lr=Er.secondary?0:gt.tickangle,Jr=(gt._prevTickAngles||{})[Tr],oa=Er.layer.selectAll("g."+Tr).data(gt.showticklabels?Mr:[],sr),ca=[];oa.enter().append("g").classed(Tr,1).append("text").attr("text-anchor","middle").each(function(Pn){var go=g.select(this),In=mt._promises.length;go.call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn)).call(i.font,{family:Pn.font,size:Pn.fontSize,color:Pn.fontColor,weight:Pn.fontWeight,style:Pn.fontStyle,variant:Pn.fontVariant,textcase:Pn.fontTextcase,lineposition:Pn.fontLineposition,shadow:Pn.fontShadow}).text(Pn.text).call(r.convertToTspans,mt),mt._promises[In]?ca.push(mt._promises.pop().then(function(){kt(go,Lr)})):kt(go,Lr)}),Fa(gt,[U]),oa.exit().remove(),Er.repositionOnUpdate&&oa.each(function(Pn){g.select(this).select("text").call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn))});function kt(Pn,go){Pn.each(function(In){var Do=g.select(this),Ho=Do.select(".text-math-group"),Qo=Fr.anchorFn(In,go),Xn=Er.transFn.call(Do.node(),In)+(x(go)&&+go!=0?" rotate("+go+","+Fr.xFn(In)+","+(Fr.yFn(In)-In.fontSize/2)+")":""),po=r.lineCount(Do),ys=he*In.fontSize,Is=Fr.heightFn(In,x(go)?+go:0,(po-1)*ys);if(Is&&(Xn+=t(0,Is)),Ho.empty()){var Fs=Do.select("text");Fs.attr({transform:Xn,"text-anchor":Qo}),Fs.style("opacity",1),gt._adjustTickLabelsOverflow&&gt._adjustTickLabelsOverflow()}else{var $o=i.bBox(Ho.node()).width,fi=$o*{end:-.5,start:.5}[Qo];Ho.attr("transform",Xn+t(fi,0))}})}gt._adjustTickLabelsOverflow=function(){var Pn=gt.ticklabeloverflow;if(!(!Pn||Pn==="allow")){var go=Pn.indexOf("hide")!==-1,In=gt._id.charAt(0)==="x",Do=0,Ho=In?mt._fullLayout.width:mt._fullLayout.height;if(Pn.indexOf("domain")!==-1){var Qo=e.simpleMap(gt.range,gt.r2l);Do=gt.l2p(Qo[0])+gt._offset,Ho=gt.l2p(Qo[1])+gt._offset}var Xn=Math.min(Do,Ho),po=Math.max(Do,Ho),ys=gt.side,Is=1/0,Fs=-1/0;oa.each(function(ol){var Os=g.select(this),so=Os.select(".text-math-group");if(so.empty()){var Ns=i.bBox(Os.node()),fs=0;In?(Ns.right>po||Ns.left<Xn)&&(fs=1):(Ns.bottom>po||Ns.top+(gt.tickangle?0:ol.fontSize/4)<Xn)&&(fs=1);var al=Os.select("text");fs?go&&al.style("opacity",0):(al.style("opacity",1),ys==="bottom"||ys==="right"?Is=Math.min(Is,In?Ns.top:Ns.left):Is=-1/0,ys==="top"||ys==="left"?Fs=Math.max(Fs,In?Ns.bottom:Ns.right):Fs=1/0)}});for(var $o in kr._plots){var fi=kr._plots[$o];if(!(gt._id!==fi.xaxis._id&&gt._id!==fi.yaxis._id)){var mn=In?fi.yaxis:fi.xaxis;mn&&(mn["_visibleLabelMin_"+gt._id]=Is,mn["_visibleLabelMax_"+gt._id]=Fs)}}}},gt._hideCounterAxisInsideTickLabels=function(Pn){var go=gt._id.charAt(0)==="x",In=[];for(var Do in kr._plots){var Ho=kr._plots[Do];gt._id!==Ho.xaxis._id&&gt._id!==Ho.yaxis._id||In.push(go?Ho.yaxis:Ho.xaxis)}In.forEach(function(Qo,Xn){Qo&&Ea(Qo)&&(Pn||[B,I,O,N,U]).forEach(function(po){var ys=po.K==="tick"&&po.L==="text"&&gt.ticklabelmode==="period",Is=kr._plots[gt._mainSubplot],Fs;po.K===B.K?Fs=Is.zerolinelayer.selectAll("."+gt._id+"zl"):po.K===I.K?Fs=Is.minorGridlayer.selectAll("."+gt._id):po.K===O.K?Fs=Is.gridlayer.selectAll("."+gt._id):Fs=Is[gt._id.charAt(0)+"axislayer"],Fs.each(function(){var $o=g.select(this);po.L&&($o=$o.selectAll(po.L)),$o.each(function(fi){var mn=gt.l2p(ys?Gt(fi):fi.x)+gt._offset,ol=g.select(this);mn<gt["_visibleLabelMax_"+Qo._id]&&mn>gt["_visibleLabelMin_"+Qo._id]?ol.style("display","none"):po.K==="tick"&&!Xn&&ol.style("display",null)})})})})},kt(oa,Jr+1?Jr:Lr);function ir(){return ca.length&&Promise.all(ca)}var mr=null;function $r(){if(kt(oa,Lr),Mr.length&&gt.autotickangles&&(gt.type!=="log"||String(gt.dtick).charAt(0)!=="D")){mr=gt.autotickangles[0];var Pn=0,go=[],In,Do=1;oa.each(function(Yo){Pn=Math.max(Pn,Yo.fontSize);var Nn=gt.l2p(Yo.x),Wl=Ua(this),Zu=i.bBox(Wl.node());Do=Math.max(Do,r.lineCount(Wl)),go.push({top:0,bottom:10,height:10,left:Nn-Zu.width/2,right:Nn+Zu.width/2+2,width:Zu.width+2})});var Ho=(gt.tickson==="boundaries"||gt.showdividers)&&!Er.secondary,Qo=Mr.length,Xn=Math.abs((Mr[Qo-1].x-Mr[0].x)*gt._m)/(Qo-1),po=Ho?Xn/2:Xn,ys=Ho?gt.ticklen:Pn*1.25*Do,Is=Math.sqrt(Math.pow(po,2)+Math.pow(ys,2)),Fs=po/Is,$o=gt.autotickangles.map(function(Yo){return Yo*Math.PI/180}),fi=$o.find(function(Yo){return Math.abs(Math.cos(Yo))<=Fs});fi===void 0&&(fi=$o.reduce(function(Yo,Nn){return Math.abs(Math.cos(Yo))<Math.abs(Math.cos(Nn))?Yo:Nn},$o[0]));var mn=fi*(180/Math.PI);if(Ho){var ol=2;for(gt.ticks&&(ol+=gt.tickwidth/2),In=0;In<go.length;In++){var Os=Mr[In].xbnd,so=go[In];if(Os[0]!==null&&so.left-gt.l2p(Os[0])<ol||Os[1]!==null&&gt.l2p(Os[1])-so.right<ol){mr=mn;break}}}else{var Ns=gt.ticklabelposition||"",fs=function(Yo){return Ns.indexOf(Yo)!==-1},al=fs("top"),vl=fs("left"),ji=fs("right"),To=fs("bottom"),Yn=To||vl||al||ji,_s=Yn?(gt.tickwidth||0)+2*$:0;for(In=0;In<go.length-1;In++)if(e.bBoxIntersect(go[In],go[In+1],_s)){mr=mn;break}}mr&&kt(oa,mr)}}gt._selections&&(gt._selections[Tr]=oa);var ma=[ir];gt.automargin&&kr._redrawFromAutoMarginCount&&Jr===90?(mr=Jr,ma.push(function(){kt(oa,Jr)})):ma.push($r),gt._tickAngles&&ma.push(function(){gt._tickAngles[Tr]=mr===null?x(Lr)?Lr:0:mr});var Ba=function(){var Pn=0,go=0;return oa.each(function(In,Do){var Ho=Ua(this),Qo=Ho.select(".text-math-group");if(Qo.empty()){var Xn;gt._vals[Do]&&(Xn=gt._vals[Do].bb||i.bBox(Ho.node()),gt._vals[Do].bb=Xn),Pn=Math.max(Pn,Xn.width),go=Math.max(go,Xn.height)}}),{labelsMaxW:Pn,labelsMaxH:go}},Ca=gt._anchorAxis;if(Ca&&(Ca.autorange||Ca.insiderange)&&Ea(gt)&&!j(kr,gt._id)&&(kr._insideTickLabelsUpdaterange||(kr._insideTickLabelsUpdaterange={}),Ca.autorange&&(kr._insideTickLabelsUpdaterange[Ca._name+".autorange"]=Ca.autorange,ma.push(Ba)),Ca.insiderange)){var da=Ba(),Sa=gt._id.charAt(0)==="y"?da.labelsMaxW:da.labelsMaxH;Sa+=2*$,gt.ticklabelposition==="inside"&&(Sa+=gt.ticklen||0);var Ti=gt.side==="right"||gt.side==="top"?1:-1,ai=Ti===1?1:0,an=Ti===1?0:1,sn=[];sn[an]=Ca.range[an];var Mn=Ca.range,On=Ca.r2p(Mn[ai]),$n=Ca.r2p(Mn[an]),Cn=kr._insideTickLabelsUpdaterange[Ca._name+".range"];if(Cn){var Lo=Ca.r2p(Cn[ai]),Xi=Ca.r2p(Cn[an]),Jo=Ti*(gt._id.charAt(0)==="y"?1:-1);Jo*On<Jo*Lo&&(On=Lo,sn[ai]=Mn[ai]=Cn[ai]),Jo*$n>Jo*Xi&&($n=Xi,sn[an]=Mn[an]=Cn[an])}var zo=Math.abs($n-On);zo-Sa>0?(zo-=Sa,Sa*=1+Sa/zo):Sa=0,gt._id.charAt(0)!=="y"&&(Sa=-Sa),sn[ai]=Ca.p2r(Ca.r2p(Mn[ai])+Ti*Sa),Ca.autorange==="min"||Ca.autorange==="max reversed"?(sn[0]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0):(Ca.autorange==="max"||Ca.autorange==="min reversed")&&(sn[1]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0),kr._insideTickLabelsUpdaterange[Ca._name+".range"]=sn}var as=e.syncOrAsync(ma);return as&&as.then&&mt._promises.push(as),as};function sa(mt,gt,Er){var kr=gt._id+"divider",br=Er.vals,Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().insert("path",":first-child").classed(kr,1).classed("crisp",1).call(a.stroke,gt.dividercolor).style("stroke-width",i.crispRound(mt,gt.dividerwidth,1)+"px"),Tr.attr("transform",Er.transFn).attr("d",Er.path)}J.getPxPosition=function(mt,gt){var Er=mt._fullLayout._size,kr=gt._id.charAt(0),br=gt.side,Tr;if(gt.anchor!=="free"?Tr=gt._anchorAxis:kr==="x"?Tr={_offset:Er.t+(1-(gt.position||0))*Er.h,_length:0}:kr==="y"&&(Tr={_offset:Er.l+(gt.position||0)*Er.w+gt._shift,_length:0}),br==="top"||br==="left")return Tr._offset;if(br==="bottom"||br==="right")return Tr._offset+Tr._length};function Aa(mt){var gt=mt.title.font.size,Er=(mt.title.text.match(r.BR_TAG_ALL)||[]).length;return mt.title.hasOwnProperty("standoff")?gt*(se+Er*he):Er?gt*(Er+1)*he:gt}function La(mt,gt){var Er=mt._fullLayout,kr=gt._id,br=kr.charAt(0),Tr=gt.title.font.size,Mr,Fr=(gt.title.text.match(r.BR_TAG_ALL)||[]).length;if(gt.title.hasOwnProperty("standoff"))gt.side==="bottom"||gt.side==="right"?Mr=gt._depth+gt.title.standoff+Tr*se:(gt.side==="top"||gt.side==="left")&&(Mr=gt._depth+gt.title.standoff+Tr*(ue+Fr*he));else{var Lr=Ea(gt);if(gt.type==="multicategory")Mr=gt._depth;else{var Jr=1.5*Tr;Lr&&(Jr=.5*Tr,gt.ticks==="outside"&&(Jr+=gt.ticklen)),Mr=10+Jr+(gt.linewidth?gt.linewidth-1:0)}Lr||(br==="x"?Mr+=gt.side==="top"?Tr*(gt.showticklabels?1:0):Tr*(gt.showticklabels?1.5:.5):Mr+=gt.side==="right"?Tr*(gt.showticklabels?1:.5):Tr*(gt.showticklabels?.5:0))}var oa=J.getPxPosition(mt,gt),ca,kt,ir;br==="x"?(kt=gt._offset+gt._length/2,ir=gt.side==="top"?oa-Mr:oa+Mr):(ir=gt._offset+gt._length/2,kt=gt.side==="right"?oa+Mr:oa-Mr,ca={rotate:"-90",offset:0});var mr;if(gt.type!=="multicategory"){var $r=gt._selections[gt._id+"tick"];if(mr={selection:$r,side:gt.side},$r&&$r.node()&&$r.node().parentNode){var ma=i.getTranslate($r.node().parentNode);mr.offsetLeft=ma.x,mr.offsetTop=ma.y}gt.title.hasOwnProperty("standoff")&&(mr.pad=0)}return gt._titleStandoff=Mr,o.draw(mt,kr+"title",{propContainer:gt,propName:gt._name+".title.text",placeholder:Er._dfltTitle[br],avoid:mr,transform:ca,attributes:{x:kt,y:ir,"text-anchor":"middle"}})}J.shouldShowZeroLine=function(mt,gt,Er){var kr=e.simpleMap(gt.range,gt.r2l);return kr[0]*kr[1]<=0&&gt.zeroline&&(gt.type==="linear"||gt.type==="-")&&!(gt.rangebreaks&&gt.maskBreaks(0)===F)&&(ka(gt,0)||!Ga(mt,gt,Er,kr)||Ma(mt,gt))},J.clipEnds=function(mt,gt){return gt.filter(function(Er){return ka(mt,Er.x)})};function ka(mt,gt){var Er=mt.l2p(gt);return Er>1&&Er<mt._length-1}function Ga(mt,gt,Er,kr){var br=Er._mainAxis;if(!br)return;var Tr=mt._fullLayout,Mr=gt._id.charAt(0),Fr=J.counterLetter(gt._id),Lr=gt._offset+(Math.abs(kr[0])<Math.abs(kr[1])==(Mr==="x")?0:gt._length);function Jr(mr){if(!mr.showline||!mr.linewidth)return!1;var $r=Math.max((mr.linewidth+gt.zerolinewidth)/2,1);function ma(da){return typeof da=="number"&&Math.abs(da-Lr)<$r}if(ma(mr._mainLinePosition)||ma(mr._mainMirrorPosition))return!0;var Ba=mr._linepositions||{};for(var Ca in Ba)if(ma(Ba[Ca][0])||ma(Ba[Ca][1]))return!0}var oa=Tr._plots[Er._mainSubplot];if(!(oa.mainplotinfo||oa).overlays.length)return Jr(Er,Lr);for(var ca=J.list(mt,Fr),kt=0;kt<ca.length;kt++){var ir=ca[kt];if(ir._mainAxis===br&&Jr(ir,Lr))return!0}}function Ma(mt,gt){for(var Er=mt._fullData,kr=gt._mainSubplot,br=gt._id.charAt(0),Tr=0;Tr<Er.length;Tr++){var Mr=Er[Tr];if(Mr.visible===!0&&Mr.xaxis+Mr.yaxis===kr&&(M.traceIs(Mr,"bar-like")&&Mr.orientation==={x:"h",y:"v"}[br]||Mr.fill&&Mr.fill.charAt(Mr.fill.length-1)===br))return!0}return!1}function Ua(mt){var gt=g.select(mt),Er=gt.select(".text-math-group");return Er.empty()?gt.select("text"):Er}J.allowAutoMargin=function(mt){for(var gt=J.list(mt,"",!0),Er=0;Er<gt.length;Er++){var kr=gt[Er];kr.automargin&&(A.allowAutoMargin(mt,ni(kr)),kr.mirror&&A.allowAutoMargin(mt,Wt(kr))),M.getComponentMethod("rangeslider","isVisible")(kr)&&A.allowAutoMargin(mt,zt(kr))}};function ni(mt){return mt._id+".automargin"}function Wt(mt){return ni(mt)+".mirror"}function zt(mt){return mt._id+".rangeslider"}J.swap=function(mt,gt){for(var Er=Vt(mt,gt),kr=0;kr<Er.length;kr++)xr(mt,Er[kr].x,Er[kr].y)};function Vt(mt,gt){var Er=[],kr,br;for(kr=0;kr<gt.length;kr++){var Tr=[],Mr=mt._fullData[gt[kr]].xaxis,Fr=mt._fullData[gt[kr]].yaxis;if(!(!Mr||!Fr)){for(br=0;br<Er.length;br++)(Er[br].x.indexOf(Mr)!==-1||Er[br].y.indexOf(Fr)!==-1)&&Tr.push(br);if(!Tr.length){Er.push({x:[Mr],y:[Fr]});continue}var Lr=Er[Tr[0]],Jr;if(Tr.length>1)for(br=1;br<Tr.length;br++)Jr=Er[Tr[br]],Ut(Lr.x,Jr.x),Ut(Lr.y,Jr.y);Ut(Lr.x,[Mr]),Ut(Lr.y,[Fr])}}return Er}function Ut(mt,gt){for(var Er=0;Er<gt.length;Er++)mt.indexOf(gt[Er])===-1&&mt.push(gt[Er])}function xr(mt,gt,Er){var kr=[],br=[],Tr=mt.layout,Mr,Fr;for(Mr=0;Mr<gt.length;Mr++)kr.push(J.getFromId(mt,gt[Mr]));for(Mr=0;Mr<Er.length;Mr++)br.push(J.getFromId(mt,Er[Mr]));var Lr=Object.keys(n),Jr=["anchor","domain","overlaying","position","side","tickangle","editType"],oa=["linear","log"];for(Mr=0;Mr<Lr.length;Mr++){var ca=Lr[Mr],kt=kr[0][ca],ir=br[0][ca],mr=!0,$r=!1,ma=!1;if(!(ca.charAt(0)==="_"||typeof kt=="function"||Jr.indexOf(ca)!==-1)){for(Fr=1;Fr<kr.length&&mr;Fr++){var Ba=kr[Fr][ca];ca==="type"&&oa.indexOf(kt)!==-1&&oa.indexOf(Ba)!==-1&&kt!==Ba?$r=!0:Ba!==kt&&(mr=!1)}for(Fr=1;Fr<br.length&&mr;Fr++){var Ca=br[Fr][ca];ca==="type"&&oa.indexOf(ir)!==-1&&oa.indexOf(Ca)!==-1&&ir!==Ca?ma=!0:br[Fr][ca]!==ir&&(mr=!1)}mr&&($r&&(Tr[kr[0]._name].type="linear"),ma&&(Tr[br[0]._name].type="linear"),Zr(Tr,ca,kr,br,mt._fullLayout._dfltTitle))}}for(Mr=0;Mr<mt._fullLayout.annotations.length;Mr++){var da=mt._fullLayout.annotations[Mr];gt.indexOf(da.xref)!==-1&&Er.indexOf(da.yref)!==-1&&e.swapAttrs(Tr.annotations[Mr],["?"])}}function Zr(mt,gt,Er,kr,br){var Tr=e.nestedProperty,Mr=Tr(mt[Er[0]._name],gt).get(),Fr=Tr(mt[kr[0]._name],gt).get(),Lr;for(gt==="title"&&(Mr&&Mr.text===br.x&&(Mr.text=br.y),Fr&&Fr.text===br.y&&(Fr.text=br.x)),Lr=0;Lr<Er.length;Lr++)Tr(mt,Er[Lr]._name+"."+gt).set(Fr);for(Lr=0;Lr<kr.length;Lr++)Tr(mt,kr[Lr]._name+"."+gt).set(Mr)}function pa(mt){return mt._id==="angularaxis"}function Xr(mt,gt){for(var Er=gt._rangebreaks.length,kr=0;kr<Er;kr++){var br=gt._rangebreaks[kr];if(mt>=br.min&&mt<br.max)return br.max}return mt}function Ea(mt){return(mt.ticklabelposition||"").indexOf("inside")!==-1}function Fa(mt,gt){Ea(mt._anchorAxis||{})&&mt._hideCounterAxisInsideTickLabels&&mt._hideCounterAxisInsideTickLabels(gt)}function qa(mt,gt,Er,kr){var br=mt.anchor!=="free"&&(mt.overlaying===void 0||mt.overlaying===!1)?mt._id:mt.overlaying,Tr;kr?Tr=mt.side==="right"?gt:-gt:Tr=gt,br in Er||(Er[br]={}),mt.side in Er[br]||(Er[br][mt.side]=0),Er[br][mt.side]+=Tr}function ya(mt,gt){return mt.autoshift?gt[mt.overlaying][mt.side]:mt.shift||0}function $a(mt,gt){return/%f/.test(gt)?mt>=L:/%L/.test(gt)?mt>=P:/%[SX]/.test(gt)?mt>=f:/%M/.test(gt)?mt>=y:/%[HI]/.test(gt)?mt>=u:/%p/.test(gt)?mt>=d:/%[Aadejuwx]/.test(gt)?mt>=b:/%[UVW]/.test(gt)?mt>=m:/%[Bbm]/.test(gt)?mt>=E:/%[q]/.test(gt)?mt>=_:/%[Yy]/.test(gt)?mt>=p:!0}}}),cS=Ye({"src/plots/cartesian/autorange_options_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e,t;if(M){var r=A==="reversed"||A==="min reversed"||A==="max reversed";e=M[r?1:0],t=M[r?0:1]}var o=x("autorangeoptions.minallowed",t===null?e:void 0),a=x("autorangeoptions.maxallowed",e===null?t:void 0);o===void 0&&x("autorangeoptions.clipmin"),a===void 0&&x("autorangeoptions.clipmax"),x("autorangeoptions.include")}}}),fS=Ye({"src/plots/cartesian/range_defaults.js"(X,H){"use strict";var g=cS();H.exports=function(A,M,e,t){var r=M._template||{},o=M.type||r.type||"-";e("minallowed"),e("maxallowed");var a=e("range");if(!a){var i;!t.noInsiderange&&o!=="log"&&(i=e("insiderange"),i&&(i[0]===null||i[1]===null)&&(M.insiderange=!1,i=void 0),i&&(a=e("range",i)))}var n=M.getAutorangeDflt(a,t),s=e("autorange",n),c;a&&(a[0]===null&&a[1]===null||(a[0]===null||a[1]===null)&&(s==="reversed"||s===!0)||a[0]!==null&&(s==="min"||s==="max reversed")||a[1]!==null&&(s==="max"||s==="min reversed"))&&(a=void 0,delete M.range,M.autorange=!0,c=!0),c||(n=M.getAutorangeDflt(a,t),s=e("autorange",n)),s&&(g(e,s,a),(o==="linear"||o==="-")&&e("rangemode")),M.cleanRange()}}}),iO=Ye({"node_modules/mouse-event-offset/index.js"(X,H){var g={left:0,top:0};H.exports=x;function x(M,e,t){e=e||M.currentTarget||M.srcElement,Array.isArray(t)||(t=[0,0]);var r=M.clientX||0,o=M.clientY||0,a=A(e);return t[0]=r-a.left,t[1]=o-a.top,t}function A(M){return M===window||M===document||M===document.body?g:M.getBoundingClientRect()}}}),_2=Ye({"node_modules/has-passive-events/index.js"(X,H){"use strict";var g=rS();function x(){var A=!1;try{var M=Object.defineProperty({},"passive",{get:function(){A=!0}});window.addEventListener("test",null,M),window.removeEventListener("test",null,M)}catch{A=!1}return A}H.exports=g&&x()}}),nO=Ye({"src/components/dragelement/align.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=(x-M)/(e-M),o=r+A/(e-M),a=(r+o)/2;return t==="left"||t==="bottom"?r:t==="center"||t==="middle"?a:t==="right"||t==="top"?o:r<2/3-a?r:o>4/3-a?o:a}}}),oO=Ye({"src/components/dragelement/cursor.js"(X,H){"use strict";var g=ta(),x=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];H.exports=function(M,e,t,r){return t==="left"?M=0:t==="center"?M=1:t==="right"?M=2:M=g.constrain(Math.floor(M*3),0,2),r==="bottom"?e=0:r==="middle"?e=1:r==="top"?e=2:e=g.constrain(Math.floor(e*3),0,2),x[e][M]}}}),sO=Ye({"src/components/dragelement/unhover.js"(X,H){"use strict";var g=$y(),x=m2(),A=b_().getGraphDiv,M=x_(),e=H.exports={};e.wrapped=function(t,r,o){t=A(t),t._fullLayout&&x.clear(t._fullLayout._uid+M.HOVERID),e.raw(t,r,o)},e.raw=function(r,o){var a=r._fullLayout,i=r._hoverdata;o||(o={}),!(o.target&&!r._dragged&&g.triggerHandler(r,"plotly_beforehover",o)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,o.target&&i&&r.emit("plotly_unhover",{event:o,points:i}))}}}),bp=Ye({"src/components/dragelement/index.js"(X,H){"use strict";var g=iO(),x=aS(),A=_2(),M=ta().removeElement,e=wh(),t=H.exports={};t.align=nO(),t.getCursor=oO();var r=sO();t.unhover=r.wrapped,t.unhoverRaw=r.raw,t.init=function(n){var s=n.gd,c=1,h=s._context.doubleClickDelay,v=n.element,p,T,l,_,w,S,E,m;s._mouseDownTime||(s._mouseDownTime=0),v.style.pointerEvents="all",v.onmousedown=u,A?(v._ontouchstart&&v.removeEventListener("touchstart",v._ontouchstart),v._ontouchstart=u,v.addEventListener("touchstart",u,{passive:!1})):v.ontouchstart=u;function b(P,L,z){return Math.abs(P)<z&&(P=0),Math.abs(L)<z&&(L=0),[P,L]}var d=n.clampFn||b;function u(P){s._dragged=!1,s._dragging=!0;var L=a(P);p=L[0],T=L[1],E=P.target,S=P,m=P.buttons===2||P.ctrlKey,typeof P.clientX>"u"&&typeof P.clientY>"u"&&(P.clientX=p,P.clientY=T),l=new Date().getTime(),l-s._mouseDownTime<h?c+=1:(c=1,s._mouseDownTime=l),n.prepFn&&n.prepFn(P,p,T),x&&!m?(w=o(),w.style.cursor=window.getComputedStyle(v).cursor):x||(w=document,_=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(v).cursor),document.addEventListener("mouseup",f),document.addEventListener("touchend",f),n.dragmode!==!1&&(P.preventDefault(),document.addEventListener("mousemove",y),document.addEventListener("touchmove",y,{passive:!1}))}function y(P){P.preventDefault();var L=a(P),z=n.minDrag||e.MINDRAG,F=d(L[0]-p,L[1]-T,z),B=F[0],O=F[1];(B||O)&&(s._dragged=!0,t.unhover(s,P)),s._dragged&&n.moveFn&&!m&&(s._dragdata={element:v,dx:B,dy:O},n.moveFn(B,O))}function f(P){if(delete s._dragdata,n.dragmode!==!1&&(P.preventDefault(),document.removeEventListener("mousemove",y),document.removeEventListener("touchmove",y)),document.removeEventListener("mouseup",f),document.removeEventListener("touchend",f),x?M(w):_&&(w.documentElement.style.cursor=_,_=null),!s._dragging){s._dragged=!1;return}if(s._dragging=!1,new Date().getTime()-s._mouseDownTime>h&&(c=Math.max(c-1,1)),s._dragged)n.doneFn&&n.doneFn();else{var L;S.target===E?L=S:(L={target:E,srcElement:E,toElement:E},Object.keys(S).concat(Object.keys(S.__proto__)).forEach(z=>{var F=S[z];!L[z]&&typeof F!="function"&&(L[z]=F)})),n.clickFn&&n.clickFn(c,L),m||E.dispatchEvent(new MouseEvent("click",P))}s._dragging=!1,s._dragged=!1}};function o(){var i=document.createElement("div");i.className="dragcover";var n=i.style;return n.position="fixed",n.left=0,n.right=0,n.top=0,n.bottom=0,n.zIndex=999999999,n.background="none",document.body.appendChild(i),i}t.coverSlip=o;function a(i){return g(i.changedTouches?i.changedTouches[0]:i,document.body)}}}),Kd=Ye({"src/lib/setcursor.js"(X,H){"use strict";H.exports=function(x,A){(x.attr("class")||"").split(" ").forEach(function(M){M.indexOf("cursor-")===0&&x.classed(M,!1)}),A&&x.classed("cursor-"+A,!0)}}}),lO=Ye({"src/lib/override_cursor.js"(X,H){"use strict";var g=Kd(),x="data-savedcursor",A="!!";H.exports=function(e,t){var r=e.attr(x);if(t){if(!r){for(var o=(e.attr("class")||"").split(" "),a=0;a<o.length;a++){var i=o[a];i.indexOf("cursor-")===0&&e.attr(x,i.substr(7)).classed(i,!1)}e.attr(x)||e.attr(x,A)}g(e,t)}else r&&(e.attr(x,null),r===A?g(e):g(e,r))}}}),hS=Ye({"src/components/legend/attributes.js"(X,H){"use strict";var g=Au(),x=Gf();H.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:x.defaultLine,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:g({editType:"legend"}),grouptitlefont:g({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:g({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}}}),x2=Ye({"src/components/legend/helpers.js"(X){"use strict";X.isGrouped=function(g){return(g.traceorder||"").indexOf("grouped")!==-1},X.isVertical=function(g){return g.orientation!=="h"},X.isReversed=function(g){return(g.traceorder||"").indexOf("reversed")!==-1}}}),pS=Ye({"src/components/legend/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=cl(),M=Pl(),e=hS(),t=Jy(),r=x2();function o(a,i,n,s){var c=i[a]||{},h=A.newContainer(n,a);function v(he,G){return x.coerce(c,h,e,he,G)}var p=x.coerceFont(v,"font",n.font);v("bgcolor",n.paper_bgcolor),v("bordercolor");var T=v("visible");if(T){for(var l,_=function(he,G){var $=l._input,J=l;return x.coerce($,J,M,he,G)},w=n.font||{},S=x.coerceFont(v,"grouptitlefont",w,{overrideDflt:{size:Math.round(w.size*1.1)}}),E=0,m=!1,b="normal",d=(n.shapes||[]).filter(function(he){return he.showlegend}),u=s.concat(d).filter(function(he){return a===(he.legend||"legend")}),y=0;y<u.length;y++)if(l=u[y],!!l.visible){var f=l._isShape;(l.showlegend||l._dfltShowLegend&&!(l._module&&l._module.attributes&&l._module.attributes.showlegend&&l._module.attributes.showlegend.dflt===!1))&&(E++,l.showlegend&&(m=!0,(!f&&g.traceIs(l,"pie-like")||l._input.showlegend===!0)&&E++),x.coerceFont(_,"legendgrouptitle.font",S)),(!f&&g.traceIs(l,"bar")&&n.barmode==="stack"||["tonextx","tonexty"].indexOf(l.fill)!==-1)&&(b=r.isGrouped({traceorder:b})?"grouped+reversed":"reversed"),l.legendgroup!==void 0&&l.legendgroup!==""&&(b=r.isReversed({traceorder:b})?"reversed+grouped":"grouped")}var P=x.coerce(i,n,t,"showlegend",m&&E>(a==="legend"?1:0));if(P===!1&&(n[a]=void 0),!(P===!1&&!c.uirevision)&&(v("uirevision",n.uirevision),P!==!1)){v("borderwidth");var L=v("orientation"),z=v("yref"),F=v("xref"),B=L==="h",O=z==="paper",I=F==="paper",N,U,W,Q="left";B?(N=0,g.getComponentMethod("rangeslider","isVisible")(i.xaxis)?O?(U=1.1,W="bottom"):(U=1,W="top"):O?(U=-.1,W="top"):(U=0,W="bottom")):(U=1,W="auto",I?N=1.02:(N=1,Q="right")),x.coerce(c,h,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:N}},"x"),x.coerce(c,h,{y:{valType:"number",editType:"legend",min:O?-2:0,max:O?3:1,dflt:U}},"y"),v("traceorder",b),r.isGrouped(n[a])&&v("tracegroupgap"),v("entrywidth"),v("entrywidthmode"),v("indentation"),v("itemsizing"),v("itemwidth"),v("itemclick"),v("itemdoubleclick"),v("groupclick"),v("xanchor",Q),v("yanchor",W),v("valign"),x.noneOrAll(c,h,["x","y"]);var ue=v("title.text");if(ue){v("title.side",B?"left":"top");var se=x.extendFlat({},p,{size:x.bigFont(p.size)});x.coerceFont(v,"title.font",se)}}}}H.exports=function(i,n,s){var c,h=s.slice(),v=n.shapes;if(v)for(c=0;c<v.length;c++){var p=v[c];if(p.showlegend){var T={_input:p._input,visible:p.visible,showlegend:p.showlegend,legend:p.legend};h.push(T)}}var l=["legend"];for(c=0;c<h.length;c++)x.pushUnique(l,h[c].legend);for(n._legends=[],c=0;c<l.length;c++){var _=l[c];o(_,i,n,h),n[_]&&n[_].visible&&(n[_]._id=_),n._legends.push(_)}}}}),uO=Ye({"src/components/legend/handle_click.js"(X,H){"use strict";var g=Hn(),x=ta(),A=x.pushUnique,M=!0;H.exports=function(t,r,o){var a=r._fullLayout;if(r._dragged||r._editing)return;var i=a.legend.itemclick,n=a.legend.itemdoubleclick,s=a.legend.groupclick;o===1&&i==="toggle"&&n==="toggleothers"&&M&&r.data&&r._context.showTips&&x.notifier(x._(r,"Double-click on legend to isolate one trace"),"long"),M=!1;var c;if(o===1?c=i:o===2&&(c=n),!c)return;var h=s==="togglegroup",v=a.hiddenlabels?a.hiddenlabels.slice():[],p=t.data()[0][0];if(p.groupTitle&&p.noClick)return;var T=r._fullData,l=(a.shapes||[]).filter(function(Me){return Me.showlegend}),_=T.concat(l),w=p.trace;w._isShape&&(w=w._fullInput);var S=w.legendgroup,E,m,b,d,u,y,f={},P=[],L=[],z=[];function F(Me,ge){var ce=P.indexOf(Me),ze=f.visible;return ze||(ze=f.visible=[]),P.indexOf(Me)===-1&&(P.push(Me),ce=P.length-1),ze[ce]=ge,ce}var B=(a.shapes||[]).map(function(Me){return Me._input}),O=!1;function I(Me,ge){B[Me].visible=ge,O=!0}function N(Me,ge){if(!(p.groupTitle&&!h)){var ce=Me._fullInput||Me,ze=ce._isShape,tt=ce.index;tt===void 0&&(tt=ce._index);var nt=ce.visible===!1?!1:ge;ze?I(tt,nt):F(tt,nt)}}var U=w.legend,W=w._fullInput,Q=W&&W._isShape;if(!Q&&g.traceIs(w,"pie-like")){var ue=p.label,se=v.indexOf(ue);if(c==="toggle")se===-1?v.push(ue):v.splice(se,1);else if(c==="toggleothers"){var he=se!==-1,G=[];for(E=0;E<r.calcdata.length;E++){var $=r.calcdata[E];for(m=0;m<$.length;m++){var J=$[m],Z=J.label;U===$[0].trace.legend&&ue!==Z&&(v.indexOf(Z)===-1&&(he=!0),A(v,Z),G.push(Z))}}if(!he)for(var re=0;re<G.length;re++){var ne=v.indexOf(G[re]);ne!==-1&&v.splice(ne,1)}}g.call("_guiRelayout",r,"hiddenlabels",v)}else{var j=S&&S.length,ee=[],ie;if(j)for(E=0;E<_.length;E++)ie=_[E],ie.visible&&ie.legendgroup===S&&ee.push(E);if(c==="toggle"){var fe;switch(w.visible){case!0:fe="legendonly";break;case!1:fe=!1;break;case"legendonly":fe=!0;break}if(j)if(h)for(E=0;E<_.length;E++){var be=_[E];be.visible!==!1&&be.legendgroup===S&&N(be,fe)}else N(w,fe);else N(w,fe)}else if(c==="toggleothers"){var Ae,Be,Ie,Ze,at,it=!0;for(E=0;E<_.length;E++)if(at=_[E],Ae=at===w,Ie=at.showlegend!==!0,!(Ae||Ie)&&(Be=j&&at.legendgroup===S,!Be&&at.legend===U&&at.visible===!0&&!g.traceIs(at,"notLegendIsolatable"))){it=!1;break}for(E=0;E<_.length;E++)if(at=_[E],!(at.visible===!1||at.legend!==U)&&!g.traceIs(at,"notLegendIsolatable"))switch(w.visible){case"legendonly":N(at,!0);break;case!0:Ze=it?!0:"legendonly",Ae=at===w,Ie=at.showlegend!==!0&&!at.legendgroup,Be=Ae||j&&at.legendgroup===S,N(at,Be||Ie?!0:Ze);break}}for(E=0;E<L.length;E++)if(b=L[E],!!b){var et=b.constructUpdate(),lt=Object.keys(et);for(m=0;m<lt.length;m++)d=lt[m],y=f[d]=f[d]||[],y[z[E]]=et[d]}for(u=Object.keys(f),E=0;E<u.length;E++)for(d=u[E],m=0;m<P.length;m++)f[d].hasOwnProperty(m)||(f[d][m]=void 0);O?g.call("_guiUpdate",r,f,{shapes:B},P):g.call("_guiRestyle",r,f,P)}}}}),dS=Ye({"src/components/legend/constants.js"(X,H){"use strict";H.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}}}),cO=Ye({"src/components/legend/get_legend_data.js"(X,H){"use strict";var g=Hn(),x=x2();H.exports=function(M,e,t){var r=e._inHover,o=x.isGrouped(e),a=x.isReversed(e),i={},n=[],s=!1,c={},h=0,v=0,p,T;function l(N,U,W){if(e.visible!==!1&&!(t&&N!==e._id))if(U===""||!x.isGrouped(e)){var Q="~~i"+h;n.push(Q),i[Q]=[W],h++}else n.indexOf(U)===-1?(n.push(U),s=!0,i[U]=[W]):i[U].push(W)}for(p=0;p<M.length;p++){var _=M[p],w=_[0],S=w.trace,E=S.legend,m=S.legendgroup;if(!(!r&&(!S.visible||!S.showlegend)))if(g.traceIs(S,"pie-like"))for(c[m]||(c[m]={}),T=0;T<_.length;T++){var b=_[T].label;c[m][b]||(l(E,m,{label:b,color:_[T].color,i:_[T].i,trace:S,pts:_[T].pts}),c[m][b]=!0,v=Math.max(v,(b||"").length))}else l(E,m,w),v=Math.max(v,(S.name||"").length)}if(!n.length)return[];var d=!s||!o,u=[];for(p=0;p<n.length;p++){var y=i[n[p]];d?u.push(y[0]):u.push(y)}for(d&&(u=[u]),p=0;p<u.length;p++){var f=1/0;for(T=0;T<u[p].length;T++){var P=u[p][T].trace.legendrank;f>P&&(f=P)}u[p][0]._groupMinRank=f,u[p][0]._preGroupSort=p}var L=function(N,U){return N[0]._groupMinRank-U[0]._groupMinRank||N[0]._preGroupSort-U[0]._preGroupSort},z=function(N,U){return N.trace.legendrank-U.trace.legendrank||N._preSort-U._preSort};for(u.forEach(function(N,U){N[0]._preGroupSort=U}),u.sort(L),p=0;p<u.length;p++){u[p].forEach(function(N,U){N._preSort=U}),u[p].sort(z);var F=u[p][0].trace,B=null;for(T=0;T<u[p].length;T++){var O=u[p][T].trace.legendgrouptitle;if(O&&O.text){B=O,r&&(O.font=e._groupTitleFont);break}}if(a&&u[p].reverse(),B){var I=!1;for(T=0;T<u[p].length;T++)if(g.traceIs(u[p][T].trace,"pie-like")){I=!0;break}u[p].unshift({i:-1,groupTitle:B,noClick:I,trace:{showlegend:F.showlegend,legendgroup:F.legendgroup,visible:e.groupclick==="toggleitem"?!0:F.visible}})}for(T=0;T<u[p].length;T++)u[p][T]=[u[p][T]]}return e._lgroupsLength=u.length,e._maxNameLength=v,u}}}),eg=Ye({"src/traces/pie/helpers.js"(X){"use strict";var H=ta();function g(x){return x.indexOf("e")!==-1?x.replace(/[.]?0+e/,"e"):x.indexOf(".")!==-1?x.replace(/[.]?0+$/,""):x}X.formatPiePercent=function(A,M){var e=g((A*100).toPrecision(3));return H.numSeparate(e,M)+"%"},X.formatPieValue=function(A,M){var e=g(A.toPrecision(10));return H.numSeparate(e,M)},X.getFirstFilled=function(A,M){if(H.isArrayOrTypedArray(A))for(var e=0;e<M.length;e++){var t=A[M[e]];if(t||t===0||t==="")return t}},X.castOption=function(A,M){if(H.isArrayOrTypedArray(A))return X.getFirstFilled(A,M);if(A)return A},X.getRotationAngle=function(x){return(x==="auto"?0:x)*Math.PI/180}}}),fO=Ye({"src/traces/pie/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r){var o=t.marker.pattern;o&&o.shape?g.pointStyle(M,t,r,e):x.fill(M,e.color)}}}),a1=Ye({"src/traces/pie/style_one.js"(X,H){"use strict";var g=Fn(),x=eg().castOption,A=fO();H.exports=function(e,t,r,o){var a=r.marker.line,i=x(a.color,t.pts)||g.defaultLine,n=x(a.width,t.pts)||0;e.call(A,t,r,o).style("stroke-width",n).call(g.stroke,i)}}}),vS=Ye({"src/components/legend/style.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=A.strTranslate,e=Bo(),t=Fn(),r=Up().extractOpts,o=uu(),a=a1(),i=eg().castOption,n=dS(),s=12,c=5,h=2,v=10,p=5;H.exports=function(S,E,m){var b=E._fullLayout;m||(m=b.legend);var d=m.itemsizing==="constant",u=m.itemwidth,y=(u+n.itemGap*2)/2,f=M(y,0),P=function(G,$,J,Z){var re;if(G+1)re=G;else if($&&$.width>0)re=$.width;else return 0;return d?Z:Math.min(re,J)};S.each(function(G){var $=g.select(this),J=A.ensureSingle($,"g","layers");J.style("opacity",G[0].trace.opacity);var Z=m.indentation,re=m.valign,ne=G[0].lineHeight,j=G[0].height;if(re==="middle"&&Z===0||!ne||!j)J.attr("transform",null);else{var ee={top:1,bottom:-1}[re],ie=ee*(.5*(ne-j+3))||0,fe=m.indentation;J.attr("transform",M(fe,ie))}var be=J.selectAll("g.legendfill").data([G]);be.enter().append("g").classed("legendfill",!0);var Ae=J.selectAll("g.legendlines").data([G]);Ae.enter().append("g").classed("legendlines",!0);var Be=J.selectAll("g.legendsymbols").data([G]);Be.enter().append("g").classed("legendsymbols",!0),Be.selectAll("g.legendpoints").data([G]).enter().append("g").classed("legendpoints",!0)}).each(he).each(F).each(O).each(B).each(N).each(ue).each(Q).each(L).each(z).each(U).each(W);function L(G){var $=l(G),J=$.showFill,Z=$.showLine,re=$.showGradientLine,ne=$.showGradientFill,j=$.anyFill,ee=$.anyLine,ie=G[0],fe=ie.trace,be,Ae,Be=r(fe),Ie=Be.colorscale,Ze=Be.reversescale,at=function(ze){if(ze.size())if(J)e.fillGroupStyle(ze,E,!0);else{var tt="legendfill-"+fe.uid;e.gradient(ze,E,tt,T(Ze),Ie,"fill")}},it=function(ze){if(ze.size()){var tt="legendline-"+fe.uid;e.lineGroupStyle(ze),e.gradient(ze,E,tt,T(Ze),Ie,"stroke")}},et=o.hasMarkers(fe)||!j?"M5,0":ee?"M5,-2":"M5,-3",lt=g.select(this),Me=lt.select(".legendfill").selectAll("path").data(J||ne?[G]:[]);if(Me.enter().append("path").classed("js-fill",!0),Me.exit().remove(),Me.attr("d",et+"h"+u+"v6h-"+u+"z").call(at),Z||re){var ge=P(void 0,fe.line,v,c);Ae=A.minExtend(fe,{line:{width:ge}}),be=[A.minExtend(ie,{trace:Ae})]}var ce=lt.select(".legendlines").selectAll("path").data(Z||re?[be]:[]);ce.enter().append("path").classed("js-line",!0),ce.exit().remove(),ce.attr("d",et+(re?"l"+u+",0.0001":"h"+u)).call(Z?e.lineGroupStyle:it)}function z(G){var $=l(G),J=$.anyFill,Z=$.anyLine,re=$.showLine,ne=$.showMarker,j=G[0],ee=j.trace,ie=!ne&&!Z&&!J&&o.hasText(ee),fe,be;function Ae(Me,ge,ce,ze){var tt=A.nestedProperty(ee,Me).get(),nt=A.isArrayOrTypedArray(tt)&&ge?ge(tt):tt;if(d&&nt&&ze!==void 0&&(nt=ze),ce){if(nt<ce[0])return ce[0];if(nt>ce[1])return ce[1]}return nt}function Be(Me){return j._distinct&&j.index&&Me[j.index]?Me[j.index]:Me[0]}if(ne||ie||re){var Ie={},Ze={};if(ne){Ie.mc=Ae("marker.color",Be),Ie.mx=Ae("marker.symbol",Be),Ie.mo=Ae("marker.opacity",A.mean,[.2,1]),Ie.mlc=Ae("marker.line.color",Be),Ie.mlw=Ae("marker.line.width",A.mean,[0,5],h),Ze.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var at=Ae("marker.size",A.mean,[2,16],s);Ie.ms=at,Ze.marker.size=at}re&&(Ze.line={width:Ae("line.width",Be,[0,10],c)}),ie&&(Ie.tx="Aa",Ie.tp=Ae("textposition",Be),Ie.ts=10,Ie.tc=Ae("textfont.color",Be),Ie.tf=Ae("textfont.family",Be),Ie.tw=Ae("textfont.weight",Be),Ie.ty=Ae("textfont.style",Be),Ie.tv=Ae("textfont.variant",Be),Ie.tC=Ae("textfont.textcase",Be),Ie.tE=Ae("textfont.lineposition",Be),Ie.tS=Ae("textfont.shadow",Be)),fe=[A.minExtend(j,Ie)],be=A.minExtend(ee,Ze),be.selectedpoints=null,be.texttemplate=null}var it=g.select(this).select("g.legendpoints"),et=it.selectAll("path.scatterpts").data(ne?fe:[]);et.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",f),et.exit().remove(),et.call(e.pointStyle,be,E),ne&&(fe[0].mrc=3);var lt=it.selectAll("g.pointtext").data(ie?fe:[]);lt.enter().append("g").classed("pointtext",!0).append("text").attr("transform",f),lt.exit().remove(),lt.selectAll("text").call(e.textPointStyle,be,E)}function F(G){var $=G[0].trace,J=$.type==="waterfall";if(G[0]._distinct&&J){var Z=G[0].trace[G[0].dir].marker;return G[0].mc=Z.color,G[0].mlw=Z.line.width,G[0].mlc=Z.line.color,I(G,this,"waterfall")}var re=[];$.visible&&J&&(re=G[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var ne=g.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(re);ne.enter().append("path").classed("legendwaterfall",!0).attr("transform",f).style("stroke-miterlimit",1),ne.exit().remove(),ne.each(function(j){var ee=g.select(this),ie=$[j[0]].marker,fe=P(void 0,ie.line,p,h);ee.attr("d",j[1]).style("stroke-width",fe+"px").call(t.fill,ie.color),fe&&ee.call(t.stroke,ie.line.color)})}function B(G){I(G,this)}function O(G){I(G,this,"funnel")}function I(G,$,J){var Z=G[0].trace,re=Z.marker||{},ne=re.line||{},j=re.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",ee=J?Z.visible&&Z.type===J:x.traceIs(Z,"bar"),ie=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ee?[G]:[]);ie.enter().append("path").classed("legend"+J,!0).attr("d",j).attr("transform",f),ie.exit().remove(),ie.each(function(fe){var be=g.select(this),Ae=fe[0],Be=P(Ae.mlw,re.line,p,h);be.style("stroke-width",Be+"px");var Ie=Ae.mcc;if(!m._inHover&&"mc"in Ae){var Ze=r(re),at=Ze.mid;at===void 0&&(at=(Ze.max+Ze.min)/2),Ie=e.tryColorscale(re,"")(at)}var it=Ie||Ae.mc||re.color,et=re.pattern,lt=et&&e.getPatternAttr(et.shape,0,"");if(lt){var Me=e.getPatternAttr(et.bgcolor,0,null),ge=e.getPatternAttr(et.fgcolor,0,null),ce=et.fgopacity,ze=_(et.size,8,10),tt=_(et.solidity,.5,1),nt="legend-"+Z.uid;be.call(e.pattern,"legend",E,nt,lt,ze,tt,Ie,et.fillmode,Me,ge,ce)}else be.call(t.fill,it);Be&&t.stroke(be,Ae.mlc||ne.color)})}function N(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendbox").data($.visible&&x.traceIs($,"box-violin")?[G]:[]);J.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),J.exit().remove(),J.each(function(){var Z=g.select(this);if(($.boxpoints==="all"||$.points==="all")&&t.opacity($.fillcolor)===0&&t.opacity(($.line||{}).color)===0){var re=A.minExtend($,{marker:{size:d?s:A.constrain($.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});J.call(e.pointStyle,re,E)}else{var ne=P(void 0,$.line,p,h);Z.style("stroke-width",ne+"px").call(t.fill,$.fillcolor),ne&&t.stroke(Z,$.line.color)}})}function U(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendcandle").data($.visible&&$.type==="candlestick"?[G,G]:[]);J.enter().append("path").classed("legendcandle",!0).attr("d",function(Z,re){return re?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("stroke-width",ee+"px").call(t.fill,j.fillcolor),ee&&t.stroke(ne,j.line.color)})}function W(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendohlc").data($.visible&&$.type==="ohlc"?[G,G]:[]);J.enter().append("path").classed("legendohlc",!0).attr("d",function(Z,re){return re?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("fill","none").call(e.dashLine,j.line.dash,ee),ee&&t.stroke(ne,j.line.color)})}function Q(G){se(G,this,"pie")}function ue(G){se(G,this,"funnelarea")}function se(G,$,J){var Z=G[0],re=Z.trace,ne=J?re.visible&&re.type===J:x.traceIs(re,J),j=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ne?[G]:[]);if(j.enter().append("path").classed("legend"+J,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),j.exit().remove(),j.size()){var ee=re.marker||{},ie=P(i(ee.line.width,Z.pts),ee.line,p,h),fe="pieLike",be=A.minExtend(re,{marker:{line:{width:ie}}},fe),Ae=A.minExtend(Z,{trace:be},fe);a(j,Ae,be,E)}}function he(G){var $=G[0].trace,J,Z=[];if($.visible)switch($.type){case"histogram2d":case"heatmap":Z=[["M-15,-2V4H15V-2Z"]],J=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":Z=[["M-6,-6V6H6V-6Z"]],J=!0;break;case"densitymapbox":case"densitymap":Z=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],J="radial";break;case"cone":Z=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],J=!1;break;case"streamtube":Z=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],J=!1;break;case"surface":Z=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],J=!0;break;case"mesh3d":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!1;break;case"volume":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!0;break;case"isosurface":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],J=!1;break}var re=g.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(Z);re.enter().append("path").classed("legend3dandfriends",!0).attr("transform",f).style("stroke-miterlimit",1),re.exit().remove(),re.each(function(ne,j){var ee=g.select(this),ie=r($),fe=ie.colorscale,be=ie.reversescale,Ae=function(at){if(at.size()){var it="legendfill-"+$.uid;e.gradient(at,E,it,T(be,J==="radial"),fe,"fill")}},Be;if(fe){if(!J){var Ze=fe.length;Be=j===0?fe[be?Ze-1:0][1]:j===1?fe[be?0:Ze-1][1]:fe[Math.floor((Ze-1)/2)][1]}}else{var Ie=$.vertexcolor||$.facecolor||$.color;Be=A.isArrayOrTypedArray(Ie)?Ie[j]||Ie[0]:Ie}ee.attr("d",ne[0]),Be?ee.call(t.fill,Be):ee.call(Ae)})}};function T(w,S){var E=S?"radial":"horizontal";return E+(w?"":"reversed")}function l(w){var S=w[0].trace,E=S.contours,m=o.hasLines(S),b=o.hasMarkers(S),d=S.visible&&S.fill&&S.fill!=="none",u=!1,y=!1;if(E){var f=E.coloring;f==="lines"?u=!0:m=f==="none"||f==="heatmap"||E.showlines,E.type==="constraint"?d=E._operation!=="=":(f==="fill"||f==="heatmap")&&(y=!0)}return{showMarker:b,showLine:m,showFill:d,showGradientLine:u,showGradientFill:y,anyLine:m||u,anyFill:d||y}}function _(w,S,E){return w&&A.isArrayOrTypedArray(w)?S:w>E?E:w}}}),mS=Ye({"src/components/legend/draw.js"(X,H){"use strict";var g=_n(),x=ta(),A=Gu(),M=Hn(),e=$y(),t=bp(),r=Bo(),o=Fn(),a=jl(),i=uO(),n=dS(),s=oh(),c=s.LINE_SPACING,h=s.FROM_TL,v=s.FROM_BR,p=cO(),T=vS(),l=x2(),_=1,w=/^legend[0-9]*$/;H.exports=function(U,W){if(W)E(U,W);else{var Q=U._fullLayout,ue=Q._legends,se=Q._infolayer.selectAll('[class^="legend"]');se.each(function(){var J=g.select(this),Z=J.attr("class"),re=Z.split(" ")[0];re.match(w)&&ue.indexOf(re)===-1&&J.remove()});for(var he=0;he<ue.length;he++){var G=ue[he],$=U._fullLayout[G];E(U,$)}}};function S(N,U,W){if(!(U.title.side!=="top center"&&U.title.side!=="top right")){var Q=U.title.font,ue=Q.size*c,se=0,he=N.node(),G=r.bBox(he).width;U.title.side==="top center"?se=.5*(U._width-2*W-2*n.titlePad-G):U.title.side==="top right"&&(se=U._width-2*W-2*n.titlePad-G),a.positionText(N,W+n.titlePad+se,W+ue)}}function E(N,U){var W=U||{},Q=N._fullLayout,ue=I(W),se,he,G=W._inHover;if(G?(he=W.layer,se="hover"):(he=Q._infolayer,se=ue),!!he){se+=Q._uid,N._legendMouseDownTime||(N._legendMouseDownTime=0);var $;if(G){if(!W.entries)return;$=p(W.entries,W)}else{for(var J=(N.calcdata||[]).slice(),Z=Q.shapes,re=0;re<Z.length;re++){var ne=Z[re];if(ne.showlegend){var j={_isShape:!0,_fullInput:ne,index:ne._index,name:ne.name||ne.label.text||"shape "+ne._index,legend:ne.legend,legendgroup:ne.legendgroup,legendgrouptitle:ne.legendgrouptitle,legendrank:ne.legendrank,legendwidth:ne.legendwidth,showlegend:ne.showlegend,visible:ne.visible,opacity:ne.opacity,mode:ne.type==="line"?"lines":"markers",line:ne.line,marker:{line:ne.line,color:ne.fillcolor,size:12,symbol:ne.type==="rect"?"square":ne.type==="circle"?"circle":"hexagon2"}};J.push([{trace:j}])}}$=Q.showlegend&&p(J,W,Q._legends.length>1)}var ee=Q.hiddenlabels||[];if(!G&&(!Q.showlegend||!$.length))return he.selectAll("."+ue).remove(),Q._topdefs.select("#"+se).remove(),A.autoMargin(N,ue);var ie=x.ensureSingle(he,"g",ue,function(et){G||et.attr("pointer-events","all")}),fe=x.ensureSingleById(Q._topdefs,"clipPath",se,function(et){et.append("rect")}),be=x.ensureSingle(ie,"rect","bg",function(et){et.attr("shape-rendering","crispEdges")});be.call(o.stroke,W.bordercolor).call(o.fill,W.bgcolor).style("stroke-width",W.borderwidth+"px");var Ae=x.ensureSingle(ie,"g","scrollbox"),Be=W.title;W._titleWidth=0,W._titleHeight=0;var Ie;Be.text?(Ie=x.ensureSingle(Ae,"text",ue+"titletext"),Ie.attr("text-anchor","start").call(r.font,Be.font).text(Be.text),f(Ie,Ae,N,W,_)):Ae.selectAll("."+ue+"titletext").remove();var Ze=x.ensureSingle(ie,"rect","scrollbar",function(et){et.attr(n.scrollBarEnterAttrs).call(o.fill,n.scrollBarColor)}),at=Ae.selectAll("g.groups").data($);at.enter().append("g").attr("class","groups"),at.exit().remove();var it=at.selectAll("g.traces").data(x.identity);it.enter().append("g").attr("class","traces"),it.exit().remove(),it.style("opacity",function(et){var lt=et[0].trace;return M.traceIs(lt,"pie-like")?ee.indexOf(et[0].label)!==-1?.5:1:lt.visible==="legendonly"?.5:1}).each(function(){g.select(this).call(d,N,W)}).call(T,N,W).each(function(){G||g.select(this).call(y,N,ue)}),x.syncOrAsync([A.previousPromises,function(){return z(N,at,it,W)},function(){var et=Q._size,lt=W.borderwidth,Me=W.xref==="paper",ge=W.yref==="paper";if(Be.text&&S(Ie,W,lt),!G){var ce,ze;Me?ce=et.l+et.w*W.x-h[B(W)]*W._width:ce=Q.width*W.x-h[B(W)]*W._width,ge?ze=et.t+et.h*(1-W.y)-h[O(W)]*W._effHeight:ze=Q.height*(1-W.y)-h[O(W)]*W._effHeight;var tt=F(N,ue,ce,ze);if(tt)return;if(Q.margin.autoexpand){var nt=ce,Qe=ze;ce=Me?x.constrain(ce,0,Q.width-W._width):nt,ze=ge?x.constrain(ze,0,Q.height-W._effHeight):Qe,ce!==nt&&x.log("Constrain "+ue+".x to make legend fit inside graph"),ze!==Qe&&x.log("Constrain "+ue+".y to make legend fit inside graph")}r.setTranslate(ie,ce,ze)}if(Ze.on(".drag",null),ie.on("wheel",null),G||W._height<=W._maxHeight||N._context.staticPlot){var Ct=W._effHeight;G&&(Ct=W._height),be.attr({width:W._width-lt,height:Ct-lt,x:lt/2,y:lt/2}),r.setTranslate(Ae,0,0),fe.select("rect").attr({width:W._width-2*lt,height:Ct-2*lt,x:lt,y:lt}),r.setClipUrl(Ae,se,N),r.setRect(Ze,0,0,0,0),delete W._scrollY}else{var St=Math.max(n.scrollBarMinHeight,W._effHeight*W._effHeight/W._height),Ot=W._effHeight-St-2*n.scrollBarMargin,jt=W._height-W._effHeight,ur=Ot/jt,ar=Math.min(W._scrollY||0,jt);be.attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-lt,x:lt/2,y:lt/2}),fe.select("rect").attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-2*lt,x:lt,y:lt+ar}),r.setClipUrl(Ae,se,N),Ee(ar,St,ur),ie.on("wheel",function(){ar=x.constrain(W._scrollY+g.event.deltaY/Ot*jt,0,jt),Ee(ar,St,ur),ar!==0&&ar!==jt&&g.event.preventDefault()});var Cr,vr,_r,yt=function(rt,dt,xt){var It=(xt-dt)/ur+rt;return x.constrain(It,0,jt)},Fe=function(rt,dt,xt){var It=(dt-xt)/ur+rt;return x.constrain(It,0,jt)},Ke=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"?Cr=rt.changedTouches[0].clientY:Cr=rt.clientY,_r=ar}).on("drag",function(){var rt=g.event.sourceEvent;rt.buttons===2||rt.ctrlKey||(rt.type==="touchmove"?vr=rt.changedTouches[0].clientY:vr=rt.clientY,ar=yt(_r,Cr,vr),Ee(ar,St,ur))});Ze.call(Ke);var Ne=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"&&(Cr=rt.changedTouches[0].clientY,_r=ar)}).on("drag",function(){var rt=g.event.sourceEvent;rt.type==="touchmove"&&(vr=rt.changedTouches[0].clientY,ar=Fe(_r,Cr,vr),Ee(ar,St,ur))});Ae.call(Ne)}function Ee(rt,dt,xt){W._scrollY=N._fullLayout[ue]._scrollY=rt,r.setTranslate(Ae,0,-rt),r.setRect(Ze,W._width,n.scrollBarMargin+rt*xt,n.scrollBarWidth,dt),fe.select("rect").attr("y",lt+rt)}if(N._context.edits.legendPosition){var Ve,ke,Te,Le;ie.classed("cursor-move",!0),t.init({element:ie.node(),gd:N,prepFn:function(rt){if(rt.target!==Ze.node()){var dt=r.getTranslate(ie);Te=dt.x,Le=dt.y}},moveFn:function(rt,dt){if(Te!==void 0&&Le!==void 0){var xt=Te+rt,It=Le+dt;r.setTranslate(ie,xt,It),Ve=t.align(xt,W._width,et.l,et.l+et.w,W.xanchor),ke=t.align(It+W._height,-W._height,et.t+et.h,et.t,W.yanchor)}},doneFn:function(){if(Ve!==void 0&&ke!==void 0){var rt={};rt[ue+".x"]=Ve,rt[ue+".y"]=ke,M.call("_guiRelayout",N,rt)}},clickFn:function(rt,dt){var xt=he.selectAll("g.traces").filter(function(){var It=this.getBoundingClientRect();return dt.clientX>=It.left&&dt.clientX<=It.right&&dt.clientY>=It.top&&dt.clientY<=It.bottom});xt.size()>0&&b(N,ie,xt,rt,dt)}})}}],N)}}function m(N,U,W){var Q=N[0],ue=Q.width,se=U.entrywidthmode,he=Q.trace.legendwidth||U.entrywidth;return se==="fraction"?U._maxWidth*he:W+(he||ue)}function b(N,U,W,Q,ue){var se=W.data()[0][0].trace,he={event:ue,node:W.node(),curveNumber:se.index,expandedIndex:se.index,data:N.data,layout:N.layout,frames:N._transitionData._frames,config:N._context,fullData:N._fullData,fullLayout:N._fullLayout};se._group&&(he.group=se._group),M.traceIs(se,"pie-like")&&(he.label=W.datum()[0].label);var G=e.triggerHandler(N,"plotly_legendclick",he);if(Q===1){if(G===!1)return;U._clickTimeout=setTimeout(function(){N._fullLayout&&i(W,N,Q)},N._context.doubleClickDelay)}else if(Q===2){U._clickTimeout&&clearTimeout(U._clickTimeout),N._legendMouseDownTime=0;var $=e.triggerHandler(N,"plotly_legenddoubleclick",he);$!==!1&&G!==!1&&i(W,N,Q)}}function d(N,U,W){var Q=I(W),ue=N.data()[0][0],se=ue.trace,he=M.traceIs(se,"pie-like"),G=!W._inHover&&U._context.edits.legendText&&!he,$=W._maxNameLength,J,Z;ue.groupTitle?(J=ue.groupTitle.text,Z=ue.groupTitle.font):(Z=W.font,W.entries?J=ue.text:(J=he?ue.label:se.name,se._meta&&(J=x.templateString(J,se._meta))));var re=x.ensureSingle(N,"text",Q+"text");re.attr("text-anchor","start").call(r.font,Z).text(G?u(J,$):J);var ne=W.indentation+W.itemwidth+n.itemGap*2;a.positionText(re,ne,0),G?re.call(a.makeEditable,{gd:U,text:J}).call(f,N,U,W).on("edit",function(j){this.text(u(j,$)).call(f,N,U,W);var ee=ue.trace._fullInput||{},ie={};return ie.name=j,ee._isShape?M.call("_guiRelayout",U,"shapes["+se.index+"].name",ie.name):M.call("_guiRestyle",U,ie,se.index)}):f(re,N,U,W)}function u(N,U){var W=Math.max(4,U);if(N&&N.trim().length>=W/2)return N;N=N||"";for(var Q=W-N.length;Q>0;Q--)N+=" ";return N}function y(N,U,W){var Q=U._context.doubleClickDelay,ue,se=1,he=x.ensureSingle(N,"rect",W+"toggle",function(G){U._context.staticPlot||G.style("cursor","pointer").attr("pointer-events","all"),G.call(o.fill,"rgba(0,0,0,0)")});U._context.staticPlot||(he.on("mousedown",function(){ue=new Date().getTime(),ue-U._legendMouseDownTime<Q?se+=1:(se=1,U._legendMouseDownTime=ue)}),he.on("mouseup",function(){if(!(U._dragged||U._editing)){var G=U._fullLayout[W];new Date().getTime()-U._legendMouseDownTime>Q&&(se=Math.max(se-1,1)),b(U,G,N,se,g.event)}}))}function f(N,U,W,Q,ue){Q._inHover&&N.attr("data-notex",!0),a.convertToTspans(N,W,function(){P(U,W,Q,ue)})}function P(N,U,W,Q){var ue=N.data()[0][0];if(!W._inHover&&ue&&!ue.trace.showlegend){N.remove();return}var se=N.select("g[class*=math-group]"),he=se.node(),G=I(W);W||(W=U._fullLayout[G]);var $=W.borderwidth,J;Q===_?J=W.title.font:ue.groupTitle?J=ue.groupTitle.font:J=W.font;var Z=J.size*c,re,ne;if(he){var j=r.bBox(he);re=j.height,ne=j.width,Q===_?r.setTranslate(se,$,$+re*.75):r.setTranslate(se,0,re*.25)}else{var ee="."+G+(Q===_?"title":"")+"text",ie=N.select(ee),fe=a.lineCount(ie),be=ie.node();if(re=Z*fe,ne=be?r.bBox(be).width:0,Q===_)W.title.side==="left"&&(ne+=n.itemGap*2),a.positionText(ie,$+n.titlePad,$+Z);else{var Ae=n.itemGap*2+W.indentation+W.itemwidth;ue.groupTitle&&(Ae=n.itemGap,ne-=W.indentation+W.itemwidth),a.positionText(ie,Ae,-Z*((fe-1)/2-.3))}}Q===_?(W._titleWidth=ne,W._titleHeight=re):(ue.lineHeight=Z,ue.height=Math.max(re,16)+3,ue.width=ne)}function L(N){var U=0,W=0,Q=N.title.side;return Q&&(Q.indexOf("left")!==-1&&(U=N._titleWidth),Q.indexOf("top")!==-1&&(W=N._titleHeight)),[U,W]}function z(N,U,W,Q){var ue=N._fullLayout,se=I(Q);Q||(Q=ue[se]);var he=ue._size,G=l.isVertical(Q),$=l.isGrouped(Q),J=Q.entrywidthmode==="fraction",Z=Q.borderwidth,re=2*Z,ne=n.itemGap,j=Q.indentation+Q.itemwidth+ne*2,ee=2*(Z+ne),ie=O(Q),fe=Q.y<0||Q.y===0&&ie==="top",be=Q.y>1||Q.y===1&&ie==="bottom",Ae=Q.tracegroupgap,Be={};Q._maxHeight=Math.max(fe||be?ue.height/2:he.h,30);var Ie=0;Q._width=0,Q._height=0;var Ze=L(Q);if(G)W.each(function(_r){var yt=_r[0].height;r.setTranslate(this,Z+Ze[0],Z+Ze[1]+Q._height+yt/2+ne),Q._height+=yt,Q._width=Math.max(Q._width,_r[0].width)}),Ie=j+Q._width,Q._width+=ne+j+re,Q._height+=ee,$&&(U.each(function(_r,yt){r.setTranslate(this,0,yt*Q.tracegroupgap)}),Q._height+=(Q._lgroupsLength-1)*Q.tracegroupgap);else{var at=B(Q),it=Q.x<0||Q.x===0&&at==="right",et=Q.x>1||Q.x===1&&at==="left",lt=be||fe,Me=ue.width/2;Q._maxWidth=Math.max(it?lt&&at==="left"?he.l+he.w:Me:et?lt&&at==="right"?he.r+he.w:Me:he.w,2*j);var ge=0,ce=0;W.each(function(_r){var yt=m(_r,Q,j);ge=Math.max(ge,yt),ce+=yt}),Ie=null;var ze=0;if($){var tt=0,nt=0,Qe=0;U.each(function(){var _r=0,yt=0;g.select(this).selectAll("g.traces").each(function(Ke){var Ne=m(Ke,Q,j),Ee=Ke[0].height;r.setTranslate(this,Ze[0],Ze[1]+Z+ne+Ee/2+yt),yt+=Ee,_r=Math.max(_r,Ne),Be[Ke[0].trace.legendgroup]=_r});var Fe=_r+ne;nt>0&&Fe+Z+nt>Q._maxWidth?(ze=Math.max(ze,nt),nt=0,Qe+=tt+Ae,tt=yt):tt=Math.max(tt,yt),r.setTranslate(this,nt,Qe),nt+=Fe}),Q._width=Math.max(ze,nt)+Z,Q._height=Qe+tt+ee}else{var Ct=W.size(),St=ce+re+(Ct-1)*ne<Q._maxWidth,Ot=0,jt=0,ur=0,ar=0;W.each(function(_r){var yt=_r[0].height,Fe=m(_r,Q,j,$),Ke=St?Fe:ge;J||(Ke+=ne),Ke+Z+jt-ne>=Q._maxWidth&&(ze=Math.max(ze,ar),jt=0,ur+=Ot,Q._height+=Ot,Ot=0),r.setTranslate(this,Ze[0]+Z+jt,Ze[1]+Z+ur+yt/2+ne),ar=jt+Fe+ne,jt+=Ke,Ot=Math.max(Ot,yt)}),St?(Q._width=jt+re,Q._height=Ot+ee):(Q._width=Math.max(ze,ar)+re,Q._height+=Ot+ee)}}Q._width=Math.ceil(Math.max(Q._width+Ze[0],Q._titleWidth+2*(Z+n.titlePad))),Q._height=Math.ceil(Math.max(Q._height+Ze[1],Q._titleHeight+2*(Z+n.itemGap))),Q._effHeight=Math.min(Q._height,Q._maxHeight);var Cr=N._context.edits,vr=Cr.legendText||Cr.legendPosition;W.each(function(_r){var yt=g.select(this).select("."+se+"toggle"),Fe=_r[0].height,Ke=_r[0].trace.legendgroup,Ne=m(_r,Q,j);$&&Ke!==""&&(Ne=Be[Ke]);var Ee=vr?j:Ie||Ne;!G&&!J&&(Ee+=ne/2),r.setRect(yt,0,-Fe/2,Ee,Fe)})}function F(N,U,W,Q){var ue=N._fullLayout,se=ue[U],he=B(se),G=O(se),$=se.xref==="paper",J=se.yref==="paper";N._fullLayout._reservedMargin[U]={};var Z=se.y<.5?"b":"t",re=se.x<.5?"l":"r",ne={r:ue.width-W,l:W+se._width,b:ue.height-Q,t:Q+se._effHeight};if($&&J)return A.autoMargin(N,U,{x:se.x,y:se.y,l:se._width*h[he],r:se._width*v[he],b:se._effHeight*v[G],t:se._effHeight*h[G]});$?N._fullLayout._reservedMargin[U][Z]=ne[Z]:J||se.orientation==="v"?N._fullLayout._reservedMargin[U][re]=ne[re]:N._fullLayout._reservedMargin[U][Z]=ne[Z]}function B(N){return x.isRightAnchor(N)?"right":x.isCenterAnchor(N)?"center":"left"}function O(N){return x.isBottomAnchor(N)?"bottom":x.isMiddleAnchor(N)?"middle":"top"}function I(N){return N._id||"legend"}}}),gS=Ye({"src/components/fx/hover.js"(X){"use strict";var H=_n(),g=jo(),x=bh(),A=ta(),M=A.pushUnique,e=A.strTranslate,t=A.strRotate,r=$y(),o=jl(),a=lO(),i=Bo(),n=Fn(),s=bp(),c=Co(),h=wh().zindexSeparator,v=Hn(),p=Qp(),T=x_(),l=pS(),_=mS(),w=T.YANGLE,S=Math.PI*w/180,E=1/Math.sin(S),m=Math.cos(S),b=Math.sin(S),d=T.HOVERARROWSIZE,u=T.HOVERTEXTPAD,y={box:!0,ohlc:!0,violin:!0,candlestick:!0},f={scatter:!0,scattergl:!0,splom:!0};function P(j,ee){return j.distance-ee.distance}X.hover=function(ee,ie,fe,be){ee=A.getGraphDiv(ee);var Ae=ie.target;A.throttle(ee._fullLayout._uid+T.HOVERID,T.HOVERMINTIME,function(){L(ee,ie,fe,be,Ae)})},X.loneHover=function(ee,ie){var fe=!0;Array.isArray(ee)||(fe=!1,ee=[ee]);var be=ie.gd,Ae=Z(be),Be=re(be),Ie=ee.map(function(ze){var tt=ze._x0||ze.x0||ze.x||0,nt=ze._x1||ze.x1||ze.x||0,Qe=ze._y0||ze.y0||ze.y||0,Ct=ze._y1||ze.y1||ze.y||0,St=ze.eventData;if(St){var Ot=Math.min(tt,nt),jt=Math.max(tt,nt),ur=Math.min(Qe,Ct),ar=Math.max(Qe,Ct),Cr=ze.trace;if(v.traceIs(Cr,"gl3d")){var vr=be._fullLayout[Cr.scene]._scene.container,_r=vr.offsetLeft,yt=vr.offsetTop;Ot+=_r,jt+=_r,ur+=yt,ar+=yt}St.bbox={x0:Ot+Be,x1:jt+Be,y0:ur+Ae,y1:ar+Ae},ie.inOut_bbox&&ie.inOut_bbox.push(St.bbox)}else St=!1;return{color:ze.color||n.defaultLine,x0:ze.x0||ze.x||0,x1:ze.x1||ze.x||0,y0:ze.y0||ze.y||0,y1:ze.y1||ze.y||0,xLabel:ze.xLabel,yLabel:ze.yLabel,zLabel:ze.zLabel,text:ze.text,name:ze.name,idealAlign:ze.idealAlign,borderColor:ze.borderColor,fontFamily:ze.fontFamily,fontSize:ze.fontSize,fontColor:ze.fontColor,fontWeight:ze.fontWeight,fontStyle:ze.fontStyle,fontVariant:ze.fontVariant,nameLength:ze.nameLength,textAlign:ze.textAlign,trace:ze.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:ze.hovertemplate||!1,hovertemplateLabels:ze.hovertemplateLabels||!1,eventData:St}}),Ze=!1,at=B(Ie,{gd:be,hovermode:"closest",rotateLabels:Ze,bgColor:ie.bgColor||n.background,container:H.select(ie.container),outerContainer:ie.outerContainer||ie.container}),it=at.hoverLabels,et=5,lt=0,Me=0;it.sort(function(ze,tt){return ze.y0-tt.y0}).each(function(ze,tt){var nt=ze.y0-ze.by/2;nt-et<lt?ze.offset=lt-nt+et:ze.offset=0,lt=nt+ze.by+ze.offset,tt===ie.anchorIndex&&(Me=ze.offset)}).each(function(ze){ze.offset-=Me});var ge=be._fullLayout._invScaleX,ce=be._fullLayout._invScaleY;return W(it,Ze,ge,ce),fe?it:it.node()};function L(j,ee,ie,fe,be){ie||(ie="xy"),typeof ie=="string"&&(ie=ie.split(h)[0]);var Ae=Array.isArray(ie)?ie:[ie],Be,Ie=j._fullLayout,Ze=Ie.hoversubplots,at=Ie._plots||[],it=at[ie],et=Ie._has("cartesian"),lt=ee.hovermode||Ie.hovermode,Me=(lt||"").charAt(0)==="x",ge=(lt||"").charAt(0)==="y",ce,ze;if(et&&(Me||ge)&&Ze==="axis"){for(var tt=Ae.length,nt=0;nt<tt;nt++)if(Be=Ae[nt],at[Be]){ce=c.getFromId(j,Be,"x"),ze=c.getFromId(j,Be,"y");var Qe=(Me?ce:ze)._subplotsWith;if(Qe&&Qe.length)for(var Ct=0;Ct<Qe.length;Ct++)M(Ae,Qe[Ct])}}if(it&&Ze!=="single"){var St=it.overlays.map(function(Xi){return Xi.id});Ae=Ae.concat(St)}for(var Ot=Ae.length,jt=new Array(Ot),ur=new Array(Ot),ar=!1,Cr=0;Cr<Ot;Cr++)if(Be=Ae[Cr],at[Be])ar=!0,jt[Cr]=at[Be].xaxis,ur[Cr]=at[Be].yaxis;else if(Ie[Be]&&Ie[Be]._subplot){var vr=Ie[Be]._subplot;jt[Cr]=vr.xaxis,ur[Cr]=vr.yaxis}else{A.warn("Unrecognized subplot: "+Be);return}if(lt&&!ar&&(lt="closest"),["x","y","closest","x unified","y unified"].indexOf(lt)===-1||!j.calcdata||j.querySelector(".zoombox")||j._dragging)return s.unhoverRaw(j,ee);var _r=Ie.hoverdistance;_r===-1&&(_r=1/0);var yt=Ie.spikedistance;yt===-1&&(yt=1/0);var Fe=[],Ke=[],Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr={hLinePoint:null,vLinePoint:null},sa=!1;if(Array.isArray(ee))for(lt="array",Ve=0;Ve<ee.length;Ve++)Te=j.calcdata[ee[Ve].curveNumber||0],Te&&(Le=Te[0].trace,Te[0].trace.hoverinfo!=="skip"&&(Ke.push(Te),Le.orientation==="h"&&(sa=!0)));else{var Aa=j.calcdata.slice();for(Aa.sort(function(Xi,Jo){var zo=Xi[0].trace.zorder||0,as=Jo[0].trace.zorder||0;return zo-as}),ke=0;ke<Aa.length;ke++)Te=Aa[ke],Le=Te[0].trace,Le.hoverinfo!=="skip"&&p.isTraceInSubplots(Le,Ae)&&(Ke.push(Te),Le.orientation==="h"&&(sa=!0));var La=!be,ka,Ga;if(La)"xpx"in ee?ka=ee.xpx:ka=jt[0]._length/2,"ypx"in ee?Ga=ee.ypx:Ga=ur[0]._length/2;else{if(r.triggerHandler(j,"plotly_beforehover",ee)===!1)return;var Ma=be.getBoundingClientRect();ka=ee.clientX-Ma.left,Ga=ee.clientY-Ma.top,Ie._calcInverseTransform(j);var Ua=A.apply3DTransform(Ie._invTransform)(ka,Ga);if(ka=Ua[0],Ga=Ua[1],ka<0||ka>jt[0]._length||Ga<0||Ga>ur[0]._length)return s.unhoverRaw(j,ee)}if(ee.pointerX=ka+jt[0]._offset,ee.pointerY=Ga+ur[0]._offset,"xval"in ee?Ne=p.flat(Ae,ee.xval):Ne=p.p2c(jt,ka),"yval"in ee?Ee=p.flat(Ae,ee.yval):Ee=p.p2c(ur,Ga),!g(Ne[0])||!g(Ee[0]))return A.warn("Fx.hover failed",ee,j),s.unhoverRaw(j,ee)}var ni=1/0;function Wt(Xi,Jo){for(ke=0;ke<Ke.length;ke++)if(Te=Ke[ke],!(!Te||!Te[0]||!Te[0].trace)&&(Le=Te[0].trace,!(Le.visible!==!0||Le._length===0)&&["carpet","contourcarpet"].indexOf(Le._module.name)===-1)){if(xt=lt,p.isUnifiedHover(xt)&&(xt=xt.charAt(0)),Le.type==="splom"?(dt=0,rt=Ae[dt]):(rt=p.getSubplot(Le),dt=Ae.indexOf(rt)),Gt={cd:Te,trace:Le,xa:jt[dt],ya:ur[dt],maxHoverDistance:_r,maxSpikeDistance:yt,index:!1,distance:Math.min(ni,_r),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:n.defaultLine,name:Le.name,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},Ie[rt]&&(Gt.subplot=Ie[rt]._subplot),Ie._splomScenes&&Ie._splomScenes[Le.uid]&&(Gt.scene=Ie._splomScenes[Le.uid]),xt==="array"){var zo=ee[ke];"pointNumber"in zo?(Gt.index=zo.pointNumber,xt="closest"):(xt="","xval"in zo&&(It=zo.xval,xt="x"),"yval"in zo&&(Bt=zo.yval,xt=xt?"closest":"y"))}else Xi!==void 0&&Jo!==void 0?(It=Xi,Bt=Jo):(It=Ne[dt],Bt=Ee[dt]);if(Kt=Fe.length,_r!==0)if(Le._module&&Le._module.hoverPoints){var as=Le._module.hoverPoints(Gt,It,Bt,xt,{finiteRange:!0,hoverLayer:Ie._hoverlayer,hoversubplots:Ze,gd:j});if(as)for(var Pn,go=0;go<as.length;go++)Pn=as[go],g(Pn.x0)&&g(Pn.y0)&&Fe.push(Q(Pn,lt))}else A.log("Unrecognized trace type in hover:",Le);if(lt==="closest"&&Fe.length>Kt&&(Fe.splice(0,Kt),ni=Fe[0].distance),et&&yt!==0&&Fe.length===0){Gt.distance=yt,Gt.index=!1;var In=Le._module.hoverPoints(Gt,It,Bt,"closest",{hoverLayer:Ie._hoverlayer});if(In&&(In=In.filter(function(ys){return ys.spikeDistance<=yt})),In&&In.length){var Do,Ho=In.filter(function(ys){return ys.xa.showspikes&&ys.xa.spikesnap!=="hovered data"});if(Ho.length){var Qo=Ho[0];g(Qo.x0)&&g(Qo.y0)&&(Do=Vt(Qo),(!sr.vLinePoint||sr.vLinePoint.spikeDistance>Do.spikeDistance)&&(sr.vLinePoint=Do))}var Xn=In.filter(function(ys){return ys.ya.showspikes&&ys.ya.spikesnap!=="hovered data"});if(Xn.length){var po=Xn[0];g(po.x0)&&g(po.y0)&&(Do=Vt(po),(!sr.hLinePoint||sr.hLinePoint.spikeDistance>Do.spikeDistance)&&(sr.hLinePoint=Do))}}}}}Wt();function zt(Xi,Jo,zo){for(var as=null,Pn=1/0,go,In=0;In<Xi.length;In++)ce&&ce._id!==Xi[In].xa._id||ze&&ze._id!==Xi[In].ya._id||(go=Xi[In].spikeDistance,zo&&In===0&&(go=-1/0),go<=Pn&&go<=Jo&&(as=Xi[In],Pn=go));return as}function Vt(Xi){return Xi?{xa:Xi.xa,ya:Xi.ya,x:Xi.xSpike!==void 0?Xi.xSpike:(Xi.x0+Xi.x1)/2,y:Xi.ySpike!==void 0?Xi.ySpike:(Xi.y0+Xi.y1)/2,distance:Xi.distance,spikeDistance:Xi.spikeDistance,curveNumber:Xi.trace.index,color:Xi.color,pointNumber:Xi.index}:null}var Ut={fullLayout:Ie,container:Ie._hoverlayer,event:ee},xr=j._spikepoints,Zr={vLinePoint:sr.vLinePoint,hLinePoint:sr.hLinePoint};j._spikepoints=Zr;var pa=function(){var Xi=Fe.filter(function(zo){return ce&&ce._id===zo.xa._id&&ze&&ze._id===zo.ya._id}),Jo=Fe.filter(function(zo){return!(ce&&ce._id===zo.xa._id&&ze&&ze._id===zo.ya._id)});Xi.sort(P),Jo.sort(P),Fe=Xi.concat(Jo),Fe=$(Fe,lt)};pa();var Xr=lt.charAt(0),Ea=(Xr==="x"||Xr==="y")&&Fe[0]&&f[Fe[0].trace.type];if(et&&yt!==0&&Fe.length!==0){var Fa=Fe.filter(function(Xi){return Xi.ya.showspikes}),qa=zt(Fa,yt,Ea);sr.hLinePoint=Vt(qa);var ya=Fe.filter(function(Xi){return Xi.xa.showspikes}),$a=zt(ya,yt,Ea);sr.vLinePoint=Vt($a)}if(Fe.length===0){var mt=s.unhoverRaw(j,ee);return et&&(sr.hLinePoint!==null||sr.vLinePoint!==null)&&he(xr)&&ue(j,sr,Ut),mt}if(et&&he(xr)&&ue(j,sr,Ut),p.isXYhover(xt)&&Fe[0].length!==0&&Fe[0].trace.type!=="splom"){var gt=Fe[0];y[gt.trace.type]?Fe=Fe.filter(function(Xi){return Xi.trace.index===gt.trace.index}):Fe=[gt];var Er=Fe.length,kr=J("x",gt,Ie),br=J("y",gt,Ie);Wt(kr,br);var Tr=[],Mr={},Fr=0,Lr=function(Xi){var Jo=y[Xi.trace.type]?z(Xi):Xi.trace.index;if(!Mr[Jo])Fr++,Mr[Jo]=Fr,Tr.push(Xi);else{var zo=Mr[Jo]-1,as=Tr[zo];zo>0&&Math.abs(Xi.distance)<Math.abs(as.distance)&&(Tr[zo]=Xi)}},Jr;for(Jr=0;Jr<Er;Jr++)Lr(Fe[Jr]);for(Jr=Fe.length-1;Jr>Er-1;Jr--)Lr(Fe[Jr]);Fe=Tr,pa()}var oa=j._hoverdata,ca=[],kt=Z(j),ir=re(j);for(Ve=0;Ve<Fe.length;Ve++){var mr=Fe[Ve],$r=p.makeEventData(mr,mr.trace,mr.cd);if(mr.hovertemplate!==!1){var ma=!1;mr.cd[mr.index]&&mr.cd[mr.index].ht&&(ma=mr.cd[mr.index].ht),mr.hovertemplate=ma||mr.trace.hovertemplate||!1}if(mr.xa&&mr.ya){var Ba=mr.x0+mr.xa._offset,Ca=mr.x1+mr.xa._offset,da=mr.y0+mr.ya._offset,Sa=mr.y1+mr.ya._offset,Ti=Math.min(Ba,Ca),ai=Math.max(Ba,Ca),an=Math.min(da,Sa),sn=Math.max(da,Sa);$r.bbox={x0:Ti+ir,x1:ai+ir,y0:an+kt,y1:sn+kt}}mr.eventData=[$r],ca.push($r)}j._hoverdata=ca;var Mn=lt==="y"&&(Ke.length>1||Fe.length>1)||lt==="closest"&&sa&&Fe.length>1,On=n.combine(Ie.plot_bgcolor||n.background,Ie.paper_bgcolor),$n=B(Fe,{gd:j,hovermode:lt,rotateLabels:Mn,bgColor:On,container:Ie._hoverlayer,outerContainer:Ie._paper.node(),commonLabelOpts:Ie.hoverlabel,hoverdistance:Ie.hoverdistance}),Cn=$n.hoverLabels;if(p.isUnifiedHover(lt)||(I(Cn,Mn,Ie,$n.commonLabelBoundingBox),W(Cn,Mn,Ie._invScaleX,Ie._invScaleY)),be&&be.tagName){var Lo=v.getComponentMethod("annotations","hasClickToShow")(j,ca);a(H.select(be),Lo?"pointer":"")}!be||fe||!se(j,ee,oa)||(oa&&j.emit("plotly_unhover",{event:ee,points:oa}),j.emit("plotly_hover",{event:ee,points:j._hoverdata,xaxes:jt,yaxes:ur,xvals:Ne,yvals:Ee}))}function z(j){return[j.trace.index,j.index,j.x0,j.y0,j.name,j.attr,j.xa?j.xa._id:"",j.ya?j.ya._id:""].join(",")}var F=/<extra>([\s\S]*)<\/extra>/;function B(j,ee){var ie=ee.gd,fe=ie._fullLayout,be=ee.hovermode,Ae=ee.rotateLabels,Be=ee.bgColor,Ie=ee.container,Ze=ee.outerContainer,at=ee.commonLabelOpts||{};if(j.length===0)return[[]];var it=ee.fontFamily||T.HOVERFONT,et=ee.fontSize||T.HOVERFONTSIZE,lt=ee.fontWeight||fe.font.weight,Me=ee.fontStyle||fe.font.style,ge=ee.fontVariant||fe.font.variant,ce=ee.fontTextcase||fe.font.textcase,ze=ee.fontLineposition||fe.font.lineposition,tt=ee.fontShadow||fe.font.shadow,nt=j[0],Qe=nt.xa,Ct=nt.ya,St=be.charAt(0),Ot=St+"Label",jt=nt[Ot];if(jt===void 0&&Qe.type==="multicategory")for(var ur=0;ur<j.length&&(jt=j[ur][Ot],jt===void 0);ur++);var ar=ne(ie,Ze),Cr=ar.top,vr=ar.width,_r=ar.height,yt=jt!==void 0&&nt.distance<=ee.hoverdistance&&(be==="x"||be==="y");if(yt){var Fe=!0,Ke,Ne;for(Ke=0;Ke<j.length;Ke++)if(Fe&&j[Ke].zLabel===void 0&&(Fe=!1),Ne=j[Ke].hoverinfo||j[Ke].trace.hoverinfo,Ne){var Ee=Array.isArray(Ne)?Ne:Ne.split("+");if(Ee.indexOf("all")===-1&&Ee.indexOf(be)===-1){yt=!1;break}}Fe&&(yt=!1)}var Ve=Ie.selectAll("g.axistext").data(yt?[0]:[]);Ve.enter().append("g").classed("axistext",!0),Ve.exit().remove();var ke={minX:0,maxX:0,minY:0,maxY:0};if(Ve.each(function(){var ya=H.select(this),$a=A.ensureSingle(ya,"path","",function(Ti){Ti.style({"stroke-width":"1px"})}),mt=A.ensureSingle(ya,"text","",function(Ti){Ti.attr("data-notex",1)}),gt=at.bgcolor||n.defaultLine,Er=at.bordercolor||n.contrast(gt),kr=n.contrast(gt),br=at.font,Tr={weight:br.weight||lt,style:br.style||Me,variant:br.variant||ge,textcase:br.textcase||ce,lineposition:br.lineposition||ze,shadow:br.shadow||tt,family:br.family||it,size:br.size||et,color:br.color||kr};$a.style({fill:gt,stroke:Er}),mt.text(jt).call(i.font,Tr).call(o.positionText,0,0).call(o.convertToTspans,ie),ya.attr("transform","");var Mr=ne(ie,mt.node()),Fr,Lr;if(be==="x"){var Jr=Qe.side==="top"?"-":"";mt.attr("text-anchor","middle").call(o.positionText,0,Qe.side==="top"?Cr-Mr.bottom-d-u:Cr-Mr.top+d+u),Fr=Qe._offset+(nt.x0+nt.x1)/2,Lr=Ct._offset+(Qe.side==="top"?0:Ct._length);var oa=Mr.width/2+u,ca=Fr;Fr<oa?ca=oa:Fr>fe.width-oa&&(ca=fe.width-oa),$a.attr("d","M"+(Fr-ca)+",0L"+(Fr-ca+d)+","+Jr+d+"H"+oa+"v"+Jr+(u*2+Mr.height)+"H"+-oa+"V"+Jr+d+"H"+(Fr-ca-d)+"Z"),Fr=ca,ke.minX=Fr-oa,ke.maxX=Fr+oa,Qe.side==="top"?(ke.minY=Lr-(u*2+Mr.height),ke.maxY=Lr-u):(ke.minY=Lr+u,ke.maxY=Lr+(u*2+Mr.height))}else{var kt,ir,mr;Ct.side==="right"?(kt="start",ir=1,mr="",Fr=Qe._offset+Qe._length):(kt="end",ir=-1,mr="-",Fr=Qe._offset),Lr=Ct._offset+(nt.y0+nt.y1)/2,mt.attr("text-anchor",kt),$a.attr("d","M0,0L"+mr+d+","+d+"V"+(u+Mr.height/2)+"h"+mr+(u*2+Mr.width)+"V-"+(u+Mr.height/2)+"H"+mr+d+"V-"+d+"Z"),ke.minY=Lr-(u+Mr.height/2),ke.maxY=Lr+(u+Mr.height/2),Ct.side==="right"?(ke.minX=Fr+d,ke.maxX=Fr+d+(u*2+Mr.width)):(ke.minX=Fr-d-(u*2+Mr.width),ke.maxX=Fr-d);var $r=Mr.height/2,ma=Cr-Mr.top-$r,Ba="clip"+fe._uid+"commonlabel"+Ct._id,Ca;if(Fr<Mr.width+2*u+d){Ca="M-"+(d+u)+"-"+$r+"h-"+(Mr.width-u)+"V"+$r+"h"+(Mr.width-u)+"Z";var da=Mr.width-Fr+u;o.positionText(mt,da,ma),kt==="end"&&mt.selectAll("tspan").each(function(){var Ti=H.select(this),ai=i.tester.append("text").text(Ti.text()).call(i.font,Tr),an=ne(ie,ai.node());Math.round(an.width)<Math.round(Mr.width)&&Ti.attr("x",da-an.width),ai.remove()})}else o.positionText(mt,ir*(u+d),ma),Ca=null;var Sa=fe._topclips.selectAll("#"+Ba).data(Ca?[0]:[]);Sa.enter().append("clipPath").attr("id",Ba).append("path"),Sa.exit().remove(),Sa.select("path").attr("d",Ca),i.setClipUrl(mt,Ca?Ba:null,ie)}ya.attr("transform",e(Fr,Lr))}),p.isUnifiedHover(be)){Ie.selectAll("g.hovertext").remove();var Te=j.filter(function(ya){return ya.hoverinfo!=="none"});if(Te.length===0)return[];var Le=fe.hoverlabel,rt=Le.font,dt={showlegend:!0,legend:{title:{text:jt,font:rt},font:rt,bgcolor:Le.bgcolor,bordercolor:Le.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:fe.legend?fe.legend.traceorder:void 0,orientation:"v"}},xt={font:rt};l(dt,xt,ie._fullData);var It=xt.legend;It.entries=[];for(var Bt=0;Bt<Te.length;Bt++){var Gt=Te[Bt];if(Gt.hoverinfo!=="none"){var Kt=O(Gt,!0,be,fe,jt),sr=Kt[0],sa=Kt[1];Gt.name=sa,sa!==""?Gt.text=sa+" : "+sr:Gt.text=sr;var Aa=Gt.cd[Gt.index];Aa&&(Aa.mc&&(Gt.mc=Aa.mc),Aa.mcc&&(Gt.mc=Aa.mcc),Aa.mlc&&(Gt.mlc=Aa.mlc),Aa.mlcc&&(Gt.mlc=Aa.mlcc),Aa.mlw&&(Gt.mlw=Aa.mlw),Aa.mrc&&(Gt.mrc=Aa.mrc),Aa.dir&&(Gt.dir=Aa.dir)),Gt._distinct=!0,It.entries.push([Gt])}}It.entries.sort(function(ya,$a){return ya[0].trace.index-$a[0].trace.index}),It.layer=Ie,It._inHover=!0,It._groupTitleFont=Le.grouptitlefont,_(ie,It);var La=Ie.select("g.legend"),ka=ne(ie,La.node()),Ga=ka.width+2*u,Ma=ka.height+2*u,Ua=Te[0],ni=(Ua.x0+Ua.x1)/2,Wt=(Ua.y0+Ua.y1)/2,zt=!(v.traceIs(Ua.trace,"bar-like")||v.traceIs(Ua.trace,"box-violin")),Vt,Ut;St==="y"?zt?(Ut=Wt-u,Vt=Wt+u):(Ut=Math.min.apply(null,Te.map(function(ya){return Math.min(ya.y0,ya.y1)})),Vt=Math.max.apply(null,Te.map(function(ya){return Math.max(ya.y0,ya.y1)}))):Ut=Vt=A.mean(Te.map(function(ya){return(ya.y0+ya.y1)/2}))-Ma/2;var xr,Zr;St==="x"?zt?(xr=ni+u,Zr=ni-u):(xr=Math.max.apply(null,Te.map(function(ya){return Math.max(ya.x0,ya.x1)})),Zr=Math.min.apply(null,Te.map(function(ya){return Math.min(ya.x0,ya.x1)}))):xr=Zr=A.mean(Te.map(function(ya){return(ya.x0+ya.x1)/2}))-Ga/2;var pa=Qe._offset,Xr=Ct._offset;Vt+=Xr,xr+=pa,Zr+=pa-Ga,Ut+=Xr-Ma;var Ea,Fa;return xr+Ga<vr&&xr>=0?Ea=xr:Zr+Ga<vr&&Zr>=0?Ea=Zr:pa+Ga<vr?Ea=pa:xr-ni<ni-Zr+Ga?Ea=vr-Ga:Ea=0,Ea+=u,Vt+Ma<_r&&Vt>=0?Fa=Vt:Ut+Ma<_r&&Ut>=0?Fa=Ut:Xr+Ma<_r?Fa=Xr:Vt-Wt<Wt-Ut+Ma?Fa=_r-Ma:Fa=0,Fa+=u,La.attr("transform",e(Ea-1,Fa-1)),La}var qa=Ie.selectAll("g.hovertext").data(j,function(ya){return z(ya)});return qa.enter().append("g").classed("hovertext",!0).each(function(){var ya=H.select(this);ya.append("rect").call(n.fill,n.addOpacity(Be,.8)),ya.append("text").classed("name",!0),ya.append("path").style("stroke-width","1px"),ya.append("text").classed("nums",!0).call(i.font,{weight:lt,style:Me,variant:ge,textcase:ce,lineposition:ze,shadow:tt,family:it,size:et})}),qa.exit().remove(),qa.each(function(ya){var $a=H.select(this).attr("transform",""),mt=ya.color;Array.isArray(mt)&&(mt=mt[ya.eventData[0].pointNumber]);var gt=ya.bgcolor||mt,Er=n.combine(n.opacity(gt)?gt:n.defaultLine,Be),kr=n.combine(n.opacity(mt)?mt:n.defaultLine,Be),br=ya.borderColor||n.contrast(Er),Tr=O(ya,yt,be,fe,jt,$a),Mr=Tr[0],Fr=Tr[1],Lr=$a.select("text.nums").call(i.font,{family:ya.fontFamily||it,size:ya.fontSize||et,color:ya.fontColor||br,weight:ya.fontWeight||lt,style:ya.fontStyle||Me,variant:ya.fontVariant||ge,textcase:ya.fontTextcase||ce,lineposition:ya.fontLineposition||ze,shadow:ya.fontShadow||tt}).text(Mr).attr("data-notex",1).call(o.positionText,0,0).call(o.convertToTspans,ie),Jr=$a.select("text.name"),oa=0,ca=0;if(Fr&&Fr!==Mr){Jr.call(i.font,{family:ya.fontFamily||it,size:ya.fontSize||et,color:kr,weight:ya.fontWeight||lt,style:ya.fontStyle||Me,variant:ya.fontVariant||ge,textcase:ya.fontTextcase||ce,lineposition:ya.fontLineposition||ze,shadow:ya.fontShadow||tt}).text(Fr).attr("data-notex",1).call(o.positionText,0,0).call(o.convertToTspans,ie);var kt=ne(ie,Jr.node());oa=kt.width+2*u,ca=kt.height+2*u}else Jr.remove(),$a.select("rect").remove();$a.select("path").style({fill:Er,stroke:br});var ir=ya.xa._offset+(ya.x0+ya.x1)/2,mr=ya.ya._offset+(ya.y0+ya.y1)/2,$r=Math.abs(ya.x1-ya.x0),ma=Math.abs(ya.y1-ya.y0),Ba=ne(ie,Lr.node()),Ca=Ba.width/fe._invScaleX,da=Ba.height/fe._invScaleY;ya.ty0=(Cr-Ba.top)/fe._invScaleY,ya.bx=Ca+2*u,ya.by=Math.max(da+2*u,ca),ya.anchor="start",ya.txwidth=Ca,ya.tx2width=oa,ya.offset=0;var Sa=(Ca+d+u+oa)*fe._invScaleX,Ti,ai;if(Ae)ya.pos=ir,Ti=mr+ma/2+Sa<=_r,ai=mr-ma/2-Sa>=0,(ya.idealAlign==="top"||!Ti)&&ai?(mr-=ma/2,ya.anchor="end"):Ti?(mr+=ma/2,ya.anchor="start"):ya.anchor="middle",ya.crossPos=mr;else{if(ya.pos=mr,Ti=ir+$r/2+Sa<=vr,ai=ir-$r/2-Sa>=0,(ya.idealAlign==="left"||!Ti)&&ai)ir-=$r/2,ya.anchor="end";else if(Ti)ir+=$r/2,ya.anchor="start";else{ya.anchor="middle";var an=Sa/2,sn=ir+an-vr,Mn=ir-an;sn>0&&(ir-=sn),Mn<0&&(ir+=-Mn)}ya.crossPos=ir}Lr.attr("text-anchor",ya.anchor),oa&&Jr.attr("text-anchor",ya.anchor),$a.attr("transform",e(ir,mr)+(Ae?t(w):""))}),{hoverLabels:qa,commonLabelBoundingBox:ke}}function O(j,ee,ie,fe,be,Ae){var Be="",Ie="";j.nameOverride!==void 0&&(j.name=j.nameOverride),j.name&&(j.trace._meta&&(j.name=A.templateString(j.name,j.trace._meta)),Be=G(j.name,j.nameLength));var Ze=ie.charAt(0),at=Ze==="x"?"y":"x";j.zLabel!==void 0?(j.xLabel!==void 0&&(Ie+="x: "+j.xLabel+"<br>"),j.yLabel!==void 0&&(Ie+="y: "+j.yLabel+"<br>"),j.trace.type!=="choropleth"&&j.trace.type!=="choroplethmapbox"&&j.trace.type!=="choroplethmap"&&(Ie+=(Ie?"z: ":"")+j.zLabel)):ee&&j[Ze+"Label"]===be?Ie=j[at+"Label"]||"":j.xLabel===void 0?j.yLabel!==void 0&&j.trace.type!=="scattercarpet"&&(Ie=j.yLabel):j.yLabel===void 0?Ie=j.xLabel:Ie="("+j.xLabel+", "+j.yLabel+")",(j.text||j.text===0)&&!Array.isArray(j.text)&&(Ie+=(Ie?"<br>":"")+j.text),j.extraText!==void 0&&(Ie+=(Ie?"<br>":"")+j.extraText),Ae&&Ie===""&&!j.hovertemplate&&(Be===""&&Ae.remove(),Ie=Be);var it=j.hovertemplate||!1;if(it){var et=j.hovertemplateLabels||j;j[Ze+"Label"]!==be&&(et[Ze+"other"]=et[Ze+"Val"],et[Ze+"otherLabel"]=et[Ze+"Label"]),Ie=A.hovertemplateString(it,et,fe._d3locale,j.eventData[0]||{},j.trace._meta),Ie=Ie.replace(F,function(lt,Me){return Be=G(Me,j.nameLength),""})}return[Ie,Be]}function I(j,ee,ie,fe){var be=ee?"xa":"ya",Ae=ee?"ya":"xa",Be=0,Ie=1,Ze=j.size(),at=new Array(Ze),it=0,et=fe.minX,lt=fe.maxX,Me=fe.minY,ge=fe.maxY,ce=function(Ne){return Ne*ie._invScaleX},ze=function(Ne){return Ne*ie._invScaleY};j.each(function(Ne){var Ee=Ne[be],Ve=Ne[Ae],ke=Ee._id.charAt(0)==="x",Te=Ee.range;it===0&&Te&&Te[0]>Te[1]!==ke&&(Ie=-1);var Le=0,rt=ke?ie.width:ie.height;if(ie.hovermode==="x"||ie.hovermode==="y"){var dt=N(Ne,ee),xt=Ne.anchor,It=xt==="end"?-1:1,Bt,Gt;if(xt==="middle")Bt=Ne.crossPos+(ke?ze(dt.y-Ne.by/2):ce(Ne.bx/2+Ne.tx2width/2)),Gt=Bt+(ke?ze(Ne.by):ce(Ne.bx));else if(ke)Bt=Ne.crossPos+ze(d+dt.y)-ze(Ne.by/2-d),Gt=Bt+ze(Ne.by);else{var Kt=ce(It*d+dt.x),sr=Kt+ce(It*Ne.bx);Bt=Ne.crossPos+Math.min(Kt,sr),Gt=Ne.crossPos+Math.max(Kt,sr)}ke?Me!==void 0&&ge!==void 0&&Math.min(Gt,ge)-Math.max(Bt,Me)>1&&(Ve.side==="left"?(Le=Ve._mainLinePosition,rt=ie.width):rt=Ve._mainLinePosition):et!==void 0&&lt!==void 0&&Math.min(Gt,lt)-Math.max(Bt,et)>1&&(Ve.side==="top"?(Le=Ve._mainLinePosition,rt=ie.height):rt=Ve._mainLinePosition)}at[it++]=[{datum:Ne,traceIndex:Ne.trace.index,dp:0,pos:Ne.pos,posref:Ne.posref,size:Ne.by*(ke?E:1)/2,pmin:Le,pmax:rt}]}),at.sort(function(Ne,Ee){return Ne[0].posref-Ee[0].posref||Ie*(Ee[0].traceIndex-Ne[0].traceIndex)});var tt,nt,Qe,Ct,St,Ot,jt;function ur(Ne){var Ee=Ne[0],Ve=Ne[Ne.length-1];if(nt=Ee.pmin-Ee.pos-Ee.dp+Ee.size,Qe=Ve.pos+Ve.dp+Ve.size-Ee.pmax,nt>.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp+=nt;tt=!1}if(!(Qe<.01)){if(nt<-.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;tt=!1}if(tt){var ke=0;for(Ct=0;Ct<Ne.length;Ct++)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&ke++;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos>Ee.pmax-1&&(Ot.del=!0,ke--);for(Ct=0;Ct<Ne.length&&!(ke<=0);Ct++)if(Ot=Ne[Ct],Ot.pos<Ee.pmin+1)for(Ot.del=!0,ke--,Qe=Ot.size*2,St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&(Ot.del=!0,ke--)}}}for(;!tt&&Be<=Ze;){for(Be++,tt=!0,Ct=0;Ct<at.length-1;){var ar=at[Ct],Cr=at[Ct+1],vr=ar[ar.length-1],_r=Cr[0];if(nt=vr.pos+vr.dp+vr.size-_r.pos-_r.dp+_r.size,nt>.01){for(St=Cr.length-1;St>=0;St--)Cr[St].dp+=nt;for(ar.push.apply(ar,Cr),at.splice(Ct+1,1),jt=0,St=ar.length-1;St>=0;St--)jt+=ar[St].dp;for(Qe=jt/ar.length,St=ar.length-1;St>=0;St--)ar[St].dp-=Qe;tt=!1}else Ct++}at.forEach(ur)}for(Ct=at.length-1;Ct>=0;Ct--){var yt=at[Ct];for(St=yt.length-1;St>=0;St--){var Fe=yt[St],Ke=Fe.datum;Ke.offset=Fe.dp,Ke.del=Fe.del}}}function N(j,ee){var ie=0,fe=j.offset;return ee&&(fe*=-b,ie=j.offset*m),{x:ie,y:fe}}function U(j){var ee={start:1,end:-1,middle:0}[j.anchor],ie=ee*(d+u),fe=ie+ee*(j.txwidth+u),be=j.anchor==="middle";return be&&(ie-=j.tx2width/2,fe+=j.txwidth/2+u),{alignShift:ee,textShiftX:ie,text2ShiftX:fe}}function W(j,ee,ie,fe){var be=function(Be){return Be*ie},Ae=function(Be){return Be*fe};j.each(function(Be){var Ie=H.select(this);if(Be.del)return Ie.remove();var Ze=Ie.select("text.nums"),at=Be.anchor,it=at==="end"?-1:1,et=U(Be),lt=N(Be,ee),Me=lt.x,ge=lt.y,ce=at==="middle";Ie.select("path").attr("d",ce?"M-"+be(Be.bx/2+Be.tx2width/2)+","+Ae(ge-Be.by/2)+"h"+be(Be.bx)+"v"+Ae(Be.by)+"h-"+be(Be.bx)+"Z":"M0,0L"+be(it*d+Me)+","+Ae(d+ge)+"v"+Ae(Be.by/2-d)+"h"+be(it*Be.bx)+"v-"+Ae(Be.by)+"H"+be(it*d+Me)+"V"+Ae(ge-d)+"Z");var ze=Me+et.textShiftX,tt=ge+Be.ty0-Be.by/2+u,nt=Be.textAlign||"auto";nt!=="auto"&&(nt==="left"&&at!=="start"?(Ze.attr("text-anchor","start"),ze=ce?-Be.bx/2-Be.tx2width/2+u:-Be.bx-u):nt==="right"&&at!=="end"&&(Ze.attr("text-anchor","end"),ze=ce?Be.bx/2-Be.tx2width/2-u:Be.bx+u)),Ze.call(o.positionText,be(ze),Ae(tt)),Be.tx2width&&(Ie.select("text.name").call(o.positionText,be(et.text2ShiftX+et.alignShift*u+Me),Ae(ge+Be.ty0-Be.by/2+u)),Ie.select("rect").call(i.setRect,be(et.text2ShiftX+(et.alignShift-1)*Be.tx2width/2+Me),Ae(ge-Be.by/2-1),be(Be.tx2width),Ae(Be.by+2)))})}function Q(j,ee){var ie=j.index,fe=j.trace||{},be=j.cd[0],Ae=j.cd[ie]||{};function Be(lt){return lt||g(lt)&&lt===0}var Ie=Array.isArray(ie)?function(lt,Me){var ge=A.castOption(be,ie,lt);return Be(ge)?ge:A.extractOption({},fe,"",Me)}:function(lt,Me){return A.extractOption(Ae,fe,lt,Me)};function Ze(lt,Me,ge){var ce=Ie(Me,ge);Be(ce)&&(j[lt]=ce)}if(Ze("hoverinfo","hi","hoverinfo"),Ze("bgcolor","hbg","hoverlabel.bgcolor"),Ze("borderColor","hbc","hoverlabel.bordercolor"),Ze("fontFamily","htf","hoverlabel.font.family"),Ze("fontSize","hts","hoverlabel.font.size"),Ze("fontColor","htc","hoverlabel.font.color"),Ze("fontWeight","htw","hoverlabel.font.weight"),Ze("fontStyle","hty","hoverlabel.font.style"),Ze("fontVariant","htv","hoverlabel.font.variant"),Ze("nameLength","hnl","hoverlabel.namelength"),Ze("textAlign","hta","hoverlabel.align"),j.posref=ee==="y"||ee==="closest"&&fe.orientation==="h"?j.xa._offset+(j.x0+j.x1)/2:j.ya._offset+(j.y0+j.y1)/2,j.x0=A.constrain(j.x0,0,j.xa._length),j.x1=A.constrain(j.x1,0,j.xa._length),j.y0=A.constrain(j.y0,0,j.ya._length),j.y1=A.constrain(j.y1,0,j.ya._length),j.xLabelVal!==void 0&&(j.xLabel="xLabel"in j?j.xLabel:c.hoverLabelText(j.xa,j.xLabelVal,fe.xhoverformat),j.xVal=j.xa.c2d(j.xLabelVal)),j.yLabelVal!==void 0&&(j.yLabel="yLabel"in j?j.yLabel:c.hoverLabelText(j.ya,j.yLabelVal,fe.yhoverformat),j.yVal=j.ya.c2d(j.yLabelVal)),j.zLabelVal!==void 0&&j.zLabel===void 0&&(j.zLabel=String(j.zLabelVal)),!isNaN(j.xerr)&&!(j.xa.type==="log"&&j.xerr<=0)){var at=c.tickText(j.xa,j.xa.c2l(j.xerr),"hover").text;j.xerrneg!==void 0?j.xLabel+=" +"+at+" / -"+c.tickText(j.xa,j.xa.c2l(j.xerrneg),"hover").text:j.xLabel+=" \xB1 "+at,ee==="x"&&(j.distance+=1)}if(!isNaN(j.yerr)&&!(j.ya.type==="log"&&j.yerr<=0)){var it=c.tickText(j.ya,j.ya.c2l(j.yerr),"hover").text;j.yerrneg!==void 0?j.yLabel+=" +"+it+" / -"+c.tickText(j.ya,j.ya.c2l(j.yerrneg),"hover").text:j.yLabel+=" \xB1 "+it,ee==="y"&&(j.distance+=1)}var et=j.hoverinfo||j.trace.hoverinfo;return et&&et!=="all"&&(et=Array.isArray(et)?et:et.split("+"),et.indexOf("x")===-1&&(j.xLabel=void 0),et.indexOf("y")===-1&&(j.yLabel=void 0),et.indexOf("z")===-1&&(j.zLabel=void 0),et.indexOf("text")===-1&&(j.text=void 0),et.indexOf("name")===-1&&(j.name=void 0)),j}function ue(j,ee,ie){var fe=ie.container,be=ie.fullLayout,Ae=be._size,Be=ie.event,Ie=!!ee.hLinePoint,Ze=!!ee.vLinePoint,at,it;if(fe.selectAll(".spikeline").remove(),!!(Ze||Ie)){var et=n.combine(be.plot_bgcolor,be.paper_bgcolor);if(Ie){var lt=ee.hLinePoint,Me,ge;at=lt&&lt.xa,it=lt&&lt.ya;var ce=it.spikesnap;ce==="cursor"?(Me=Be.pointerX,ge=Be.pointerY):(Me=at._offset+lt.x,ge=it._offset+lt.y);var ze=x.readability(lt.color,et)<1.5?n.contrast(et):lt.color,tt=it.spikemode,nt=it.spikethickness,Qe=it.spikecolor||ze,Ct=c.getPxPosition(j,it),St,Ot;if(tt.indexOf("toaxis")!==-1||tt.indexOf("across")!==-1){if(tt.indexOf("toaxis")!==-1&&(St=Ct,Ot=Me),tt.indexOf("across")!==-1){var jt=it._counterDomainMin,ur=it._counterDomainMax;it.anchor==="free"&&(jt=Math.min(jt,it.position),ur=Math.max(ur,it.position)),St=Ae.l+jt*Ae.w,Ot=Ae.l+ur*Ae.w}fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt,stroke:Qe,"stroke-dasharray":i.dashStyle(it.spikedash,nt)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}tt.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Ct+(it.side!=="right"?nt:-nt),cy:ge,r:nt,fill:Qe}).classed("spikeline",!0)}if(Ze){var ar=ee.vLinePoint,Cr,vr;at=ar&&ar.xa,it=ar&&ar.ya;var _r=at.spikesnap;_r==="cursor"?(Cr=Be.pointerX,vr=Be.pointerY):(Cr=at._offset+ar.x,vr=it._offset+ar.y);var yt=x.readability(ar.color,et)<1.5?n.contrast(et):ar.color,Fe=at.spikemode,Ke=at.spikethickness,Ne=at.spikecolor||yt,Ee=c.getPxPosition(j,at),Ve,ke;if(Fe.indexOf("toaxis")!==-1||Fe.indexOf("across")!==-1){if(Fe.indexOf("toaxis")!==-1&&(Ve=Ee,ke=vr),Fe.indexOf("across")!==-1){var Te=at._counterDomainMin,Le=at._counterDomainMax;at.anchor==="free"&&(Te=Math.min(Te,at.position),Le=Math.max(Le,at.position)),Ve=Ae.t+(1-Le)*Ae.h,ke=Ae.t+(1-Te)*Ae.h}fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke,stroke:Ne,"stroke-dasharray":i.dashStyle(at.spikedash,Ke)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}Fe.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Cr,cy:Ee-(at.side!=="top"?Ke:-Ke),r:Ke,fill:Ne}).classed("spikeline",!0)}}}function se(j,ee,ie){if(!ie||ie.length!==j._hoverdata.length)return!0;for(var fe=ie.length-1;fe>=0;fe--){var be=ie[fe],Ae=j._hoverdata[fe];if(be.curveNumber!==Ae.curveNumber||String(be.pointNumber)!==String(Ae.pointNumber)||String(be.pointNumbers)!==String(Ae.pointNumbers))return!0}return!1}function he(j,ee){return!ee||ee.vLinePoint!==j._spikepoints.vLinePoint||ee.hLinePoint!==j._spikepoints.hLinePoint}function G(j,ee){return o.plainText(j||"",{len:ee,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function $(j,ee){for(var ie=ee.charAt(0),fe=[],be=[],Ae=[],Be=0;Be<j.length;Be++){var Ie=j[Be];v.traceIs(Ie.trace,"bar-like")||v.traceIs(Ie.trace,"box-violin")?Ae.push(Ie):Ie.trace[ie+"period"]?be.push(Ie):fe.push(Ie)}return fe.concat(be).concat(Ae)}function J(j,ee,ie){var fe=ee[j+"a"],be=ee[j+"Val"],Ae=ee.cd[0];if(fe.type==="category"||fe.type==="multicategory")be=fe._categoriesMap[be];else if(fe.type==="date"){var Be=ee.trace[j+"periodalignment"];if(Be){var Ie=ee.cd[ee.index],Ze=Ie[j+"Start"];Ze===void 0&&(Ze=Ie[j]);var at=Ie[j+"End"];at===void 0&&(at=Ie[j]);var it=at-Ze;Be==="end"?be+=it:Be==="middle"&&(be+=it/2)}be=fe.d2c(be)}return Ae&&Ae.t&&Ae.t.posLetter===fe._id&&(ie.boxmode==="group"||ie.violinmode==="group")&&(be+=Ae.t.dPos),be}function Z(j){return j.offsetTop+j.clientTop}function re(j){return j.offsetLeft+j.clientLeft}function ne(j,ee){var ie=j._fullLayout,fe=ee.getBoundingClientRect(),be=fe.left,Ae=fe.top,Be=be+fe.width,Ie=Ae+fe.height,Ze=A.apply3DTransform(ie._invTransform)(be,Ae),at=A.apply3DTransform(ie._invTransform)(Be,Ie),it=Ze[0],et=Ze[1],lt=at[0],Me=at[1];return{x:it,y:et,width:lt-it,height:Me-et,top:Math.min(et,Me),left:Math.min(it,lt),right:Math.max(it,lt),bottom:Math.max(et,Me)}}}}),S_=Ye({"src/components/fx/hoverlabel_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover;H.exports=function(e,t,r,o){o=o||{};var a=t.legend;function i(n){o.font[n]||(o.font[n]=a?t.legend.font[n]:t.font[n])}t&&A(t.hovermode)&&(o.font||(o.font={}),i("size"),i("family"),i("color"),i("weight"),i("style"),i("variant"),a?(o.bgcolor||(o.bgcolor=x.combine(t.legend.bgcolor,t.paper_bgcolor)),o.bordercolor||(o.bordercolor=t.legend.bordercolor)):o.bgcolor||(o.bgcolor=t.paper_bgcolor)),r("hoverlabel.bgcolor",o.bgcolor),r("hoverlabel.bordercolor",o.bordercolor),r("hoverlabel.namelength",o.namelength),g.coerceFont(r,"hoverlabel.font",o.font),r("hoverlabel.align",o.align)}}}),hO=Ye({"src/components/fx/layout_global_defaults.js"(X,H){"use strict";var g=ta(),x=S_(),A=Zm();H.exports=function(e,t){function r(o,a){return g.coerce(e,t,A,o,a)}x(e,t,r)}}}),pO=Ye({"src/components/fx/defaults.js"(X,H){"use strict";var g=ta(),x=Yy(),A=S_();H.exports=function(e,t,r,o){function a(n,s){return g.coerce(e,t,x,n,s)}var i=g.extendFlat({},o.hoverlabel);t.hovertemplate&&(i.namelength=-1),A(e,t,a,i)}}}),yS=Ye({"src/components/fx/hovermode_defaults.js"(X,H){"use strict";var g=ta(),x=Zm();H.exports=function(M,e){function t(r,o){return e[r]!==void 0?e[r]:g.coerce(M,e,x,r,o)}return t("clickmode"),t("hoversubplots"),t("hovermode")}}}),dO=Ye({"src/components/fx/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Zm(),A=yS(),M=S_();H.exports=function(t,r){function o(v,p){return g.coerce(t,r,x,v,p)}var a=A(t,r);a&&(o("hoverdistance"),o("spikedistance"));var i=o("dragmode");i==="select"&&o("selectdirection");var n=r._has("mapbox"),s=r._has("map"),c=r._has("geo"),h=r._basePlotModules.length;r.dragmode==="zoom"&&((n||s||c)&&h===1||(n||s)&&c&&h===2)&&(r.dragmode="pan"),M(t,r,o),g.coerceFont(o,"hoverlabel.grouptitlefont",r.hoverlabel.font)}}}),vO=Ye({"src/components/fx/calc.js"(X,H){"use strict";var g=ta(),x=Hn();H.exports=function(e){var t=e.calcdata,r=e._fullLayout;function o(c){return function(h){return g.coerceHoverinfo({hoverinfo:h},{_module:c._module},r)}}for(var a=0;a<t.length;a++){var i=t[a],n=i[0].trace;if(!x.traceIs(n,"pie-like")){var s=x.traceIs(n,"2dMap")?A:g.fillArray;s(n.hoverinfo,i,"hi",o(n)),n.hovertemplate&&s(n.hovertemplate,i,"ht"),n.hoverlabel&&(s(n.hoverlabel.bgcolor,i,"hbg"),s(n.hoverlabel.bordercolor,i,"hbc"),s(n.hoverlabel.font.size,i,"hts"),s(n.hoverlabel.font.color,i,"htc"),s(n.hoverlabel.font.family,i,"htf"),s(n.hoverlabel.font.weight,i,"htw"),s(n.hoverlabel.font.style,i,"hty"),s(n.hoverlabel.font.variant,i,"htv"),s(n.hoverlabel.namelength,i,"hnl"),s(n.hoverlabel.align,i,"hta"))}}};function A(M,e,t,r){r=r||g.identity,Array.isArray(M)&&(e[0][t]=r(M))}}}),mO=Ye({"src/components/fx/click.js"(X,H){"use strict";var g=Hn(),x=gS().hover;H.exports=function(M,e,t){var r=g.getComponentMethod("annotations","onClick")(M,M._hoverdata);t!==void 0&&x(M,e,t,!0);function o(){M.emit("plotly_click",{points:M._hoverdata,event:e})}M._hoverdata&&e&&e.target&&(r&&r.then?r.then(o):o(),e.stopImmediatePropagation&&e.stopImmediatePropagation())}}}),Lc=Ye({"src/components/fx/index.js"(X,H){"use strict";var g=_n(),x=ta(),A=bp(),M=Qp(),e=Zm(),t=gS();H.exports={moduleType:"component",name:"fx",constants:x_(),schema:{layout:e},attributes:Yy(),layoutAttributes:e,supplyLayoutGlobalDefaults:hO(),supplyDefaults:pO(),supplyLayoutDefaults:dO(),calc:vO(),getDistanceFunction:M.getDistanceFunction,getClosest:M.getClosest,inbox:M.inbox,quadrature:M.quadrature,appendArrayPointValue:M.appendArrayPointValue,castHoverOption:o,castHoverinfo:a,hover:t.hover,unhover:A.unhover,loneHover:t.loneHover,loneUnhover:r,click:mO()};function r(i){var n=x.isD3Selection(i)?i:g.select(i);n.selectAll("g.hovertext").remove(),n.selectAll(".spikeline").remove()}function o(i,n,s){return x.castOption(i,n,"hoverlabel."+s)}function a(i,n,s){function c(h){return x.coerceHoverinfo({hoverinfo:h},{_module:i._module},n)}return x.castOption(i,s,"hoverinfo",c)}}}),Jd=Ye({"src/components/dragelement/helpers.js"(X){"use strict";X.selectMode=function(H){return H==="lasso"||H==="select"},X.drawMode=function(H){return H==="drawclosedpath"||H==="drawopenpath"||H==="drawline"||H==="drawrect"||H==="drawcircle"},X.openMode=function(H){return H==="drawline"||H==="drawopenpath"},X.rectMode=function(H){return H==="select"||H==="drawline"||H==="drawrect"||H==="drawcircle"},X.freeMode=function(H){return H==="lasso"||H==="drawclosedpath"||H==="drawopenpath"},X.selectingOrDrawing=function(H){return X.freeMode(H)||X.rectMode(H)}}}),M_=Ye({"src/lib/clear_gl_canvases.js"(X,H){"use strict";H.exports=function(x){var A=x._fullLayout;A._glcanvas&&A._glcanvas.size()&&A._glcanvas.each(function(M){M.regl&&M.regl.clear({color:!0,depth:!0})})}}}),b2=Ye({"src/fonts/ploticon.js"(X,H){"use strict";H.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:["<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 132'>"," <title>plotly-logomark</title>"," <g id='symbol'>","  <rect fill='#000' x='0' y='0' width='132' height='132' rx='18' ry='18'/>","  <circle fill='#9EF' cx='102' cy='30' r='6'/>","  <circle fill='#BAC' cx='78' cy='30' r='6'/>","  <circle fill='#BAC' cx='78' cy='54' r='6'/>","  <circle fill='#D69' cx='54' cy='30' r='6'/>","  <circle fill='#F26' cx='30' cy='30' r='6'/>","  <circle fill='#F26' cx='30' cy='54' r='6'/>","  <path fill='#FFF' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/>","  <path fill='#FFF' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/>","  <path fill='#FFF' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/>","  <path fill='#FFF' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/>"," </g>","</svg>"].join("")}}}}),w2=Ye({"src/components/shapes/draw_newshape/constants.js"(X,H){"use strict";var g=32;H.exports={CIRCLE_SIDES:g,i000:0,i090:g/4,i180:g/2,i270:g/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}}}),T2=Ye({"src/components/selections/helpers.js"(X,H){"use strict";var g=ta().strTranslate;function x(t,r){switch(t.type){case"log":return t.p2d(r);case"date":return t.p2r(r,0,t.calendar);default:return t.p2r(r)}}function A(t,r){switch(t.type){case"log":return t.d2p(r);case"date":return t.r2p(r,0,t.calendar);default:return t.r2p(r)}}function M(t){var r=t._id.charAt(0)==="y"?1:0;return function(o){return x(t,o[r])}}function e(t){return g(t.xaxis._offset,t.yaxis._offset)}H.exports={p2r:x,r2p:A,axValue:M,getTransform:e}}}),tg=Ye({"src/components/shapes/draw_newshape/helpers.js"(X){"use strict";var H=A_(),g=w2(),x=g.CIRCLE_SIDES,A=g.SQRT2,M=T2(),e=M.p2r,t=M.r2p,r=[0,3,4,5,6,1,2],o=[0,3,4,1,2];X.writePaths=function(n){var s=n.length;if(!s)return"M0,0Z";for(var c="",h=0;h<s;h++)for(var v=n[h].length,p=0;p<v;p++){var T=n[h][p][0];if(T==="Z")c+="Z";else for(var l=n[h][p].length,_=0;_<l;_++){var w=_;T==="Q"||T==="S"?w=o[_]:T==="C"&&(w=r[_]),c+=n[h][p][w],_>0&&_<l-1&&(c+=",")}}return c},X.readPaths=function(n,s,c,h){var v=H(n),p=[],T=-1,l=function(){T++,p[T]=[]},_,w=0,S=0,E,m,b=function(){E=w,m=S};b();for(var d=0;d<v.length;d++){var u=[],y,f,P,L,z=v[d][0],F=z;switch(z){case"M":l(),w=+v[d][1],S=+v[d][2],u.push([F,w,S]),b();break;case"Q":case"S":y=+v[d][1],P=+v[d][2],w=+v[d][3],S=+v[d][4],u.push([F,w,S,y,P]);break;case"C":y=+v[d][1],P=+v[d][2],f=+v[d][3],L=+v[d][4],w=+v[d][5],S=+v[d][6],u.push([F,w,S,y,P,f,L]);break;case"T":case"L":w=+v[d][1],S=+v[d][2],u.push([F,w,S]);break;case"H":F="L",w=+v[d][1],u.push([F,w,S]);break;case"V":F="L",S=+v[d][1],u.push([F,w,S]);break;case"A":F="L";var B=+v[d][1],O=+v[d][2];+v[d][4]||(B=-B,O=-O);var I=w-B,N=S;for(_=1;_<=x/2;_++){var U=2*Math.PI*_/x;u.push([F,I+B*Math.cos(U),N+O*Math.sin(U)])}break;case"Z":(w!==E||S!==m)&&(w=E,S=m,u.push([F,w,S]));break}for(var W=(c||{}).domain,Q=s._fullLayout._size,ue=c&&c.xsizemode==="pixel",se=c&&c.ysizemode==="pixel",he=h===!1,G=0;G<u.length;G++){for(_=0;_+2<7;_+=2){var $=u[G][_+1],J=u[G][_+2];$===void 0||J===void 0||(w=$,S=J,c&&(c.xaxis&&c.xaxis.p2r?(he&&($-=c.xaxis._offset),ue?$=t(c.xaxis,c.xanchor)+$:$=e(c.xaxis,$)):(he&&($-=Q.l),W?$=W.x[0]+$/Q.w:$=$/Q.w),c.yaxis&&c.yaxis.p2r?(he&&(J-=c.yaxis._offset),se?J=t(c.yaxis,c.yanchor)-J:J=e(c.yaxis,J)):(he&&(J-=Q.t),W?J=W.y[1]-J/Q.h:J=1-J/Q.h)),u[G][_+1]=$,u[G][_+2]=J)}p[T].push(u[G].slice())}}return p};function a(n,s){return Math.abs(n-s)<=1e-6}function i(n,s){var c=s[1]-n[1],h=s[2]-n[2];return Math.sqrt(c*c+h*h)}X.pointsOnRectangle=function(n){var s=n.length;if(s!==5)return!1;for(var c=1;c<3;c++){var h=n[0][c]-n[1][c],v=n[3][c]-n[2][c];if(!a(h,v))return!1;var p=n[0][c]-n[3][c],T=n[1][c]-n[2][c];if(!a(p,T))return!1}return!a(n[0][1],n[1][1])&&!a(n[0][1],n[3][1])?!1:!!(i(n[0],n[1])*i(n[0],n[3]))},X.pointsOnEllipse=function(n){var s=n.length;if(s!==x+1)return!1;s=x;for(var c=0;c<s;c++){var h=(s*2-c)%s,v=(s/2+h)%s,p=(s/2+c)%s;if(!a(i(n[c],n[p]),i(n[h],n[v])))return!1}return!0},X.handleEllipse=function(n,s,c){if(!n)return[s,c];var h=X.ellipseOver({x0:s[0],y0:s[1],x1:c[0],y1:c[1]}),v=(h.x1+h.x0)/2,p=(h.y1+h.y0)/2,T=(h.x1-h.x0)/2,l=(h.y1-h.y0)/2;T||(T=l=l/A),l||(l=T=T/A);for(var _=[],w=0;w<x;w++){var S=w*2*Math.PI/x;_.push([v+T*Math.cos(S),p+l*Math.sin(S)])}return _},X.ellipseOver=function(n){var s=n.x0,c=n.y0,h=n.x1,v=n.y1,p=h-s,T=v-c;s-=p,c-=T;var l=(s+h)/2,_=(c+v)/2,w=A;return p*=w,T*=w,{x0:l-p,y0:_-T,x1:l+p,y1:_+T}},X.fixDatesForPaths=function(n,s,c){var h=s.type==="date",v=c.type==="date";if(!h&&!v)return n;for(var p=0;p<n.length;p++)for(var T=0;T<n[p].length;T++)for(var l=0;l+2<n[p][T].length;l+=2)h&&(n[p][T][l+1]=n[p][T][l+1].replace(" ","_")),v&&(n[p][T][l+2]=n[p][T][l+2].replace(" ","_"));return n}}}),A2=Ye({"src/components/shapes/draw_newshape/newshapes.js"(X,H){"use strict";var g=Jd(),x=g.drawMode,A=g.openMode,M=w2(),e=M.i000,t=M.i090,r=M.i180,o=M.i270,a=M.cos45,i=M.sin45,n=T2(),s=n.p2r,c=n.r2p,h=Jm(),v=h.clearOutline,p=tg(),T=p.readPaths,l=p.writePaths,_=p.ellipseOver,w=p.fixDatesForPaths;function S(m,b){if(m.length){var d=m[0][0];if(d){var u=b.gd,y=b.isActiveShape,f=b.dragmode,P=(u.layout||{}).shapes||[];if(!x(f)&&y!==void 0){var L=u._fullLayout._activeShapeIndex;if(L<P.length)switch(u._fullLayout.shapes[L].type){case"rect":f="drawrect";break;case"circle":f="drawcircle";break;case"line":f="drawline";break;case"path":var z=P[L].path||"";z[z.length-1]==="Z"?f="drawclosedpath":f="drawopenpath";break}}var F=E(m,b,f);v(u);for(var B=b.editHelpers,O=(B||{}).modifyItem,I=[],N=0;N<P.length;N++){var U=u._fullLayout.shapes[N];if(I[N]=U._input,y!==void 0&&N===u._fullLayout._activeShapeIndex){var W=F;switch(U.type){case"line":case"rect":case"circle":O("x0",W.x0-(U.x0shift||0)),O("x1",W.x1-(U.x1shift||0)),O("y0",W.y0-(U.y0shift||0)),O("y1",W.y1-(U.y1shift||0));break;case"path":O("path",W.path);break}}}return y===void 0?(I.push(F),I):B?B.getUpdateObj():{}}}}function E(m,b,d){var u=m[0][0],y=b.gd,f=u.getAttribute("d"),P=y._fullLayout.newshape,L=b.plotinfo,z=b.isActiveShape,F=L.xaxis,B=L.yaxis,O=!!L.domain||!L.xaxis,I=!!L.domain||!L.yaxis,N=A(d),U=T(f,y,L,z),W={editable:!0,visible:P.visible,name:P.name,showlegend:P.showlegend,legend:P.legend,legendwidth:P.legendwidth,legendgroup:P.legendgroup,legendgrouptitle:{text:P.legendgrouptitle.text,font:P.legendgrouptitle.font},legendrank:P.legendrank,label:P.label,xref:O?"paper":F._id,yref:I?"paper":B._id,layer:P.layer,opacity:P.opacity,line:{color:P.line.color,width:P.line.width,dash:P.line.dash}};N||(W.fillcolor=P.fillcolor,W.fillrule=P.fillrule);var Q;if(U.length===1&&(Q=U[0]),Q&&Q.length===5&&d==="drawrect")W.type="rect",W.x0=Q[0][1],W.y0=Q[0][2],W.x1=Q[2][1],W.y1=Q[2][2];else if(Q&&d==="drawline")W.type="line",W.x0=Q[0][1],W.y0=Q[0][2],W.x1=Q[1][1],W.y1=Q[1][2];else if(Q&&d==="drawcircle"){W.type="circle";var ue=Q[e][1],se=Q[t][1],he=Q[r][1],G=Q[o][1],$=Q[e][2],J=Q[t][2],Z=Q[r][2],re=Q[o][2],ne=L.xaxis&&(L.xaxis.type==="date"||L.xaxis.type==="log"),j=L.yaxis&&(L.yaxis.type==="date"||L.yaxis.type==="log");ne&&(ue=c(L.xaxis,ue),se=c(L.xaxis,se),he=c(L.xaxis,he),G=c(L.xaxis,G)),j&&($=c(L.yaxis,$),J=c(L.yaxis,J),Z=c(L.yaxis,Z),re=c(L.yaxis,re));var ee=(se+G)/2,ie=($+Z)/2,fe=(G-se+he-ue)/2,be=(re-J+Z-$)/2,Ae=_({x0:ee,y0:ie,x1:ee+fe*a,y1:ie+be*i});ne&&(Ae.x0=s(L.xaxis,Ae.x0),Ae.x1=s(L.xaxis,Ae.x1)),j&&(Ae.y0=s(L.yaxis,Ae.y0),Ae.y1=s(L.yaxis,Ae.y1)),W.x0=Ae.x0,W.y0=Ae.y0,W.x1=Ae.x1,W.y1=Ae.y1}else W.type="path",F&&B&&w(U,F,B),W.path=l(U),Q=null;return W}H.exports={newShapes:S,createShapeObj:E}}}),_S=Ye({"src/components/selections/draw_newselection/newselections.js"(X,H){"use strict";var g=Jd(),x=g.selectMode,A=Jm(),M=A.clearOutline,e=tg(),t=e.readPaths,r=e.writePaths,o=e.fixDatesForPaths;H.exports=function(i,n){if(i.length){var s=i[0][0];if(s){var c=s.getAttribute("d"),h=n.gd,v=h._fullLayout.newselection,p=n.plotinfo,T=p.xaxis,l=p.yaxis,_=n.isActiveSelection,w=n.dragmode,S=(h.layout||{}).selections||[];if(!x(w)&&_!==void 0){var E=h._fullLayout._activeSelectionIndex;if(E<S.length)switch(h._fullLayout.selections[E].type){case"rect":w="select";break;case"path":w="lasso";break}}var m=t(c,h,p,_),b={xref:T._id,yref:l._id,opacity:v.opacity,line:{color:v.line.color,width:v.line.width,dash:v.line.dash}},d;m.length===1&&(d=m[0]),d&&d.length===5&&w==="select"?(b.type="rect",b.x0=d[0][1],b.y0=d[0][2],b.x1=d[2][1],b.y1=d[2][2]):(b.type="path",T&&l&&o(m,T,l),b.path=r(m),d=null),M(h);for(var u=n.editHelpers,y=(u||{}).modifyItem,f=[],P=0;P<S.length;P++){var L=h._fullLayout.selections[P];if(!L){f[P]=L;continue}if(f[P]=L._input,_!==void 0&&P===h._fullLayout._activeSelectionIndex){var z=b;switch(L.type){case"rect":y("x0",z.x0),y("x1",z.x1),y("y0",z.y0),y("y1",z.y1);break;case"path":y("path",z.path);break}}}return _===void 0?(f.push(b),f):u?u.getUpdateObj():{}}}}}}),E_=Ye({"src/components/shapes/constants.js"(X,H){"use strict";H.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}}}),rg=Ye({"src/components/shapes/helpers.js"(X){"use strict";var H=E_(),g=ta(),x=Co();X.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}},X.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}},X.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}},X.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}},X.extractPathCoords=function(e,t,r){var o=[],a=e.match(H.segmentRE);return a.forEach(function(i){var n=t[i.charAt(0)].drawn;if(n!==void 0){var s=i.substr(1).match(H.paramRE);if(!(!s||s.length<n)){var c=s[n],h=r?c:g.cleanNumber(c);o.push(h)}}}),o},X.getDataToPixel=function(e,t,r,o,a){var i=e._fullLayout._size,n;if(t)if(a==="domain")n=function(c){return t._length*(o?1-c:c)+t._offset};else{var s=X.shapePositionToRange(t);n=function(c){var h=M(t,r);return t._offset+t.r2p(s(c,!0))+h},t.type==="date"&&(n=X.decodeDate(n))}else o?n=function(c){return i.t+i.h*(1-c)}:n=function(c){return i.l+i.w*c};return n},X.getPixelToData=function(e,t,r,o){var a=e._fullLayout._size,i;if(t)if(o==="domain")i=function(s){var c=(s-t._offset)/t._length;return r?1-c:c};else{var n=X.rangeToShapePosition(t);i=function(s){return n(t.p2r(s-t._offset))}}else r?i=function(s){return 1-(s-a.t)/a.h}:i=function(s){return(s-a.l)/a.w};return i},X.roundPositionForSharpStrokeRendering=function(e,t){var r=Math.round(t%2)===1,o=Math.round(e);return r?o+.5:o},X.makeShapesOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.shapes[t]||{},o=e._fullLayout._plots[r.xref+r.yref],a=!!o;return a?o._hadPlotinfo=!0:(o={},r.xref&&r.xref!=="paper"&&(o.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&r.yref!=="paper"&&(o.yaxis=e._fullLayout[r.yref+"axis"])),o.xsizemode=r.xsizemode,o.ysizemode=r.ysizemode,o.xanchor=r.xanchor,o.yanchor=r.yanchor,{options:r,plotinfo:o}},X.makeSelectionsOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.selections[t]||{},o=e._fullLayout._plots[r.xref+r.yref],a=!!o;return a?o._hadPlotinfo=!0:(o={},r.xref&&(o.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&(o.yaxis=e._fullLayout[r.yref+"axis"])),{options:r,plotinfo:o}},X.getPathString=function(e,t){var r=t.type,o=x.getRefType(t.xref),a=x.getRefType(t.yref),i=x.getFromId(e,t.xref),n=x.getFromId(e,t.yref),s=e._fullLayout._size,c,h,v,p,T=M(i,t.x0shift),l=M(i,t.x1shift),_=M(n,t.y0shift),w=M(n,t.y1shift),S,E,m,b;if(i?o==="domain"?h=function(O){return i._offset+i._length*O}:(c=X.shapePositionToRange(i),h=function(O){return i._offset+i.r2p(c(O,!0))}):h=function(O){return s.l+s.w*O},n?a==="domain"?p=function(O){return n._offset+n._length*(1-O)}:(v=X.shapePositionToRange(n),p=function(O){return n._offset+n.r2p(v(O,!0))}):p=function(O){return s.t+s.h*(1-O)},r==="path")return i&&i.type==="date"&&(h=X.decodeDate(h)),n&&n.type==="date"&&(p=X.decodeDate(p)),A(t,h,p);if(t.xsizemode==="pixel"){var d=h(t.xanchor);S=d+t.x0+T,E=d+t.x1+l}else S=h(t.x0)+T,E=h(t.x1)+l;if(t.ysizemode==="pixel"){var u=p(t.yanchor);m=u-t.y0+_,b=u-t.y1+w}else m=p(t.y0)+_,b=p(t.y1)+w;if(r==="line")return"M"+S+","+m+"L"+E+","+b;if(r==="rect")return"M"+S+","+m+"H"+E+"V"+b+"H"+S+"Z";var y=(S+E)/2,f=(m+b)/2,P=Math.abs(y-S),L=Math.abs(f-m),z="A"+P+","+L,F=y+P+","+f,B=y+","+(f-L);return"M"+F+z+" 0 1,1 "+B+z+" 0 0,1 "+F+"Z"};function A(e,t,r){var o=e.path,a=e.xsizemode,i=e.ysizemode,n=e.xanchor,s=e.yanchor;return o.replace(H.segmentRE,function(c){var h=0,v=c.charAt(0),p=H.paramIsX[v],T=H.paramIsY[v],l=H.numParams[v],_=c.substr(1).replace(H.paramRE,function(w){return p[h]?a==="pixel"?w=t(n)+Number(w):w=t(w):T[h]&&(i==="pixel"?w=r(s)-Number(w):w=r(w)),h++,h>l&&(w="X"),w});return h>l&&(_=_.replace(/[\s,]*X.*/,""),g.log("Ignoring extra params in segment "+c)),v+_})}function M(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}}}),xS=Ye({"src/components/shapes/display_labels.js"(X,H){"use strict";var g=ta(),x=Co(),A=jl(),M=Bo(),e=tg().readPaths,t=rg(),r=t.getPathString,o=p2(),a=oh().FROM_TL;H.exports=function(c,h,v,p){if(p.selectAll(".shape-label").remove(),!!(v.label.text||v.label.texttemplate)){var T;if(v.label.texttemplate){var l={};if(v.type!=="path"){var _=x.getFromId(c,v.xref),w=x.getFromId(c,v.yref);for(var S in o){var E=o[S](v,_,w);E!==void 0&&(l[S]=E)}}T=g.texttemplateStringForShapes(v.label.texttemplate,{},c._fullLayout._d3locale,l)}else T=v.label.text;var m={"data-index":h},b=v.label.font,d={"data-notex":1},u=p.append("g").attr(m).classed("shape-label",!0),y=u.append("text").attr(d).classed("shape-label-text",!0).text(T),f,P,L,z;if(v.path){var F=r(c,v),B=e(F,c);f=1/0,L=1/0,P=-1/0,z=-1/0;for(var O=0;O<B.length;O++)for(var I=0;I<B[O].length;I++)for(var N=B[O][I],U=1;U<N.length;U+=2){var W=N[U],Q=N[U+1];f=Math.min(f,W),P=Math.max(P,W),L=Math.min(L,Q),z=Math.max(z,Q)}}else{var ue=x.getFromId(c,v.xref),se=v.x0shift,he=v.x1shift,G=x.getRefType(v.xref),$=x.getFromId(c,v.yref),J=v.y0shift,Z=v.y1shift,re=x.getRefType(v.yref),ne=function(Ie,Ze){var at=t.getDataToPixel(c,ue,Ze,!1,G);return at(Ie)},j=function(Ie,Ze){var at=t.getDataToPixel(c,$,Ze,!0,re);return at(Ie)};f=ne(v.x0,se),P=ne(v.x1,he),L=j(v.y0,J),z=j(v.y1,Z)}var ee=v.label.textangle;ee==="auto"&&(v.type==="line"?ee=i(f,L,P,z):ee=0),y.call(function(Ie){return Ie.call(M.font,b).attr({}),A.convertToTspans(Ie,c),Ie});var ie=M.bBox(y.node()),fe=n(f,L,P,z,v,ee,ie),be=fe.textx,Ae=fe.texty,Be=fe.xanchor;y.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[Be],y:Ae,x:be,transform:"rotate("+ee+","+be+","+Ae+")"}).call(A.positionText,be,Ae)}};function i(s,c,h,v){var p,T;return T=Math.abs(h-s),h>=s?p=c-v:p=v-c,-180/Math.PI*Math.atan2(p,T)}function n(s,c,h,v,p,T,l){var _=p.label.textposition,w=p.label.textangle,S=p.label.padding,E=p.type,m=Math.PI/180*T,b=Math.sin(m),d=Math.cos(m),u=p.label.xanchor,y=p.label.yanchor,f,P,L,z;if(E==="line"){_==="start"?(f=s,P=c):_==="end"?(f=h,P=v):(f=(s+h)/2,P=(c+v)/2),u==="auto"&&(_==="start"?w==="auto"?h>s?u="left":h<s?u="right":u="center":h>s?u="right":h<s?u="left":u="center":_==="end"?w==="auto"?h>s?u="right":h<s?u="left":u="center":h>s?u="left":h<s?u="right":u="center":u="center");var F={left:1,center:0,right:-1},B={bottom:-1,middle:0,top:1};if(w==="auto"){var O=B[y];L=-S*b*O,z=S*d*O}else{var I=F[u],N=B[y];L=S*I,z=S*N}f=f+L,P=P+z}else L=S+3,_.indexOf("right")!==-1?(f=Math.max(s,h)-L,u==="auto"&&(u="right")):_.indexOf("left")!==-1?(f=Math.min(s,h)+L,u==="auto"&&(u="left")):(f=(s+h)/2,u==="auto"&&(u="center")),_.indexOf("top")!==-1?P=Math.min(c,v):_.indexOf("bottom")!==-1?P=Math.max(c,v):P=(c+v)/2,z=S,y==="bottom"?P=P-z:y==="top"&&(P=P+z);var U=a[y],W=p.label.font.size,Q=l.height,ue=(Q*U-W)*b,se=-(Q*U-W)*d;return{textx:f+ue,texty:P+se,xanchor:u}}}}),S2=Ye({"src/components/shapes/display_outlines.js"(X,H){"use strict";var g=ta(),x=g.strTranslate,A=bp(),M=Jd(),e=M.drawMode,t=M.selectMode,r=Hn(),o=Fn(),a=w2(),i=a.i000,n=a.i090,s=a.i180,c=a.i270,h=Jm(),v=h.clearOutlineControllers,p=tg(),T=p.pointsOnRectangle,l=p.pointsOnEllipse,_=p.writePaths,w=A2().newShapes,S=A2().createShapeObj,E=_S(),m=xS();H.exports=function y(f,P,L,z){z||(z=0);var F=L.gd;function B(){y(f,P,L,z++),(l(f[0])||L.hasText)&&O({redrawing:!0})}function O(et){var lt={};L.isActiveShape!==void 0&&(L.isActiveShape=!1,lt=w(P,L)),L.isActiveSelection!==void 0&&(L.isActiveSelection=!1,lt=E(P,L),F._fullLayout._reselect=!0),Object.keys(lt).length&&r.call((et||{}).redrawing?"relayout":"_guiRelayout",F,lt)}var I=F._fullLayout,N=I._zoomlayer,U=L.dragmode,W=e(U),Q=t(U);(W||Q)&&(F._fullLayout._outlining=!0),v(F),P.attr("d",_(f));var ue,se,he,G,$;if(!z&&(L.isActiveShape||L.isActiveSelection)){$=b([],f);var J=N.append("g").attr("class","outline-controllers");be(J),it()}if(W&&L.hasText){var Z=N.select(".label-temp"),re=S(P,L,L.dragmode);m(F,"label-temp",re,Z)}function ne(et){he=+et.srcElement.getAttribute("data-i"),G=+et.srcElement.getAttribute("data-j"),ue[he][G].moveFn=j}function j(et,lt){if(f.length){var Me=$[he][G][1],ge=$[he][G][2],ce=f[he],ze=ce.length;if(T(ce)){var tt=et,nt=lt;if(L.isActiveSelection){var Qe=d(ce,G);Qe[1]===ce[G][1]?nt=0:tt=0}for(var Ct=0;Ct<ze;Ct++)if(Ct!==G){var St=ce[Ct];St[1]===ce[G][1]&&(St[1]=Me+tt),St[2]===ce[G][2]&&(St[2]=ge+nt)}if(ce[G][1]=Me+tt,ce[G][2]=ge+nt,!T(ce))for(var Ot=0;Ot<ze;Ot++)for(var jt=0;jt<ce[Ot].length;jt++)ce[Ot][jt]=$[he][Ot][jt]}else ce[G][1]=Me+et,ce[G][2]=ge+lt;B()}}function ee(){O()}function ie(){if(f.length&&f[he]&&f[he].length){for(var et=[],lt=0;lt<f[he].length;lt++)lt!==G&&et.push(f[he][lt]);et.length>1&&!(et.length===2&&et[1][0]==="Z")&&(G===0&&(et[0][0]="M"),f[he]=et,B(),O())}}function fe(et,lt){if(et===2){he=+lt.srcElement.getAttribute("data-i"),G=+lt.srcElement.getAttribute("data-j");var Me=f[he];!T(Me)&&!l(Me)&&ie()}}function be(et){ue=[];for(var lt=0;lt<f.length;lt++){var Me=f[lt],ge=T(Me),ce=!ge&&l(Me);ue[lt]=[];for(var ze=Me.length,tt=0;tt<ze;tt++)if(Me[tt][0]!=="Z"&&!(ce&&tt!==i&&tt!==n&&tt!==s&&tt!==c)){var nt=ge&&L.isActiveSelection,Qe;nt&&(Qe=d(Me,tt));var Ct=Me[tt][1],St=Me[tt][2],Ot=et.append(nt?"rect":"circle").attr("data-i",lt).attr("data-j",tt).style({fill:o.background,stroke:o.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(nt){var jt=Qe[1]-Ct,ur=Qe[2]-St,ar=ur?5:Math.max(Math.min(25,Math.abs(jt)-5),5),Cr=jt?5:Math.max(Math.min(25,Math.abs(ur)-5),5);Ot.classed(ur?"cursor-ew-resize":"cursor-ns-resize",!0).attr("width",ar).attr("height",Cr).attr("x",Ct-ar/2).attr("y",St-Cr/2).attr("transform",x(jt/2,ur/2))}else Ot.classed("cursor-grab",!0).attr("r",5).attr("cx",Ct).attr("cy",St);ue[lt][tt]={element:Ot.node(),gd:F,prepFn:ne,doneFn:ee,clickFn:fe},A.init(ue[lt][tt])}}}function Ae(et,lt){if(f.length)for(var Me=0;Me<f.length;Me++)for(var ge=0;ge<f[Me].length;ge++)for(var ce=0;ce+2<f[Me][ge].length;ce+=2)f[Me][ge][ce+1]=$[Me][ge][ce+1]+et,f[Me][ge][ce+2]=$[Me][ge][ce+2]+lt}function Be(et,lt){Ae(et,lt),B()}function Ie(et){he=+et.srcElement.getAttribute("data-i"),he||(he=0),se[he].moveFn=Be}function Ze(){O()}function at(et){et===2&&u(F)}function it(){if(se=[],!!f.length){var et=0;se[et]={element:P[0][0],gd:F,prepFn:Ie,doneFn:Ze,clickFn:at},A.init(se[et])}}};function b(y,f){for(var P=0;P<f.length;P++){var L=f[P];y[P]=[];for(var z=0;z<L.length;z++){y[P][z]=[];for(var F=0;F<L[z].length;F++)y[P][z][F]=L[z][F]}}return y}function d(y,f){var P=y[f][1],L=y[f][2],z=y.length,F,B,O;return F=(f+1)%z,B=y[F][1],O=y[F][2],B===P&&O===L&&(F=(f+2)%z,B=y[F][1],O=y[F][2]),[F,B,O]}function u(y){if(t(y._fullLayout.dragmode)){v(y);var f=y._fullLayout._activeSelectionIndex,P=(y.layout||{}).selections||[];if(f<P.length){for(var L=[],z=0;z<P.length;z++)z!==f&&L.push(P[z]);delete y._fullLayout._activeSelectionIndex;var F=y._fullLayout.selections[f];y._fullLayout._deselect={xref:F.xref,yref:F.yref},r.call("_guiRelayout",y,{selections:L})}}}}}),M2=Ye({"src/components/shapes/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=Co(),e=tg().readPaths,t=S2(),r=xS(),o=Jm().clearOutlineControllers,a=Fn(),i=Bo(),n=cl().arrayEditor,s=bp(),c=Kd(),h=E_(),v=rg(),p=v.getPathString;H.exports={draw:T,drawOne:w,eraseActiveShape:u,drawLabel:r};function T(y){var f=y._fullLayout;f._shapeUpperLayer.selectAll("path").remove(),f._shapeLowerLayer.selectAll("path").remove(),f._shapeUpperLayer.selectAll("text").remove(),f._shapeLowerLayer.selectAll("text").remove();for(var P in f._plots){var L=f._plots[P].shapelayer;L&&(L.selectAll("path").remove(),L.selectAll("text").remove())}for(var z=0;z<f.shapes.length;z++)f.shapes[z].visible===!0&&w(y,z)}function l(y){return!!y._fullLayout._outlining}function _(y){return!y._context.edits.shapePosition}function w(y,f){y._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+f+'"]').remove();var P=v.makeShapesOptionsAndPlotinfo(y,f),L=P.options,z=P.plotinfo;if(!L._input||L.visible!==!0)return;if(L.layer==="above")B(y._fullLayout._shapeUpperLayer);else if(L.xref==="paper"||L.yref==="paper")B(y._fullLayout._shapeLowerLayer);else if(L.layer==="between")B(z.shapelayerBetween);else if(z._hadPlotinfo){var F=z.mainplotinfo||z;B(F.shapelayer)}else B(y._fullLayout._shapeLowerLayer);function B(O){var I=p(y,L),N={"data-index":f,"fill-rule":L.fillrule,d:I},U=L.opacity,W=L.fillcolor,Q=L.line.width?L.line.color:"rgba(0,0,0,0)",ue=L.line.width,se=L.line.dash;!ue&&L.editable===!0&&(ue=5,se="solid");var he=I[I.length-1]!=="Z",G=_(y)&&L.editable&&y._fullLayout._activeShapeIndex===f;G&&(W=he?"rgba(0,0,0,0)":y._fullLayout.activeshape.fillcolor,U=y._fullLayout.activeshape.opacity);var $=O.append("g").classed("shape-group",!0).attr({"data-index":f}),J=$.append("path").attr(N).style("opacity",U).call(a.stroke,Q).call(a.fill,W).call(i.dashLine,se,ue);S($,y,L),r(y,f,L,$);var Z;if((G||y._context.edits.shapePosition)&&(Z=n(y.layout,"shapes",L)),G){J.style({cursor:"move"});var re={element:J.node(),plotinfo:z,gd:y,editHelpers:Z,hasText:L.label.text||L.label.texttemplate,isActiveShape:!0},ne=e(I,y);t(ne,J,re)}else y._context.edits.shapePosition?E(y,J,L,f,O,Z):L.editable===!0&&J.style("pointer-events",he||a.opacity(W)*U<=.5?"stroke":"all");J.node().addEventListener("click",function(){return b(y,J)})}}function S(y,f,P){var L=(P.xref+P.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");i.setClipUrl(y,L?"clip"+f._fullLayout._uid+L:null,f)}function E(y,f,P,L,z,F){var B=10,O=10,I=P.xsizemode==="pixel",N=P.ysizemode==="pixel",U=P.type==="line",W=P.type==="path",Q=F.modifyItem,ue,se,he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be=g.select(f.node().parentNode),Ie=M.getFromId(y,P.xref),Ze=M.getRefType(P.xref),at=M.getFromId(y,P.yref),it=M.getRefType(P.yref),et=P.x0shift,lt=P.x1shift,Me=P.y0shift,ge=P.y1shift,ce=function(Ee,Ve){var ke=v.getDataToPixel(y,Ie,Ve,!1,Ze);return ke(Ee)},ze=function(Ee,Ve){var ke=v.getDataToPixel(y,at,Ve,!0,it);return ke(Ee)},tt=v.getPixelToData(y,Ie,!1,Ze),nt=v.getPixelToData(y,at,!0,it),Qe=Ot(),Ct={element:Qe.node(),gd:y,prepFn:ar,doneFn:Cr,clickFn:vr},St;s.init(Ct),Qe.node().onmousemove=ur;function Ot(){return U?jt():f}function jt(){var Ee=10,Ve=Math.max(P.line.width,Ee),ke=z.append("g").attr("data-index",L).attr("drag-helper",!0);ke.append("path").attr("d",f.attr("d")).style({cursor:"move","stroke-width":Ve,"stroke-opacity":"0"});var Te={"fill-opacity":"0"},Le=Math.max(Ve/2,Ee);return ke.append("circle").attr({"data-line-point":"start-point",cx:I?ce(P.xanchor)+P.x0:ce(P.x0,et),cy:N?ze(P.yanchor)-P.y0:ze(P.y0,Me),r:Le}).style(Te).classed("cursor-grab",!0),ke.append("circle").attr({"data-line-point":"end-point",cx:I?ce(P.xanchor)+P.x1:ce(P.x1,lt),cy:N?ze(P.yanchor)-P.y1:ze(P.y1,ge),r:Le}).style(Te).classed("cursor-grab",!0),ke}function ur(Ee){if(l(y)){St=null;return}if(U)Ee.target.tagName==="path"?St="move":St=Ee.target.attributes["data-line-point"].value==="start-point"?"resize-over-start-point":"resize-over-end-point";else{var Ve=Ct.element.getBoundingClientRect(),ke=Ve.right-Ve.left,Te=Ve.bottom-Ve.top,Le=Ee.clientX-Ve.left,rt=Ee.clientY-Ve.top,dt=!W&&ke>B&&Te>O&&!Ee.shiftKey?s.getCursor(Le/ke,1-rt/Te):"move";c(f,dt),St=dt.split("-")[0]}}function ar(Ee){l(y)||(I&&($=ce(P.xanchor)),N&&(J=ze(P.yanchor)),P.type==="path"?Ae=P.path:(ue=I?P.x0:ce(P.x0),se=N?P.y0:ze(P.y0),he=I?P.x1:ce(P.x1),G=N?P.y1:ze(P.y1)),ue<he?(ne=ue,fe="x0",j=he,be="x1"):(ne=he,fe="x1",j=ue,be="x0"),!N&&se<G||N&&se>G?(Z=se,ee="y0",re=G,ie="y1"):(Z=G,ee="y1",re=se,ie="y0"),ur(Ee),Fe(z,P),Ne(f,P,y),Ct.moveFn=St==="move"?_r:yt,Ct.altKey=Ee.altKey)}function Cr(){l(y)||(c(f),Ke(z),S(f,y,P),x.call("_guiRelayout",y,F.getUpdateObj()))}function vr(){l(y)||Ke(z)}function _r(Ee,Ve){if(P.type==="path"){var ke=function(rt){return rt},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(dt){return tt(ce(dt)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(dt){return nt(ze(dt)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else I?Q("xanchor",P.xanchor=tt($+Ee)):(Q("x0",P.x0=tt(ue+Ee)),Q("x1",P.x1=tt(he+Ee))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Q("y0",P.y0=nt(se+Ve)),Q("y1",P.y1=nt(G+Ve)));f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function yt(Ee,Ve){if(W){var ke=function(Ma){return Ma},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(Ua){return tt(ce(Ua)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(Ua){return nt(ze(Ua)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else if(U){if(St==="resize-over-start-point"){var rt=ue+Ee,dt=N?se-Ve:se+Ve;Q("x0",P.x0=I?rt:tt(rt)),Q("y0",P.y0=N?dt:nt(dt))}else if(St==="resize-over-end-point"){var xt=he+Ee,It=N?G-Ve:G+Ve;Q("x1",P.x1=I?xt:tt(xt)),Q("y1",P.y1=N?It:nt(It))}}else{var Bt=function(Ma){return St.indexOf(Ma)!==-1},Gt=Bt("n"),Kt=Bt("s"),sr=Bt("w"),sa=Bt("e"),Aa=Gt?Z+Ve:Z,La=Kt?re+Ve:re,ka=sr?ne+Ee:ne,Ga=sa?j+Ee:j;N&&(Gt&&(Aa=Z-Ve),Kt&&(La=re-Ve)),(!N&&La-Aa>O||N&&Aa-La>O)&&(Q(ee,P[ee]=N?Aa:nt(Aa)),Q(ie,P[ie]=N?La:nt(La))),Ga-ka>B&&(Q(fe,P[fe]=I?ka:tt(ka)),Q(be,P[be]=I?Ga:tt(Ga)))}f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function Fe(Ee,Ve){(I||N)&&ke();function ke(){var Te=Ve.type!=="path",Le=Ee.selectAll(".visual-cue").data([0]),rt=1;Le.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":rt}).classed("visual-cue",!0);var dt=ce(I?Ve.xanchor:A.midRange(Te?[Ve.x0,Ve.x1]:v.extractPathCoords(Ve.path,h.paramIsX))),xt=ze(N?Ve.yanchor:A.midRange(Te?[Ve.y0,Ve.y1]:v.extractPathCoords(Ve.path,h.paramIsY)));if(dt=v.roundPositionForSharpStrokeRendering(dt,rt),xt=v.roundPositionForSharpStrokeRendering(xt,rt),I&&N){var It="M"+(dt-1-rt)+","+(xt-1-rt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Le.attr("d",It)}else if(I){var Bt="M"+(dt-1-rt)+","+(xt-9-rt)+"v18 h2 v-18 Z";Le.attr("d",Bt)}else{var Gt="M"+(dt-9-rt)+","+(xt-1-rt)+"h18 v2 h-18 Z";Le.attr("d",Gt)}}}function Ke(Ee){Ee.selectAll(".visual-cue").remove()}function Ne(Ee,Ve,ke){var Te=Ve.xref,Le=Ve.yref,rt=M.getFromId(ke,Te),dt=M.getFromId(ke,Le),xt="";Te!=="paper"&&!rt.autorange&&(xt+=Te),Le!=="paper"&&!dt.autorange&&(xt+=Le),i.setClipUrl(Ee,xt?"clip"+ke._fullLayout._uid+xt:null,ke)}}function m(y,f,P){return y.replace(h.segmentRE,function(L){var z=0,F=L.charAt(0),B=h.paramIsX[F],O=h.paramIsY[F],I=h.numParams[F],N=L.substr(1).replace(h.paramRE,function(U){return z>=I||(B[z]?U=f(U):O[z]&&(U=P(U)),z++),U});return F+N})}function b(y,f){if(_(y)){var P=f.node(),L=+P.getAttribute("data-index");if(L>=0){if(L===y._fullLayout._activeShapeIndex){d(y);return}y._fullLayout._activeShapeIndex=L,y._fullLayout._deactivateShape=d,T(y)}}}function d(y){if(_(y)){var f=y._fullLayout._activeShapeIndex;f>=0&&(o(y),delete y._fullLayout._activeShapeIndex,T(y))}}function u(y){if(_(y)){o(y);var f=y._fullLayout._activeShapeIndex,P=(y.layout||{}).shapes||[];if(f<P.length){for(var L=[],z=0;z<P.length;z++)z!==f&&L.push(P[z]);return delete y._fullLayout._activeShapeIndex,x.call("_guiRelayout",y,{shapes:L})}}}}}),bS=Ye({"src/components/modebar/buttons.js"(X,H){"use strict";var g=Hn(),x=Gu(),A=Xc(),M=b2(),e=M2().eraseActiveShape,t=ta(),r=t._,o=H.exports={};o.toImage={name:"toImage",title:function(E){var m=E._context.toImageButtonOptions||{},b=m.format||"png";return b==="png"?r(E,"Download plot as a png"):r(E,"Download plot")},icon:M.camera,click:function(E){var m=E._context.toImageButtonOptions,b={format:m.format||"png"};t.notifier(r(E,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(d){d in m&&(b[d]=m[d])}),g.call("downloadImage",E,b).then(function(d){t.notifier(r(E,"Snapshot succeeded")+" - "+d,"long")}).catch(function(){t.notifier(r(E,"Sorry, there was a problem downloading your snapshot!"),"long")})}},o.sendDataToCloud={name:"sendDataToCloud",title:function(E){return r(E,"Edit in Chart Studio")},icon:M.disk,click:function(E){x.sendDataToCloud(E)}},o.editInChartStudio={name:"editInChartStudio",title:function(E){return r(E,"Edit in Chart Studio")},icon:M.pencil,click:function(E){x.sendDataToCloud(E)}},o.zoom2d={name:"zoom2d",_cat:"zoom",title:function(E){return r(E,"Zoom")},attr:"dragmode",val:"zoom",icon:M.zoombox,click:a},o.pan2d={name:"pan2d",_cat:"pan",title:function(E){return r(E,"Pan")},attr:"dragmode",val:"pan",icon:M.pan,click:a},o.select2d={name:"select2d",_cat:"select",title:function(E){return r(E,"Box Select")},attr:"dragmode",val:"select",icon:M.selectbox,click:a},o.lasso2d={name:"lasso2d",_cat:"lasso",title:function(E){return r(E,"Lasso Select")},attr:"dragmode",val:"lasso",icon:M.lasso,click:a},o.drawclosedpath={name:"drawclosedpath",title:function(E){return r(E,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:M.drawclosedpath,click:a},o.drawopenpath={name:"drawopenpath",title:function(E){return r(E,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:M.drawopenpath,click:a},o.drawline={name:"drawline",title:function(E){return r(E,"Draw line")},attr:"dragmode",val:"drawline",icon:M.drawline,click:a},o.drawrect={name:"drawrect",title:function(E){return r(E,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:M.drawrect,click:a},o.drawcircle={name:"drawcircle",title:function(E){return r(E,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:M.drawcircle,click:a},o.eraseshape={name:"eraseshape",title:function(E){return r(E,"Erase active shape")},icon:M.eraseshape,click:e},o.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:a},o.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:a},o.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(E){return r(E,"Autoscale")},attr:"zoom",val:"auto",icon:M.autoscale,click:a},o.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(E){return r(E,"Reset axes")},attr:"zoom",val:"reset",icon:M.home,click:a},o.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(E){return r(E,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:M.tooltip_basic,gravity:"ne",click:a},o.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(E){return r(E,"Compare data on hover")},attr:"hovermode",val:function(E){return E._fullLayout._isHoriz?"y":"x"},icon:M.tooltip_compare,gravity:"ne",click:a};function a(E,m){var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout,f={},P=A.list(E,null,!0),L=y._cartesianSpikesEnabled,z,F;if(d==="zoom"){var B=u==="in"?.5:2,O=(1+B)/2,I=(1-B)/2,N;for(F=0;F<P.length;F++)if(z=P[F],!z.fixedrange)if(N=z._name,u==="auto")f[N+".autorange"]=!0;else if(u==="reset")z._rangeInitial0===void 0&&z._rangeInitial1===void 0?f[N+".autorange"]=!0:z._rangeInitial0===void 0?(f[N+".autorange"]=z._autorangeInitial,f[N+".range"]=[null,z._rangeInitial1]):z._rangeInitial1===void 0?(f[N+".range"]=[z._rangeInitial0,null],f[N+".autorange"]=z._autorangeInitial):f[N+".range"]=[z._rangeInitial0,z._rangeInitial1],z._showSpikeInitial!==void 0&&(f[N+".showspikes"]=z._showSpikeInitial,L==="on"&&!z._showSpikeInitial&&(L="off"));else{var U=[z.r2l(z.range[0]),z.r2l(z.range[1])],W=[O*U[0]+I*U[1],O*U[1]+I*U[0]];f[N+".range[0]"]=z.l2r(W[0]),f[N+".range[1]"]=z.l2r(W[1])}}else d==="hovermode"&&(u==="x"||u==="y")&&(u=y._isHoriz?"y":"x",b.setAttribute("data-val",u)),f[d]=u;y._cartesianSpikesEnabled=L,g.call("_guiRelayout",E,f)}o.zoom3d={name:"zoom3d",_cat:"zoom",title:function(E){return r(E,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:M.zoombox,click:i},o.pan3d={name:"pan3d",_cat:"pan",title:function(E){return r(E,"Pan")},attr:"scene.dragmode",val:"pan",icon:M.pan,click:i},o.orbitRotation={name:"orbitRotation",title:function(E){return r(E,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:M["3d_rotate"],click:i},o.tableRotation={name:"tableRotation",title:function(E){return r(E,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:M["z-axis"],click:i};function i(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout._subplots.gl3d||[],f={},P=d.split("."),L=0;L<y.length;L++)f[y[L]+"."+P[1]]=u;var z=u==="pan"?u:"zoom";f.dragmode=z,g.call("_guiRelayout",E,f)}o.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(E){return r(E,"Reset camera to default")},attr:"resetDefault",icon:M.home,click:n},o.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(E){return r(E,"Reset camera to last save")},attr:"resetLastSave",icon:M.movie,click:n};function n(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=d==="resetLastSave",y=d==="resetDefault",f=E._fullLayout,P=f._subplots.gl3d||[],L={},z=0;z<P.length;z++){var F=P[z],B=F+".camera",O=F+".aspectratio",I=F+".aspectmode",N=f[F]._scene,U;u?(L[B+".up"]=N.viewInitial.up,L[B+".eye"]=N.viewInitial.eye,L[B+".center"]=N.viewInitial.center,U=!0):y&&(L[B+".up"]=null,L[B+".eye"]=null,L[B+".center"]=null,U=!0),U&&(L[O+".x"]=N.viewInitial.aspectratio.x,L[O+".y"]=N.viewInitial.aspectratio.y,L[O+".z"]=N.viewInitial.aspectratio.z,L[I]=N.viewInitial.aspectmode)}g.call("_guiRelayout",E,L)}o.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:c};function s(E,m){var b=m.currentTarget,d=b._previousVal,u=E._fullLayout,y=u._subplots.gl3d||[],f=["xaxis","yaxis","zaxis"],P={},L={};if(d)L=d,b._previousVal=null;else{for(var z=0;z<y.length;z++){var F=y[z],B=u[F],O=F+".hovermode";P[O]=B.hovermode,L[O]=!1;for(var I=0;I<3;I++){var N=f[I],U=F+"."+N+".showspikes";L[U]=!1,P[U]=B[N].showspikes}}b._previousVal=P}return L}function c(E,m){var b=s(E,m);g.call("_guiRelayout",E,b)}o.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:h},o.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:h},o.resetGeo={name:"resetGeo",_cat:"reset",title:function(E){return r(E,"Reset")},attr:"reset",val:null,icon:M.autoscale,click:h},o.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:p};function h(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout,f=y._subplots.geo||[],P=0;P<f.length;P++){var L=f[P],z=y[L];if(d==="zoom"){var F=z.projection.scale,B=u==="in"?2*F:.5*F;g.call("_guiRelayout",E,L+".projection.scale",B)}}d==="reset"&&S(E,"geo")}o.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:M.tooltip_basic,gravity:"ne",click:p};function v(E){var m=E._fullLayout;return m.hovermode?!1:m._has("cartesian")?m._isHoriz?"y":"x":"closest"}function p(E){var m=v(E);g.call("_guiRelayout",E,"hovermode",m)}o.resetViewSankey={name:"resetSankeyGroup",title:function(E){return r(E,"Reset view")},icon:M.home,click:function(E){for(var m={"node.groups":[],"node.x":[],"node.y":[]},b=0;b<E._fullData.length;b++){var d=E._fullData[b]._viewInitial;m["node.groups"].push(d.node.groups.slice()),m["node.x"].push(d.node.x.slice()),m["node.y"].push(d.node.y.slice())}g.call("restyle",E,m)}},o.toggleHover={name:"toggleHover",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:function(E,m){var b=s(E,m);b.hovermode=v(E),g.call("_guiRelayout",E,b)}},o.resetViews={name:"resetViews",title:function(E){return r(E,"Reset views")},icon:M.home,click:function(E,m){var b=m.currentTarget;b.setAttribute("data-attr","zoom"),b.setAttribute("data-val","reset"),a(E,m),b.setAttribute("data-attr","resetLastSave"),n(E,m),S(E,"geo"),S(E,"mapbox"),S(E,"map")}},o.toggleSpikelines={name:"toggleSpikelines",title:function(E){return r(E,"Toggle Spike Lines")},icon:M.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(E){var m=E._fullLayout,b=m._cartesianSpikesEnabled;m._cartesianSpikesEnabled=b==="on"?"off":"on",g.call("_guiRelayout",E,T(E))}};function T(E){for(var m=E._fullLayout,b=m._cartesianSpikesEnabled==="on",d=A.list(E,null,!0),u={},y=0;y<d.length;y++){var f=d[y];u[f._name+".showspikes"]=b?!0:f._showSpikeInitial}return u}o.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(E){return r(E,"Reset view")},attr:"reset",icon:M.home,click:function(E){S(E,"mapbox")}},o.resetViewMap={name:"resetViewMap",_cat:"resetView",title:function(E){return r(E,"Reset view")},attr:"reset",icon:M.home,click:function(E){S(E,"map")}},o.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:l},o.zoomInMap={name:"zoomInMap",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:_},o.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:l},o.zoomOutMap={name:"zoomOutMap",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:_};function l(E,m){w(E,m,"mapbox")}function _(E,m){w(E,m,"map")}function w(E,m,b){for(var d=m.currentTarget,u=d.getAttribute("data-val"),y=E._fullLayout,f=y._subplots[b]||[],P=1.05,L={},z=0;z<f.length;z++){var F=f[z],B=y[F].zoom,O=u==="in"?P*B:B/P;L[F+".zoom"]=O}g.call("_guiRelayout",E,L)}function S(E,m){for(var b=E._fullLayout,d=b._subplots[m]||[],u={},y=0;y<d.length;y++)for(var f=d[y],P=b[f]._subplot,L=P.viewInitial,z=Object.keys(L),F=0;F<z.length;F++){var B=z[F];u[f+"."+B]=L[B]}g.call("_guiRelayout",E,u)}}}),wS=Ye({"src/components/modebar/constants.js"(X,H){"use strict";var g=bS(),x=Object.keys(g),A=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],M=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(A),e=[],t=function(r){if(M.indexOf(r._cat||r.name)===-1){var o=r.name,a=(r._cat||r.name).toLowerCase();e.indexOf(o)===-1&&e.push(o),e.indexOf(a)===-1&&e.push(a)}};x.forEach(function(r){t(g[r])}),e.sort(),H.exports={DRAW_MODES:A,backButtons:M,foreButtons:e}}}),TS=Ye({"src/components/modebar/attributes.js"(X,H){"use strict";var g=wS();H.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}}}),gO=Ye({"src/components/modebar/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=TS();H.exports=function(t,r){var o=t.modebar||{},a=A.newContainer(r,"modebar");function i(s,c){return g.coerce(o,a,M,s,c)}i("orientation"),i("bgcolor",x.addOpacity(r.paper_bgcolor,.5));var n=x.contrast(x.rgb(r.modebar.bgcolor));i("color",x.addOpacity(n,.3)),i("activecolor",x.addOpacity(n,.7)),i("uirevision",r.uirevision),i("add"),i("remove")}}}),yO=Ye({"src/components/modebar/modebar.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=b2(),e=xh().version,t=new DOMParser;function r(n){this.container=n.container,this.element=document.createElement("div"),this.update(n.graphInfo,n.buttons),this.container.appendChild(this.element)}var o=r.prototype;o.update=function(n,s){this.graphInfo=n;var c=this.graphInfo._context,h=this.graphInfo._fullLayout,v="modebar-"+h._uid;this.element.setAttribute("id",v),this._uid=v,this.element.className="modebar",c.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),h.modebar.orientation==="v"&&(this.element.className+=" vertical",s=s.reverse());var p=h.modebar,T="#"+v+" .modebar-group";document.querySelectorAll(T).forEach(function(E){E.style.backgroundColor=p.bgcolor});var l=!this.hasButtons(s),_=this.hasLogo!==c.displaylogo,w=this.locale!==c.locale;if(this.locale=c.locale,(l||_||w)&&(this.removeAllButtons(),this.updateButtons(s),c.watermark||c.displaylogo)){var S=this.getLogo();c.watermark&&(S.className=S.className+" watermark"),h.modebar.orientation==="v"?this.element.insertBefore(S,this.element.childNodes[0]):this.element.appendChild(S),this.hasLogo=!0}this.updateActiveButton(),A.setStyleOnHover("#"+v+" .modebar-btn",".active",".icon path","fill: "+p.activecolor,"fill: "+p.color,this.element)},o.updateButtons=function(n){var s=this;this.buttons=n,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(c){var h=s.createGroup();c.forEach(function(v){var p=v.name;if(!p)throw new Error("must provide button 'name' in button config");if(s.buttonsNames.indexOf(p)!==-1)throw new Error("button name '"+p+"' is taken");s.buttonsNames.push(p);var T=s.createButton(v);s.buttonElements.push(T),h.appendChild(T)}),s.element.appendChild(h)})},o.createGroup=function(){var n=document.createElement("div");n.className="modebar-group";var s=this.graphInfo._fullLayout.modebar;return n.style.backgroundColor=s.bgcolor,n},o.createButton=function(n){var s=this,c=document.createElement("a");c.setAttribute("rel","tooltip"),c.className="modebar-btn";var h=n.title;h===void 0?h=n.name:typeof h=="function"&&(h=h(this.graphInfo)),(h||h===0)&&c.setAttribute("data-title",h),n.attr!==void 0&&c.setAttribute("data-attr",n.attr);var v=n.val;v!==void 0&&(typeof v=="function"&&(v=v(this.graphInfo)),c.setAttribute("data-val",v));var p=n.click;if(typeof p!="function")throw new Error("must provide button 'click' function in button config");c.addEventListener("click",function(l){n.click(s.graphInfo,l),s.updateActiveButton(l.currentTarget)}),c.setAttribute("data-toggle",n.toggle||!1),n.toggle&&g.select(c).classed("active",!0);var T=n.icon;return typeof T=="function"?c.appendChild(T()):c.appendChild(this.createIcon(T||M.question)),c.setAttribute("data-gravity",n.gravity||"n"),c},o.createIcon=function(n){var s=x(n.height)?Number(n.height):n.ascent-n.descent,c="http://www.w3.org/2000/svg",h;if(n.path){h=document.createElementNS(c,"svg"),h.setAttribute("viewBox",[0,0,n.width,s].join(" ")),h.setAttribute("class","icon");var v=document.createElementNS(c,"path");v.setAttribute("d",n.path),n.transform?v.setAttribute("transform",n.transform):n.ascent!==void 0&&v.setAttribute("transform","matrix(1 0 0 -1 0 "+n.ascent+")"),h.appendChild(v)}if(n.svg){var p=t.parseFromString(n.svg,"application/xml");h=p.childNodes[0]}return h.setAttribute("height","1em"),h.setAttribute("width","1em"),h},o.updateActiveButton=function(n){var s=this.graphInfo._fullLayout,c=n!==void 0?n.getAttribute("data-attr"):null;this.buttonElements.forEach(function(h){var v=h.getAttribute("data-val")||!0,p=h.getAttribute("data-attr"),T=h.getAttribute("data-toggle")==="true",l=g.select(h),_=function(E,m){var b=s.modebar,d=E.querySelector(".icon path");d&&(m||E.matches(":hover")?d.style.fill=b.activecolor:d.style.fill=b.color)};if(T){if(p===c){var w=!l.classed("active");l.classed("active",w),_(h,w)}}else{var S=p===null?p:A.nestedProperty(s,p).get();l.classed("active",S===v),_(h,S===v)}})},o.hasButtons=function(n){var s=this.buttons;if(!s||n.length!==s.length)return!1;for(var c=0;c<n.length;++c){if(n[c].length!==s[c].length)return!1;for(var h=0;h<n[c].length;h++)if(n[c][h].name!==s[c][h].name)return!1}return!0};function a(n){return n+" (v"+e+")"}o.getLogo=function(){var n=this.createGroup(),s=document.createElement("a");return s.href="https://plotly.com/",s.target="_blank",s.setAttribute("data-title",a(A._(this.graphInfo,"Produced with Plotly.js"))),s.className="modebar-btn plotlyjsicon modebar-btn--logo",s.appendChild(this.createIcon(M.newplotlylogo)),n.appendChild(s),n},o.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},o.destroy=function(){A.removeElement(this.container.querySelector(".modebar"))};function i(n,s){var c=n._fullLayout,h=new r({graphInfo:n,container:c._modebardiv.node(),buttons:s});return c._privateplot&&g.select(h.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),h}H.exports=i}}),_O=Ye({"src/components/modebar/manage.js"(X,H){"use strict";var g=Xc(),x=uu(),A=Hn(),M=Qp().isUnifiedHover,e=yO(),t=bS(),r=wS().DRAW_MODES,o=ta().extendDeep;H.exports=function(p){var T=p._fullLayout,l=p._context,_=T._modeBar;if(!l.displayModeBar&&!l.watermark){_&&(_.destroy(),delete T._modeBar);return}if(!Array.isArray(l.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(l.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var w=l.modeBarButtons,S;Array.isArray(w)&&w.length?S=h(w):!l.displayModeBar&&l.watermark?S=[]:S=a(p),_?_.update(p,S):T._modeBar=e(p,S)};function a(v){var p=v._fullLayout,T=v._fullData,l=v._context;function _(j,ee){if(typeof ee=="string"){if(ee.toLowerCase()===j.toLowerCase())return!0}else{var ie=ee.name,fe=ee._cat||ee.name;if(ie===j||fe===j.toLowerCase())return!0}return!1}var w=p.modebar.add;typeof w=="string"&&(w=[w]);var S=p.modebar.remove;typeof S=="string"&&(S=[S]);var E=l.modeBarButtonsToAdd.concat(w.filter(function(j){for(var ee=0;ee<l.modeBarButtonsToRemove.length;ee++)if(_(j,l.modeBarButtonsToRemove[ee]))return!1;return!0})),m=l.modeBarButtonsToRemove.concat(S.filter(function(j){for(var ee=0;ee<l.modeBarButtonsToAdd.length;ee++)if(_(j,l.modeBarButtonsToAdd[ee]))return!1;return!0})),b=p._has("cartesian"),d=p._has("gl3d"),u=p._has("geo"),y=p._has("pie"),f=p._has("funnelarea"),P=p._has("ternary"),L=p._has("mapbox"),z=p._has("map"),F=p._has("polar"),B=p._has("smith"),O=p._has("sankey"),I=i(p),N=M(p.hovermode),U=[];function W(j){if(j.length){for(var ee=[],ie=0;ie<j.length;ie++){for(var fe=j[ie],be=t[fe],Ae=be.name.toLowerCase(),Be=(be._cat||be.name).toLowerCase(),Ie=!1,Ze=0;Ze<m.length;Ze++){var at=m[Ze].toLowerCase();if(at===Ae||at===Be){Ie=!0;break}}Ie||ee.push(t[fe])}U.push(ee)}}var Q=["toImage"];l.showEditInChartStudio?Q.push("editInChartStudio"):l.showSendToCloud&&Q.push("sendDataToCloud"),W(Q);var ue=[],se=[],he=[],G=[];(b||y||f||P)+u+d+L+z+F+B>1?(se=["toggleHover"],he=["resetViews"]):u?(ue=["zoomInGeo","zoomOutGeo"],se=["hoverClosestGeo"],he=["resetGeo"]):d?(se=["hoverClosest3d"],he=["resetCameraDefault3d","resetCameraLastSave3d"]):L?(ue=["zoomInMapbox","zoomOutMapbox"],se=["toggleHover"],he=["resetViewMapbox"]):z?(ue=["zoomInMap","zoomOutMap"],se=["toggleHover"],he=["resetViewMap"]):y?se=["hoverClosestPie"]:O?(se=["hoverClosestCartesian","hoverCompareCartesian"],he=["resetViewSankey"]):se=["toggleHover"],b&&se.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(s(T)||N)&&(se=[]),b&&!I&&(ue=["zoomIn2d","zoomOut2d","autoScale2d"],he[0]!=="resetViews"&&(he=["resetScale2d"])),d?G=["zoom3d","pan3d","orbitRotation","tableRotation"]:b&&!I||P?G=["zoom2d","pan2d"]:L||z||u?G=["pan2d"]:F&&(G=["zoom2d"]),n(T)&&G.push("select2d","lasso2d");var $=[],J=function(j){$.indexOf(j)===-1&&se.indexOf(j)!==-1&&$.push(j)};if(Array.isArray(E)){for(var Z=[],re=0;re<E.length;re++){var ne=E[re];typeof ne=="string"?(ne=ne.toLowerCase(),r.indexOf(ne)!==-1?(p._has("mapbox")||p._has("map")||p._has("cartesian"))&&G.push(ne):ne==="togglespikelines"?J("toggleSpikelines"):ne==="togglehover"?J("toggleHover"):ne==="hovercompare"?J("hoverCompareCartesian"):ne==="hoverclosest"?(J("hoverClosestCartesian"),J("hoverClosestGeo"),J("hoverClosest3d"),J("hoverClosestPie")):ne==="v1hovermode"&&(J("hoverClosestCartesian"),J("hoverCompareCartesian"),J("hoverClosestGeo"),J("hoverClosest3d"),J("hoverClosestPie"))):Z.push(ne)}E=Z}return W(G),W(ue.concat(he)),W($),c(U,E)}function i(v){for(var p=g.list({_fullLayout:v},null,!0),T=0;T<p.length;T++)if(!p[T].fixedrange)return!1;return!0}function n(v){for(var p=!1,T=0;T<v.length&&!p;T++){var l=v[T];!l._module||!l._module.selectPoints||(A.traceIs(l,"scatter-like")?(x.hasMarkers(l)||x.hasText(l))&&(p=!0):A.traceIs(l,"box-violin")?(l.boxpoints==="all"||l.points==="all")&&(p=!0):p=!0)}return p}function s(v){for(var p=0;p<v.length;p++)if(!A.traceIs(v[p],"noHover"))return!1;return!0}function c(v,p){if(p.length)if(Array.isArray(p[0]))for(var T=0;T<p.length;T++)v.push(p[T]);else v.push(p);return v}function h(v){for(var p=o([],v),T=0;T<p.length;T++)for(var l=p[T],_=0;_<l.length;_++){var w=l[_];if(typeof w=="string")if(t[w]!==void 0)p[T][_]=t[w];else throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "))}return p}}}),AS=Ye({"src/components/modebar/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"modebar",layoutAttributes:TS(),supplyLayoutDefaults:gO(),manage:_O()}}}),SS=Ye({"src/plots/cartesian/scale_zoom.js"(X,H){"use strict";var g=oh().FROM_BL;H.exports=function(A,M,e){e===void 0&&(e=g[A.constraintoward||"center"]);var t=[A.r2l(A.range[0]),A.r2l(A.range[1])],r=t[0]+(t[1]-t[0])*e;A.range=A._input.range=[A.l2r(r+(t[0]-r)*M),A.l2r(r+(t[1]-r)*M)],A.setScale()}}}),Yg=Ye({"src/plots/cartesian/constraints.js"(X){"use strict";var H=ta(),g=Yd(),x=Xc().id2name,A=Vh(),M=SS(),e=wv(),t=ks().ALMOST_EQUAL,r=oh().FROM_BL;X.handleDefaults=function(v,p,T){var l=T.axIds,_=T.axHasImage,w=p._axisConstraintGroups=[],S=p._axisMatchGroups=[],E,m,b,d,u,y,f,P;for(E=0;E<l.length;E++)d=x(l[E]),u=v[d],y=p[d],o(u,y,{axIds:l,layoutOut:p,hasImage:_[d]});function L(Q,ue){for(E=0;E<Q.length;E++){m=Q[E];for(b in m)p[x(b)][ue]=m}}for(L(S,"_matchGroup"),E=0;E<w.length;E++){m=w[E];for(b in m)if(y=p[x(b)],y.fixedrange){for(var z in m){var F=x(z);(v[F]||{}).fixedrange===!1&&H.warn("fixedrange was specified as false for axis "+F+" but was overridden because another axis in its constraint group has fixedrange true"),p[F].fixedrange=!0}break}}for(E=0;E<w.length;){m=w[E];for(b in m){y=p[x(b)],y._matchGroup&&Object.keys(y._matchGroup).length===Object.keys(m).length&&(w.splice(E,1),E--);break}E++}L(w,"_constraintGroup");var B=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],O=!1,I=!1;function N(){P=y[f],f==="rangebreaks"&&(I=y._hasDayOfWeekBreaks)}for(E=0;E<S.length;E++){m=S[E];for(var U=0;U<B.length;U++){f=B[U],P=null;var W;for(b in m)if(d=x(b),u=v[d],y=p[d],f in y){if(!y.matches&&(W=y,f in u)){N();break}P===null&&f in u&&N()}if(f==="range"&&P&&u.range&&u.range.length===2&&u.range[0]!==null&&u.range[1]!==null&&(O=!0),f==="autorange"&&P===null&&O&&(P=!1),P===null&&f in W&&(P=W[f]),P!==null)for(b in m)y=p[x(b)],y[f]=f==="range"?P.slice():P,f==="rangebreaks"&&(y._hasDayOfWeekBreaks=I,e(y,p))}}};function o(v,p,T){var l=T.axIds,_=T.layoutOut,w=T.hasImage,S=_._axisConstraintGroups,E=_._axisMatchGroups,m=p._id,b=m.charAt(0),d=((_._splomAxes||{})[b]||{})[m]||{},u=p._id,y=u.charAt(0)==="x";p._matchGroup=null,p._constraintGroup=null;function f(G,$){return H.coerce(v,p,A,G,$)}f("constrain",w?"domain":"range"),H.coerce(v,p,{constraintoward:{valType:"enumerated",values:y?["left","center","right"]:["bottom","middle","top"],dflt:y?"center":"middle"}},"constraintoward");var P=p.type,L,z,F=[];for(L=0;L<l.length;L++)if(z=l[L],z!==u){var B=_[x(z)];B.type===P&&F.push(z)}var O=i(S,u);if(O){var I=[];for(L=0;L<F.length;L++)z=F[L],O[z]||I.push(z);F=I}var N=F.length,U,W;N&&(v.matches||d.matches)&&(U=H.coerce(v,p,{matches:{valType:"enumerated",values:F,dflt:F.indexOf(d.matches)!==-1?d.matches:void 0}},"matches"));var Q=w&&!y?p.anchor:void 0;if(N&&!U&&(v.scaleanchor||Q)&&(W=H.coerce(v,p,{scaleanchor:{valType:"enumerated",values:F.concat([!1])}},"scaleanchor",Q)),U){p._matchGroup=n(E,u,U,1);var ue=_[x(U)],se=a(_,p)/a(_,ue);y!==(U.charAt(0)==="x")&&(se=(y?"x":"y")+se),n(S,u,U,se)}else v.matches&&l.indexOf(v.matches)!==-1&&H.warn("ignored "+p._name+'.matches: "'+v.matches+'" to avoid an infinite loop');if(W){var he=f("scaleratio");he||(he=p.scaleratio=1),n(S,u,W,he)}else v.scaleanchor&&l.indexOf(v.scaleanchor)!==-1&&H.warn("ignored "+p._name+'.scaleanchor: "'+v.scaleanchor+'" to avoid either an infinite loop and possibly inconsistent scaleratios, or because this axis declares a *matches* constraint.')}function a(v,p){var T=p.domain;return T||(T=v[x(p.overlaying)].domain),T[1]-T[0]}function i(v,p){for(var T=0;T<v.length;T++)if(v[T][p])return v[T];return null}function n(v,p,T,l){var _,w,S,E,m,b=i(v,p);b===null?(b={},b[p]=1,m=v.length,v.push(b)):m=v.indexOf(b);var d=Object.keys(b);for(_=0;_<v.length;_++)if(S=v[_],_!==m&&S[T]){var u=S[T];for(w=0;w<d.length;w++)E=d[w],S[E]=s(u,s(l,b[E]));v.splice(m,1);return}if(l!==1)for(w=0;w<d.length;w++){var y=d[w];b[y]=s(l,b[y])}b[T]=1}function s(v,p){var T="",l="",_,w;typeof v=="string"&&(T=v.match(/^[xy]*/)[0],_=T.length,v=+v.substr(_)),typeof p=="string"&&(l=p.match(/^[xy]*/)[0],w=l.length,p=+p.substr(w));var S=v*p;return!_&&!w?S:!_||!w||T.charAt(0)===l.charAt(0)?T+l+v*p:_===w?S:(_>w?T.substr(w):l.substr(_))+S}function c(v,p){for(var T=p._size,l=T.h/T.w,_={},w=Object.keys(v),S=0;S<w.length;S++){var E=w[S],m=v[E];if(typeof m=="string"){var b=m.match(/^[xy]*/)[0],d=b.length;m=+m.substr(d);for(var u=b.charAt(0)==="y"?l:1/l,y=0;y<d;y++)m*=u}_[E]=m}return _}X.enforce=function(p){var T=p._fullLayout,l=T._axisConstraintGroups||[],_,w,S,E,m,b,d,u;for(_=0;_<l.length;_++){S=c(l[_],T);var y=Object.keys(S),f=1/0,P=0,L=1/0,z={},F={},B=!1;for(w=0;w<y.length;w++)E=y[w],F[E]=m=T[x(E)],m._inputDomain?m.domain=m._inputDomain.slice():m._inputDomain=m.domain.slice(),m._inputRange||(m._inputRange=m.range.slice()),m.setScale(),z[E]=b=Math.abs(m._m)/S[E],f=Math.min(f,b),(m.constrain==="domain"||!m._constraintShrinkable)&&(L=Math.min(L,b)),delete m._constraintShrinkable,P=Math.max(P,b),m.constrain==="domain"&&(B=!0);if(!(f>t*P&&!B)){for(w=0;w<y.length;w++)if(E=y[w],b=z[E],m=F[E],d=m.constrain,b!==L||d==="domain")if(u=b/L,d==="range")M(m,u);else{var O=m._inputDomain,I=(m.domain[1]-m.domain[0])/(O[1]-O[0]),N=(m.r2l(m.range[1])-m.r2l(m.range[0]))/(m.r2l(m._inputRange[1])-m.r2l(m._inputRange[0]));if(u/=I,u*N<1){m.domain=m._input.domain=O.slice(),M(m,u);continue}if(N<1&&(m.range=m._input.range=m._inputRange.slice(),u*=N),m.autorange){var U=m.r2l(m.range[0]),W=m.r2l(m.range[1]),Q=(U+W)/2,ue=Q,se=Q,he=Math.abs(W-Q),G=Q-he*u*1.0001,$=Q+he*u*1.0001,J=g.makePadFn(T,m,0),Z=g.makePadFn(T,m,1);h(m,u);var re=Math.abs(m._m),ne=g.concatExtremes(p,m),j=ne.min,ee=ne.max,ie,fe;for(fe=0;fe<j.length;fe++)ie=j[fe].val-J(j[fe])/re,ie>G&&ie<ue&&(ue=ie);for(fe=0;fe<ee.length;fe++)ie=ee[fe].val+Z(ee[fe])/re,ie<$&&ie>se&&(se=ie);var be=(se-ue)/(2*he);u/=be,ue=m.l2r(ue),se=m.l2r(se),m.range=m._input.range=U<W?[ue,se]:[se,ue]}h(m,u)}}}},X.getAxisGroup=function(p,T){for(var l=p._axisMatchGroups,_=0;_<l.length;_++){var w=l[_];if(w[T])return"g"+_}return T},X.clean=function(p,T){if(T._inputDomain){for(var l=!1,_=T._id,w=p._fullLayout._axisConstraintGroups,S=0;S<w.length;S++)if(w[S][_]){l=!0;break}(!l||T.constrain!=="domain")&&(T._input.domain=T.domain=T._inputDomain,delete T._inputDomain)}};function h(v,p){var T=v._inputDomain,l=r[v.constraintoward],_=T[0]+(T[1]-T[0])*l;v.domain=v._input.domain=[_+(T[0]-_)/p,_+(T[1]-_)/p],v.setScale()}}}),k_=Ye({"src/plot_api/subroutines.js"(X){"use strict";var H=_n(),g=Hn(),x=Gu(),A=ta(),M=jl(),e=M_(),t=Fn(),r=Bo(),o=Xg(),a=AS(),i=Co(),n=oh(),s=Yg(),c=s.enforce,h=s.clean,v=Yd().doAutoRange,p="start",T="middle",l="end",_=wh().zindexSeparator;X.layoutStyles=function(O){return A.syncOrAsync([x.doAutoMargin,S],O)};function w(O,I,N){for(var U=0;U<N.length;U++){var W=N[U][0],Q=N[U][1];if(!(W[0]>=O[1]||W[1]<=O[0])&&Q[0]<I[1]&&Q[1]>I[0])return!0}return!1}function S(O){var I=O._fullLayout,N=I._size,U=N.p,W=i.list(O,"",!0),Q,ue,se,he,G,$;if(I._paperdiv.style({width:O._context.responsive&&I.autosize&&!O._context._hasZeroWidth&&!O.layout.width?"100%":I.width+"px",height:O._context.responsive&&I.autosize&&!O._context._hasZeroHeight&&!O.layout.height?"100%":I.height+"px"}).selectAll(".main-svg").call(r.setSize,I.width,I.height),O._context.setBackground(O,I.paper_bgcolor),X.drawMainTitle(O),a.manage(O),!I._has("cartesian"))return x.previousPromises(O);function J(Ne,Ee,Ve){var ke=Ne._lw/2;if(Ne._id.charAt(0)==="x"){if(Ee){if(Ve==="top")return Ee._offset-U-ke}else return N.t+N.h*(1-(Ne.position||0))+ke%1;return Ee._offset+Ee._length+U+ke}if(Ee){if(Ve==="right")return Ee._offset+Ee._length+U+ke}else return N.l+N.w*(Ne.position||0)+ke%1;return Ee._offset-U-ke}for(Q=0;Q<W.length;Q++){he=W[Q];var Z=he._anchorAxis;he._linepositions={},he._lw=r.crispRound(O,he.linewidth,1),he._mainLinePosition=J(he,Z,he.side),he._mainMirrorPosition=he.mirror&&Z?J(he,Z,n.OPPOSITE_SIDE[he.side]):null}var re=[],ne=[],j=[],ee=t.opacity(I.paper_bgcolor)===1&&t.opacity(I.plot_bgcolor)===1&&I.paper_bgcolor===I.plot_bgcolor;for(ue in I._plots)if(se=I._plots[ue],se.mainplot)se.bg&&se.bg.remove(),se.bg=void 0;else{var ie=se.xaxis.domain,fe=se.yaxis.domain,be=se.plotgroup;if(w(ie,fe,j)&&ue.indexOf(_)===-1){var Ae=be.node(),Be=se.bg=A.ensureSingle(be,"rect","bg");Ae.insertBefore(Be.node(),Ae.childNodes[0]),ne.push(ue)}else be.select("rect.bg").remove(),j.push([ie,fe]),ee||(re.push(ue),ne.push(ue))}var Ie=I._bgLayer.selectAll(".bg").data(re);for(Ie.enter().append("rect").classed("bg",!0),Ie.exit().remove(),Ie.each(function(Ne){I._plots[Ne].bg=H.select(this)}),Q=0;Q<ne.length;Q++)se=I._plots[ne[Q]],G=se.xaxis,$=se.yaxis,se.bg&&G._offset!==void 0&&$._offset!==void 0&&se.bg.call(r.setRect,G._offset-U,$._offset-U,G._length+2*U,$._length+2*U).call(t.fill,I.plot_bgcolor).style("stroke-width",0);if(!I._hasOnlyLargeSploms)for(ue in I._plots){se=I._plots[ue],G=se.xaxis,$=se.yaxis;var Ze=se.clipId="clip"+I._uid+ue+"plot",at=A.ensureSingleById(I._clips,"clipPath",Ze,function(Ne){Ne.classed("plotclip",!0).append("rect")});se.clipRect=at.select("rect").attr({width:G._length,height:$._length}),r.setTranslate(se.plot,G._offset,$._offset);var it,et;se._hasClipOnAxisFalse?(it=null,et=Ze):(it=Ze,et=null),r.setClipUrl(se.plot,it,O),se.layerClipId=et}var lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur;function ar(Ne){return"M"+lt+","+Ne+"H"+Me}function Cr(Ne){return"M"+G._offset+","+Ne+"h"+G._length}function vr(Ne){return"M"+Ne+","+Qe+"V"+nt}function _r(Ne){return $._shift!==void 0&&(Ne+=$._shift),"M"+Ne+","+$._offset+"v"+$._length}function yt(Ne,Ee,Ve){if(!Ne.showline||ue!==Ne._mainSubplot)return"";if(!Ne._anchorAxis)return Ve(Ne._mainLinePosition);var ke=Ee(Ne._mainLinePosition);return Ne.mirror&&(ke+=Ee(Ne._mainMirrorPosition)),ke}for(ue in I._plots){se=I._plots[ue],G=se.xaxis,$=se.yaxis;var Fe="M0,0";E(G,ue)&&(ze=b(G,"left",$,W),lt=G._offset-(ze?U+ze:0),tt=b(G,"right",$,W),Me=G._offset+G._length+(tt?U+tt:0),ge=J(G,$,"bottom"),ce=J(G,$,"top"),ur=!G._anchorAxis||ue!==G._mainSubplot,ur&&(G.mirror==="allticks"||G.mirror==="all")&&(G._linepositions[ue]=[ge,ce]),Fe=yt(G,ar,Cr),ur&&G.showline&&(G.mirror==="all"||G.mirror==="allticks")&&(Fe+=ar(ge)+ar(ce)),se.xlines.style("stroke-width",G._lw+"px").call(t.stroke,G.showline?G.linecolor:"rgba(0,0,0,0)")),se.xlines.attr("d",Fe);var Ke="M0,0";E($,ue)&&(Ot=b($,"bottom",G,W),nt=$._offset+$._length+(Ot?U:0),jt=b($,"top",G,W),Qe=$._offset-(jt?U:0),Ct=J($,G,"left"),St=J($,G,"right"),ur=!$._anchorAxis||ue!==$._mainSubplot,ur&&($.mirror==="allticks"||$.mirror==="all")&&($._linepositions[ue]=[Ct,St]),Ke=yt($,vr,_r),ur&&$.showline&&($.mirror==="all"||$.mirror==="allticks")&&(Ke+=vr(Ct)+vr(St)),se.ylines.style("stroke-width",$._lw+"px").call(t.stroke,$.showline?$.linecolor:"rgba(0,0,0,0)")),se.ylines.attr("d",Ke)}return i.makeClipPaths(O),x.previousPromises(O)}function E(O,I){return(O.ticks||O.showline)&&(I===O._mainSubplot||O.mirror==="all"||O.mirror==="allticks")}function m(O,I,N){if(!N.showline||!N._lw)return!1;if(N.mirror==="all"||N.mirror==="allticks")return!0;var U=N._anchorAxis;if(!U)return!1;var W=n.FROM_BL[I];return N.side===I?U.domain[W]===O.domain[W]:N.mirror&&U.domain[1-W]===O.domain[1-W]}function b(O,I,N,U){if(m(O,I,N))return N._lw;for(var W=0;W<U.length;W++){var Q=U[W];if(Q._mainAxis===N._mainAxis&&m(O,I,Q))return Q._lw}return 0}X.drawMainTitle=function(O){var I=O._fullLayout.title,N=O._fullLayout,U=F(N),W=B(N),Q=L(N,W),ue=P(N,U);if(o.draw(O,"gtitle",{propContainer:N,propName:"title.text",subtitlePropName:"title.subtitle.text",placeholder:N._dfltTitle.plot,subtitlePlaceholder:N._dfltTitle.subtitle,attributes:{x:ue,y:Q,"text-anchor":U,dy:W}}),I.text&&I.automargin){var se=H.selectAll(".gtitle"),he=r.bBox(H.selectAll(".g-gtitle").node()).height,G=y(O,I,he);if(G>0){f(O,Q,G,he),se.attr({x:ue,y:Q,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,Q);var $=(I.text.match(M.BR_TAG_ALL)||[]).length;if($){var J=n.LINE_SPACING*$+n.MID_SHIFT;I.y===0&&(J=-J),se.selectAll(".line").each(function(){var ee=+this.getAttribute("dy").slice(0,-2)-J+"em";this.setAttribute("dy",ee)})}var Z=H.selectAll(".gtitle-subtitle");if(Z.node()){var re=se.node().getBBox(),ne=re.y+re.height,j=ne+o.SUBTITLE_PADDING_EM*I.subtitle.font.size;Z.attr({x:ue,y:j,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,j)}}}};function d(O,I,N,U,W){var Q=I.yref==="paper"?O._fullLayout._size.h:O._fullLayout.height,ue=A.isTopAnchor(I)?U:U-W,se=N==="b"?Q-ue:ue;return A.isTopAnchor(I)&&N==="t"||A.isBottomAnchor(I)&&N==="b"?!1:se<W}function u(O,I,N,U,W){var Q=0;return N==="middle"&&(Q+=W/2),O==="t"?(N==="top"&&(Q+=W),Q+=U-I*U):(N==="bottom"&&(Q+=W),Q+=I*U),Q}function y(O,I,N){var U=I.y,W=I.yanchor,Q=U>.5?"t":"b",ue=O._fullLayout.margin[Q],se=0;return I.yref==="paper"?se=N+I.pad.t+I.pad.b:I.yref==="container"&&(se=u(Q,U,W,O._fullLayout.height,N)+I.pad.t+I.pad.b),se>ue?se:0}function f(O,I,N,U){var W="title.automargin",Q=O._fullLayout.title,ue=Q.y>.5?"t":"b",se={x:Q.x,y:Q.y,t:0,b:0},he={};Q.yref==="paper"&&d(O,Q,ue,I,U)?se[ue]=N:Q.yref==="container"&&(he[ue]=N,O._fullLayout._reservedMargin[W]=he),x.allowAutoMargin(O,W),x.autoMargin(O,W,se)}function P(O,I){var N=O.title,U=O._size,W=0;switch(I===p?W=N.pad.l:I===l&&(W=-N.pad.r),N.xref){case"paper":return U.l+U.w*N.x+W;case"container":default:return O.width*N.x+W}}function L(O,I){var N=O.title,U=O._size,W=0;if(I==="0em"||!I?W=-N.pad.b:I===n.CAP_SHIFT+"em"&&(W=N.pad.t),N.y==="auto")return U.t/2;switch(N.yref){case"paper":return U.t+U.h-U.h*N.y+W;case"container":default:return O.height-O.height*N.y+W}}function z(O){return O==="top"?n.CAP_SHIFT+.3+"em":O==="bottom"?"-0.3em":n.MID_SHIFT+"em"}function F(O){var I=O.title,N=T;return A.isRightAnchor(I)?N=l:A.isLeftAnchor(I)&&(N=p),N}function B(O){var I=O.title,N="0em";return A.isTopAnchor(I)?N=n.CAP_SHIFT+"em":A.isMiddleAnchor(I)&&(N=n.MID_SHIFT+"em"),N}X.doTraceStyle=function(O){var I=O.calcdata,N=[],U;for(U=0;U<I.length;U++){var W=I[U],Q=W[0]||{},ue=Q.trace||{},se=ue._module||{},he=se.arraysToCalcdata;he&&he(W,ue);var G=se.editStyle;G&&N.push({fn:G,cd0:Q})}if(N.length){for(U=0;U<N.length;U++){var $=N[U];$.fn(O,$.cd0)}e(O),X.redrawReglTraces(O)}return x.style(O),g.getComponentMethod("legend","draw")(O),x.previousPromises(O)},X.doColorBars=function(O){return g.getComponentMethod("colorbar","draw")(O),x.previousPromises(O)},X.layoutReplot=function(O){var I=O.layout;return O.layout=void 0,g.call("_doPlot",O,"",I)},X.doLegend=function(O){return g.getComponentMethod("legend","draw")(O),x.previousPromises(O)},X.doTicksRelayout=function(O){return i.draw(O,"redraw"),O._fullLayout._hasOnlyLargeSploms&&(g.subplotsRegistry.splom.updateGrid(O),e(O),X.redrawReglTraces(O)),X.drawMainTitle(O),x.previousPromises(O)},X.doModeBar=function(O){var I=O._fullLayout;a.manage(O);for(var N=0;N<I._basePlotModules.length;N++){var U=I._basePlotModules[N].updateFx;U&&U(O)}return x.previousPromises(O)},X.doCamera=function(O){for(var I=O._fullLayout,N=I._subplots.gl3d,U=0;U<N.length;U++){var W=I[N[U]],Q=W._scene;Q.setViewport(W)}},X.drawData=function(O){var I=O._fullLayout;e(O);for(var N=I._basePlotModules,U=0;U<N.length;U++)N[U].plot(O);return X.redrawReglTraces(O),x.style(O),g.getComponentMethod("selections","draw")(O),g.getComponentMethod("shapes","draw")(O),g.getComponentMethod("annotations","draw")(O),g.getComponentMethod("images","draw")(O),I._replotting=!1,x.previousPromises(O)},X.redrawReglTraces=function(O){var I=O._fullLayout;if(I._has("regl")){var N=O._fullData,U=[],W=[],Q,ue;for(I._hasOnlyLargeSploms&&I._splomGrid.draw(),Q=0;Q<N.length;Q++){var se=N[Q];se.visible===!0&&se._length!==0&&(se.type==="splom"?I._splomScenes[se.uid].draw():se.type==="scattergl"?A.pushUnique(U,se.xaxis+se.yaxis):se.type==="scatterpolargl"&&A.pushUnique(W,se.subplot))}for(Q=0;Q<U.length;Q++)ue=I._plots[U[Q]],ue._scene&&ue._scene.draw();for(Q=0;Q<W.length;Q++)ue=I[W[Q]]._subplot,ue._scene&&ue._scene.draw()}},X.doAutoRangeAndConstraints=function(O){for(var I=i.list(O,"",!0),N,U={},W=0;W<I.length;W++)if(N=I[W],!U[N._id]){U[N._id]=1,h(O,N),v(O,N);var Q=N._matchGroup;if(Q)for(var ue in Q){var se=i.getFromId(O,ue);v(O,se,N.range),U[ue]=1}}c(O)},X.finalDraw=function(O){g.getComponentMethod("rangeslider","draw")(O),g.getComponentMethod("rangeselector","draw")(O)},X.drawMarginPushers=function(O){g.getComponentMethod("legend","draw")(O),g.getComponentMethod("rangeselector","draw")(O),g.getComponentMethod("sliders","draw")(O),g.getComponentMethod("updatemenus","draw")(O),g.getComponentMethod("colorbar","draw")(O)}}}),MS=Ye({"src/components/selections/draw.js"(X,H){"use strict";var g=tg().readPaths,x=S2(),A=Jm().clearOutlineControllers,M=Fn(),e=Bo(),t=cl().arrayEditor,r=rg(),o=r.getPathString;H.exports={draw:a,drawOne:n,activateLastSelection:h};function a(p){var T=p._fullLayout;A(p),T._selectionLayer.selectAll("path").remove();for(var l in T._plots){var _=T._plots[l].selectionLayer;_&&_.selectAll("path").remove()}for(var w=0;w<T.selections.length;w++)n(p,w)}function i(p){return p._context.editSelection}function n(p,T){p._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+T+'"]').remove();var l=r.makeSelectionsOptionsAndPlotinfo(p,T),_=l.options,w=l.plotinfo;if(!_._input)return;S(p._fullLayout._selectionLayer);function S(E){var m=o(p,_),b={"data-index":T,"fill-rule":"evenodd",d:m},d=_.opacity,u="rgba(0,0,0,0)",y=_.line.color||M.contrast(p._fullLayout.plot_bgcolor),f=_.line.width,P=_.line.dash;f||(f=5,P="solid");var L=i(p)&&p._fullLayout._activeSelectionIndex===T;L&&(u=p._fullLayout.activeselection.fillcolor,d=p._fullLayout.activeselection.opacity);for(var z=[],F=1;F>=0;F--){var B=E.append("path").attr(b).style("opacity",F?.1:d).call(M.stroke,y).call(M.fill,u).call(e.dashLine,F?"solid":P,F?4+f:f);if(s(B,p,_),L){var O=t(p.layout,"selections",_);B.style({cursor:"move"});var I={element:B.node(),plotinfo:w,gd:p,editHelpers:O,isActiveSelection:!0},N=g(m,p);x(N,B,I)}else B.style("pointer-events",F?"all":"none");z[F]=B}var U=z[0],W=z[1];W.node().addEventListener("click",function(){return c(p,U)})}}function s(p,T,l){var _=l.xref+l.yref;e.setClipUrl(p,"clip"+T._fullLayout._uid+_,T)}function c(p,T){if(i(p)){var l=T.node(),_=+l.getAttribute("data-index");if(_>=0){if(_===p._fullLayout._activeSelectionIndex){v(p);return}p._fullLayout._activeSelectionIndex=_,p._fullLayout._deactivateSelection=v,a(p)}}}function h(p){if(i(p)){var T=p._fullLayout.selections.length-1;p._fullLayout._activeSelectionIndex=T,p._fullLayout._deactivateSelection=v,a(p)}}function v(p){if(i(p)){var T=p._fullLayout._activeSelectionIndex;T>=0&&(A(p),delete p._fullLayout._activeSelectionIndex,a(p))}}}}),xO=Ye({"node_modules/polybooljs/lib/build-log.js"(X,H){function g(){var x,A=0,M=!1;function e(t,r){return x.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),x}return x={list:[],segmentId:function(){return A++},checkIntersection:function(t,r){return e("check",{seg1:t,seg2:r})},segmentChop:function(t,r){return e("div_seg",{seg:t,pt:r}),e("chop",{seg:t,pt:r})},statusRemove:function(t){return e("pop_seg",{seg:t})},segmentUpdate:function(t){return e("seg_update",{seg:t})},segmentNew:function(t,r){return e("new_seg",{seg:t,primary:r})},segmentRemove:function(t){return e("rem_seg",{seg:t})},tempStatus:function(t,r,o){return e("temp_status",{seg:t,above:r,below:o})},rewind:function(t){return e("rewind",{seg:t})},status:function(t,r,o){return e("status",{seg:t,above:r,below:o})},vert:function(t){return t===M?x:(M=t,e("vert",{x:t}))},log:function(t){return typeof t!="string"&&(t=JSON.stringify(t,!1,"  ")),e("log",{txt:t})},reset:function(){return e("reset")},selected:function(t){return e("selected",{segs:t})},chainStart:function(t){return e("chain_start",{seg:t})},chainRemoveHead:function(t,r){return e("chain_rem_head",{index:t,pt:r})},chainRemoveTail:function(t,r){return e("chain_rem_tail",{index:t,pt:r})},chainNew:function(t,r){return e("chain_new",{pt1:t,pt2:r})},chainMatch:function(t){return e("chain_match",{index:t})},chainClose:function(t){return e("chain_close",{index:t})},chainAddHead:function(t,r){return e("chain_add_head",{index:t,pt:r})},chainAddTail:function(t,r){return e("chain_add_tail",{index:t,pt:r})},chainConnect:function(t,r){return e("chain_con",{index1:t,index2:r})},chainReverse:function(t){return e("chain_rev",{index:t})},chainJoin:function(t,r){return e("chain_join",{index1:t,index2:r})},done:function(){return e("done")}},x}H.exports=g}}),bO=Ye({"node_modules/polybooljs/lib/epsilon.js"(X,H){function g(x){typeof x!="number"&&(x=1e-10);var A={epsilon:function(M){return typeof M=="number"&&(x=M),x},pointAboveOrOnLine:function(M,e,t){var r=e[0],o=e[1],a=t[0],i=t[1],n=M[0],s=M[1];return(a-r)*(s-o)-(i-o)*(n-r)>=-x},pointBetween:function(M,e,t){var r=M[1]-e[1],o=t[0]-e[0],a=M[0]-e[0],i=t[1]-e[1],n=a*o+r*i;if(n<x)return!1;var s=o*o+i*i;return!(n-s>-x)},pointsSameX:function(M,e){return Math.abs(M[0]-e[0])<x},pointsSameY:function(M,e){return Math.abs(M[1]-e[1])<x},pointsSame:function(M,e){return A.pointsSameX(M,e)&&A.pointsSameY(M,e)},pointsCompare:function(M,e){return A.pointsSameX(M,e)?A.pointsSameY(M,e)?0:M[1]<e[1]?-1:1:M[0]<e[0]?-1:1},pointsCollinear:function(M,e,t){var r=M[0]-e[0],o=M[1]-e[1],a=e[0]-t[0],i=e[1]-t[1];return Math.abs(r*i-a*o)<x},linesIntersect:function(M,e,t,r){var o=e[0]-M[0],a=e[1]-M[1],i=r[0]-t[0],n=r[1]-t[1],s=o*n-a*i;if(Math.abs(s)<x)return!1;var c=M[0]-t[0],h=M[1]-t[1],v=(i*h-n*c)/s,p=(o*h-a*c)/s,T={alongA:0,alongB:0,pt:[M[0]+v*o,M[1]+v*a]};return v<=-x?T.alongA=-2:v<x?T.alongA=-1:v-1<=-x?T.alongA=0:v-1<x?T.alongA=1:T.alongA=2,p<=-x?T.alongB=-2:p<x?T.alongB=-1:p-1<=-x?T.alongB=0:p-1<x?T.alongB=1:T.alongB=2,T},pointInsideRegion:function(M,e){for(var t=M[0],r=M[1],o=e[e.length-1][0],a=e[e.length-1][1],i=!1,n=0;n<e.length;n++){var s=e[n][0],c=e[n][1];c-r>x!=a-r>x&&(o-s)*(r-c)/(a-c)+s-t>x&&(i=!i),o=s,a=c}return i}};return A}H.exports=g}}),wO=Ye({"node_modules/polybooljs/lib/linked-list.js"(X,H){var g={create:function(){var x={root:{root:!0,next:null},exists:function(A){return!(A===null||A===x.root)},isEmpty:function(){return x.root.next===null},getHead:function(){return x.root.next},insertBefore:function(A,M){for(var e=x.root,t=x.root.next;t!==null;){if(M(t)){A.prev=t.prev,A.next=t,t.prev.next=A,t.prev=A;return}e=t,t=t.next}e.next=A,A.prev=e,A.next=null},findTransition:function(A){for(var M=x.root,e=x.root.next;e!==null&&!A(e);)M=e,e=e.next;return{before:M===x.root?null:M,after:e,insert:function(t){return t.prev=M,t.next=e,M.next=t,e!==null&&(e.prev=t),t}}}};return x},node:function(x){return x.prev=null,x.next=null,x.remove=function(){x.prev.next=x.next,x.next&&(x.next.prev=x.prev),x.prev=null,x.next=null},x}};H.exports=g}}),TO=Ye({"node_modules/polybooljs/lib/intersecter.js"(X,H){var g=wO();function x(A,M,e){function t(T,l){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:null,below:null},otherFill:null}}function r(T,l,_){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:_.myFill.above,below:_.myFill.below},otherFill:null}}var o=g.create();function a(T,l,_,w,S,E){var m=M.pointsCompare(l,S);return m!==0?m:M.pointsSame(_,E)?0:T!==w?T?1:-1:M.pointAboveOrOnLine(_,w?S:E,w?E:S)?1:-1}function i(T,l){o.insertBefore(T,function(_){var w=a(T.isStart,T.pt,l,_.isStart,_.pt,_.other.pt);return w<0})}function n(T,l){var _=g.node({isStart:!0,pt:T.start,seg:T,primary:l,other:null,status:null});return i(_,T.end),_}function s(T,l,_){var w=g.node({isStart:!1,pt:l.end,seg:l,primary:_,other:T,status:null});T.other=w,i(w,T.pt)}function c(T,l){var _=n(T,l);return s(_,T,l),_}function h(T,l){e&&e.segmentChop(T.seg,l),T.other.remove(),T.seg.end=l,T.other.pt=l,i(T.other,T.pt)}function v(T,l){var _=r(l,T.seg.end,T.seg);return h(T,l),c(_,T.primary)}function p(T,l){var _=g.create();function w(O,I){var N=O.seg.start,U=O.seg.end,W=I.seg.start,Q=I.seg.end;return M.pointsCollinear(N,W,Q)?M.pointsCollinear(U,W,Q)||M.pointAboveOrOnLine(U,W,Q)?1:-1:M.pointAboveOrOnLine(N,W,Q)?1:-1}function S(O){return _.findTransition(function(I){var N=w(O,I.ev);return N>0})}function E(O,I){var N=O.seg,U=I.seg,W=N.start,Q=N.end,ue=U.start,se=U.end;e&&e.checkIntersection(N,U);var he=M.linesIntersect(W,Q,ue,se);if(he===!1){if(!M.pointsCollinear(W,Q,ue)||M.pointsSame(W,se)||M.pointsSame(Q,ue))return!1;var G=M.pointsSame(W,ue),$=M.pointsSame(Q,se);if(G&&$)return I;var J=!G&&M.pointBetween(W,ue,se),Z=!$&&M.pointBetween(Q,ue,se);if(G)return Z?v(I,Q):v(O,se),I;J&&($||(Z?v(I,Q):v(O,se)),v(I,W))}else he.alongA===0&&(he.alongB===-1?v(O,ue):he.alongB===0?v(O,he.pt):he.alongB===1&&v(O,se)),he.alongB===0&&(he.alongA===-1?v(I,W):he.alongA===0?v(I,he.pt):he.alongA===1&&v(I,Q));return!1}for(var m=[];!o.isEmpty();){var b=o.getHead();if(e&&e.vert(b.pt[0]),b.isStart){let O=function(){if(y){var I=E(b,y);if(I)return I}return f?E(b,f):!1};var d=O;e&&e.segmentNew(b.seg,b.primary);var u=S(b),y=u.before?u.before.ev:null,f=u.after?u.after.ev:null;e&&e.tempStatus(b.seg,y?y.seg:!1,f?f.seg:!1);var P=O();if(P){if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,L&&(P.seg.myFill.above=!P.seg.myFill.above)}else P.seg.otherFill=b.seg.myFill;e&&e.segmentUpdate(P.seg),b.other.remove(),b.remove()}if(o.getHead()!==b){e&&e.rewind(b.seg);continue}if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,f?b.seg.myFill.below=f.seg.myFill.above:b.seg.myFill.below=T,L?b.seg.myFill.above=!b.seg.myFill.below:b.seg.myFill.above=b.seg.myFill.below}else if(b.seg.otherFill===null){var z;f?b.primary===f.primary?z=f.seg.otherFill.above:z=f.seg.myFill.above:z=b.primary?l:T,b.seg.otherFill={above:z,below:z}}e&&e.status(b.seg,y?y.seg:!1,f?f.seg:!1),b.other.status=u.insert(g.node({ev:b}))}else{var F=b.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(_.exists(F.prev)&&_.exists(F.next)&&E(F.prev.ev,F.next.ev),e&&e.statusRemove(F.ev.seg),F.remove(),!b.primary){var B=b.seg.myFill;b.seg.myFill=b.seg.otherFill,b.seg.otherFill=B}m.push(b.seg)}o.getHead().remove()}return e&&e.done(),m}return A?{addRegion:function(T){for(var l,_=T[T.length-1],w=0;w<T.length;w++){l=_,_=T[w];var S=M.pointsCompare(l,_);S!==0&&c(t(S<0?l:_,S<0?_:l),!0)}},calculate:function(T){return p(T,!1)}}:{calculate:function(T,l,_,w){return T.forEach(function(S){c(r(S.start,S.end,S),!0)}),_.forEach(function(S){c(r(S.start,S.end,S),!1)}),p(l,w)}}}H.exports=x}}),AO=Ye({"node_modules/polybooljs/lib/segment-chainer.js"(X,H){function g(x,A,M){var e=[],t=[];return x.forEach(function(r){var o=r.start,a=r.end;if(A.pointsSame(o,a)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}M&&M.chainStart(r);var i={index:0,matches_head:!1,matches_pt1:!1},n={index:0,matches_head:!1,matches_pt1:!1},s=i;function c(F,B,O){return s.index=F,s.matches_head=B,s.matches_pt1=O,s===i?(s=n,!1):(s=null,!0)}for(var h=0;h<e.length;h++){var v=e[h],p=v[0],T=v[1],l=v[v.length-1],_=v[v.length-2];if(A.pointsSame(p,o)){if(c(h,!0,!0))break}else if(A.pointsSame(p,a)){if(c(h,!0,!1))break}else if(A.pointsSame(l,o)){if(c(h,!1,!0))break}else if(A.pointsSame(l,a)&&c(h,!1,!1))break}if(s===i){e.push([o,a]),M&&M.chainNew(o,a);return}if(s===n){M&&M.chainMatch(i.index);var w=i.index,S=i.matches_pt1?a:o,E=i.matches_head,v=e[w],m=E?v[0]:v[v.length-1],b=E?v[1]:v[v.length-2],d=E?v[v.length-1]:v[0],u=E?v[v.length-2]:v[1];if(A.pointsCollinear(b,m,S)&&(E?(M&&M.chainRemoveHead(i.index,S),v.shift()):(M&&M.chainRemoveTail(i.index,S),v.pop()),m=b),A.pointsSame(d,S)){e.splice(w,1),A.pointsCollinear(u,d,m)&&(E?(M&&M.chainRemoveTail(i.index,m),v.pop()):(M&&M.chainRemoveHead(i.index,m),v.shift())),M&&M.chainClose(i.index),t.push(v);return}E?(M&&M.chainAddHead(i.index,S),v.unshift(S)):(M&&M.chainAddTail(i.index,S),v.push(S));return}function y(F){M&&M.chainReverse(F),e[F].reverse()}function f(F,B){var O=e[F],I=e[B],N=O[O.length-1],U=O[O.length-2],W=I[0],Q=I[1];A.pointsCollinear(U,N,W)&&(M&&M.chainRemoveTail(F,N),O.pop(),N=U),A.pointsCollinear(N,W,Q)&&(M&&M.chainRemoveHead(B,W),I.shift()),M&&M.chainJoin(F,B),e[F]=O.concat(I),e.splice(B,1)}var P=i.index,L=n.index;M&&M.chainConnect(P,L);var z=e[P].length<e[L].length;i.matches_head?n.matches_head?z?(y(P),f(P,L)):(y(L),f(L,P)):f(L,P):n.matches_head?f(P,L):z?(y(P),f(L,P)):(y(L),f(P,L))}),t}H.exports=g}}),SO=Ye({"node_modules/polybooljs/lib/segment-selector.js"(X,H){function g(A,M,e){var t=[];return A.forEach(function(r){var o=(r.myFill.above?8:0)+(r.myFill.below?4:0)+(r.otherFill&&r.otherFill.above?2:0)+(r.otherFill&&r.otherFill.below?1:0);M[o]!==0&&t.push({id:e?e.segmentId():-1,start:r.start,end:r.end,myFill:{above:M[o]===1,below:M[o]===2},otherFill:null})}),e&&e.selected(t),t}var x={union:function(A,M){return g(A,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],M)},intersect:function(A,M){return g(A,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],M)},difference:function(A,M){return g(A,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],M)},differenceRev:function(A,M){return g(A,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],M)},xor:function(A,M){return g(A,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],M)}};H.exports=x}}),MO=Ye({"node_modules/polybooljs/lib/geojson.js"(X,H){var g={toPolygon:function(x,A){function M(r){if(r.length<=0)return x.segments({inverted:!1,regions:[]});function o(n){var s=n.slice(0,n.length-1);return x.segments({inverted:!1,regions:[s]})}for(var a=o(r[0]),i=1;i<r.length;i++)a=x.selectDifference(x.combine(a,o(r[i])));return a}if(A.type==="Polygon")return x.polygon(M(A.coordinates));if(A.type==="MultiPolygon"){for(var e=x.segments({inverted:!1,regions:[]}),t=0;t<A.coordinates.length;t++)e=x.selectUnion(x.combine(e,M(A.coordinates[t])));return x.polygon(e)}throw new Error("PolyBool: Cannot convert GeoJSON object to PolyBool polygon")},fromPolygon:function(x,A,M){M=x.polygon(x.segments(M));function e(v,p){return A.pointInsideRegion([(v[0][0]+v[1][0])*.5,(v[0][1]+v[1][1])*.5],p)}function t(v){return{region:v,children:[]}}var r=t(null);function o(v,p){for(var T=0;T<v.children.length;T++){var l=v.children[T];if(e(p,l.region)){o(l,p);return}}for(var _=t(p),T=0;T<v.children.length;T++){var l=v.children[T];e(l.region,p)&&(_.children.push(l),v.children.splice(T,1),T--)}v.children.push(_)}for(var a=0;a<M.regions.length;a++){var i=M.regions[a];i.length<3||o(r,i)}function n(v,p){for(var T=0,l=v[v.length-1][0],_=v[v.length-1][1],w=[],S=0;S<v.length;S++){var E=v[S][0],m=v[S][1];w.push([E,m]),T+=m*l-E*_,l=E,_=m}var b=T<0;return b!==p&&w.reverse(),w.push([w[0][0],w[0][1]]),w}var s=[];function c(v){var p=[n(v.region,!1)];s.push(p);for(var T=0;T<v.children.length;T++)p.push(h(v.children[T]))}function h(v){for(var p=0;p<v.children.length;p++)c(v.children[p]);return n(v.region,!0)}for(var a=0;a<r.children.length;a++)c(r.children[a]);return s.length<=0?{type:"Polygon",coordinates:[]}:s.length==1?{type:"Polygon",coordinates:s[0]}:{type:"MultiPolygon",coordinates:s}}};H.exports=g}}),EO=Ye({"node_modules/polybooljs/index.js"(X,H){var g=xO(),x=bO(),A=TO(),M=AO(),e=SO(),t=MO(),r=!1,o=x(),a;a={buildLog:function(n){return n===!0?r=g():n===!1&&(r=!1),r===!1?!1:r.list},epsilon:function(n){return o.epsilon(n)},segments:function(n){var s=A(!0,o,r);return n.regions.forEach(s.addRegion),{segments:s.calculate(n.inverted),inverted:n.inverted}},combine:function(n,s){var c=A(!1,o,r);return{combined:c.calculate(n.segments,n.inverted,s.segments,s.inverted),inverted1:n.inverted,inverted2:s.inverted}},selectUnion:function(n){return{segments:e.union(n.combined,r),inverted:n.inverted1||n.inverted2}},selectIntersect:function(n){return{segments:e.intersect(n.combined,r),inverted:n.inverted1&&n.inverted2}},selectDifference:function(n){return{segments:e.difference(n.combined,r),inverted:n.inverted1&&!n.inverted2}},selectDifferenceRev:function(n){return{segments:e.differenceRev(n.combined,r),inverted:!n.inverted1&&n.inverted2}},selectXor:function(n){return{segments:e.xor(n.combined,r),inverted:n.inverted1!==n.inverted2}},polygon:function(n){return{regions:M(n.segments,o,r),inverted:n.inverted}},polygonFromGeoJSON:function(n){return t.toPolygon(a,n)},polygonToGeoJSON:function(n){return t.fromPolygon(a,o,n)},union:function(n,s){return i(n,s,a.selectUnion)},intersect:function(n,s){return i(n,s,a.selectIntersect)},difference:function(n,s){return i(n,s,a.selectDifference)},differenceRev:function(n,s){return i(n,s,a.selectDifferenceRev)},xor:function(n,s){return i(n,s,a.selectXor)}};function i(n,s,c){var h=a.segments(n),v=a.segments(s),p=a.combine(h,v),T=c(p);return a.polygon(T)}typeof window=="object"&&(window.PolyBool=a),H.exports=a}}),kO=Ye({"node_modules/point-in-polygon/nested.js"(X,H){H.exports=function(x,A,M,e){var t=x[0],r=x[1],o=!1;M===void 0&&(M=0),e===void 0&&(e=A.length);for(var a=e-M,i=0,n=a-1;i<a;n=i++){var s=A[i+M][0],c=A[i+M][1],h=A[n+M][0],v=A[n+M][1],p=c>r!=v>r&&t<(h-s)*(r-c)/(v-c)+s;p&&(o=!o)}return o}}}),C_=Ye({"src/lib/polygon.js"(X,H){"use strict";var g=h2().dot,x=ks().BADNUM,A=H.exports={};A.tester=function(e){var t=e.slice(),r=t[0][0],o=r,a=t[0][1],i=a,n;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),n=1;n<t.length;n++)r=Math.min(r,t[n][0]),o=Math.max(o,t[n][0]),a=Math.min(a,t[n][1]),i=Math.max(i,t[n][1]);var s=!1,c;t.length===5&&(t[0][0]===t[1][0]?t[2][0]===t[3][0]&&t[0][1]===t[3][1]&&t[1][1]===t[2][1]&&(s=!0,c=function(l){return l[0]===t[0][0]}):t[0][1]===t[1][1]&&t[2][1]===t[3][1]&&t[0][0]===t[3][0]&&t[1][0]===t[2][0]&&(s=!0,c=function(l){return l[1]===t[0][1]}));function h(l,_){var w=l[0],S=l[1];return!(w===x||w<r||w>o||S===x||S<a||S>i||_&&c(l))}function v(l,_){var w=l[0],S=l[1];if(w===x||w<r||w>o||S===x||S<a||S>i)return!1;var E=t.length,m=t[0][0],b=t[0][1],d=0,u,y,f,P,L;for(u=1;u<E;u++)if(y=m,f=b,m=t[u][0],b=t[u][1],P=Math.min(y,m),!(w<P||w>Math.max(y,m)||S>Math.max(f,b)))if(S<Math.min(f,b))w!==P&&d++;else{if(m===y?L=S:L=f+(w-y)*(b-f)/(m-y),S===L)return!(u===1&&_);S<=L&&w!==P&&d++}return d%2===1}var p=!0,T=t[0];for(n=1;n<t.length;n++)if(T[0]!==t[n][0]||T[1]!==t[n][1]){p=!1;break}return{xmin:r,xmax:o,ymin:a,ymax:i,pts:t,contains:s?h:v,isRect:s,degenerate:p}},A.isSegmentBent=function(e,t,r,o){var a=e[t],i=[e[r][0]-a[0],e[r][1]-a[1]],n=g(i,i),s=Math.sqrt(n),c=[-i[1]/s,i[0]/s],h,v,p;for(h=t+1;h<r;h++)if(v=[e[h][0]-a[0],e[h][1]-a[1]],p=g(v,i),p<0||p>n||Math.abs(g(v,c))>o)return!0;return!1},A.filter=function(e,t){var r=[e[0]],o=0,a=0;function i(s){e.push(s);var c=r.length,h=o;r.splice(a+1);for(var v=h+1;v<e.length;v++)(v===e.length-1||A.isSegmentBent(e,h,v+1,t))&&(r.push(e[v]),r.length<c-2&&(o=v,a=r.length-1),h=v)}if(e.length>1){var n=e.pop();i(n)}return{addPt:i,raw:e,filtered:r}}}}),CO=Ye({"src/components/selections/constants.js"(X,H){"use strict";H.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}}}),LO=Ye({"src/components/selections/select.js"(X,H){"use strict";var g=EO(),x=kO(),A=Hn(),M=Bo().dashStyle,e=Fn(),t=Lc(),r=Qp().makeEventData,o=Jd(),a=o.freeMode,i=o.rectMode,n=o.drawMode,s=o.openMode,c=o.selectMode,h=rg(),v=E_(),p=S2(),T=Jm().clearOutline,l=tg(),_=l.handleEllipse,w=l.readPaths,S=A2().newShapes,E=_S(),m=MS().activateLastSelection,b=ta(),d=b.sorterAsc,u=C_(),y=m2(),f=Xc().getFromId,P=M_(),L=k_().redrawReglTraces,z=CO(),F=z.MINSELECT,B=u.filter,O=u.tester,I=T2(),N=I.p2r,U=I.axValue,W=I.getTransform;function Q(Fe){return Fe.subplot!==void 0}function ue(Fe,Ke,Ne,Ee,Ve){var ke=!Q(Ee),Te=a(Ve),Le=i(Ve),rt=s(Ve),dt=n(Ve),xt=c(Ve),It=Ve==="drawline",Bt=Ve==="drawcircle",Gt=It||Bt,Kt=Ee.gd,sr=Kt._fullLayout,sa=xt&&sr.newselection.mode==="immediate"&&ke,Aa=sr._zoomlayer,La=Ee.element.getBoundingClientRect(),ka=Ee.plotinfo,Ga=W(ka),Ma=Ke-La.left,Ua=Ne-La.top;sr._calcInverseTransform(Kt);var ni=b.apply3DTransform(sr._invTransform)(Ma,Ua);Ma=ni[0],Ua=ni[1];var Wt=sr._invScaleX,zt=sr._invScaleY,Vt=Ma,Ut=Ua,xr="M"+Ma+","+Ua,Zr=Ee.xaxes[0],pa=Ee.yaxes[0],Xr=Zr._length,Ea=pa._length,Fa=Fe.altKey&&!(n(Ve)&&rt),qa,ya,$a,mt,gt,Er,kr;Z(Fe,Kt,Ee),Te&&(qa=B([[Ma,Ua]],z.BENDPX));var br=Aa.selectAll("path.select-outline-"+ka.id).data([1]),Tr=dt?sr.newshape:sr.newselection;dt&&(Ee.hasText=Tr.label.text||Tr.label.texttemplate);var Mr=dt&&!rt?Tr.fillcolor:"rgba(0,0,0,0)",Fr=Tr.line.color||(ke?e.contrast(Kt._fullLayout.plot_bgcolor):"#7f7f7f");br.enter().append("path").attr("class","select-outline select-outline-"+ka.id).style({opacity:dt?Tr.opacity/2:1,"stroke-dasharray":M(Tr.line.dash,Tr.line.width),"stroke-width":Tr.line.width+"px","shape-rendering":"crispEdges"}).call(e.stroke,Fr).call(e.fill,Mr).attr("fill-rule","evenodd").classed("cursor-move",!!dt).attr("transform",Ga).attr("d",xr+"Z");var Lr=Aa.append("path").attr("class","zoombox-corners").style({fill:e.background,stroke:e.defaultLine,"stroke-width":1}).attr("transform",Ga).attr("d","M0,0Z");if(dt&&Ee.hasText){var Jr=Aa.select(".label-temp");Jr.empty()&&(Jr=Aa.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var oa=sr._uid+z.SELECTID,ca=[],kt=ie(Kt,Ee.xaxes,Ee.yaxes,Ee.subplot);sa&&!Fe.shiftKey&&(Ee._clearSubplotSelections=function(){if(ke){var mr=Zr._id,$r=pa._id;nt(Kt,mr,$r,kt);for(var ma=(Kt.layout||{}).selections||[],Ba=[],Ca=!1,da=0;da<ma.length;da++){var Sa=sr.selections[da];!Sa||Sa.xref!==mr||Sa.yref!==$r?Ba.push(ma[da]):Ca=!0}Ca&&(Kt._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Kt,{selections:Ba}))}});var ir=Cr(Ee);Ee.moveFn=function(mr,$r){Ee._clearSubplotSelections&&(Ee._clearSubplotSelections(),Ee._clearSubplotSelections=void 0),Vt=Math.max(0,Math.min(Xr,Wt*mr+Ma)),Ut=Math.max(0,Math.min(Ea,zt*$r+Ua));var ma=Math.abs(Vt-Ma),Ba=Math.abs(Ut-Ua);if(Le){var Ca,da,Sa;if(xt){var Ti=sr.selectdirection;switch(Ti==="any"?Ba<Math.min(ma*.6,F)?Ca="h":ma<Math.min(Ba*.6,F)?Ca="v":Ca="d":Ca=Ti,Ca){case"h":da=Bt?Ea/2:0,Sa=Ea;break;case"v":da=Bt?Xr/2:0,Sa=Xr;break}}if(dt)switch(sr.newshape.drawdirection){case"vertical":Ca="h",da=Bt?Ea/2:0,Sa=Ea;break;case"horizontal":Ca="v",da=Bt?Xr/2:0,Sa=Xr;break;case"ortho":ma<Ba?(Ca="h",da=Ua,Sa=Ut):(Ca="v",da=Ma,Sa=Vt);break;default:Ca="d"}Ca==="h"?(mt=Gt?_(Bt,[Vt,da],[Vt,Sa]):[[Ma,da],[Ma,Sa],[Vt,Sa],[Vt,da]],mt.xmin=Gt?Vt:Math.min(Ma,Vt),mt.xmax=Gt?Vt:Math.max(Ma,Vt),mt.ymin=Math.min(da,Sa),mt.ymax=Math.max(da,Sa),Lr.attr("d","M"+mt.xmin+","+(Ua-F)+"h-4v"+2*F+"h4ZM"+(mt.xmax-1)+","+(Ua-F)+"h4v"+2*F+"h-4Z")):Ca==="v"?(mt=Gt?_(Bt,[da,Ut],[Sa,Ut]):[[da,Ua],[da,Ut],[Sa,Ut],[Sa,Ua]],mt.xmin=Math.min(da,Sa),mt.xmax=Math.max(da,Sa),mt.ymin=Gt?Ut:Math.min(Ua,Ut),mt.ymax=Gt?Ut:Math.max(Ua,Ut),Lr.attr("d","M"+(Ma-F)+","+mt.ymin+"v-4h"+2*F+"v4ZM"+(Ma-F)+","+(mt.ymax-1)+"v4h"+2*F+"v-4Z")):Ca==="d"&&(mt=Gt?_(Bt,[Ma,Ua],[Vt,Ut]):[[Ma,Ua],[Ma,Ut],[Vt,Ut],[Vt,Ua]],mt.xmin=Math.min(Ma,Vt),mt.xmax=Math.max(Ma,Vt),mt.ymin=Math.min(Ua,Ut),mt.ymax=Math.max(Ua,Ut),Lr.attr("d","M0,0Z"))}else Te&&(qa.addPt([Vt,Ut]),mt=qa.filtered);if(Ee.selectionDefs&&Ee.selectionDefs.length?($a=et(Ee.mergedPolygons,mt,Fa),mt.subtract=Fa,ya=J(Ee.selectionDefs.concat([mt]))):($a=[mt],ya=O(mt)),p(Me($a,rt),br,Ee),xt){var ai=ce(Kt,!1),an=ai.eventData?ai.eventData.points.slice():[];ai=ce(Kt,!1,ya,kt,Ee),ya=ai.selectionTesters,kr=ai.eventData;var sn;qa?sn=qa.filtered:sn=jt($a),y.throttle(oa,z.SELECTDELAY,function(){ca=ge(ya,kt);for(var Mn=ca.slice(),On=0;On<an.length;On++){for(var $n=an[On],Cn=!1,Lo=0;Lo<Mn.length;Lo++)if(Mn[Lo].curveNumber===$n.curveNumber&&Mn[Lo].pointNumber===$n.pointNumber){Cn=!0;break}Cn||Mn.push($n)}Mn.length&&(kr||(kr={}),kr.points=Mn),ir(kr,sn),vr(Kt,kr)})}},Ee.clickFn=function(mr,$r){if(Lr.remove(),Kt._fullLayout._activeShapeIndex>=0){Kt._fullLayout._deactivateShape(Kt);return}if(!dt){var ma=sr.clickmode;y.done(oa).then(function(){if(y.clear(oa),mr===2){for(br.remove(),gt=0;gt<kt.length;gt++)Er=kt[gt],Er._module.selectPoints(Er,!1);if(at(Kt,kt),j(Ee),yt(Kt),kt.length){var Ba=kt[0].xaxis,Ca=kt[0].yaxis;if(Ba&&Ca){for(var da=[],Sa=Kt._fullLayout.selections,Ti=0;Ti<Sa.length;Ti++){var ai=Sa[Ti];ai&&(ai.xref!==Ba._id||ai.yref!==Ca._id)&&da.push(ai)}da.length<Sa.length&&(Kt._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Kt,{selections:da}))}}}else ma.indexOf("select")>-1&&se($r,Kt,Ee.xaxes,Ee.yaxes,Ee.subplot,Ee,br),ma==="event"&&_r(Kt,void 0);t.click(Kt,$r,ka.id)}).catch(b.error)}},Ee.doneFn=function(){Lr.remove(),y.done(oa).then(function(){y.clear(oa),!sa&&mt&&Ee.selectionDefs&&(mt.subtract=Fa,Ee.selectionDefs.push(mt),Ee.mergedPolygons.length=0,[].push.apply(Ee.mergedPolygons,$a)),(sa||dt)&&j(Ee,sa),Ee.doneFnCompleted&&Ee.doneFnCompleted(ca),xt&&_r(Kt,kr)}).catch(b.error)}}function se(Fe,Ke,Ne,Ee,Ve,ke,Te){var Le=Ke._hoverdata,rt=Ke._fullLayout,dt=rt.clickmode,xt=dt.indexOf("event")>-1,It=[],Bt,Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma;if(be(Le)){Z(Fe,Ke,ke),Bt=ie(Ke,Ne,Ee,Ve);var Ua=Ae(Le,Bt),ni=Ua.pointNumbers.length>0;if(ni?Ie(Bt,Ua):Ze(Bt)&&(La=Be(Ua))){for(Te&&Te.remove(),Ma=0;Ma<Bt.length;Ma++)Gt=Bt[Ma],Gt._module.selectPoints(Gt,!1);at(Ke,Bt),j(ke),xt&&yt(Ke)}else{ka=Fe.shiftKey&&(La!==void 0?La:Be(Ua)),Kt=he(Ua.pointNumber,Ua.searchInfo,ka);var Wt=ke.selectionDefs.concat([Kt]);for(sr=J(Wt,sr),Ma=0;Ma<Bt.length;Ma++)if(sa=Bt[Ma]._module.selectPoints(Bt[Ma],sr),Aa=lt(sa,Bt[Ma]),It.length)for(var zt=0;zt<Aa.length;zt++)It.push(Aa[zt]);else It=Aa;if(Ga={points:It},at(Ke,Bt,Ga),Kt&&ke&&ke.selectionDefs.push(Kt),Te){var Vt=ke.mergedPolygons,Ut=s(ke.dragmode);p(Me(Vt,Ut),Te,ke)}xt&&_r(Ke,Ga)}}}function he(Fe,Ke,Ne){return{pointNumber:Fe,searchInfo:Ke,subtract:!!Ne}}function G(Fe){return"pointNumber"in Fe&&"searchInfo"in Fe}function $(Fe){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(Ke,Ne,Ee,Ve){var ke=Fe.searchInfo.cd[0].trace.index,Te=Ve.cd[0].trace.index;return Te===ke&&Ee===Fe.pointNumber},isRect:!1,degenerate:!1,subtract:!!Fe.subtract}}function J(Fe){if(!Fe.length)return;for(var Ke=[],Ne=G(Fe[0])?0:Fe[0][0][0],Ee=Ne,Ve=G(Fe[0])?0:Fe[0][0][1],ke=Ve,Te=0;Te<Fe.length;Te++)if(G(Fe[Te]))Ke.push($(Fe[Te]));else{var Le=O(Fe[Te]);Le.subtract=!!Fe[Te].subtract,Ke.push(Le),Ne=Math.min(Ne,Le.xmin),Ee=Math.max(Ee,Le.xmax),Ve=Math.min(Ve,Le.ymin),ke=Math.max(ke,Le.ymax)}function rt(dt,xt,It,Bt){for(var Gt=!1,Kt=0;Kt<Ke.length;Kt++)Ke[Kt].contains(dt,xt,It,Bt)&&(Gt=!Ke[Kt].subtract);return Gt}return{xmin:Ne,xmax:Ee,ymin:Ve,ymax:ke,pts:[],contains:rt,isRect:!1,degenerate:!1}}function Z(Fe,Ke,Ne){var Ee=Ke._fullLayout,Ve=Ne.plotinfo,ke=Ne.dragmode,Te=Ee._lastSelectedSubplot&&Ee._lastSelectedSubplot===Ve.id,Le=(Fe.shiftKey||Fe.altKey)&&!(n(ke)&&s(ke));Te&&Le&&Ve.selection&&Ve.selection.selectionDefs&&!Ne.selectionDefs?(Ne.selectionDefs=Ve.selection.selectionDefs,Ne.mergedPolygons=Ve.selection.mergedPolygons):(!Le||!Ve.selection)&&j(Ne),Te||(T(Ke),Ee._lastSelectedSubplot=Ve.id)}function re(Fe){return Fe._fullLayout._activeShapeIndex>=0}function ne(Fe){return Fe._fullLayout._activeSelectionIndex>=0}function j(Fe,Ke){var Ne=Fe.dragmode,Ee=Fe.plotinfo,Ve=Fe.gd;re(Ve)&&Ve._fullLayout._deactivateShape(Ve),ne(Ve)&&Ve._fullLayout._deactivateSelection(Ve);var ke=Ve._fullLayout,Te=ke._zoomlayer,Le=n(Ne),rt=c(Ne);if(Le||rt){var dt=Te.selectAll(".select-outline-"+Ee.id);if(dt&&Ve._fullLayout._outlining){var xt;Le&&(xt=S(dt,Fe)),xt&&A.call("_guiRelayout",Ve,{shapes:xt});var It;rt&&!Q(Fe)&&(It=E(dt,Fe)),It&&(Ve._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Ve,{selections:It}).then(function(){Ke&&m(Ve)})),Ve._fullLayout._outlining=!1}}Ee.selection={},Ee.selection.selectionDefs=Fe.selectionDefs=[],Ee.selection.mergedPolygons=Fe.mergedPolygons=[]}function ee(Fe){return Fe._id}function ie(Fe,Ke,Ne,Ee){if(!Fe.calcdata)return[];var Ve=[],ke=Ke.map(ee),Te=Ne.map(ee),Le,rt,dt;for(dt=0;dt<Fe.calcdata.length;dt++)if(Le=Fe.calcdata[dt],rt=Le[0].trace,!(rt.visible!==!0||!rt._module||!rt._module.selectPoints))if(Q({subplot:Ee})&&(rt.subplot===Ee||rt.geo===Ee))Ve.push(fe(rt._module,Le,Ke[0],Ne[0]));else if(rt.type==="splom"){if(rt._xaxes[ke[0]]&&rt._yaxes[Te[0]]){var xt=fe(rt._module,Le,Ke[0],Ne[0]);xt.scene=Fe._fullLayout._splomScenes[rt.uid],Ve.push(xt)}}else if(rt.type==="sankey"){var It=fe(rt._module,Le,Ke[0],Ne[0]);Ve.push(It)}else{if(ke.indexOf(rt.xaxis)===-1&&(!rt._xA||!rt._xA.overlaying)||Te.indexOf(rt.yaxis)===-1&&(!rt._yA||!rt._yA.overlaying))continue;Ve.push(fe(rt._module,Le,f(Fe,rt.xaxis),f(Fe,rt.yaxis)))}return Ve}function fe(Fe,Ke,Ne,Ee){return{_module:Fe,cd:Ke,xaxis:Ne,yaxis:Ee}}function be(Fe){return Fe&&Array.isArray(Fe)&&Fe[0].hoverOnBox!==!0}function Ae(Fe,Ke){var Ne=Fe[0],Ee=-1,Ve=[],ke,Te;for(Te=0;Te<Ke.length;Te++)if(ke=Ke[Te],Ne.fullData.index===ke.cd[0].trace.index){if(Ne.hoverOnBox===!0)break;Ne.pointNumber!==void 0?Ee=Ne.pointNumber:Ne.binNumber!==void 0&&(Ee=Ne.binNumber,Ve=Ne.pointNumbers);break}return{pointNumber:Ee,pointNumbers:Ve,searchInfo:ke}}function Be(Fe){var Ke=Fe.searchInfo.cd[0].trace,Ne=Fe.pointNumber,Ee=Fe.pointNumbers,Ve=Ee.length>0,ke=Ve?Ee[0]:Ne;return Ke.selectedpoints?Ke.selectedpoints.indexOf(ke)>-1:!1}function Ie(Fe,Ke){var Ne=[],Ee,Ve,ke,Te;for(Te=0;Te<Fe.length;Te++)Ee=Fe[Te],Ee.cd[0].trace.selectedpoints&&Ee.cd[0].trace.selectedpoints.length>0&&Ne.push(Ee);if(Ne.length===1&&(ke=Ne[0]===Ke.searchInfo,ke&&(Ve=Ke.searchInfo.cd[0].trace,Ve.selectedpoints.length===Ke.pointNumbers.length))){for(Te=0;Te<Ke.pointNumbers.length;Te++)if(Ve.selectedpoints.indexOf(Ke.pointNumbers[Te])<0)return!1;return!0}return!1}function Ze(Fe){var Ke=0,Ne,Ee,Ve;for(Ve=0;Ve<Fe.length;Ve++)if(Ne=Fe[Ve],Ee=Ne.cd[0].trace,Ee.selectedpoints&&(Ee.selectedpoints.length>1||(Ke+=Ee.selectedpoints.length,Ke>1)))return!1;return Ke===1}function at(Fe,Ke,Ne){var Ee;for(Ee=0;Ee<Ke.length;Ee++){var Ve=Ke[Ee].cd[0].trace._fullInput,ke=Fe._fullLayout._tracePreGUI[Ve.uid]||{};ke.selectedpoints===void 0&&(ke.selectedpoints=Ve._input.selectedpoints||null)}var Te;if(Ne){var Le=Ne.points||[];for(Ee=0;Ee<Ke.length;Ee++)Te=Ke[Ee].cd[0].trace,Te._input.selectedpoints=Te._fullInput.selectedpoints=[],Te._fullInput!==Te&&(Te.selectedpoints=[]);for(var rt=0;rt<Le.length;rt++){var dt=Le[rt],xt=dt.data,It=dt.fullData,Bt=dt.pointIndex,Gt=dt.pointIndices;Gt?([].push.apply(xt.selectedpoints,Gt),Te._fullInput!==Te&&[].push.apply(It.selectedpoints,Gt)):(xt.selectedpoints.push(Bt),Te._fullInput!==Te&&It.selectedpoints.push(Bt))}}else for(Ee=0;Ee<Ke.length;Ee++)Te=Ke[Ee].cd[0].trace,delete Te.selectedpoints,delete Te._input.selectedpoints,Te._fullInput!==Te&&delete Te._fullInput.selectedpoints;it(Fe,Ke)}function it(Fe,Ke){for(var Ne=!1,Ee=0;Ee<Ke.length;Ee++){var Ve=Ke[Ee],ke=Ve.cd;A.traceIs(ke[0].trace,"regl")&&(Ne=!0);var Te=Ve._module,Le=Te.styleOnSelect||Te.style;Le&&(Le(Fe,ke,ke[0].node3),ke[0].nodeRangePlot3&&Le(Fe,ke,ke[0].nodeRangePlot3))}Ne&&(P(Fe),L(Fe))}function et(Fe,Ke,Ne){for(var Ee=Ne?g.difference:g.union,Ve=Ee({regions:Fe},{regions:[Ke]}),ke=Ve.regions.reverse(),Te=0;Te<ke.length;Te++){var Le=ke[Te];Le.subtract=St(Le,ke.slice(0,Te))}return ke}function lt(Fe,Ke){if(Array.isArray(Fe))for(var Ne=Ke.cd,Ee=Ke.cd[0].trace,Ve=0;Ve<Fe.length;Ve++)Fe[Ve]=r(Fe[Ve],Ee,Ne);return Fe}function Me(Fe,Ke){for(var Ne=[],Ee=0;Ee<Fe.length;Ee++){Ne[Ee]=[];for(var Ve=0;Ve<Fe[Ee].length;Ve++){Ne[Ee][Ve]=[],Ne[Ee][Ve][0]=Ve?"L":"M";for(var ke=0;ke<Fe[Ee][Ve].length;ke++)Ne[Ee][Ve].push(Fe[Ee][Ve][ke])}Ke||Ne[Ee].push(["Z",Ne[Ee][0][1],Ne[Ee][0][2]])}return Ne}function ge(Fe,Ke){for(var Ne=[],Ee,Ve=[],ke,Te=0;Te<Ke.length;Te++){var Le=Ke[Te];ke=Le._module.selectPoints(Le,Fe),Ve.push(ke),Ee=lt(ke,Le),Ne=Ne.concat(Ee)}return Ne}function ce(Fe,Ke,Ne,Ee,Ve){var ke=!!Ee,Te,Le,rt;Ve&&(Te=Ve.plotinfo,Le=Ve.xaxes[0]._id,rt=Ve.yaxes[0]._id);var dt=[],xt=[],It=Ct(Fe),Bt=Fe._fullLayout;if(Te){var Gt=Bt._zoomlayer,Kt=Bt.dragmode,sr=n(Kt),sa=c(Kt);if(sr||sa){var Aa=f(Fe,Le,"x"),La=f(Fe,rt,"y");if(Aa&&La){var ka=Gt.selectAll(".select-outline-"+Te.id);if(ka&&Fe._fullLayout._outlining&&ka.length){for(var Ga=ka[0][0],Ma=Ga.getAttribute("d"),Ua=w(Ma,Fe,Te),ni=[],Wt=0;Wt<Ua.length;Wt++){for(var zt=Ua[Wt],Vt=[],Ut=0;Ut<zt.length;Ut++)Vt.push([Ot(Aa,zt[Ut][1]),Ot(La,zt[Ut][2])]);Vt.xref=Le,Vt.yref=rt,Vt.subtract=St(Vt,ni),ni.push(Vt)}It=It.concat(ni)}}}}var xr=Le&&rt?[Le+rt]:Bt._subplots.cartesian;ze(Fe);for(var Zr={},pa=0;pa<xr.length;pa++){var Xr=xr[pa],Ea=Xr.indexOf("y"),Fa=Xr.slice(0,Ea),qa=Xr.slice(Ea),ya=Le&&rt?Ne:void 0;if(ya=Qe(It,Fa,qa,ya),ya){var $a=Ee;if(!ke){var mt=f(Fe,Fa,"x"),gt=f(Fe,qa,"y");$a=ie(Fe,[mt],[gt],Xr);for(var Er=0;Er<$a.length;Er++){var kr=$a[Er],br=kr.cd[0],Tr=br.trace;if(kr._module.name==="scattergl"&&!br.t.xpx){var Mr=Tr.x,Fr=Tr.y,Lr=Tr._length;br.t.xpx=[],br.t.ypx=[];for(var Jr=0;Jr<Lr;Jr++)br.t.xpx[Jr]=mt.c2p(Mr[Jr]),br.t.ypx[Jr]=gt.c2p(Fr[Jr])}kr._module.name==="splom"&&(Zr[Tr.uid]||(Zr[Tr.uid]=!0))}}var oa=ge(ya,$a);dt=dt.concat(oa),xt=xt.concat($a)}}var ca={points:dt};at(Fe,xt,ca);var kt=Bt.clickmode,ir=kt.indexOf("event")>-1&&Ke;if(!Te&&Ke){var mr=Ct(Fe,!0);if(mr.length){var $r=mr[0].xref,ma=mr[0].yref;if($r&&ma){var Ba=jt(mr),Ca=ar([f(Fe,$r,"x"),f(Fe,ma,"y")]);Ca(ca,Ba)}}Fe._fullLayout._noEmitSelectedAtStart?Fe._fullLayout._noEmitSelectedAtStart=!1:ir&&_r(Fe,ca),Bt._reselect=!1}if(!Te&&Bt._deselect){var da=Bt._deselect;Le=da.xref,rt=da.yref,tt(Le,rt,xt)||nt(Fe,Le,rt,Ee),ir&&(ca.points.length?_r(Fe,ca):yt(Fe)),Bt._deselect=!1}return{eventData:ca,selectionTesters:Ne}}function ze(Fe){var Ke=Fe.calcdata;if(Ke)for(var Ne=0;Ne<Ke.length;Ne++){var Ee=Ke[Ne][0],Ve=Ee.trace,ke=Fe._fullLayout._splomScenes;if(ke){var Te=ke[Ve.uid];Te&&(Te.selectBatch=[])}}}function tt(Fe,Ke,Ne){for(var Ee=0;Ee<Ne.length;Ee++){var Ve=Ne[Ee];if(Ve.xaxis&&Ve.xaxis._id===Fe&&Ve.yaxis&&Ve.yaxis._id===Ke)return!0}return!1}function nt(Fe,Ke,Ne,Ee){Ee=ie(Fe,[f(Fe,Ke,"x")],[f(Fe,Ne,"y")],Ke+Ne);for(var Ve=0;Ve<Ee.length;Ve++){var ke=Ee[Ve];ke._module.selectPoints(ke,!1)}at(Fe,Ee)}function Qe(Fe,Ke,Ne,Ee){for(var Ve,ke=0;ke<Fe.length;ke++){var Te=Fe[ke];if(!(Ke!==Te.xref||Ne!==Te.yref))if(Ve){var Le=!!Te.subtract;Ve=et(Ve,Te,Le),Ee=J(Ve)}else Ve=[Te],Ee=O(Te)}return Ee}function Ct(Fe,Ke){for(var Ne=[],Ee=Fe._fullLayout,Ve=Ee.selections,ke=Ve.length,Te=0;Te<ke;Te++)if(!(Ke&&Te!==Ee._activeSelectionIndex)){var Le=Ve[Te];if(Le){var rt=Le.xref,dt=Le.yref,xt=f(Fe,rt,"x"),It=f(Fe,dt,"y"),Bt,Gt,Kt,sr,sa;if(Le.type==="rect"){sa=[];var Aa=Ot(xt,Le.x0),La=Ot(xt,Le.x1),ka=Ot(It,Le.y0),Ga=Ot(It,Le.y1);sa=[[Aa,ka],[Aa,Ga],[La,Ga],[La,ka]],Bt=Math.min(Aa,La),Gt=Math.max(Aa,La),Kt=Math.min(ka,Ga),sr=Math.max(ka,Ga),sa.xmin=Bt,sa.xmax=Gt,sa.ymin=Kt,sa.ymax=sr,sa.xref=rt,sa.yref=dt,sa.subtract=!1,sa.isRect=!0,Ne.push(sa)}else if(Le.type==="path")for(var Ma=Le.path.split("Z"),Ua=[],ni=0;ni<Ma.length;ni++){var Wt=Ma[ni];if(Wt){Wt+="Z";var zt=h.extractPathCoords(Wt,v.paramIsX,"raw"),Vt=h.extractPathCoords(Wt,v.paramIsY,"raw");Bt=1/0,Gt=-1/0,Kt=1/0,sr=-1/0,sa=[];for(var Ut=0;Ut<zt.length;Ut++){var xr=Ot(xt,zt[Ut]),Zr=Ot(It,Vt[Ut]);sa.push([xr,Zr]),Bt=Math.min(xr,Bt),Gt=Math.max(xr,Gt),Kt=Math.min(Zr,Kt),sr=Math.max(Zr,sr)}sa.xmin=Bt,sa.xmax=Gt,sa.ymin=Kt,sa.ymax=sr,sa.xref=rt,sa.yref=dt,sa.subtract=St(sa,Ua),Ua.push(sa),Ne.push(sa)}}}}return Ne}function St(Fe,Ke){for(var Ne=!1,Ee=0;Ee<Ke.length;Ee++)for(var Ve=Ke[Ee],ke=0;ke<Fe.length;ke++)if(x(Fe[ke],Ve)){Ne=!Ne;break}return Ne}function Ot(Fe,Ke){return Fe.type==="date"&&(Ke=Ke.replace("_"," ")),Fe.type==="log"?Fe.c2p(Ke):Fe.r2p(Ke,null,Fe.calendar)}function jt(Fe){for(var Ke=Fe.length,Ne=[],Ee=0;Ee<Ke;Ee++){var Ve=Fe[Ee];Ne=Ne.concat(Ve),Ne=Ne.concat([Ve[0]])}return ur(Ne)}function ur(Fe){return Fe.isRect=Fe.length===5&&Fe[0][0]===Fe[4][0]&&Fe[0][1]===Fe[4][1]&&Fe[0][0]===Fe[1][0]&&Fe[2][0]===Fe[3][0]&&Fe[0][1]===Fe[3][1]&&Fe[1][1]===Fe[2][1]||Fe[0][1]===Fe[1][1]&&Fe[2][1]===Fe[3][1]&&Fe[0][0]===Fe[3][0]&&Fe[1][0]===Fe[2][0],Fe.isRect&&(Fe.xmin=Math.min(Fe[0][0],Fe[2][0]),Fe.xmax=Math.max(Fe[0][0],Fe[2][0]),Fe.ymin=Math.min(Fe[0][1],Fe[2][1]),Fe.ymax=Math.max(Fe[0][1],Fe[2][1])),Fe}function ar(Fe){return function(Ke,Ne){for(var Ee,Ve,ke=0;ke<Fe.length;ke++){var Te=Fe[ke],Le=Te._id,rt=Le.charAt(0);if(Ne.isRect){Ee||(Ee={});var dt=Ne[rt+"min"],xt=Ne[rt+"max"];dt!==void 0&&xt!==void 0&&(Ee[Le]=[N(Te,dt),N(Te,xt)].sort(d))}else Ve||(Ve={}),Ve[Le]=Ne.map(U(Te))}Ee&&(Ke.range=Ee),Ve&&(Ke.lassoPoints=Ve)}}function Cr(Fe){var Ke=Fe.plotinfo;return Ke.fillRangeItems||ar(Fe.xaxes.concat(Fe.yaxes))}function vr(Fe,Ke){Fe.emit("plotly_selecting",Ke)}function _r(Fe,Ke){Ke&&(Ke.selections=(Fe.layout||{}).selections||[]),Fe.emit("plotly_selected",Ke)}function yt(Fe){Fe.emit("plotly_deselect",null)}H.exports={reselect:ce,prepSelect:ue,clearOutline:T,clearSelectionsCache:j,selectOnClick:se}}}),ES=Ye({"src/components/annotations/arrow_paths.js"(X,H){"use strict";H.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]}}),L_=Ye({"src/constants/axis_placeable_objects.js"(X,H){"use strict";H.exports={axisRefDescription:function(g,x,A){return["If set to a",g,"axis id (e.g. *"+g+"* or","*"+g+"2*), the `"+g+"` position refers to a",g,"coordinate. If set to *paper*, the `"+g+"`","position refers to the distance from the",x,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",x,"("+A+"). If set to a",g,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",x,"of the domain of that axis: e.g.,","*"+g+"2 domain* refers to the domain of the second",g," axis and a",g,"position of 0.5 refers to the","point between the",x,"and the",A,"of the domain of the","second",g,"axis."].join(" ")}}}}),Kg=Ye({"src/components/annotations/attributes.js"(X,H){"use strict";var g=ES(),x=Au(),A=wh(),M=cl().templatedArray,e=L_();H.exports=M("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:x({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:g.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:g.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",A.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",A.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",A.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",A.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:x({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})}}),Tv=Ye({"src/traces/scatter/constants.js"(X,H){"use strict";H.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}}}),$d=Ye({"src/traces/scatter/fillcolor_attribute.js"(X,H){"use strict";H.exports=function(x){return{valType:"color",editType:"style",anim:!0}}}}),Pc=Ye({"src/traces/scatter/attributes.js"(X,H){"use strict";var g=Cc().axisHoverFormat,x=xs().texttemplateAttrs,A=xs().hovertemplateAttrs,M=tu(),e=Au(),t=Uh().dash,r=Uh().pattern,o=Bo(),a=Tv(),i=Oo().extendFlat,n=$d();function s(v){return{valType:"any",dflt:0,editType:"calc"}}function c(v){return{valType:"any",editType:"calc"}}function h(v){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}H.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:s("x"),yperiod:s("y"),xperiod0:c("x0"),yperiod0:c("y0"),xperiodalignment:h("x"),yperiodalignment:h("y"),xhoverformat:g("x"),yhoverformat:g("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:x({},{}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:A({},{keys:a.eventDataKeys}),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:i({},t,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:n(!0),fillgradient:i({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:r,marker:i({symbol:{valType:"enumerated",values:o.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:i({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},M("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},M("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:e({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}}}),kS=Ye({"src/components/selections/attributes.js"(X,H){"use strict";var g=Kg(),x=Pc().line,A=Uh().dash,M=Oo().extendFlat,e=Ou().overrideAll,t=cl().templatedArray,r=L_();H.exports=e(t("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:M({},g.xref,{}),yref:M({},g.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:x.color,width:M({},x.width,{min:1,dflt:1}),dash:M({},A,{dflt:"dot"})}}),"arraydraw","from-root")}}),PO=Ye({"src/components/selections/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=kS(),e=rg();H.exports=function(o,a){A(o,a,{name:"selections",handleItemDefaults:t});for(var i=a.selections,n=0;n<i.length;n++){var s=i[n];s&&s.path===void 0&&(s.x0===void 0||s.x1===void 0||s.y0===void 0||s.y1===void 0)&&(a.selections[n]=null)}};function t(r,o,a){function i(P,L){return g.coerce(r,o,M,P,L)}var n=i("path"),s=n?"path":"rect",c=i("type",s),h=c!=="path";h&&delete o.path,i("opacity"),i("line.color"),i("line.width"),i("line.dash");for(var v=["x","y"],p=0;p<2;p++){var T=v[p],l={_fullLayout:a},_,w,S,E=x.coerceRef(r,o,l,T);if(_=x.getFromId(l,E),_._selectionIndices.push(o._index),S=e.rangeToShapePosition(_),w=e.shapePositionToRange(_),h){var m=T+"0",b=T+"1",d=r[m],u=r[b];r[m]=w(r[m],!0),r[b]=w(r[b],!0),x.coercePosition(o,l,i,E,m),x.coercePosition(o,l,i,E,b);var y=o[m],f=o[b];y!==void 0&&f!==void 0&&(o[m]=S(y),o[b]=S(f),r[m]=d,r[b]=u)}}h&&g.noneOrAll(r,o,["x0","x1","y0","y1"])}}}),IO=Ye({"src/components/selections/draw_newselection/defaults.js"(X,H){"use strict";H.exports=function(x,A,M){M("newselection.mode");var e=M("newselection.line.width");e&&(M("newselection.line.color"),M("newselection.line.dash")),M("activeselection.fillcolor"),M("activeselection.opacity")}}}),P_=Ye({"src/plots/cartesian/include_components.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Xc();H.exports=function(e){return function(r,o){var a=r[e];if(Array.isArray(a))for(var i=g.subplotsRegistry.cartesian,n=i.idRegex,s=o._subplots,c=s.xaxis,h=s.yaxis,v=s.cartesian,p=o._has("cartesian"),T=0;T<a.length;T++){var l=a[T];if(x.isPlainObject(l)){var _=A.cleanId(l.xref,"x",!1),w=A.cleanId(l.yref,"y",!1),S=n.x.test(_),E=n.y.test(w);if(S||E){p||x.pushUnique(o._basePlotModules,i);var m=!1;S&&c.indexOf(_)===-1&&(c.push(_),m=!0),E&&h.indexOf(w)===-1&&(h.push(w),m=!0),m&&S&&E&&v.push(_+w)}}}}}}}),ff=Ye({"src/components/selections/index.js"(X,H){"use strict";var g=MS(),x=LO();H.exports={moduleType:"component",name:"selections",layoutAttributes:kS(),supplyLayoutDefaults:PO(),supplyDrawNewSelectionDefaults:IO(),includeBasePlot:P_()("selections"),draw:g.draw,drawOne:g.drawOne,reselect:x.reselect,prepSelect:x.prepSelect,clearOutline:x.clearOutline,clearSelectionsCache:x.clearSelectionsCache,selectOnClick:x.selectOnClick}}}),CS=Ye({"src/plots/cartesian/dragbox.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=bh(),e=_2(),t=Hn(),r=x.strTranslate,o=jl(),a=Fn(),i=Bo(),n=Lc(),s=Co(),c=Kd(),h=bp(),v=Jd(),p=v.selectingOrDrawing,T=v.freeMode,l=oh().FROM_TL,_=M_(),w=k_().redrawReglTraces,S=Gu(),E=Xc().getFromId,m=ff().prepSelect,b=ff().clearOutline,d=ff().selectOnClick,u=SS(),y=wh(),f=y.MINDRAG,P=y.MINZOOM,L=!0;function z(fe,be,Ae,Be,Ie,Ze,at,it){var et=fe._fullLayout._zoomlayer,lt=at+it==="nsew",Me=(at+it).length===1,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur,ar,Cr,vr,_r,yt,Fe,Ke,Ne,Ee,Ve,ke,Te;Ae+=be.yaxis._shift;function Le(){if(ge=be.xaxis,ce=be.yaxis,Ot=ge._length,jt=ce._length,Ct=ge._offset,St=ce._offset,ze={},ze[ge._id]=ge,tt={},tt[ce._id]=ce,at&&it)for(var br=be.overlays,Tr=0;Tr<br.length;Tr++){var Mr=br[Tr].xaxis;ze[Mr._id]=Mr;var Fr=br[Tr].yaxis;tt[Fr._id]=Fr}nt=ie(ze),Qe=ie(tt),Cr=O(nt,it),vr=O(Qe,at),_r=!vr&&!Cr,ar=j(fe,fe._fullLayout._axisMatchGroups,ze,tt),ur=j(fe,fe._fullLayout._axisConstraintGroups,ze,tt,ar);var Lr=ur.isSubplotConstrained||ar.isSubplotConstrained;yt=it||Lr,Fe=at||Lr;var Jr=fe._fullLayout;Ke=Jr._has("scattergl"),Ne=Jr._has("splom"),Ee=Jr._has("svg")}Le();var rt=Q(vr+Cr,fe._fullLayout.dragmode,lt),dt=B(be,at+it+"drag",rt,Ae,Be,Ie,Ze);if(_r&&!lt)return dt.onmousedown=null,dt.style.pointerEvents="none",dt;var xt={element:dt,gd:fe,plotinfo:be};xt.prepFn=function(br,Tr,Mr){var Fr=xt.dragmode,Lr=fe._fullLayout.dragmode;Lr!==Fr&&(xt.dragmode=Lr),Le(),ke=fe._fullLayout._invScaleX,Te=fe._fullLayout._invScaleY,_r||(lt?br.shiftKey?Lr==="pan"?Lr="zoom":p(Lr)||(Lr="pan"):br.ctrlKey&&(Lr="pan"):Lr="pan"),T(Lr)?xt.minDrag=1:xt.minDrag=void 0,p(Lr)?(xt.xaxes=nt,xt.yaxes=Qe,m(br,Tr,Mr,xt,Lr)):(xt.clickFn=Bt,p(Fr)&&It(),_r||(Lr==="zoom"?(xt.moveFn=Wt,xt.doneFn=Vt,xt.minDrag=1,ni(br,Tr,Mr)):Lr==="pan"&&(xt.moveFn=Ea,xt.doneFn=$a))),fe._fullLayout._redrag=function(){var Jr=fe._dragdata;if(Jr&&Jr.element===dt){var oa=fe._fullLayout.dragmode;p(oa)||(Le(),mt([0,0,Ot,jt]),xt.moveFn(Jr.dx,Jr.dy))}}};function It(){xt.plotinfo.selection=!1,b(fe)}function Bt(br,Tr){var Mr=xt.gd;if(Mr._fullLayout._activeShapeIndex>=0){Mr._fullLayout._deactivateShape(Mr);return}var Fr=Mr._fullLayout.clickmode;if($(Mr),br===2&&!Me&&ya(),lt)Fr.indexOf("select")>-1&&d(Tr,Mr,nt,Qe,be.id,xt),Fr.indexOf("event")>-1&&n.click(Mr,Tr,be.id);else if(br===1&&Me){var Lr=at?ce:ge,Jr=at==="s"||it==="w"?0:1,oa=Lr._name+".range["+Jr+"]",ca=I(Lr,Jr),kt="left",ir="middle";if(Lr.fixedrange)return;at?(ir=at==="n"?"top":"bottom",Lr.side==="right"&&(kt="right")):it==="e"&&(kt="right"),Mr._context.showAxisRangeEntryBoxes&&g.select(dt).call(o.makeEditable,{gd:Mr,immediate:!0,background:Mr._fullLayout.paper_bgcolor,text:String(ca),fill:Lr.tickfont?Lr.tickfont.color:"#444",horizontalAlign:kt,verticalAlign:ir}).on("edit",function(mr){var $r=Lr.d2r(mr);$r!==void 0&&t.call("_guiRelayout",Mr,oa,$r)})}}h.init(xt);var Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma,Ua;function ni(br,Tr,Mr){var Fr=dt.getBoundingClientRect();Gt=Tr-Fr.left,Kt=Mr-Fr.top,fe._fullLayout._calcInverseTransform(fe);var Lr=x.apply3DTransform(fe._fullLayout._invTransform)(Gt,Kt);Gt=Lr[0],Kt=Lr[1],sr={l:Gt,r:Gt,w:0,t:Kt,b:Kt,h:0},sa=fe._hmpixcount?fe._hmlumcount/fe._hmpixcount:M(fe._fullLayout.plot_bgcolor).getLuminance(),Aa="M0,0H"+Ot+"V"+jt+"H0V0",La=!1,ka="xy",Ua=!1,Ga=ue(et,sa,Ct,St,Aa),Ma=se(et,Ct,St)}function Wt(br,Tr){if(fe._transitioningWithDuration)return!1;var Mr=Math.max(0,Math.min(Ot,ke*br+Gt)),Fr=Math.max(0,Math.min(jt,Te*Tr+Kt)),Lr=Math.abs(Mr-Gt),Jr=Math.abs(Fr-Kt);sr.l=Math.min(Gt,Mr),sr.r=Math.max(Gt,Mr),sr.t=Math.min(Kt,Fr),sr.b=Math.max(Kt,Fr);function oa(){ka="",sr.r=sr.l,sr.t=sr.b,Ma.attr("d","M0,0Z")}if(ur.isSubplotConstrained)Lr>P||Jr>P?(ka="xy",Lr/Ot>Jr/jt?(Jr=Lr*jt/Ot,Kt>Fr?sr.t=Kt-Jr:sr.b=Kt+Jr):(Lr=Jr*Ot/jt,Gt>Mr?sr.l=Gt-Lr:sr.r=Gt+Lr),Ma.attr("d",ne(sr))):oa();else if(ar.isSubplotConstrained)if(Lr>P||Jr>P){ka="xy";var ca=Math.min(sr.l/Ot,(jt-sr.b)/jt),kt=Math.max(sr.r/Ot,(jt-sr.t)/jt);sr.l=ca*Ot,sr.r=kt*Ot,sr.b=(1-ca)*jt,sr.t=(1-kt)*jt,Ma.attr("d",ne(sr))}else oa();else!vr||Jr<Math.min(Math.max(Lr*.6,f),P)?Lr<f||!Cr?oa():(sr.t=0,sr.b=jt,ka="x",Ma.attr("d",Z(sr,Kt))):!Cr||Lr<Math.min(Jr*.6,P)?(sr.l=0,sr.r=Ot,ka="y",Ma.attr("d",re(sr,Gt))):(ka="xy",Ma.attr("d",ne(sr)));sr.w=sr.r-sr.l,sr.h=sr.b-sr.t,ka&&(Ua=!0),fe._dragged=Ua,he(Ga,Ma,sr,Aa,La,sa),zt(),fe.emit("plotly_relayouting",Ve),La=!0}function zt(){Ve={},(ka==="xy"||ka==="x")&&(N(nt,sr.l/Ot,sr.r/Ot,Ve,ur.xaxes),Fa("x",Ve)),(ka==="xy"||ka==="y")&&(N(Qe,(jt-sr.b)/jt,(jt-sr.t)/jt,Ve,ur.yaxes),Fa("y",Ve))}function Vt(){zt(),$(fe),$a(),J(fe)}var Ut=[0,0,Ot,jt],xr=null,Zr=y.REDRAWDELAY,pa=be.mainplot?fe._fullLayout._plots[be.mainplot]:be;function Xr(br){if(!fe._context._scrollZoom.cartesian&&!fe._fullLayout._enablescrollzoom)return;if(It(),fe._transitioningWithDuration){br.preventDefault(),br.stopPropagation();return}Le(),clearTimeout(xr);var Tr=-br.deltaY;if(isFinite(Tr)||(Tr=br.wheelDelta/10),!isFinite(Tr)){x.log("Did not find wheel motion attributes: ",br);return}var Mr=Math.exp(-Math.min(Math.max(Tr,-20),20)/200),Fr=pa.draglayer.select(".nsewdrag").node().getBoundingClientRect(),Lr=(br.clientX-Fr.left)/Fr.width,Jr=(Fr.bottom-br.clientY)/Fr.height,oa;function ca(kt,ir,mr){if(kt.fixedrange)return;var $r=x.simpleMap(kt.range,kt.r2l),ma=$r[0]+($r[1]-$r[0])*ir;function Ba(Ca){return kt.l2r(ma+(Ca-ma)*mr)}kt.range=$r.map(Ba)}if(yt){for(it||(Lr=.5),oa=0;oa<nt.length;oa++)ca(nt[oa],Lr,Mr);Fa("x"),Ut[2]*=Mr,Ut[0]+=Ut[2]*Lr*(1/Mr-1)}if(Fe){for(at||(Jr=.5),oa=0;oa<Qe.length;oa++)ca(Qe[oa],Jr,Mr);Fa("y"),Ut[3]*=Mr,Ut[1]+=Ut[3]*(1-Jr)*(1/Mr-1)}mt(Ut),qa(),fe.emit("plotly_relayouting",Ve),xr=setTimeout(function(){fe._fullLayout&&(Ut=[0,0,Ot,jt],$a())},Zr),br.preventDefault()}at.length*it.length!==1&&ee(dt,Xr);function Ea(br,Tr){if(br=br*ke,Tr=Tr*Te,fe._transitioningWithDuration)return;if(fe._fullLayout._replotting=!0,Cr==="ew"||vr==="ns"){var Mr=Cr?-br:0,Fr=vr?-Tr:0;if(ar.isSubplotConstrained){if(Cr&&vr){var Lr=(br/Ot-Tr/jt)/2;br=Lr*Ot,Tr=-Lr*jt,Mr=-br,Fr=-Tr}vr?Mr=-Fr*Ot/jt:Fr=-Mr*jt/Ot}Cr&&(U(nt,br),Fa("x")),vr&&(U(Qe,Tr),Fa("y")),mt([Mr,Fr,Ot,jt]),qa(),fe.emit("plotly_relayouting",Ve);return}function Jr(Ba,Ca,da){for(var Sa=1-Ca,Ti,ai,an=0;an<Ba.length;an++){var sn=Ba[an];if(!sn.fixedrange){Ti=sn,ai=sn._rl[Sa]+(sn._rl[Ca]-sn._rl[Sa])/W(da/sn._length);var Mn=sn.l2r(ai);Mn!==!1&&Mn!==void 0&&(sn.range[Ca]=Mn)}}return Ti._length*(Ti._rl[Ca]-ai)/(Ti._rl[Ca]-Ti._rl[Sa])}var oa=Cr==="w"==(vr==="n")?1:-1;if(Cr&&vr&&(ur.isSubplotConstrained||ar.isSubplotConstrained)){var ca=(br/Ot+oa*Tr/jt)/2;br=ca*Ot,Tr=oa*ca*jt}var kt,ir;if(Cr==="w"?br=Jr(nt,0,br):Cr==="e"?br=Jr(nt,1,-br):Cr||(br=0),vr==="n"?Tr=Jr(Qe,1,Tr):vr==="s"?Tr=Jr(Qe,0,-Tr):vr||(Tr=0),kt=Cr==="w"?br:0,ir=vr==="n"?Tr:0,ur.isSubplotConstrained&&!ar.isSubplotConstrained||ar.isSubplotConstrained&&Cr&&vr&&oa>0){var mr;if(ar.isSubplotConstrained||!Cr&&vr.length===1){for(mr=0;mr<nt.length;mr++)nt[mr].range=nt[mr]._r.slice(),u(nt[mr],1-Tr/jt);br=Tr*Ot/jt,kt=br/2}if(ar.isSubplotConstrained||!vr&&Cr.length===1){for(mr=0;mr<Qe.length;mr++)Qe[mr].range=Qe[mr]._r.slice(),u(Qe[mr],1-br/Ot);Tr=br*jt/Ot,ir=Tr/2}}(!ar.isSubplotConstrained||!vr)&&Fa("x"),(!ar.isSubplotConstrained||!Cr)&&Fa("y");var $r=Ot-br,ma=jt-Tr;ar.isSubplotConstrained&&!(Cr&&vr)&&(Cr?(ir=kt?0:br*jt/Ot,ma=$r*jt/Ot):(kt=ir?0:Tr*Ot/jt,$r=ma*Ot/jt)),mt([kt,ir,$r,ma]),qa(),fe.emit("plotly_relayouting",Ve)}function Fa(br,Tr){for(var Mr=ar.isSubplotConstrained?{x:Qe,y:nt}[br]:ar[br+"axes"],Fr=ar.isSubplotConstrained?{x:nt,y:Qe}[br]:[],Lr=0;Lr<Mr.length;Lr++){var Jr=Mr[Lr],oa=Jr._id,ca=ar.xLinks[oa]||ar.yLinks[oa],kt=Fr[0]||ze[ca]||tt[ca];kt&&(Tr?(Tr[Jr._name+".range[0]"]=Tr[kt._name+".range[0]"],Tr[Jr._name+".range[1]"]=Tr[kt._name+".range[1]"]):Jr.range=kt.range.slice())}}function qa(){var br=[],Tr;function Mr(oa){for(Tr=0;Tr<oa.length;Tr++)oa[Tr].fixedrange||br.push(oa[Tr]._id)}function Fr(oa,ca){for(Tr=0;Tr<oa.length;Tr++){var kt=oa[Tr],ir=kt[ca];!kt.fixedrange&&ir.tickmode==="sync"&&br.push(ir._id)}}for(yt&&(Mr(nt),Mr(ur.xaxes),Mr(ar.xaxes),Fr(be.overlays,"xaxis")),Fe&&(Mr(Qe),Mr(ur.yaxes),Mr(ar.yaxes),Fr(be.overlays,"yaxis")),Ve={},Tr=0;Tr<br.length;Tr++){var Lr=br[Tr],Jr=E(fe,Lr);s.drawOne(fe,Jr,{skipTitle:!0}),Ve[Jr._name+".range[0]"]=Jr.range[0],Ve[Jr._name+".range[1]"]=Jr.range[1]}s.redrawComponents(fe,br)}function ya(){if(!fe._transitioningWithDuration){var br=fe._context.doubleClick,Tr=[];Cr&&(Tr=Tr.concat(nt)),vr&&(Tr=Tr.concat(Qe)),ar.xaxes&&(Tr=Tr.concat(ar.xaxes)),ar.yaxes&&(Tr=Tr.concat(ar.yaxes));var Mr={},Fr,Lr;if(br==="reset+autosize")for(br="autosize",Lr=0;Lr<Tr.length;Lr++){Fr=Tr[Lr];var Jr=Fr._rangeInitial0,oa=Fr._rangeInitial1,ca=Jr!==void 0||oa!==void 0;if(ca&&(Jr!==void 0&&Jr!==Fr.range[0]||oa!==void 0&&oa!==Fr.range[1])||!ca&&Fr.autorange!==!0){br="reset";break}}if(br==="autosize")for(Lr=0;Lr<Tr.length;Lr++)Fr=Tr[Lr],Fr.fixedrange||(Mr[Fr._name+".autorange"]=!0);else if(br==="reset"){for((Cr||ur.isSubplotConstrained)&&(Tr=Tr.concat(ur.xaxes)),vr&&!ur.isSubplotConstrained&&(Tr=Tr.concat(ur.yaxes)),ur.isSubplotConstrained&&(Cr?vr||(Tr=Tr.concat(Qe)):Tr=Tr.concat(nt)),Lr=0;Lr<Tr.length;Lr++)if(Fr=Tr[Lr],!Fr.fixedrange){var kt=Fr._name,ir=Fr._autorangeInitial;Fr._rangeInitial0===void 0&&Fr._rangeInitial1===void 0?Mr[kt+".autorange"]=!0:Fr._rangeInitial0===void 0?(Mr[kt+".autorange"]=ir,Mr[kt+".range"]=[null,Fr._rangeInitial1]):Fr._rangeInitial1===void 0?(Mr[kt+".range"]=[Fr._rangeInitial0,null],Mr[kt+".autorange"]=ir):Mr[kt+".range"]=[Fr._rangeInitial0,Fr._rangeInitial1]}}fe.emit("plotly_doubleclick",null),t.call("_guiRelayout",fe,Mr)}}function $a(){mt([0,0,Ot,jt]),x.syncOrAsync([S.previousPromises,function(){fe._fullLayout._replotting=!1,t.call("_guiRelayout",fe,Ve)}],fe)}function mt(br){var Tr=fe._fullLayout,Mr=Tr._plots,Fr=Tr._subplots.cartesian,Lr,Jr,oa,ca;if(Ne&&t.subplotsRegistry.splom.drag(fe),Ke){for(Lr=0;Lr<Fr.length;Lr++)if(Jr=Mr[Fr[Lr]],oa=Jr.xaxis,ca=Jr.yaxis,Jr._scene){oa.limitRange&&oa.limitRange(),ca.limitRange&&ca.limitRange();var kt=x.simpleMap(oa.range,oa.r2l),ir=x.simpleMap(ca.range,ca.r2l);Jr._scene.update({range:[kt[0],ir[0],kt[1],ir[1]]})}}if((Ne||Ke)&&(_(fe),w(fe)),Ee){var mr=br[2]/ge._length,$r=br[3]/ce._length;for(Lr=0;Lr<Fr.length;Lr++){Jr=Mr[Fr[Lr]],oa=Jr.xaxis,ca=Jr.yaxis;var ma=(yt||ar.isSubplotConstrained)&&!oa.fixedrange&&ze[oa._id],Ba=(Fe||ar.isSubplotConstrained)&&!ca.fixedrange&&tt[ca._id],Ca,da,Sa,Ti;if(ma?(Ca=mr,Sa=it||ar.isSubplotConstrained?br[0]:kr(oa,Ca)):ar.xaHash[oa._id]?(Ca=mr,Sa=br[0]*oa._length/ge._length):ar.yaHash[oa._id]?(Ca=$r,Sa=vr==="ns"?-br[1]*oa._length/ce._length:kr(oa,Ca,{n:"top",s:"bottom"}[vr])):(Ca=gt(oa,mr,$r),Sa=Er(oa,Ca)),Ca>1&&(oa.maxallowed!==void 0&&yt===(oa.range[0]<oa.range[1]?"e":"w")||oa.minallowed!==void 0&&yt===(oa.range[0]<oa.range[1]?"w":"e"))&&(Ca=1,Sa=0),Ba?(da=$r,Ti=at||ar.isSubplotConstrained?br[1]:kr(ca,da)):ar.yaHash[ca._id]?(da=$r,Ti=br[1]*ca._length/ce._length):ar.xaHash[ca._id]?(da=mr,Ti=Cr==="ew"?-br[0]*ca._length/ge._length:kr(ca,da,{e:"right",w:"left"}[Cr])):(da=gt(ca,mr,$r),Ti=Er(ca,da)),da>1&&(ca.maxallowed!==void 0&&Fe===(ca.range[0]<ca.range[1]?"n":"s")||ca.minallowed!==void 0&&Fe===(ca.range[0]<ca.range[1]?"s":"n"))&&(da=1,Ti=0),!(!Ca&&!da)){Ca||(Ca=1),da||(da=1);var ai=oa._offset-Sa/Ca,an=ca._offset-Ti/da;Jr.clipRect.call(i.setTranslate,Sa,Ti).call(i.setScale,Ca,da),Jr.plot.call(i.setTranslate,ai,an).call(i.setScale,1/Ca,1/da),(Ca!==Jr.xScaleFactor||da!==Jr.yScaleFactor)&&(i.setPointGroupScale(Jr.zoomScalePts,Ca,da),i.setTextPointsScale(Jr.zoomScaleTxt,Ca,da)),i.hideOutsideRangePoints(Jr.clipOnAxisFalseTraces,Jr),Jr.xScaleFactor=Ca,Jr.yScaleFactor=da}}}}function gt(br,Tr,Mr){return br.fixedrange?0:yt&&ur.xaHash[br._id]?Tr:Fe&&(ur.isSubplotConstrained?ur.xaHash:ur.yaHash)[br._id]?Mr:0}function Er(br,Tr){return Tr?(br.range=br._r.slice(),u(br,Tr),kr(br,Tr)):0}function kr(br,Tr,Mr){return br._length*(1-Tr)*l[Mr||br.constraintoward||"middle"]}return dt}function F(fe,be,Ae,Be){var Ie=x.ensureSingle(fe.draglayer,be,Ae,function(Ze){Ze.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",fe.id)});return Ie.call(c,Be),Ie.node()}function B(fe,be,Ae,Be,Ie,Ze,at){var it=F(fe,"rect",be,Ae);return g.select(it).call(i.setRect,Be,Ie,Ze,at),it}function O(fe,be){for(var Ae=0;Ae<fe.length;Ae++)if(!fe[Ae].fixedrange)return be;return""}function I(fe,be){var Ae=fe.range[be],Be=Math.abs(Ae-fe.range[1-be]),Ie;return fe.type==="date"?Ae:fe.type==="log"?(Ie=Math.ceil(Math.max(0,-Math.log(Be)/Math.LN10))+3,A("."+Ie+"g")(Math.pow(10,Ae))):(Ie=Math.floor(Math.log(Math.abs(Ae))/Math.LN10)-Math.floor(Math.log(Be)/Math.LN10)+4,A("."+String(Ie)+"g")(Ae))}function N(fe,be,Ae,Be,Ie){for(var Ze=0;Ze<fe.length;Ze++){var at=fe[Ze];if(!at.fixedrange)if(at.rangebreaks){var it=at._id.charAt(0)==="y",et=it?1-be:be,lt=it?1-Ae:Ae;Be[at._name+".range[0]"]=at.l2r(at.p2l(et*at._length)),Be[at._name+".range[1]"]=at.l2r(at.p2l(lt*at._length))}else{var Me=at._rl[0],ge=at._rl[1]-Me;Be[at._name+".range[0]"]=at.l2r(Me+ge*be),Be[at._name+".range[1]"]=at.l2r(Me+ge*Ae)}}if(Ie&&Ie.length){var ce=(be+(1-Ae))/2;N(Ie,ce,1-ce,Be,[])}}function U(fe,be){for(var Ae=0;Ae<fe.length;Ae++){var Be=fe[Ae];if(!Be.fixedrange){if(Be.rangebreaks){var Ie=0,Ze=Be._length,at=Be.p2l(Ie+be)-Be.p2l(Ie),it=Be.p2l(Ze+be)-Be.p2l(Ze),et=(at+it)/2;Be.range=[Be.l2r(Be._rl[0]-et),Be.l2r(Be._rl[1]-et)]}else Be.range=[Be.l2r(Be._rl[0]-be/Be._m),Be.l2r(Be._rl[1]-be/Be._m)];Be.limitRange&&Be.limitRange()}}}function W(fe){return 1-(fe>=0?Math.min(fe,.9):1/(1/Math.max(fe,-.3)+3.222))}function Q(fe,be,Ae){return fe?fe==="nsew"?Ae?"":be==="pan"?"move":"crosshair":fe.toLowerCase()+"-resize":"pointer"}function ue(fe,be,Ae,Be,Ie){return fe.append("path").attr("class","zoombox").style({fill:be>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",r(Ae,Be)).attr("d",Ie+"Z")}function se(fe,be,Ae){return fe.append("path").attr("class","zoombox-corners").style({fill:a.background,stroke:a.defaultLine,"stroke-width":1,opacity:0}).attr("transform",r(be,Ae)).attr("d","M0,0Z")}function he(fe,be,Ae,Be,Ie,Ze){fe.attr("d",Be+"M"+Ae.l+","+Ae.t+"v"+Ae.h+"h"+Ae.w+"v-"+Ae.h+"h-"+Ae.w+"Z"),G(fe,be,Ie,Ze)}function G(fe,be,Ae,Be){Ae||(fe.transition().style("fill",Be>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),be.transition().style("opacity",1).duration(200))}function $(fe){g.select(fe).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function J(fe){L&&fe.data&&fe._context.showTips&&(x.notifier(x._(fe,"Double-click to zoom back out"),"long"),L=!1)}function Z(fe,be){return"M"+(fe.l-.5)+","+(be-P-.5)+"h-3v"+(2*P+1)+"h3ZM"+(fe.r+.5)+","+(be-P-.5)+"h3v"+(2*P+1)+"h-3Z"}function re(fe,be){return"M"+(be-P-.5)+","+(fe.t-.5)+"v-3h"+(2*P+1)+"v3ZM"+(be-P-.5)+","+(fe.b+.5)+"v3h"+(2*P+1)+"v-3Z"}function ne(fe){var be=Math.floor(Math.min(fe.b-fe.t,fe.r-fe.l,P)/2);return"M"+(fe.l-3.5)+","+(fe.t-.5+be)+"h3v"+-be+"h"+be+"v-3h-"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.t-.5+be)+"h-3v"+-be+"h"+-be+"v-3h"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.b+.5-be)+"h-3v"+be+"h"+-be+"v3h"+(be+3)+"ZM"+(fe.l-3.5)+","+(fe.b+.5-be)+"h3v"+be+"h"+be+"v3h-"+(be+3)+"Z"}function j(fe,be,Ae,Be,Ie){for(var Ze=!1,at={},it={},et,lt,Me,ge,ce=(Ie||{}).xaHash,ze=(Ie||{}).yaHash,tt=0;tt<be.length;tt++){var nt=be[tt];for(et in Ae)if(nt[et]){for(Me in nt)!(Ie&&(ce[Me]||ze[Me]))&&!(Me.charAt(0)==="x"?Ae:Be)[Me]&&(at[Me]=et);for(lt in Be)!(Ie&&(ce[lt]||ze[lt]))&&nt[lt]&&(Ze=!0)}for(lt in Be)if(nt[lt])for(ge in nt)!(Ie&&(ce[ge]||ze[ge]))&&!(ge.charAt(0)==="x"?Ae:Be)[ge]&&(it[ge]=lt)}Ze&&(x.extendFlat(at,it),it={});var Qe={},Ct=[];for(Me in at){var St=E(fe,Me);Ct.push(St),Qe[St._id]=St}var Ot={},jt=[];for(ge in it){var ur=E(fe,ge);jt.push(ur),Ot[ur._id]=ur}return{xaHash:Qe,yaHash:Ot,xaxes:Ct,yaxes:jt,xLinks:at,yLinks:it,isSubplotConstrained:Ze}}function ee(fe,be){if(!e)fe.onwheel!==void 0?fe.onwheel=be:fe.onmousewheel!==void 0?fe.onmousewheel=be:fe.isAddedWheelEvent||(fe.isAddedWheelEvent=!0,fe.addEventListener("wheel",be,{passive:!1}));else{var Ae=fe.onwheel!==void 0?"wheel":"mousewheel";fe._onwheel&&fe.removeEventListener(Ae,fe._onwheel),fe._onwheel=be,fe.addEventListener(Ae,be,{passive:!1})}}function ie(fe){var be=[];for(var Ae in fe)be.push(fe[Ae]);return be}H.exports={makeDragBox:z,makeDragger:F,makeRectDragger:B,makeZoombox:ue,makeCorners:se,updateZoombox:he,xyCorners:ne,transitionZoombox:G,removeZoombox:$,showDoubleClickNotifier:J,attachWheelEventHandler:ee}}}),LS=Ye({"src/plots/cartesian/graph_interact.js"(X){"use strict";var H=_n(),g=Lc(),x=bp(),A=Kd(),M=CS().makeDragBox,e=wh().DRAGGERSIZE;X.initInteractions=function(r){var o=r._fullLayout;if(r._context.staticPlot){H.select(r).selectAll(".drag").remove();return}if(!(!o._has("cartesian")&&!o._has("splom"))){var a=Object.keys(o._plots||{}).sort(function(n,s){if((o._plots[n].mainplot&&!0)===(o._plots[s].mainplot&&!0)){var c=n.split("y"),h=s.split("y");return c[0]===h[0]?Number(c[1]||1)-Number(h[1]||1):Number(c[0]||1)-Number(h[0]||1)}return o._plots[n].mainplot?1:-1});a.forEach(function(n){var s=o._plots[n],c=s.xaxis,h=s.yaxis;if(!s.mainplot){var v=M(r,s,c._offset,h._offset,c._length,h._length,"ns","ew");v.onmousemove=function(l){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===n&&r._fullLayout._plots[n]&&g.hover(r,l,n)},g.hover(r,l,n),r._fullLayout._lasthover=v,r._fullLayout._hoversubplot=n},v.onmouseout=function(l){r._dragging||(r._fullLayout._hoversubplot=null,x.unhover(r,l))},r._context.showAxisDragHandles&&(M(r,s,c._offset-e,h._offset-e,e,e,"n","w"),M(r,s,c._offset+c._length,h._offset-e,e,e,"n","e"),M(r,s,c._offset-e,h._offset+h._length,e,e,"s","w"),M(r,s,c._offset+c._length,h._offset+h._length,e,e,"s","e"))}if(r._context.showAxisDragHandles){if(n===c._mainSubplot){var p=c._mainLinePosition;c.side==="top"&&(p-=e),M(r,s,c._offset+c._length*.1,p,c._length*.8,e,"","ew"),M(r,s,c._offset,p,c._length*.1,e,"","w"),M(r,s,c._offset+c._length*.9,p,c._length*.1,e,"","e")}if(n===h._mainSubplot){var T=h._mainLinePosition;h.side!=="right"&&(T-=e),M(r,s,T,h._offset+h._length*.1,e,h._length*.8,"ns",""),M(r,s,T,h._offset+h._length*.9,e,h._length*.1,"s",""),M(r,s,T,h._offset,e,h._length*.1,"n","")}}});var i=o._hoverlayer.node();i.onmousemove=function(n){n.target=r._fullLayout._lasthover,g.hover(r,n,o._hoversubplot)},i.onclick=function(n){n.target=r._fullLayout._lasthover,g.click(r,n)},i.onmousedown=function(n){r._fullLayout._lasthover.onmousedown(n)},X.updateFx(r)}},X.updateFx=function(t){var r=t._fullLayout,o=r.dragmode==="pan"?"move":"crosshair";A(r._draggers,o)}}}),RO=Ye({"src/plot_api/container_array_match.js"(X,H){"use strict";var g=Hn();H.exports=function(A){for(var M=g.layoutArrayContainers,e=g.layoutArrayRegexes,t=A.split("[")[0],r,o,a=0;a<e.length;a++)if(o=A.match(e[a]),o&&o.index===0){r=o[0];break}if(r||(r=M[M.indexOf(t)]),!r)return!1;var i=A.substr(r.length);return i?(o=i.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/),o?{array:r,index:Number(o[1]),property:o[3]||""}:!1):{array:r,index:"",property:""}}}}),DO=Ye({"src/plot_api/manage_arrays.js"(X){"use strict";var H=Zv(),g=f2(),x=Ym(),A=v2().sorterAsc,M=Hn();X.containerArrayMatch=RO();var e=X.isAddVal=function(o){return o==="add"||H(o)},t=X.isRemoveVal=function(o){return o===null||o==="remove"};X.applyContainerArrayChanges=function(o,a,i,n,s){var c=a.astr,h=M.getComponentMethod(c,"supplyLayoutDefaults"),v=M.getComponentMethod(c,"draw"),p=M.getComponentMethod(c,"drawOne"),T=n.replot||n.recalc||h===g||v===g,l=o.layout,_=o._fullLayout;if(i[""]){Object.keys(i).length>1&&x.warn("Full array edits are incompatible with other edits",c);var w=i[""][""];if(t(w))a.set(null);else if(Array.isArray(w))a.set(w);else return x.warn("Unrecognized full array edit value",c,w),!0;return T?!1:(h(l,_),v(o),!0)}var S=Object.keys(i).map(Number).sort(A),E=a.get(),m=E||[],b=s(_,c).get(),d=[],u=-1,y=m.length,f,P,L,z,F,B,O,I;for(f=0;f<S.length;f++){if(L=S[f],z=i[L],F=Object.keys(z),B=z[""],O=e(B),L<0||L>m.length-(O?0:1)){x.warn("index out of range",c,L);continue}if(B!==void 0)F.length>1&&x.warn("Insertion & removal are incompatible with edits to the same index.",c,L),t(B)?d.push(L):O?(B==="add"&&(B={}),m.splice(L,0,B),b&&b.splice(L,0,{})):x.warn("Unrecognized full object edit value",c,L,B),u===-1&&(u=L);else for(P=0;P<F.length;P++)I=c+"["+L+"].",s(m[L],F[P],I).set(z[F[P]])}for(f=d.length-1;f>=0;f--)m.splice(d[f],1),b&&b.splice(d[f],1);if(m.length?E||a.set(m):a.set(null),T)return!1;if(h(l,_),p!==g){var N;if(u===-1)N=S;else{for(y=Math.max(m.length,y),N=[],f=0;f<S.length&&(L=S[f],!(L>=u));f++)N.push(L);for(f=u;f<y;f++)N.push(f)}for(f=0;f<N.length;f++)p(o,N[f])}else v(o);return!0}}}),zO=Ye({"src/plot_api/helpers.js"(X){"use strict";var H=jo(),g=$A(),x=Hn(),A=ta(),M=Gu(),e=Xc(),t=Fn(),r=e.cleanId,o=e.getFromTrace,a=x.traceIs;X.clearPromiseQueue=function(l){Array.isArray(l._promises)&&l._promises.length>0&&A.log("Clearing previous rejected promises from queue."),l._promises=[]},X.cleanLayout=function(l){var _,w;l||(l={}),l.xaxis1&&(l.xaxis||(l.xaxis=l.xaxis1),delete l.xaxis1),l.yaxis1&&(l.yaxis||(l.yaxis=l.yaxis1),delete l.yaxis1),l.scene1&&(l.scene||(l.scene=l.scene1),delete l.scene1);var S=(M.subplotsRegistry.cartesian||{}).attrRegex,E=(M.subplotsRegistry.polar||{}).attrRegex,m=(M.subplotsRegistry.ternary||{}).attrRegex,b=(M.subplotsRegistry.gl3d||{}).attrRegex,d=Object.keys(l);for(_=0;_<d.length;_++){var u=d[_];if(S&&S.test(u)){var y=l[u];y.anchor&&y.anchor!=="free"&&(y.anchor=r(y.anchor)),y.overlaying&&(y.overlaying=r(y.overlaying)),y.type||(y.isdate?y.type="date":y.islog?y.type="log":y.isdate===!1&&y.islog===!1&&(y.type="linear")),(y.autorange==="withzero"||y.autorange==="tozero")&&(y.autorange=!0,y.rangemode="tozero"),y.insiderange&&delete y.range,delete y.islog,delete y.isdate,delete y.categories,h(y,"domain")&&delete y.domain}}var f=Array.isArray(l.annotations)?l.annotations.length:0;for(_=0;_<f;_++){var P=l.annotations[_];A.isPlainObject(P)&&(i(P,"xref"),i(P,"yref"))}var L=Array.isArray(l.shapes)?l.shapes.length:0;for(_=0;_<L;_++){var z=l.shapes[_];A.isPlainObject(z)&&(i(z,"xref"),i(z,"yref"))}var F=Array.isArray(l.images)?l.images.length:0;for(_=0;_<F;_++){var B=l.images[_];A.isPlainObject(B)&&(i(B,"xref"),i(B,"yref"))}var O=l.legend;return O&&(O.x>3?(O.x=1.02,O.xanchor="left"):O.x<-2&&(O.x=-.02,O.xanchor="right"),O.y>3?(O.y=1.02,O.yanchor="bottom"):O.y<-2&&(O.y=-.02,O.yanchor="top")),l.dragmode==="rotate"&&(l.dragmode="orbit"),t.clean(l),l.template&&l.template.layout&&X.cleanLayout(l.template.layout),l};function i(l,_){var w=l[_],S=_.charAt(0);w&&w!=="paper"&&(l[_]=r(w,S,!0))}X.cleanData=function(l){for(var _=0;_<l.length;_++){var w=l[_],S;if(w.type==="histogramy"&&"xbins"in w&&!("ybins"in w)&&(w.ybins=w.xbins,delete w.xbins),w.type==="histogramy"&&X.swapXYData(w),(w.type==="histogramx"||w.type==="histogramy")&&(w.type="histogram"),"scl"in w&&!("colorscale"in w)&&(w.colorscale=w.scl,delete w.scl),"reversescl"in w&&!("reversescale"in w)&&(w.reversescale=w.reversescl,delete w.reversescl),w.xaxis&&(w.xaxis=r(w.xaxis,"x")),w.yaxis&&(w.yaxis=r(w.yaxis,"y")),a(w,"gl3d")&&w.scene&&(w.scene=M.subplotsRegistry.gl3d.cleanId(w.scene)),!a(w,"pie-like")&&!a(w,"bar-like"))if(Array.isArray(w.textposition))for(S=0;S<w.textposition.length;S++)w.textposition[S]=c(w.textposition[S]);else w.textposition&&(w.textposition=c(w.textposition));var E=x.getModule(w);if(E&&E.colorbar){var m=E.colorbar.container,b=m?w[m]:w;b&&b.colorscale&&(b.colorscale==="YIGnBu"&&(b.colorscale="YlGnBu"),b.colorscale==="YIOrRd"&&(b.colorscale="YlOrRd"))}if(w.type==="surface"&&A.isPlainObject(w.contours)){var d=["x","y","z"];for(S=0;S<d.length;S++){var u=w.contours[d[S]];A.isPlainObject(u)&&(u.highlightColor&&(u.highlightcolor=u.highlightColor,delete u.highlightColor),u.highlightWidth&&(u.highlightwidth=u.highlightWidth,delete u.highlightWidth))}}if(w.type==="candlestick"||w.type==="ohlc"){var y=(w.increasing||{}).showlegend!==!1,f=(w.decreasing||{}).showlegend!==!1,P=n(w.increasing),L=n(w.decreasing);if(P!==!1&&L!==!1){var z=s(P,L,y,f);z&&(w.name=z)}else(P||L)&&!w.name&&(w.name=P||L)}h(w,"line")&&delete w.line,"marker"in w&&(h(w.marker,"line")&&delete w.marker.line,h(w,"marker")&&delete w.marker),t.clean(w),w.autobinx&&(delete w.autobinx,delete w.xbins),w.autobiny&&(delete w.autobiny,delete w.ybins)}};function n(l){if(!A.isPlainObject(l))return!1;var _=l.name;return delete l.name,delete l.showlegend,(typeof _=="string"||typeof _=="number")&&String(_)}function s(l,_,w,S){if(w&&!S)return l;if(S&&!w||!l.trim())return _;if(!_.trim())return l;var E=Math.min(l.length,_.length),m;for(m=0;m<E&&l.charAt(m)===_.charAt(m);m++);var b=l.substr(0,m);return b.trim()}function c(l){var _="middle",w="center";return typeof l=="string"&&(l.indexOf("top")!==-1?_="top":l.indexOf("bottom")!==-1&&(_="bottom"),l.indexOf("left")!==-1?w="left":l.indexOf("right")!==-1&&(w="right")),_+" "+w}function h(l,_){return _ in l&&typeof l[_]=="object"&&Object.keys(l[_]).length===0}X.swapXYData=function(l){var _;if(A.swapAttrs(l,["?","?0","d?","?bins","nbins?","autobin?","?src","error_?"]),Array.isArray(l.z)&&Array.isArray(l.z[0])&&(l.transpose?delete l.transpose:l.transpose=!0),l.error_x&&l.error_y){var w=l.error_y,S="copy_ystyle"in w?w.copy_ystyle:!(w.color||w.thickness||w.width);A.swapAttrs(l,["error_?.copy_ystyle"]),S&&A.swapAttrs(l,["error_?.color","error_?.thickness","error_?.width"])}if(typeof l.hoverinfo=="string"){var E=l.hoverinfo.split("+");for(_=0;_<E.length;_++)E[_]==="x"?E[_]="y":E[_]==="y"&&(E[_]="x");l.hoverinfo=E.join("+")}},X.coerceTraceIndices=function(l,_){if(H(_))return[_];if(!Array.isArray(_)||!_.length)return l.data.map(function(E,m){return m});if(Array.isArray(_)){for(var w=[],S=0;S<_.length;S++)A.isIndex(_[S],l.data.length)?w.push(_[S]):A.warn("trace index (",_[S],") is not a number or is out of bounds");return w}return _},X.manageArrayContainers=function(l,_,w){var S=l.obj,E=l.parts,m=E.length,b=E[m-1],d=H(b);if(d&&_===null){var u=E.slice(0,m-1).join("."),y=A.nestedProperty(S,u).get();y.splice(b,1)}else d&&l.get()===void 0&&l.get()===void 0&&(w[l.astr]=null),l.set(_)};var v=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function p(l){var _=l.search(v);if(_>0)return l.substr(0,_)}X.hasParent=function(l,_){for(var w=p(_);w;){if(w in l)return!0;w=p(w)}return!1};var T=["x","y","z"];X.clearAxisTypes=function(l,_,w){for(var S=0;S<_.length;S++)for(var E=l._fullData[S],m=0;m<3;m++){var b=o(l,E,T[m]);if(b&&b.type!=="log"){var d=b._name,u=b._id.substr(1);if(u.substr(0,5)==="scene"){if(w[u]!==void 0)continue;d=u+"."+d}var y=d+".type";w[d]===void 0&&w[y]===void 0&&A.nestedProperty(l.layout,y).set(null)}}}}}),E2=Ye({"src/plot_api/plot_api.js"(X){"use strict";var H=_n(),g=jo(),x=aS(),A=ta(),M=A.nestedProperty,e=$y(),t=QF(),r=Hn(),o=Qy(),a=Gu(),i=Co(),n=fS(),s=Vh(),c=Bo(),h=Fn(),v=LS().initInteractions,p=vd(),T=ff().clearOutline,l=Gg().dfltConfig,_=DO(),w=zO(),S=k_(),E=Ou(),m=wh().AX_NAME_PATTERN,b=0,d=5;function u(Ee,Ve,ke,Te){var Le;if(Ee=A.getGraphDiv(Ee),e.init(Ee),A.isPlainObject(Ve)){var rt=Ve;Ve=rt.data,ke=rt.layout,Te=rt.config,Le=rt.frames}var dt=e.triggerHandler(Ee,"plotly_beforeplot",[Ve,ke,Te]);if(dt===!1)return Promise.reject();!Ve&&!ke&&!A.isPlotDiv(Ee)&&A.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",Ee);function xt(){if(Le)return X.addFrames(Ee,Le)}z(Ee,Te),ke||(ke={}),H.select(Ee).classed("js-plotly-plot",!0),c.makeTester(),Array.isArray(Ee._promises)||(Ee._promises=[]);var It=(Ee.data||[]).length===0&&Array.isArray(Ve);Array.isArray(Ve)&&(w.cleanData(Ve),It?Ee.data=Ve:Ee.data.push.apply(Ee.data,Ve),Ee.empty=!1),(!Ee.layout||It)&&(Ee.layout=w.cleanLayout(ke)),a.supplyDefaults(Ee);var Bt=Ee._fullLayout,Gt=Bt._has("cartesian");Bt._replotting=!0,(It||Bt._shouldCreateBgLayer)&&(Ne(Ee),Bt._shouldCreateBgLayer&&delete Bt._shouldCreateBgLayer),c.initGradients(Ee),c.initPatterns(Ee),It&&i.saveShowSpikeInitial(Ee);var Kt=!Ee.calcdata||Ee.calcdata.length!==(Ee._fullData||[]).length;Kt&&a.doCalcdata(Ee);for(var sr=0;sr<Ee.calcdata.length;sr++)Ee.calcdata[sr][0].trace=Ee._fullData[sr];Ee._context.responsive?Ee._responsiveChartHandler||(Ee._responsiveChartHandler=function(){A.isHidden(Ee)||a.resize(Ee)},window.addEventListener("resize",Ee._responsiveChartHandler)):A.clearResponsive(Ee);var sa=A.extendFlat({},Bt._size),Aa=0;function La(){for(var Vt=Bt._basePlotModules,Ut=0;Ut<Vt.length;Ut++)Vt[Ut].drawFramework&&Vt[Ut].drawFramework(Ee);!Bt._glcanvas&&Bt._has("gl")&&(Bt._glcanvas=Bt._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],function(Xr){return Xr.key}),Bt._glcanvas.enter().append("canvas").attr("class",function(Xr){return"gl-canvas gl-canvas-"+Xr.key.replace("Layer","")}).style({position:"absolute",top:0,left:0,overflow:"visible","pointer-events":"none"}));var xr=Ee._context.plotGlPixelRatio;if(Bt._glcanvas){Bt._glcanvas.attr("width",Bt.width*xr).attr("height",Bt.height*xr).style("width",Bt.width+"px").style("height",Bt.height+"px");var Zr=Bt._glcanvas.data()[0].regl;if(Zr&&(Math.floor(Bt.width*xr)!==Zr._gl.drawingBufferWidth||Math.floor(Bt.height*xr)!==Zr._gl.drawingBufferHeight)){var pa="WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.";if(Aa)A.error(pa);else return A.log(pa+" Clearing graph and plotting again."),a.cleanPlot([],{},Ee._fullData,Bt),a.supplyDefaults(Ee),Bt=Ee._fullLayout,a.doCalcdata(Ee),Aa++,La()}}return Bt.modebar.orientation==="h"?Bt._modebardiv.style("height",null).style("width","100%"):Bt._modebardiv.style("width",null).style("height",Bt.height+"px"),a.previousPromises(Ee)}function ka(){if(a.clearAutoMarginIds(Ee),S.drawMarginPushers(Ee),i.allowAutoMargin(Ee),Ee._fullLayout.title.text&&Ee._fullLayout.title.automargin&&a.allowAutoMargin(Ee,"title.automargin"),Bt._has("pie"))for(var Vt=Ee._fullData,Ut=0;Ut<Vt.length;Ut++){var xr=Vt[Ut];xr.type==="pie"&&xr.automargin&&a.allowAutoMargin(Ee,"pie."+xr.uid+".automargin")}return a.doAutoMargin(Ee),a.previousPromises(Ee)}function Ga(){if(a.didMarginChange(sa,Bt._size))return A.syncOrAsync([ka,S.layoutStyles],Ee)}function Ma(){if(!Kt){Ua();return}return A.syncOrAsync([r.getComponentMethod("shapes","calcAutorange"),r.getComponentMethod("annotations","calcAutorange"),Ua],Ee)}function Ua(){Ee._transitioning||(S.doAutoRangeAndConstraints(Ee),It&&i.saveRangeInitial(Ee),r.getComponentMethod("rangeslider","calcAutorange")(Ee))}function ni(){return i.draw(Ee,It?"":"redraw")}var Wt=[a.previousPromises,xt,La,ka,Ga];Gt&&Wt.push(Ma),Wt.push(S.layoutStyles),Gt&&Wt.push(ni,function(Ut){var xr=Ut._fullLayout._insideTickLabelsUpdaterange;if(xr)return Ut._fullLayout._insideTickLabelsUpdaterange=void 0,be(Ut,xr).then(function(){i.saveRangeInitial(Ut,!0)})}),Wt.push(S.drawData,S.finalDraw,v,a.addLinks,a.rehover,a.redrag,a.reselect,a.doAutoMargin,a.previousPromises);var zt=A.syncOrAsync(Wt,Ee);return(!zt||!zt.then)&&(zt=Promise.resolve()),zt.then(function(){return y(Ee),Ee})}function y(Ee){var Ve=Ee._fullLayout;Ve._redrawFromAutoMarginCount?Ve._redrawFromAutoMarginCount--:Ee.emit("plotly_afterplot")}function f(Ee){return A.extendFlat(l,Ee)}function P(Ee,Ve){try{Ee._fullLayout._paper.style("background",Ve)}catch(ke){A.error(ke)}}function L(Ee,Ve){var ke=h.combine(Ve,"white");P(Ee,ke)}function z(Ee,Ve){if(!Ee._context){Ee._context=A.extendDeep({},l);var ke=H.select("base");Ee._context._baseUrl=ke.size()&&ke.attr("href")?window.location.href.split("#")[0]:""}var Te=Ee._context,Le,rt,dt;if(Ve){for(rt=Object.keys(Ve),Le=0;Le<rt.length;Le++)dt=rt[Le],!(dt==="editable"||dt==="edits")&&dt in Te&&(dt==="setBackground"&&Ve[dt]==="opaque"?Te[dt]=L:Te[dt]=Ve[dt]);var xt=Ve.editable;if(xt!==void 0)for(Te.editable=xt,rt=Object.keys(Te.edits),Le=0;Le<rt.length;Le++)Te.edits[rt[Le]]=xt;if(Ve.edits)for(rt=Object.keys(Ve.edits),Le=0;Le<rt.length;Le++)dt=rt[Le],dt in Te.edits&&(Te.edits[dt]=Ve.edits[dt]);Te._exportedPlot=Ve._exportedPlot}Te.staticPlot&&(Te.editable=!1,Te.edits={},Te.autosizable=!1,Te.scrollZoom=!1,Te.doubleClick=!1,Te.showTips=!1,Te.showLink=!1,Te.displayModeBar=!1),Te.displayModeBar==="hover"&&!x&&(Te.displayModeBar=!0),(Te.setBackground==="transparent"||typeof Te.setBackground!="function")&&(Te.setBackground=P),Te._hasZeroHeight=Te._hasZeroHeight||Ee.clientHeight===0,Te._hasZeroWidth=Te._hasZeroWidth||Ee.clientWidth===0;var It=Te.scrollZoom,Bt=Te._scrollZoom={};if(It===!0)Bt.cartesian=1,Bt.gl3d=1,Bt.geo=1,Bt.mapbox=1,Bt.map=1;else if(typeof It=="string"){var Gt=It.split("+");for(Le=0;Le<Gt.length;Le++)Bt[Gt[Le]]=1}else It!==!1&&(Bt.gl3d=1,Bt.geo=1,Bt.mapbox=1,Bt.map=1)}function F(Ee){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee);return w.cleanData(Ee.data),w.cleanLayout(Ee.layout),Ee.calcdata=void 0,X._doPlot(Ee).then(function(){return Ee.emit("plotly_redraw"),Ee})}function B(Ee,Ve,ke,Te){return Ee=A.getGraphDiv(Ee),a.cleanPlot([],{},Ee._fullData||[],Ee._fullLayout||{}),a.purge(Ee),X._doPlot(Ee,Ve,ke,Te)}function O(Ee,Ve){var ke=Ve+1,Te=[],Le,rt;for(Le=0;Le<Ee.length;Le++)rt=Ee[Le],rt<0?Te.push(ke+rt):Te.push(rt);return Te}function I(Ee,Ve,ke){var Te,Le;for(Te=0;Te<Ve.length;Te++){if(Le=Ve[Te],Le!==parseInt(Le,10))throw new Error("all values in "+ke+" must be integers");if(Le>=Ee.data.length||Le<-Ee.data.length)throw new Error(ke+" must be valid indices for gd.data.");if(Ve.indexOf(Le,Te+1)>-1||Le>=0&&Ve.indexOf(-Ee.data.length+Le)>-1||Le<0&&Ve.indexOf(Ee.data.length+Le)>-1)throw new Error("each index in "+ke+" must be unique.")}}function N(Ee,Ve,ke){if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"currentIndices"),typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&I(Ee,ke,"newIndices"),typeof ke<"u"&&Ve.length!==ke.length)throw new Error("current and new indices must be of equal length.")}function U(Ee,Ve,ke){var Te,Le;if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("traces must be defined.");for(Array.isArray(Ve)||(Ve=[Ve]),Te=0;Te<Ve.length;Te++)if(Le=Ve[Te],typeof Le!="object"||Array.isArray(Le)||Le===null)throw new Error("all values in traces array must be non-array objects");if(typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&ke.length!==Ve.length)throw new Error("if indices is specified, traces.length must equal indices.length")}function W(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te);if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array");if(!A.isPlainObject(Ve))throw new Error("update must be a key:value object");if(typeof ke>"u")throw new Error("indices must be an integer or array of integers");I(Ee,ke,"indices");for(var rt in Ve){if(!Array.isArray(Ve[rt])||Ve[rt].length!==ke.length)throw new Error("attribute "+rt+" must be an array of length equal to indices array length");if(Le&&(!(rt in Te)||!Array.isArray(Te[rt])||Te[rt].length!==Ve[rt].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}function Q(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te),rt=[],dt,xt,It,Bt,Gt;Array.isArray(ke)||(ke=[ke]),ke=O(ke,Ee.data.length-1);for(var Kt in Ve)for(var sr=0;sr<ke.length;sr++){if(dt=Ee.data[ke[sr]],It=M(dt,Kt),xt=It.get(),Bt=Ve[Kt][sr],!A.isArrayOrTypedArray(Bt))throw new Error("attribute: "+Kt+" index: "+sr+" must be an array");if(!A.isArrayOrTypedArray(xt))throw new Error("cannot extend missing or non-array attribute: "+Kt);if(xt.constructor!==Bt.constructor)throw new Error("cannot extend array with an array of a different type: "+Kt);Gt=Le?Te[Kt][sr]:Te,g(Gt)||(Gt=-1),rt.push({prop:It,target:xt,insert:Bt,maxp:Math.floor(Gt)})}return rt}function ue(Ee,Ve,ke,Te,Le){W(Ee,Ve,ke,Te);for(var rt=Q(Ee,Ve,ke,Te),dt={},xt={},It=0;It<rt.length;It++){var Bt=rt[It].prop,Gt=rt[It].maxp,Kt=Le(rt[It].target,rt[It].insert,Gt);Bt.set(Kt[0]),Array.isArray(dt[Bt.astr])||(dt[Bt.astr]=[]),dt[Bt.astr].push(Kt[1]),Array.isArray(xt[Bt.astr])||(xt[Bt.astr]=[]),xt[Bt.astr].push(rt[It].target.length)}return{update:dt,maxPoints:xt}}function se(Ee,Ve){var ke=new Ee.constructor(Ee.length+Ve.length);return ke.set(Ee),ke.set(Ve,Ee.length),ke}function he(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee);function Le(It,Bt,Gt){var Kt,sr;if(A.isTypedArray(It))if(Gt<0){var sa=new It.constructor(0),Aa=se(It,Bt);Gt<0?(Kt=Aa,sr=sa):(Kt=sa,sr=Aa)}else if(Kt=new It.constructor(Gt),sr=new It.constructor(It.length+Bt.length-Gt),Gt===Bt.length)Kt.set(Bt),sr.set(It);else if(Gt<Bt.length){var La=Bt.length-Gt;Kt.set(Bt.subarray(La)),sr.set(It),sr.set(Bt.subarray(0,La),It.length)}else{var ka=Gt-Bt.length,Ga=It.length-ka;Kt.set(It.subarray(Ga)),Kt.set(Bt,ka),sr.set(It.subarray(0,Ga))}else Kt=It.concat(Bt),sr=Gt>=0&&Gt<Kt.length?Kt.splice(0,Kt.length-Gt):[];return[Kt,sr]}var rt=ue(Ee,Ve,ke,Te,Le),dt=X.redraw(Ee),xt=[Ee,rt.update,ke,rt.maxPoints];return t.add(Ee,X.prependTraces,xt,he,arguments),dt}function G(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee);function Le(It,Bt,Gt){var Kt,sr;if(A.isTypedArray(It))if(Gt<=0){var sa=new It.constructor(0),Aa=se(Bt,It);Gt<0?(Kt=Aa,sr=sa):(Kt=sa,sr=Aa)}else if(Kt=new It.constructor(Gt),sr=new It.constructor(It.length+Bt.length-Gt),Gt===Bt.length)Kt.set(Bt),sr.set(It);else if(Gt<Bt.length){var La=Bt.length-Gt;Kt.set(Bt.subarray(0,La)),sr.set(Bt.subarray(La)),sr.set(It,La)}else{var ka=Gt-Bt.length;Kt.set(Bt),Kt.set(It.subarray(0,ka),Bt.length),sr.set(It.subarray(ka))}else Kt=Bt.concat(It),sr=Gt>=0&&Gt<Kt.length?Kt.splice(Gt,Kt.length):[];return[Kt,sr]}var rt=ue(Ee,Ve,ke,Te,Le),dt=X.redraw(Ee),xt=[Ee,rt.update,ke,rt.maxPoints];return t.add(Ee,X.extendTraces,xt,G,arguments),dt}function $(Ee,Ve,ke){Ee=A.getGraphDiv(Ee);var Te=[],Le=X.deleteTraces,rt=$,dt=[Ee,Te],xt=[Ee,Ve],It,Bt;for(U(Ee,Ve,ke),Array.isArray(Ve)||(Ve=[Ve]),Ve=Ve.map(function(Gt){return A.extendFlat({},Gt)}),w.cleanData(Ve),It=0;It<Ve.length;It++)Ee.data.push(Ve[It]);for(It=0;It<Ve.length;It++)Te.push(-Ve.length+It);if(typeof ke>"u")return Bt=X.redraw(Ee),t.add(Ee,Le,dt,rt,xt),Bt;Array.isArray(ke)||(ke=[ke]);try{N(Ee,Te,ke)}catch(Gt){throw Ee.data.splice(Ee.data.length-Ve.length,Ve.length),Gt}return t.startSequence(Ee),t.add(Ee,Le,dt,rt,xt),Bt=X.moveTraces(Ee,Te,ke),t.stopSequence(Ee),Bt}function J(Ee,Ve){Ee=A.getGraphDiv(Ee);var ke=[],Te=X.addTraces,Le=J,rt=[Ee,ke,Ve],dt=[Ee,Ve],xt,It;if(typeof Ve>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"indices"),Ve=O(Ve,Ee.data.length-1),Ve.sort(A.sorterDes),xt=0;xt<Ve.length;xt+=1)It=Ee.data.splice(Ve[xt],1)[0],ke.push(It);var Bt=X.redraw(Ee);return t.add(Ee,Te,rt,Le,dt),Bt}function Z(Ee,Ve,ke){Ee=A.getGraphDiv(Ee);var Te=[],Le=[],rt=Z,dt=Z,xt=[Ee,ke,Ve],It=[Ee,Ve,ke],Bt;if(N(Ee,Ve,ke),Ve=Array.isArray(Ve)?Ve:[Ve],typeof ke>"u")for(ke=[],Bt=0;Bt<Ve.length;Bt++)ke.push(-Ve.length+Bt);for(ke=Array.isArray(ke)?ke:[ke],Ve=O(Ve,Ee.data.length-1),ke=O(ke,Ee.data.length-1),Bt=0;Bt<Ee.data.length;Bt++)Ve.indexOf(Bt)===-1&&Te.push(Ee.data[Bt]);for(Bt=0;Bt<Ve.length;Bt++)Le.push({newIndex:ke[Bt],trace:Ee.data[Ve[Bt]]});for(Le.sort(function(Kt,sr){return Kt.newIndex-sr.newIndex}),Bt=0;Bt<Le.length;Bt+=1)Te.splice(Le[Bt].newIndex,0,Le[Bt].trace);Ee.data=Te;var Gt=X.redraw(Ee);return t.add(Ee,rt,xt,dt,It),Gt}function re(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var Le={};if(typeof Ve=="string")Le[Ve]=ke;else if(A.isPlainObject(Ve))Le=A.extendFlat({},Ve),Te===void 0&&(Te=ke);else return A.warn("Restyle fail.",Ve,ke,Te),Promise.reject();Object.keys(Le).length&&(Ee.changed=!0);var rt=w.coerceTraceIndices(Ee,Te),dt=fe(Ee,Le,rt),xt=dt.flags;xt.calc&&(Ee.calcdata=void 0),xt.clearAxisTypes&&w.clearAxisTypes(Ee,rt,{});var It=[];xt.fullReplot?It.push(X._doPlot):(It.push(a.previousPromises),a.supplyDefaults(Ee),xt.markerSize&&(a.doCalcdata(Ee),Be(It)),xt.style&&It.push(S.doTraceStyle),xt.colorbars&&It.push(S.doColorBars),It.push(y)),It.push(a.rehover,a.redrag,a.reselect),t.add(Ee,re,[Ee,dt.undoit,dt.traces],re,[Ee,dt.redoit,dt.traces]);var Bt=A.syncOrAsync(It,Ee);return(!Bt||!Bt.then)&&(Bt=Promise.resolve()),Bt.then(function(){return Ee.emit("plotly_restyle",dt.eventData),Ee})}function ne(Ee){return Ee===void 0?null:Ee}function j(Ee,Ve){return Ve?function(ke,Te,Le){var rt=M(ke,Te),dt=rt.set;return rt.set=function(xt){var It=(Le||"")+Te;ee(It,rt.get(),xt,Ee),dt(xt)},rt}:M}function ee(Ee,Ve,ke,Te){if(Array.isArray(Ve)||Array.isArray(ke))for(var Le=Array.isArray(Ve)?Ve:[],rt=Array.isArray(ke)?ke:[],dt=Math.max(Le.length,rt.length),xt=0;xt<dt;xt++)ee(Ee+"["+xt+"]",Le[xt],rt[xt],Te);else if(A.isPlainObject(Ve)||A.isPlainObject(ke)){var It=A.isPlainObject(Ve)?Ve:{},Bt=A.isPlainObject(ke)?ke:{},Gt=A.extendFlat({},It,Bt);for(var Kt in Gt)ee(Ee+"."+Kt,It[Kt],Bt[Kt],Te)}else Te[Ee]===void 0&&(Te[Ee]=ne(Ve))}function ie(Ee,Ve,ke){for(var Te in ke){var Le=M(Ee,Te);ee(Te,Le.get(),ke[Te],Ve)}}function fe(Ee,Ve,ke){var Te=Ee._fullLayout,Le=Ee._fullData,rt=Ee.data,dt=Te._guiEditing,xt=j(Te._preGUI,dt),It=A.extendDeepAll({},Ve),Bt,Gt=E.traceFlags(),Kt={},sr={},sa;function Aa(){return ke.map(function(){})}function La(mr){var $r=i.id2name(mr);sa.indexOf($r)===-1&&sa.push($r)}function ka(mr){return"LAYOUT"+mr+".autorange"}function Ga(mr){return"LAYOUT"+mr+".range"}function Ma(mr){for(var $r=mr;$r<Le.length;$r++)if(Le[$r]._input===rt[mr])return Le[$r]}function Ua(mr,$r,ma){if(Array.isArray(mr)){mr.forEach(function(Sa){Ua(Sa,$r,ma)});return}if(!(mr in Ve||w.hasParent(Ve,mr))){var Ba;if(mr.substr(0,6)==="LAYOUT")Ba=xt(Ee.layout,mr.replace("LAYOUT",""));else{var Ca=ke[ma],da=Te._tracePreGUI[Ma(Ca)._fullInput.uid];Ba=j(da,dt)(rt[Ca],mr)}mr in sr||(sr[mr]=Aa()),sr[mr][ma]===void 0&&(sr[mr][ma]=ne(Ba.get())),$r!==void 0&&Ba.set($r)}}function ni(mr){return function($r){return Le[$r][mr]}}function Wt(mr){return function($r,ma){return $r===!1?Le[ke[ma]][mr]:null}}for(var zt in Ve){if(w.hasParent(Ve,zt))throw new Error("cannot set "+zt+" and a parent attribute simultaneously");var Vt=Ve[zt],Ut,xr,Zr,pa,Xr,Ea;if((zt==="autobinx"||zt==="autobiny")&&(zt=zt.charAt(zt.length-1)+"bins",Array.isArray(Vt)?Vt=Vt.map(Wt(zt)):Vt===!1?Vt=ke.map(ni(zt)):Vt=null),Kt[zt]=Vt,zt.substr(0,6)==="LAYOUT"){Zr=xt(Ee.layout,zt.replace("LAYOUT","")),sr[zt]=[ne(Zr.get())],Zr.set(Array.isArray(Vt)?Vt[0]:Vt),Gt.calc=!0;continue}for(sr[zt]=Aa(),Bt=0;Bt<ke.length;Bt++){Ut=rt[ke[Bt]],xr=Ma(ke[Bt]);var Fa=Te._tracePreGUI[xr._fullInput.uid];if(Zr=j(Fa,dt)(Ut,zt),pa=Zr.get(),Xr=Array.isArray(Vt)?Vt[Bt%Vt.length]:Vt,Xr!==void 0){var qa=Zr.parts[Zr.parts.length-1],ya=zt.substr(0,zt.length-qa.length-1),$a=ya?ya+".":"",mt=ya?M(xr,ya).get():xr;if(Ea=o.getTraceValObject(xr,Zr.parts),Ea&&Ea.impliedEdits&&Xr!==null)for(var gt in Ea.impliedEdits)Ua(A.relativeAttr(zt,gt),Ea.impliedEdits[gt],Bt);else if((qa==="thicknessmode"||qa==="lenmode")&&pa!==Xr&&(Xr==="fraction"||Xr==="pixels")&&mt){var Er=Te._size,kr=mt.orient,br=kr==="top"||kr==="bottom";if(qa==="thicknessmode"){var Tr=br?Er.h:Er.w;Ua($a+"thickness",mt.thickness*(Xr==="fraction"?1/Tr:Tr),Bt)}else{var Mr=br?Er.w:Er.h;Ua($a+"len",mt.len*(Xr==="fraction"?1/Mr:Mr),Bt)}}else if(zt==="type"&&(Xr==="pie"!=(pa==="pie")||Xr==="funnelarea"!=(pa==="funnelarea"))){var Fr="x",Lr="y";(Xr==="bar"||pa==="bar")&&Ut.orientation==="h"&&(Fr="y",Lr="x"),A.swapAttrs(Ut,["?","?src"],"labels",Fr),A.swapAttrs(Ut,["d?","?0"],"label",Fr),A.swapAttrs(Ut,["?","?src"],"values",Lr),pa==="pie"||pa==="funnelarea"?(M(Ut,"marker.color").set(M(Ut,"marker.colors").get()),Te._pielayer.selectAll("g.trace").remove()):r.traceIs(Ut,"cartesian")&&M(Ut,"marker.colors").set(M(Ut,"marker.color").get())}sr[zt][Bt]=ne(pa);var Jr=["swapxy","swapxyaxes","orientation","orientationaxes"];if(Jr.indexOf(zt)!==-1){if(zt==="orientation"){Zr.set(Xr);var oa=Ut.x&&!Ut.y?"h":"v";if((Zr.get()||oa)===xr.orientation)continue}else zt==="orientationaxes"&&(Ut.orientation={v:"h",h:"v"}[xr.orientation]);w.swapXYData(Ut),Gt.calc=Gt.clearAxisTypes=!0}else a.dataArrayContainers.indexOf(Zr.parts[0])!==-1?(w.manageArrayContainers(Zr,Xr,sr),Gt.calc=!0):(Ea?Ea.arrayOk&&!r.traceIs(xr,"regl")&&(A.isArrayOrTypedArray(Xr)||A.isArrayOrTypedArray(pa))?Gt.calc=!0:E.update(Gt,Ea):Gt.calc=!0,Zr.set(Xr))}}if(["swapxyaxes","orientationaxes"].indexOf(zt)!==-1&&i.swap(Ee,ke),zt==="orientationaxes"){var ca=M(Ee.layout,"hovermode"),kt=ca.get();kt==="x"?ca.set("y"):kt==="y"?ca.set("x"):kt==="x unified"?ca.set("y unified"):kt==="y unified"&&ca.set("x unified")}if(["orientation","type"].indexOf(zt)!==-1){for(sa=[],Bt=0;Bt<ke.length;Bt++){var ir=rt[ke[Bt]];r.traceIs(ir,"cartesian")&&(La(ir.xaxis||"x"),La(ir.yaxis||"y"))}Ua(sa.map(ka),!0,0),Ua(sa.map(Ga),[0,1],0)}}return(Gt.calc||Gt.plot)&&(Gt.fullReplot=!0),{flags:Gt,undoit:sr,redoit:Kt,traces:ke,eventData:A.extendDeepNoArrays([],[It,ke])}}function be(Ee,Ve,ke){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var Te={};if(typeof Ve=="string")Te[Ve]=ke;else if(A.isPlainObject(Ve))Te=A.extendFlat({},Ve);else return A.warn("Relayout fail.",Ve,ke),Promise.reject();Object.keys(Te).length&&(Ee.changed=!0);var Le=it(Ee,Te),rt=Le.flags;rt.calc&&(Ee.calcdata=void 0);var dt=[a.previousPromises];rt.layoutReplot?dt.push(S.layoutReplot):Object.keys(Te).length&&(Ae(Ee,rt,Le)||a.supplyDefaults(Ee),rt.legend&&dt.push(S.doLegend),rt.layoutstyle&&dt.push(S.layoutStyles),rt.axrange&&Be(dt,Le.rangesAltered),rt.ticks&&dt.push(S.doTicksRelayout),rt.modebar&&dt.push(S.doModeBar),rt.camera&&dt.push(S.doCamera),rt.colorbars&&dt.push(S.doColorBars),dt.push(y)),dt.push(a.rehover,a.redrag,a.reselect),t.add(Ee,be,[Ee,Le.undoit],be,[Ee,Le.redoit]);var xt=A.syncOrAsync(dt,Ee);return(!xt||!xt.then)&&(xt=Promise.resolve(Ee)),xt.then(function(){return Ee.emit("plotly_relayout",Le.eventData),Ee})}function Ae(Ee,Ve,ke){var Te=Ee._fullLayout;if(!Ve.axrange)return!1;for(var Le in Ve)if(Le!=="axrange"&&Ve[Le])return!1;var rt,dt,xt=function(sa,Aa){return A.coerce(rt,dt,s,sa,Aa)},It={};for(var Bt in ke.rangesAltered){var Gt=i.id2name(Bt);if(rt=Ee.layout[Gt],dt=Te[Gt],n(rt,dt,xt,It),dt._matchGroup){for(var Kt in dt._matchGroup)if(Kt!==Bt){var sr=Te[i.id2name(Kt)];sr.autorange=dt.autorange,sr.range=dt.range.slice(),sr._input.range=dt.range.slice()}}}return!0}function Be(Ee,Ve){var ke=Ve?function(Te){var Le=[],rt=!0;for(var dt in Ve){var xt=i.getFromId(Te,dt);if(Le.push(dt),(xt.ticklabelposition||"").indexOf("inside")!==-1&&xt._anchorAxis&&Le.push(xt._anchorAxis._id),xt._matchGroup)for(var It in xt._matchGroup)Ve[It]||Le.push(It)}return i.draw(Te,Le,{skipTitle:rt})}:function(Te){return i.draw(Te,"redraw")};Ee.push(T,S.doAutoRangeAndConstraints,ke,S.drawData,S.finalDraw)}var Ie=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,Ze=/^[xyz]axis[0-9]*\.autorange$/,at=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function it(Ee,Ve){var ke=Ee.layout,Te=Ee._fullLayout,Le=Te._guiEditing,rt=j(Te._preGUI,Le),dt=Object.keys(Ve),xt=i.list(Ee),It=A.extendDeepAll({},Ve),Bt={},Gt,Kt,sr;for(dt=Object.keys(Ve),Kt=0;Kt<dt.length;Kt++)if(dt[Kt].indexOf("allaxes")===0){for(sr=0;sr<xt.length;sr++){var sa=xt[sr]._id.substr(1),Aa=sa.indexOf("scene")!==-1?sa+".":"",La=dt[Kt].replace("allaxes",Aa+xt[sr]._name);Ve[La]||(Ve[La]=Ve[dt[Kt]])}delete Ve[dt[Kt]]}var ka=E.layoutFlags(),Ga={},Ma={};function Ua(da,Sa){if(Array.isArray(da)){da.forEach(function(ai){Ua(ai,Sa)});return}if(!(da in Ve||w.hasParent(Ve,da))){var Ti=rt(ke,da);da in Ma||(Ma[da]=ne(Ti.get())),Sa!==void 0&&Ti.set(Sa)}}var ni={},Wt;function zt(da){var Sa=i.name2id(da.split(".")[0]);return ni[Sa]=1,Sa}for(var Vt in Ve){if(w.hasParent(Ve,Vt))throw new Error("cannot set "+Vt+" and a parent attribute simultaneously");for(var Ut=rt(ke,Vt),xr=Ve[Vt],Zr=Ut.parts.length,pa=Zr-1;pa>0&&typeof Ut.parts[pa]!="string";)pa--;var Xr=Ut.parts[pa],Ea=Ut.parts[pa-1]+"."+Xr,Fa=Ut.parts.slice(0,pa).join("."),qa=M(Ee.layout,Fa).get(),ya=M(Te,Fa).get(),$a=Ut.get();if(xr!==void 0){Ga[Vt]=xr,Ma[Vt]=Xr==="reverse"?xr:ne($a);var mt=o.getLayoutValObject(Te,Ut.parts);if(mt&&mt.impliedEdits&&xr!==null)for(var gt in mt.impliedEdits)Ua(A.relativeAttr(Vt,gt),mt.impliedEdits[gt]);if(["width","height"].indexOf(Vt)!==-1)if(xr){Ua("autosize",null);var Er=Vt==="height"?"width":"height";Ua(Er,Te[Er])}else Te[Vt]=Ee._initialAutoSize[Vt];else if(Vt==="autosize")Ua("width",xr?null:Te.width),Ua("height",xr?null:Te.height);else if(Ea.match(Ie))zt(Ea),M(Te,Fa+"._inputRange").set(null);else if(Ea.match(Ze)){zt(Ea),M(Te,Fa+"._inputRange").set(null);var kr=M(Te,Fa).get();kr._inputDomain&&(kr._input.domain=kr._inputDomain.slice())}else Ea.match(at)&&M(Te,Fa+"._inputDomain").set(null);if(Xr==="type"){Wt=qa;var br=ya.type==="linear"&&xr==="log",Tr=ya.type==="log"&&xr==="linear";if(br||Tr){if(!Wt||!Wt.range)Ua(Fa+".autorange",!0);else if(ya.autorange)br&&(Wt.range=Wt.range[1]>Wt.range[0]?[1,2]:[2,1]);else{var Mr=Wt.range[0],Fr=Wt.range[1];br?(Mr<=0&&Fr<=0&&Ua(Fa+".autorange",!0),Mr<=0?Mr=Fr/1e6:Fr<=0&&(Fr=Mr/1e6),Ua(Fa+".range[0]",Math.log(Mr)/Math.LN10),Ua(Fa+".range[1]",Math.log(Fr)/Math.LN10)):(Ua(Fa+".range[0]",Math.pow(10,Mr)),Ua(Fa+".range[1]",Math.pow(10,Fr)))}Array.isArray(Te._subplots.polar)&&Te._subplots.polar.length&&Te[Ut.parts[0]]&&Ut.parts[1]==="radialaxis"&&delete Te[Ut.parts[0]]._subplot.viewInitial["radialaxis.range"],r.getComponentMethod("annotations","convertCoords")(Ee,ya,xr,Ua),r.getComponentMethod("images","convertCoords")(Ee,ya,xr,Ua)}else Ua(Fa+".autorange",!0),Ua(Fa+".range",null);M(Te,Fa+"._inputRange").set(null)}else if(Xr.match(m)){var Lr=M(Te,Vt).get(),Jr=(xr||{}).type;(!Jr||Jr==="-")&&(Jr="linear"),r.getComponentMethod("annotations","convertCoords")(Ee,Lr,Jr,Ua),r.getComponentMethod("images","convertCoords")(Ee,Lr,Jr,Ua)}var oa=_.containerArrayMatch(Vt);if(oa){Gt=oa.array,Kt=oa.index;var ca=oa.property,kt=mt||{editType:"calc"};Kt!==""&&ca===""&&(_.isAddVal(xr)?Ma[Vt]=null:_.isRemoveVal(xr)?Ma[Vt]=(M(ke,Gt).get()||[])[Kt]:A.warn("unrecognized full object value",Ve)),E.update(ka,kt),Bt[Gt]||(Bt[Gt]={});var ir=Bt[Gt][Kt];ir||(ir=Bt[Gt][Kt]={}),ir[ca]=xr,delete Ve[Vt]}else Xr==="reverse"?(qa.range?qa.range.reverse():(Ua(Fa+".autorange",!0),qa.range=[1,0]),ya.autorange?ka.calc=!0:ka.plot=!0):(Vt==="dragmode"&&(xr===!1&&$a!==!1||xr!==!1&&$a===!1)||Te._has("scatter-like")&&Te._has("regl")&&Vt==="dragmode"&&(xr==="lasso"||xr==="select")&&!($a==="lasso"||$a==="select")?ka.plot=!0:mt?E.update(ka,mt):ka.calc=!0,Ut.set(xr))}}for(Gt in Bt){var mr=_.applyContainerArrayChanges(Ee,rt(ke,Gt),Bt[Gt],ka,rt);mr||(ka.plot=!0)}for(var $r in ni){Wt=i.getFromId(Ee,$r);var ma=Wt&&Wt._constraintGroup;if(ma){ka.calc=!0;for(var Ba in ma)ni[Ba]||(i.getFromId(Ee,Ba)._constraintShrinkable=!0)}}(et(Ee)||Ve.height||Ve.width)&&(ka.plot=!0);var Ca=Te.shapes;for(Kt=0;Kt<Ca.length;Kt++)if(Ca[Kt].showlegend){ka.calc=!0;break}return(ka.plot||ka.calc)&&(ka.layoutReplot=!0),{flags:ka,rangesAltered:ni,undoit:Ma,redoit:Ga,eventData:It}}function et(Ee){var Ve=Ee._fullLayout,ke=Ve.width,Te=Ve.height;return Ee.layout.autosize&&a.plotAutoSize(Ee,Ee.layout,Ve),Ve.width!==ke||Ve.height!==Te}function lt(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee),A.isPlainObject(Ve)||(Ve={}),A.isPlainObject(ke)||(ke={}),Object.keys(Ve).length&&(Ee.changed=!0),Object.keys(ke).length&&(Ee.changed=!0);var Le=w.coerceTraceIndices(Ee,Te),rt=fe(Ee,A.extendFlat({},Ve),Le),dt=rt.flags,xt=it(Ee,A.extendFlat({},ke)),It=xt.flags;(dt.calc||It.calc)&&(Ee.calcdata=void 0),dt.clearAxisTypes&&w.clearAxisTypes(Ee,Le,ke);var Bt=[];It.layoutReplot?Bt.push(S.layoutReplot):dt.fullReplot?Bt.push(X._doPlot):(Bt.push(a.previousPromises),Ae(Ee,It,xt)||a.supplyDefaults(Ee),dt.style&&Bt.push(S.doTraceStyle),(dt.colorbars||It.colorbars)&&Bt.push(S.doColorBars),It.legend&&Bt.push(S.doLegend),It.layoutstyle&&Bt.push(S.layoutStyles),It.axrange&&Be(Bt,xt.rangesAltered),It.ticks&&Bt.push(S.doTicksRelayout),It.modebar&&Bt.push(S.doModeBar),It.camera&&Bt.push(S.doCamera),Bt.push(y)),Bt.push(a.rehover,a.redrag,a.reselect),t.add(Ee,lt,[Ee,rt.undoit,xt.undoit,rt.traces],lt,[Ee,rt.redoit,xt.redoit,rt.traces]);var Gt=A.syncOrAsync(Bt,Ee);return(!Gt||!Gt.then)&&(Gt=Promise.resolve(Ee)),Gt.then(function(){return Ee.emit("plotly_update",{data:rt.eventData,layout:xt.eventData}),Ee})}function Me(Ee){return function(ke){ke._fullLayout._guiEditing=!0;var Te=Ee.apply(null,arguments);return ke._fullLayout._guiEditing=!1,Te}}var ge=[{pattern:/^hiddenlabels/,attr:"legend.uirevision"},{pattern:/^((x|y)axis\d*)\.((auto)?range|title\.text)/},{pattern:/axis\d*\.showspikes$/,attr:"modebar.uirevision"},{pattern:/(hover|drag)mode$/,attr:"modebar.uirevision"},{pattern:/^(scene\d*)\.camera/},{pattern:/^(geo\d*)\.(projection|center|fitbounds)/},{pattern:/^(ternary\d*\.[abc]axis)\.(min|title\.text)$/},{pattern:/^(polar\d*\.radialaxis)\.((auto)?range|angle|title\.text)/},{pattern:/^(polar\d*\.angularaxis)\.rotation/},{pattern:/^(mapbox\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^(map\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^legend\.(x|y)$/,attr:"editrevision"},{pattern:/^(shapes|annotations)/,attr:"editrevision"},{pattern:/^title\.text$/,attr:"editrevision"}],ce=[{pattern:/^selectedpoints$/,attr:"selectionrevision"},{pattern:/(^|value\.)visible$/,attr:"legend.uirevision"},{pattern:/^dimensions\[\d+\]\.constraintrange/},{pattern:/^node\.(x|y|groups)/},{pattern:/^level$/},{pattern:/(^|value\.)name$/},{pattern:/colorbar\.title\.text$/},{pattern:/colorbar\.(x|y)$/,attr:"editrevision"}];function ze(Ee,Ve){for(var ke=0;ke<Ve.length;ke++){var Te=Ve[ke],Le=Ee.match(Te.pattern);if(Le){var rt=Le[1]||"";return{head:rt,tail:Ee.substr(rt.length+1),attr:Te.attr}}}}function tt(Ee,Ve){var ke=M(Ve,Ee).get();if(ke!==void 0)return ke;var Te=Ee.split(".");for(Te.pop();Te.length>1;)if(Te.pop(),ke=M(Ve,Te.join(".")+".uirevision").get(),ke!==void 0)return ke;return Ve.uirevision}function nt(Ee,Ve){for(var ke=0;ke<Ve.length;ke++)if(Ve[ke]._fullInput.uid===Ee)return ke;return-1}function Qe(Ee,Ve,ke){for(var Te=0;Te<Ve.length;Te++)if(Ve[Te].uid===Ee)return Te;return!Ve[ke]||Ve[ke].uid?-1:ke}function Ct(Ee,Ve){var ke=A.isPlainObject(Ee),Te=Array.isArray(Ee);return ke||Te?(ke&&A.isPlainObject(Ve)||Te&&Array.isArray(Ve))&&JSON.stringify(Ee)===JSON.stringify(Ve):Ee===Ve}function St(Ee,Ve,ke,Te){var Le=Te._preGUI,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa,La=[],ka={},Ga={};for(rt in Le){if(Bt=ze(rt,ge),Bt){if(sa=Bt.head,Aa=Bt.tail,dt=Bt.attr||sa+".uirevision",xt=M(Te,dt).get(),It=xt&&tt(dt,Ve),It&&It===xt){if(Gt=Le[rt],Gt===null&&(Gt=void 0),Kt=M(Ve,rt),sr=Kt.get(),Ct(sr,Gt)){sr===void 0&&Aa==="autorange"&&La.push(sa),Kt.set(ne(M(Te,rt).get()));continue}else if(Aa==="autorange"||Aa.substr(0,6)==="range["){var Ma=Le[sa+".range[0]"],Ua=Le[sa+".range[1]"],ni=Le[sa+".autorange"];if(ni||ni===null&&Ma===null&&Ua===null){if(!(sa in ka)){var Wt=M(Ve,sa).get();ka[sa]=Wt&&(Wt.autorange||Wt.autorange!==!1&&(!Wt.range||Wt.range.length!==2))}if(ka[sa]){Kt.set(ne(M(Te,rt).get()));continue}}}}}else A.warn("unrecognized GUI edit: "+rt);delete Le[rt],Bt&&Bt.tail.substr(0,6)==="range["&&(Ga[Bt.head]=1)}for(var zt=0;zt<La.length;zt++){var Vt=La[zt];if(Ga[Vt]){var Ut=M(Ve,Vt).get();Ut&&delete Ut.autorange}}var xr=Te._tracePreGUI;for(var Zr in xr){var pa=xr[Zr],Xr=null,Ea;for(rt in pa){if(!Xr){var Fa=nt(Zr,ke);if(Fa<0){delete xr[Zr];break}var qa=ke[Fa];Ea=qa._fullInput;var ya=Qe(Zr,Ee,Ea.index);if(ya<0){delete xr[Zr];break}Xr=Ee[ya]}if(Bt=ze(rt,ce),Bt){if(Bt.attr?(xt=M(Te,Bt.attr).get(),It=xt&&tt(Bt.attr,Ve)):(xt=Ea.uirevision,It=Xr.uirevision,It===void 0&&(It=Ve.uirevision)),It&&It===xt&&(Gt=pa[rt],Gt===null&&(Gt=void 0),Kt=M(Xr,rt),sr=Kt.get(),Ct(sr,Gt))){Kt.set(ne(M(Ea,rt).get()));continue}}else A.warn("unrecognized GUI edit: "+rt+" in trace uid "+Zr);delete pa[rt]}}}function Ot(Ee,Ve,ke,Te){var Le,rt;function dt(){return X.addFrames(Ee,Le)}Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var xt=Ee._fullData,It=Ee._fullLayout;if(!A.isPlotDiv(Ee)||!xt||!It)rt=X.newPlot(Ee,Ve,ke,Te);else{if(A.isPlainObject(Ve)){var Bt=Ve;Ve=Bt.data,ke=Bt.layout,Te=Bt.config,Le=Bt.frames}var Gt=!1;if(Te){var Kt=A.extendDeep({},Ee._context);Ee._context=void 0,z(Ee,Te),Gt=Cr(Kt,Ee._context)}Ee.data=Ve||[],w.cleanData(Ee.data),Ee.layout=ke||{},w.cleanLayout(Ee.layout),St(Ee.data,Ee.layout,xt,It),a.supplyDefaults(Ee,{skipUpdateCalc:!0});var sr=Ee._fullData,sa=Ee._fullLayout,Aa=sa.datarevision===void 0,La=sa.transition,ka=ur(Ee,It,sa,Aa,La),Ga=ka.newDataRevision,Ma=jt(Ee,xt,sr,Aa,La,Ga);if(et(Ee)&&(ka.layoutReplot=!0),Ma.calc||ka.calc){Ee.calcdata=void 0;for(var Ua=Object.getOwnPropertyNames(sa),ni=0;ni<Ua.length;ni++){var Wt=Ua[ni],zt=Wt.substring(0,5);if(zt==="xaxis"||zt==="yaxis"){var Vt=sa[Wt]._emptyCategories;Vt&&Vt()}}}else a.supplyDefaultsUpdateCalc(Ee.calcdata,sr);var Ut=[];if(Le&&(Ee._transitionData={},a.createTransitionData(Ee),Ut.push(dt)),sa.transition&&!Gt&&(Ma.anim||ka.anim))ka.ticks&&Ut.push(S.doTicksRelayout),a.doCalcdata(Ee),S.doAutoRangeAndConstraints(Ee),Ut.push(function(){return a.transitionFromReact(Ee,Ma,ka,It)});else if(Ma.fullReplot||ka.layoutReplot||Gt)Ee._fullLayout._skipDefaults=!0,Ut.push(X._doPlot);else{for(var xr in ka.arrays){var Zr=ka.arrays[xr];if(Zr.length){var pa=r.getComponentMethod(xr,"drawOne");if(pa!==A.noop)for(var Xr=0;Xr<Zr.length;Xr++)pa(Ee,Zr[Xr]);else{var Ea=r.getComponentMethod(xr,"draw");if(Ea===A.noop)throw new Error("cannot draw components: "+xr);Ea(Ee)}}}Ut.push(a.previousPromises),Ma.style&&Ut.push(S.doTraceStyle),(Ma.colorbars||ka.colorbars)&&Ut.push(S.doColorBars),ka.legend&&Ut.push(S.doLegend),ka.layoutstyle&&Ut.push(S.layoutStyles),ka.axrange&&Be(Ut),ka.ticks&&Ut.push(S.doTicksRelayout),ka.modebar&&Ut.push(S.doModeBar),ka.camera&&Ut.push(S.doCamera),Ut.push(y)}Ut.push(a.rehover,a.redrag,a.reselect),rt=A.syncOrAsync(Ut,Ee),(!rt||!rt.then)&&(rt=Promise.resolve(Ee))}return rt.then(function(){return Ee.emit("plotly_react",{data:Ve,layout:ke}),Ee})}function jt(Ee,Ve,ke,Te,Le,rt){var dt=Ve.length===ke.length;if(!Le&&!dt)return{fullReplot:!0,calc:!0};var xt=E.traceFlags();xt.arrays={},xt.nChanges=0,xt.nChangesAnim=0;var It,Bt;function Gt(sa){var Aa=o.getTraceValObject(Bt,sa);return!Bt._module.animatable&&Aa.anim&&(Aa.anim=!1),Aa}var Kt={getValObject:Gt,flags:xt,immutable:Te,transition:Le,newDataRevision:rt,gd:Ee},sr={};for(It=0;It<Ve.length;It++)if(ke[It]){if(Bt=ke[It]._fullInput,sr[Bt.uid])continue;sr[Bt.uid]=1,ar(Ve[It]._fullInput,Bt,[],Kt)}return(xt.calc||xt.plot)&&(xt.fullReplot=!0),Le&&xt.nChanges&&xt.nChangesAnim&&(xt.anim=xt.nChanges===xt.nChangesAnim&&dt?"all":"some"),xt}function ur(Ee,Ve,ke,Te,Le){var rt=E.layoutFlags();rt.arrays={},rt.rangesAltered={},rt.nChanges=0,rt.nChangesAnim=0;function dt(sr){return o.getLayoutValObject(ke,sr)}for(var xt in ke)if(!(!xt.startsWith("xaxis")&&!xt.startsWith("yaxis"))&&Ve[xt]){var It=ke[xt].domain,Bt=Ve[xt].domain,Gt=Ve[xt]._inputDomain;Ve[xt]._inputDomain&&(It[0]===Gt[0]&&It[1]===Gt[1]?ke[xt].domain=Ve[xt].domain:(It[0]!==Bt[0]||It[1]!==Bt[1])&&(ke[xt]._inputDomain=null))}var Kt={getValObject:dt,flags:rt,immutable:Te,transition:Le,gd:Ee};return ar(Ve,ke,[],Kt),(rt.plot||rt.calc)&&(rt.layoutReplot=!0),Le&&rt.nChanges&&rt.nChangesAnim&&(rt.anim=rt.nChanges===rt.nChangesAnim?"all":"some"),rt}function ar(Ee,Ve,ke,Te){var Le,rt,dt,xt=Te.getValObject,It=Te.flags,Bt=Te.immutable,Gt=Te.inArray,Kt=Te.arrayIndex;function sr(){var Fa=Le.editType;if(Gt&&Fa.indexOf("arraydraw")!==-1){A.pushUnique(It.arrays[Gt],Kt);return}E.update(It,Le),Fa!=="none"&&It.nChanges++,Te.transition&&Le.anim&&It.nChangesAnim++,(Ie.test(dt)||Ze.test(dt))&&(It.rangesAltered[ke[0]]=1),rt==="datarevision"&&(It.newDataRevision=1)}function sa(Fa){return Fa.valType==="data_array"||Fa.arrayOk}for(rt in Ee){if(It.calc&&!Te.transition)return;var Aa=Ee[rt],La=Ve[rt],ka=ke.concat(rt);if(dt=ka.join("."),!(rt.charAt(0)==="_"||typeof Aa=="function"||Aa===La)){if((rt==="tick0"||rt==="dtick")&&ke[0]!=="geo"){var Ga=Ve.tickmode;if(Ga==="auto"||Ga==="array"||!Ga)continue}if(!(rt==="range"&&Ve.autorange)&&!((rt==="zmin"||rt==="zmax")&&Ve.type==="contourcarpet")&&(Le=xt(ka),!!Le&&!(Le._compareAsJSON&&JSON.stringify(Aa)===JSON.stringify(La)))){var Ma=Le.valType,Ua,ni=sa(Le),Wt=Array.isArray(Aa),zt=Array.isArray(La);if(Wt&&zt){var Vt="_input_"+rt,Ut=Ee[Vt],xr=Ve[Vt];if(Array.isArray(Ut)&&Ut===xr)continue}if(La===void 0)ni&&Wt?It.calc=!0:sr();else if(Le._isLinkedToArray){var Zr=[],pa=!1;Gt||(It.arrays[rt]=Zr);var Xr=Math.min(Aa.length,La.length),Ea=Math.max(Aa.length,La.length);if(Xr!==Ea)if(Le.editType==="arraydraw")pa=!0;else{sr();continue}for(Ua=0;Ua<Xr;Ua++)ar(Aa[Ua],La[Ua],ka.concat(Ua),A.extendFlat({inArray:rt,arrayIndex:Ua},Te));if(pa)for(Ua=Xr;Ua<Ea;Ua++)Zr.push(Ua)}else!Ma&&A.isPlainObject(Aa)?ar(Aa,La,ka,Te):ni?Wt&&zt?(Bt&&(It.calc=!0),(Bt||Te.newDataRevision)&&sr()):Wt!==zt?It.calc=!0:sr():Wt&&zt?(Aa.length!==La.length||String(Aa)!==String(La))&&sr():sr()}}}for(rt in Ve)if(!(rt in Ee||rt.charAt(0)==="_"||typeof Ve[rt]=="function"))if(Le=xt(ke.concat(rt)),sa(Le)&&Array.isArray(Ve[rt])){It.calc=!0;return}else sr()}function Cr(Ee,Ve){var ke;for(ke in Ee)if(ke.charAt(0)!=="_"){var Te=Ee[ke],Le=Ve[ke];if(Te!==Le)if(A.isPlainObject(Te)&&A.isPlainObject(Le)){if(Cr(Te,Le))return!0}else if(Array.isArray(Te)&&Array.isArray(Le)){if(Te.length!==Le.length)return!0;for(var rt=0;rt<Te.length;rt++)if(Te[rt]!==Le[rt])if(A.isPlainObject(Te[rt])&&A.isPlainObject(Le[rt])){if(Cr(Te[rt],Le[rt]))return!0}else return!0}else return!0}}function vr(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var Te=Ee._transitionData;Te._frameQueue||(Te._frameQueue=[]),ke=a.supplyAnimationDefaults(ke);var Le=ke.transition,rt=ke.frame;Te._frameWaitingCnt===void 0&&(Te._frameWaitingCnt=0);function dt(Bt){return Array.isArray(Le)?Bt>=Le.length?Le[0]:Le[Bt]:Le}function xt(Bt){return Array.isArray(rt)?Bt>=rt.length?rt[0]:rt[Bt]:rt}function It(Bt,Gt){var Kt=0;return function(){if(Bt&&++Kt===Gt)return Bt()}}return new Promise(function(Bt,Gt){function Kt(){if(Te._frameQueue.length!==0){for(;Te._frameQueue.length;){var Xr=Te._frameQueue.pop();Xr.onInterrupt&&Xr.onInterrupt()}Ee.emit("plotly_animationinterrupted",[])}}function sr(Xr){if(Xr.length!==0){for(var Ea=0;Ea<Xr.length;Ea++){var Fa;Xr[Ea].type==="byname"?Fa=a.computeFrame(Ee,Xr[Ea].name):Fa=Xr[Ea].data;var qa=xt(Ea),ya=dt(Ea);ya.duration=Math.min(ya.duration,qa.duration);var $a={frame:Fa,name:Xr[Ea].name,frameOpts:qa,transitionOpts:ya};Ea===Xr.length-1&&($a.onComplete=It(Bt,2),$a.onInterrupt=Gt),Te._frameQueue.push($a)}ke.mode==="immediate"&&(Te._lastFrameAt=-1/0),Te._animationRaf||La()}}function sa(){Ee.emit("plotly_animated"),window.cancelAnimationFrame(Te._animationRaf),Te._animationRaf=null}function Aa(){Te._currentFrame&&Te._currentFrame.onComplete&&Te._currentFrame.onComplete();var Xr=Te._currentFrame=Te._frameQueue.shift();if(Xr){var Ea=Xr.name?Xr.name.toString():null;Ee._fullLayout._currentFrame=Ea,Te._lastFrameAt=Date.now(),Te._timeToNext=Xr.frameOpts.duration,a.transition(Ee,Xr.frame.data,Xr.frame.layout,w.coerceTraceIndices(Ee,Xr.frame.traces),Xr.frameOpts,Xr.transitionOpts).then(function(){Xr.onComplete&&Xr.onComplete()}),Ee.emit("plotly_animatingframe",{name:Ea,frame:Xr.frame,animation:{frame:Xr.frameOpts,transition:Xr.transitionOpts}})}else sa()}function La(){Ee.emit("plotly_animating"),Te._lastFrameAt=-1/0,Te._timeToNext=0,Te._runningTransitions=0,Te._currentFrame=null;var Xr=function(){Te._animationRaf=window.requestAnimationFrame(Xr),Date.now()-Te._lastFrameAt>Te._timeToNext&&Aa()};Xr()}var ka=0;function Ga(Xr){return Array.isArray(Le)?ka>=Le.length?Xr.transitionOpts=Le[ka]:Xr.transitionOpts=Le[0]:Xr.transitionOpts=Le,ka++,Xr}var Ma,Ua,ni=[],Wt=Ve==null,zt=Array.isArray(Ve),Vt=!Wt&&!zt&&A.isPlainObject(Ve);if(Vt)ni.push({type:"object",data:Ga(A.extendFlat({},Ve))});else if(Wt||["string","number"].indexOf(typeof Ve)!==-1)for(Ma=0;Ma<Te._frames.length;Ma++)Ua=Te._frames[Ma],Ua&&(Wt||String(Ua.group)===String(Ve))&&ni.push({type:"byname",name:String(Ua.name),data:Ga({name:Ua.name})});else if(zt)for(Ma=0;Ma<Ve.length;Ma++){var Ut=Ve[Ma];["number","string"].indexOf(typeof Ut)!==-1?(Ut=String(Ut),ni.push({type:"byname",name:Ut,data:Ga({name:Ut})})):A.isPlainObject(Ut)&&ni.push({type:"object",data:Ga(A.extendFlat({},Ut))})}for(Ma=0;Ma<ni.length;Ma++)if(Ua=ni[Ma],Ua.type==="byname"&&!Te._frameHash[Ua.data.name]){A.warn('animate failure: frame not found: "'+Ua.data.name+'"'),Gt();return}["next","immediate"].indexOf(ke.mode)!==-1&&Kt(),ke.direction==="reverse"&&ni.reverse();var xr=Ee._fullLayout._currentFrame;if(xr&&ke.fromcurrent){var Zr=-1;for(Ma=0;Ma<ni.length;Ma++)if(Ua=ni[Ma],Ua.type==="byname"&&Ua.name===xr){Zr=Ma;break}if(Zr>0&&Zr<ni.length-1){var pa=[];for(Ma=0;Ma<ni.length;Ma++)Ua=ni[Ma],(ni[Ma].type!=="byname"||Ma>Zr)&&pa.push(Ua);ni=pa}}ni.length>0?sr(ni):(Ee.emit("plotly_animated"),Bt())})}function _r(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),Ve==null)return Promise.resolve();if(!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var Te,Le,rt,dt,xt=Ee._transitionData._frames,It=Ee._transitionData._frameHash;if(!Array.isArray(Ve))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+Ve);var Bt=xt.length+Ve.length*2,Gt=[],Kt={};for(Te=Ve.length-1;Te>=0;Te--)if(A.isPlainObject(Ve[Te])){var sr=Ve[Te].name,sa=(It[sr]||Kt[sr]||{}).name,Aa=Ve[Te].name,La=It[sa]||Kt[sa];sa&&Aa&&typeof Aa=="number"&&La&&b<d&&(b++,A.warn('addFrames: overwriting frame "'+(It[sa]||Kt[sa]).name+'" with a frame whose name of type "number" also equates to "'+sa+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),b===d&&A.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),Kt[sr]={name:sr},Gt.push({frame:a.supplyFrameDefaults(Ve[Te]),index:ke&&ke[Te]!==void 0&&ke[Te]!==null?ke[Te]:Bt+Te})}Gt.sort(function(Vt,Ut){return Vt.index>Ut.index?-1:Vt.index<Ut.index?1:0});var ka=[],Ga=[],Ma=xt.length;for(Te=Gt.length-1;Te>=0;Te--){if(Le=Gt[Te].frame,typeof Le.name=="number"&&A.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!Le.name)for(;It[Le.name="frame "+Ee._transitionData._counter++];);if(It[Le.name]){for(rt=0;rt<xt.length&&(xt[rt]||{}).name!==Le.name;rt++);ka.push({type:"replace",index:rt,value:Le}),Ga.unshift({type:"replace",index:rt,value:xt[rt]})}else dt=Math.max(0,Math.min(Gt[Te].index,Ma)),ka.push({type:"insert",index:dt,value:Le}),Ga.unshift({type:"delete",index:dt}),Ma++}var Ua=a.modifyFrames,ni=a.modifyFrames,Wt=[Ee,Ga],zt=[Ee,ka];return t&&t.add(Ee,Ua,Wt,ni,zt),a.modifyFrames(Ee,ka)}function yt(Ee,Ve){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee);var ke,Te,Le=Ee._transitionData._frames,rt=[],dt=[];if(!Ve)for(Ve=[],ke=0;ke<Le.length;ke++)Ve.push(ke);for(Ve=Ve.slice(),Ve.sort(),ke=Ve.length-1;ke>=0;ke--)Te=Ve[ke],rt.push({type:"delete",index:Te}),dt.unshift({type:"insert",index:Te,value:Le[Te]});var xt=a.modifyFrames,It=a.modifyFrames,Bt=[Ee,dt],Gt=[Ee,rt];return t&&t.add(Ee,xt,Bt,It,Gt),a.modifyFrames(Ee,rt)}function Fe(Ee){Ee=A.getGraphDiv(Ee);var Ve=Ee._fullLayout||{},ke=Ee._fullData||[];return a.cleanPlot([],{},ke,Ve),a.purge(Ee),e.purge(Ee),Ve._container&&Ve._container.remove(),delete Ee._context,Ee}function Ke(Ee){var Ve=Ee._fullLayout,ke=Ee.getBoundingClientRect();if(!A.equalDomRects(ke,Ve._lastBBox)){var Te=Ve._invTransform=A.inverseTransformMatrix(A.getFullTransformMatrix(Ee));Ve._invScaleX=Math.sqrt(Te[0][0]*Te[0][0]+Te[0][1]*Te[0][1]+Te[0][2]*Te[0][2]),Ve._invScaleY=Math.sqrt(Te[1][0]*Te[1][0]+Te[1][1]*Te[1][1]+Te[1][2]*Te[1][2]),Ve._lastBBox=ke}}function Ne(Ee){var Ve=H.select(Ee),ke=Ee._fullLayout;if(ke._calcInverseTransform=Ke,ke._calcInverseTransform(Ee),ke._container=Ve.selectAll(".plot-container").data([0]),ke._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),ke._paperdiv=ke._container.selectAll(".svg-container").data([0]),ke._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),ke._glcontainer=ke._paperdiv.selectAll(".gl-container").data([{}]),ke._glcontainer.enter().append("div").classed("gl-container",!0),ke._paperdiv.selectAll(".main-svg").remove(),ke._paperdiv.select(".modebar-container").remove(),ke._paper=ke._paperdiv.insert("svg",":first-child").classed("main-svg",!0),ke._toppaper=ke._paperdiv.append("svg").classed("main-svg",!0),ke._modebardiv=ke._paperdiv.append("div"),delete ke._modeBar,ke._hoverpaper=ke._paperdiv.append("svg").classed("main-svg",!0),!ke._uid){var Te={};H.selectAll("defs").each(function(){this.id&&(Te[this.id.split("-")[1]]=1)}),ke._uid=A.randstr(Te)}ke._paperdiv.selectAll(".main-svg").attr(p.svgAttrs),ke._defs=ke._paper.append("defs").attr("id","defs-"+ke._uid),ke._clips=ke._defs.append("g").classed("clips",!0),ke._topdefs=ke._toppaper.append("defs").attr("id","topdefs-"+ke._uid),ke._topclips=ke._topdefs.append("g").classed("clips",!0),ke._bgLayer=ke._paper.append("g").classed("bglayer",!0),ke._draggers=ke._paper.append("g").classed("draglayer",!0);var Le=ke._paper.append("g").classed("layer-below",!0);ke._imageLowerLayer=Le.append("g").classed("imagelayer",!0),ke._shapeLowerLayer=Le.append("g").classed("shapelayer",!0),ke._cartesianlayer=ke._paper.append("g").classed("cartesianlayer",!0),ke._polarlayer=ke._paper.append("g").classed("polarlayer",!0),ke._smithlayer=ke._paper.append("g").classed("smithlayer",!0),ke._ternarylayer=ke._paper.append("g").classed("ternarylayer",!0),ke._geolayer=ke._paper.append("g").classed("geolayer",!0),ke._funnelarealayer=ke._paper.append("g").classed("funnelarealayer",!0),ke._pielayer=ke._paper.append("g").classed("pielayer",!0),ke._iciclelayer=ke._paper.append("g").classed("iciclelayer",!0),ke._treemaplayer=ke._paper.append("g").classed("treemaplayer",!0),ke._sunburstlayer=ke._paper.append("g").classed("sunburstlayer",!0),ke._indicatorlayer=ke._toppaper.append("g").classed("indicatorlayer",!0),ke._glimages=ke._paper.append("g").classed("glimages",!0);var rt=ke._toppaper.append("g").classed("layer-above",!0);ke._imageUpperLayer=rt.append("g").classed("imagelayer",!0),ke._shapeUpperLayer=rt.append("g").classed("shapelayer",!0),ke._selectionLayer=ke._toppaper.append("g").classed("selectionlayer",!0),ke._infolayer=ke._toppaper.append("g").classed("infolayer",!0),ke._menulayer=ke._toppaper.append("g").classed("menulayer",!0),ke._zoomlayer=ke._toppaper.append("g").classed("zoomlayer",!0),ke._hoverlayer=ke._hoverpaper.append("g").classed("hoverlayer",!0),ke._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),Ee.emit("plotly_framework")}X.animate=vr,X.addFrames=_r,X.deleteFrames=yt,X.addTraces=$,X.deleteTraces=J,X.extendTraces=he,X.moveTraces=Z,X.prependTraces=G,X.newPlot=B,X._doPlot=u,X.purge=Fe,X.react=Ot,X.redraw=F,X.relayout=be,X.restyle=re,X.setPlotConfig=f,X.update=lt,X._guiRelayout=Me(be),X._guiRestyle=Me(re),X._guiUpdate=Me(lt),X._storeDirectGUIEdit=ie}}),Xv=Ye({"src/snapshot/helpers.js"(X){"use strict";var H=Hn();X.getDelay=function(A){return A._has&&(A._has("gl3d")||A._has("mapbox")||A._has("map"))?500:0},X.getRedrawFunc=function(A){return function(){H.getComponentMethod("colorbar","draw")(A)}},X.encodeSVG=function(A){return"data:image/svg+xml,"+encodeURIComponent(A)},X.encodeJSON=function(A){return"data:application/json,"+encodeURIComponent(A)};var g=window.URL||window.webkitURL;X.createObjectURL=function(A){return g.createObjectURL(A)},X.revokeObjectURL=function(A){return g.revokeObjectURL(A)},X.createBlob=function(A,M){if(M==="svg")return new window.Blob([A],{type:"image/svg+xml;charset=utf-8"});if(M==="full-json")return new window.Blob([A],{type:"application/json;charset=utf-8"});var e=x(window.atob(A));return new window.Blob([e],{type:"image/"+M})},X.octetStream=function(A){document.location.href="data:application/octet-stream"+A};function x(A){for(var M=A.length,e=new ArrayBuffer(M),t=new Uint8Array(e),r=0;r<M;r++)t[r]=A.charCodeAt(r);return e}X.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/}}),k2=Ye({"src/snapshot/tosvg.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=Fn(),e=vd(),t=/"/g,r="TOBESTRIPPED",o=new RegExp('("'+r+")|("+r+'")',"g");function a(n){var s=g.select("body").append("div").style({display:"none"}).html(""),c=n.replace(/(&[^;]*;)/gi,function(h){return h==="&lt;"?"&#60;":h==="&rt;"?"&#62;":h.indexOf("<")!==-1||h.indexOf(">")!==-1?"":s.html(h).text()});return s.remove(),c}function i(n){return n.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&amp;")}H.exports=function(s,c,h){var v=s._fullLayout,p=v._paper,T=v._toppaper,l=v.width,_=v.height,w;p.insert("rect",":first-child").call(A.setRect,0,0,l,_).call(M.fill,v.paper_bgcolor);var S=v._basePlotModules||[];for(w=0;w<S.length;w++){var E=S[w];E.toSVG&&E.toSVG(s)}if(T){var m=T.node().childNodes,b=Array.prototype.slice.call(m);for(w=0;w<b.length;w++){var d=b[w];d.childNodes.length&&p.node().appendChild(d)}}v._draggers&&v._draggers.remove(),p.node().style.background="",p.selectAll("text").attr({"data-unformatted":null,"data-math":null}).each(function(){var y=g.select(this);if(this.style.visibility==="hidden"||this.style.display==="none"){y.remove();return}else y.style({visibility:null,display:null});var f=this.style.fontFamily;f&&f.indexOf('"')!==-1&&y.style("font-family",f.replace(t,r));var P=this.style.fontWeight;P&&(P==="normal"||P==="400")&&y.style("font-weight",void 0);var L=this.style.fontStyle;L&&L==="normal"&&y.style("font-style",void 0);var z=this.style.fontVariant;z&&z==="normal"&&y.style("font-variant",void 0)}),p.selectAll(".gradient_filled,.pattern_filled").each(function(){var y=g.select(this),f=this.style.fill;f&&f.indexOf("url(")!==-1&&y.style("fill",f.replace(t,r));var P=this.style.stroke;P&&P.indexOf("url(")!==-1&&y.style("stroke",P.replace(t,r))}),(c==="pdf"||c==="eps")&&p.selectAll("#MathJax_SVG_glyphs path").attr("stroke-width",0),c==="svg"&&h&&(p.attr("width",h*l),p.attr("height",h*_),p.attr("viewBox","0 0 "+l+" "+_));var u=new window.XMLSerializer().serializeToString(p.node());return u=a(u),u=i(u),u=u.replace(o,"'"),u}}}),C2=Ye({"src/snapshot/svgtoimg.js"(X,H){"use strict";var g=ta(),x=Wg().EventEmitter,A=Xv();function M(e){var t=e.emitter||new x,r=new Promise(function(o,a){var i=window.Image,n=e.svg,s=e.format||"png",c=e.canvas,h=e.scale||1,v=e.width||300,p=e.height||150,T=h*v,l=h*p,_=c.getContext("2d",{willReadFrequently:!0}),w=new i,S,E;s==="svg"||g.isSafari()?E=A.encodeSVG(n):(S=A.createBlob(n,"svg"),E=A.createObjectURL(S)),c.width=T,c.height=l,w.onload=function(){var m;switch(S=null,A.revokeObjectURL(E),s!=="svg"&&_.drawImage(w,0,0,T,l),s){case"jpeg":m=c.toDataURL("image/jpeg");break;case"png":m=c.toDataURL("image/png");break;case"webp":m=c.toDataURL("image/webp");break;case"svg":m=E;break;default:var b="Image format is not jpeg, png, svg or webp.";if(a(new Error(b)),!e.promise)return t.emit("error",b)}o(m),e.promise||t.emit("success",m)},w.onerror=function(m){if(S=null,A.revokeObjectURL(E),a(m),!e.promise)return t.emit("error",m)},w.src=E});return e.promise?r:t}H.exports=M}}),PS=Ye({"src/plot_api/to_image.js"(X,H){"use strict";var g=jo(),x=E2(),A=Gu(),M=ta(),e=Xv(),t=k2(),r=C2(),o=xh().version,a={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function i(n,s){s=s||{};var c,h,v,p;M.isPlainObject(n)?(c=n.data||[],h=n.layout||{},v=n.config||{},p={}):(n=M.getGraphDiv(n),c=M.extendDeep([],n.data),h=M.extendDeep({},n.layout),v=n._context,p=n._fullLayout||{});function T(B){return!(B in s)||M.validate(s[B],a[B])}if(!T("width")&&s.width!==null||!T("height")&&s.height!==null)throw new Error("Height and width should be pixel values.");if(!T("format"))throw new Error("Export format is not "+M.join2(a.format.values,", "," or ")+".");var l={};function _(B,O){return M.coerce(s,l,a,B,O)}var w=_("format"),S=_("width"),E=_("height"),m=_("scale"),b=_("setBackground"),d=_("imageDataOnly"),u=document.createElement("div");u.style.position="absolute",u.style.left="-5000px",document.body.appendChild(u);var y=M.extendFlat({},h);S?y.width=S:s.width===null&&g(p.width)&&(y.width=p.width),E?y.height=E:s.height===null&&g(p.height)&&(y.height=p.height);var f=M.extendFlat({},v,{_exportedPlot:!0,staticPlot:!0,setBackground:b}),P=e.getRedrawFunc(u);function L(){return new Promise(function(B){setTimeout(B,e.getDelay(u._fullLayout))})}function z(){return new Promise(function(B,O){var I=t(u,w,m),N=u._fullLayout.width,U=u._fullLayout.height;function W(){x.purge(u),document.body.removeChild(u)}if(w==="full-json"){var Q=A.graphJson(u,!1,"keepdata","object",!0,!0);return Q.version=o,Q=JSON.stringify(Q),W(),B(d?Q:e.encodeJSON(Q))}if(W(),w==="svg")return B(d?I:e.encodeSVG(I));var ue=document.createElement("canvas");ue.id=M.randstr(),r({format:w,width:N,height:U,scale:m,canvas:ue,svg:I,promise:!0}).then(B).catch(O)})}function F(B){return d?B.replace(e.IMAGE_URL_PREFIX,""):B}return new Promise(function(B,O){x.newPlot(u,c,y,f).then(P).then(L).then(z).then(function(I){B(F(I))}).catch(function(I){O(I)})})}H.exports=i}}),FO=Ye({"src/plot_api/validate.js"(X,H){"use strict";var g=ta(),x=Gu(),A=Qy(),M=Gg().dfltConfig,e=g.isPlainObject,t=Array.isArray,r=g.isArrayOrTypedArray;H.exports=function(_,w){_===void 0&&(_=[]),w===void 0&&(w={});var S=A.get(),E=[],m={_context:g.extendFlat({},M)},b,d;t(_)?(m.data=g.extendDeep([],_),b=_):(m.data=[],b=[],E.push(s("array","data"))),e(w)?(m.layout=g.extendDeep({},w),d=w):(m.layout={},d={},arguments.length>1&&E.push(s("object","layout"))),x.supplyDefaults(m);for(var u=m._fullData,y=b.length,f=0;f<y;f++){var P=b[f],L=["data",f];if(!e(P)){E.push(s("object",L));continue}var z=u[f],F=z.type,B=S.traces[F].attributes;B.type={valType:"enumerated",values:[F]},z.visible===!1&&P.visible!==!1&&E.push(s("invisible",L)),o(P,z,B,E,L)}var O=m._fullLayout,I=a(S,u);return o(d,O,I,E,"layout"),E.length===0?void 0:E};function o(l,_,w,S,E,m){m=m||[];for(var b=Object.keys(l),d=0;d<b.length;d++){var u=b[d],y=m.slice();y.push(u);var f=l[u],P=_[u],L=h(w,u),z=(L||{}).valType,F=z==="info_array",B=z==="colorscale",O=(L||{}).items;if(!c(w,u))S.push(s("schema",E,y));else if(e(f)&&e(P)&&z!=="any")o(f,P,L,S,E,y);else if(F&&t(f)){f.length>P.length&&S.push(s("unused",E,y.concat(P.length)));var I=P.length,N=Array.isArray(O);N&&(I=Math.min(I,O.length));var U,W,Q,ue,se;if(L.dimensions===2)for(W=0;W<I;W++)if(t(f[W])){f[W].length>P[W].length&&S.push(s("unused",E,y.concat(W,P[W].length)));var he=P[W].length;for(U=0;U<(N?Math.min(he,O[W].length):he);U++)Q=N?O[W][U]:O,ue=f[W][U],se=P[W][U],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W,U),ue,se)):S.push(s("value",E,y.concat(W,U),ue))}else S.push(s("array",E,y.concat(W),f[W]));else for(W=0;W<I;W++)Q=N?O[W]:O,ue=f[W],se=P[W],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W),ue,se)):S.push(s("value",E,y.concat(W),ue))}else if(L.items&&!F&&t(f)){var G=O[Object.keys(O)[0]],$=[],J,Z;for(J=0;J<P.length;J++){var re=P[J]._index||J;if(Z=y.slice(),Z.push(re),e(f[re])&&e(P[J])){$.push(re);var ne=f[re],j=P[J];e(ne)&&ne.visible!==!1&&j.visible===!1?S.push(s("invisible",E,Z)):o(ne,j,G,S,E,Z)}}for(J=0;J<f.length;J++)Z=y.slice(),Z.push(J),e(f[J])?$.indexOf(J)===-1&&S.push(s("unused",E,Z)):S.push(s("object",E,Z,f[J]))}else!e(f)&&e(P)?S.push(s("object",E,y,f)):!r(f)&&r(P)&&!F&&!B?S.push(s("array",E,y,f)):u in _?g.validate(f,L)?L.valType==="enumerated"&&(L.coerceNumber&&f!==+P||f!==P)&&S.push(s("dynamic",E,y,f,P)):S.push(s("value",E,y,f)):S.push(s("unused",E,y,f))}return S}function a(l,_){for(var w=l.layout.layoutAttributes,S=0;S<_.length;S++){var E=_[S],m=l.traces[E.type],b=m.layoutAttributes;b&&(E.subplot?g.extendFlat(w[m.attributes.subplot.dflt],b):g.extendFlat(w,b))}return w}var i={object:function(l,_){var w;return l==="layout"&&_===""?w="The layout argument":l[0]==="data"&&_===""?w="Trace "+l[1]+" in the data argument":w=n(l)+"key "+_,w+" must be linked to an object container"},array:function(l,_){var w;return l==="data"?w="The data argument":w=n(l)+"key "+_,w+" must be linked to an array container"},schema:function(l,_){return n(l)+"key "+_+" is not part of the schema"},unused:function(l,_,w){var S=e(w)?"container":"key";return n(l)+S+" "+_+" did not get coerced"},dynamic:function(l,_,w,S){return[n(l)+"key",_,"(set to '"+w+"')","got reset to","'"+S+"'","during defaults."].join(" ")},invisible:function(l,_){return(_?n(l)+"item "+_:"Trace "+l[1])+" got defaulted to be not visible"},value:function(l,_,w){return[n(l)+"key "+_,"is set to an invalid value ("+w+")"].join(" ")}};function n(l){return t(l)?"In data trace "+l[1]+", ":"In "+l+", "}function s(l,_,w,S,E){w=w||"";var m,b;t(_)?(m=_[0],b=_[1]):(m=_,b=null);var d=T(w),u=i[l](_,d,S,E);return g.log(u),{code:l,container:m,trace:b,path:w,astr:d,msg:u}}function c(l,_){var w=p(_),S=w.keyMinusId,E=w.id;return S in l&&l[S]._isSubplotObj&&E?!0:_ in l}function h(l,_){if(_ in l)return l[_];var w=p(_);return l[w.keyMinusId]}var v=g.counterRegex("([a-z]+)");function p(l){var _=l.match(v);return{keyMinusId:_&&_[1],id:_&&_[2]}}function T(l){if(!t(l))return String(l);for(var _="",w=0;w<l.length;w++){var S=l[w];typeof S=="number"?_=_.substr(0,_.length-1)+"["+S+"]":_+=S,w<l.length-1&&(_+=".")}return _}}}),OO=Ye({"src/snapshot/filesaver.js"(X,H){"use strict";var g=ta(),x=Xv();function A(M,e,t){var r=document.createElement("a"),o="download"in r,a=new Promise(function(i,n){var s,c;if(o)return s=x.createBlob(M,t),c=x.createObjectURL(s),r.href=c,r.download=e,document.body.appendChild(r),r.click(),document.body.removeChild(r),x.revokeObjectURL(c),s=null,i(e);if(g.isSafari()){var h=t==="svg"?",":";base64,";return x.octetStream(h+encodeURIComponent(M)),i(e)}n(new Error("download error"))});return a}H.exports=A}}),IS=Ye({"src/snapshot/download.js"(X,H){"use strict";var g=ta(),x=PS(),A=OO(),M=Xv();function e(t,r){var o;return g.isPlainObject(t)||(o=g.getGraphDiv(t)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,i){o&&o._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),o&&(o._snapshotInProgress=!0);var n=x(t,r),s=r.filename||t.fn||"newplot";s+="."+r.format.replace("-","."),n.then(function(c){return o&&(o._snapshotInProgress=!1),A(c,s,r.format)}).then(function(c){a(c)}).catch(function(c){o&&(o._snapshotInProgress=!1),i(c)})})}H.exports=e}}),BO=Ye({"src/plot_api/template_api.js"(X){"use strict";var H=ta(),g=H.isPlainObject,x=Qy(),A=Gu(),M=Pl(),e=cl(),t=Gg().dfltConfig;X.makeTemplate=function(v){v=H.isPlainObject(v)?v:H.getGraphDiv(v),v=H.extendDeep({_context:t},{data:v.data,layout:v.layout}),A.supplyDefaults(v);var p=v.data||[],T=v.layout||{};T._basePlotModules=v._fullLayout._basePlotModules,T._modules=v._fullLayout._modules;var l={data:{},layout:{}};p.forEach(function(f){var P={};a(f,P,n.bind(null,f));var L=H.coerce(f,{},M,"type"),z=l.data[L];z||(z=l.data[L]=[]),z.push(P)}),a(T,l.layout,i.bind(null,T)),delete l.layout.template;var _=T.template;if(g(_)){var w=_.layout,S,E,m,b,d,u;g(w)&&r(w,l.layout);var y=_.data;if(g(y)){for(E in l.data)if(m=y[E],Array.isArray(m)){for(d=l.data[E],u=d.length,b=m.length,S=0;S<u;S++)r(m[S%b],d[S]);for(S=u;S<b;S++)d.push(H.extendDeep({},m[S]))}for(E in y)E in l.data||(l.data[E]=H.extendDeep([],y[E]))}}return l};function r(v,p){v=H.extendDeep({},v);var T=Object.keys(v).sort(),l,_;function w(d,u,y){if(g(u)&&g(d))r(d,u);else if(Array.isArray(u)&&Array.isArray(d)){var f=e.arrayTemplater({_template:v},y);for(_=0;_<u.length;_++){var P=u[_],L=f.newItem(P)._template;L&&r(L,P)}var z=f.defaultItems();for(_=0;_<z.length;_++)u.push(z[_]._template);for(_=0;_<u.length;_++)delete u[_].templateitemname}}for(l=0;l<T.length;l++){var S=T[l],E=v[S];if(S in p?w(E,p[S],S):p[S]=E,o(S)===S)for(var m in p){var b=o(m);m!==b&&b===S&&!(m in v)&&w(E,p[m],S)}}}function o(v){return v.replace(/[0-9]+$/,"")}function a(v,p,T,l,_){var w=_&&T(_);for(var S in v){var E=v[S],m=s(v,S,l),b=s(v,S,_),d=T(b);if(!d){var u=o(S);u!==S&&(b=s(v,u,_),d=T(b))}if(!(w&&w===d)&&!(!d||d._noTemplating||d.valType==="data_array"||d.arrayOk&&Array.isArray(E)))if(!d.valType&&g(E))a(E,p,T,m,b);else if(d._isLinkedToArray&&Array.isArray(E))for(var y=!1,f=0,P={},L=0;L<E.length;L++){var z=E[L];if(g(z)){var F=z.name;if(F)P[F]||(a(z,p,T,s(E,f,m),s(E,f,b)),f++,P[F]=1);else if(!y){var B=e.arrayDefaultKey(S),O=s(v,B,l),I=s(E,f,m);a(z,p,T,I,s(E,f,b));var N=H.nestedProperty(p,I),U=H.nestedProperty(p,O);U.set(N.get()),N.set(null),y=!0}}}else{var W=H.nestedProperty(p,m);W.set(E)}}}function i(v,p){return x.getLayoutValObject(v,H.nestedProperty({},p).parts)}function n(v,p){return x.getTraceValObject(v,H.nestedProperty({},p).parts)}function s(v,p,T){var l;return T?Array.isArray(v)?l=T+"["+p+"]":l=T+"."+p:l=p,l}X.validateTemplate=function(v,p){var T=H.extendDeep({},{_context:t,data:v.data,layout:v.layout}),l=T.layout||{};g(p)||(p=l.template||{});var _=p.layout,w=p.data,S=[];T.layout=l,T.layout.template=p,A.supplyDefaults(T);var E=T._fullLayout,m=T._fullData,b={};function d(O,I){for(var N in O)if(N.charAt(0)!=="_"&&g(O[N])){var U=o(N),W=[],Q;for(Q=0;Q<I.length;Q++)W.push(s(O,N,I[Q])),U!==N&&W.push(s(O,U,I[Q]));for(Q=0;Q<W.length;Q++)b[W[Q]]=1;d(O[N],W)}}function u(O,I){for(var N in O)if(N.indexOf("defaults")===-1&&g(O[N])){var U=s(O,N,I);b[U]?u(O[N],U):S.push({code:"unused",path:U})}}if(g(_)?(d(E,["layout"]),u(_,"layout")):S.push({code:"layout"}),!g(w))S.push({code:"data"});else{for(var y={},f,P=0;P<m.length;P++){var L=m[P];f=L.type,y[f]=(y[f]||0)+1,L._fullInput._template||S.push({code:"missing",index:L.index,traceType:f})}for(f in w){var z=w[f].length,F=y[f]||0;z>F?S.push({code:"unused",traceType:f,templateCount:z,dataCount:F}):F>z&&S.push({code:"reused",traceType:f,templateCount:z,dataCount:F})}}function B(O,I){for(var N in O)if(N.charAt(0)!=="_"){var U=O[N],W=s(O,N,I);g(U)?(Array.isArray(O)&&U._template===!1&&U.templateitemname&&S.push({code:"missing",path:W,templateitemname:U.templateitemname}),B(U,W)):Array.isArray(U)&&c(U)&&B(U,W)}}if(B({data:m,layout:E},""),S.length)return S.map(h)};function c(v){for(var p=0;p<v.length;p++)if(g(v[p]))return!0}function h(v){var p;switch(v.code){case"data":p="The template has no key data.";break;case"layout":p="The template has no key layout.";break;case"missing":v.path?p="There are no templates for item "+v.path+" with name "+v.templateitemname:p="There are no templates for trace "+v.index+", of type "+v.traceType+".";break;case"unused":v.path?p="The template item at "+v.path+" was not used in constructing the plot.":v.dataCount?p="Some of the templates of type "+v.traceType+" were not used. The template has "+v.templateCount+" traces, the data only has "+v.dataCount+" of this type.":p="The template has "+v.templateCount+" traces of type "+v.traceType+" but there are none in the data.";break;case"reused":p="Some of the templates of type "+v.traceType+" were used more than once. The template has "+v.templateCount+" traces, the data has "+v.dataCount+" of this type.";break}return v.msg=p,v}}}),NO=Ye({"src/plot_api/index.js"(X){"use strict";var H=E2();X._doPlot=H._doPlot,X.newPlot=H.newPlot,X.restyle=H.restyle,X.relayout=H.relayout,X.redraw=H.redraw,X.update=H.update,X._guiRestyle=H._guiRestyle,X._guiRelayout=H._guiRelayout,X._guiUpdate=H._guiUpdate,X._storeDirectGUIEdit=H._storeDirectGUIEdit,X.react=H.react,X.extendTraces=H.extendTraces,X.prependTraces=H.prependTraces,X.addTraces=H.addTraces,X.deleteTraces=H.deleteTraces,X.moveTraces=H.moveTraces,X.purge=H.purge,X.addFrames=H.addFrames,X.deleteFrames=H.deleteFrames,X.animate=H.animate,X.setPlotConfig=H.setPlotConfig;var g=b_().getGraphDiv,x=M2().eraseActiveShape;X.deleteActiveShape=function(M){return x(g(M))},X.toImage=PS(),X.validate=FO(),X.downloadImage=IS();var A=BO();X.makeTemplate=A.makeTemplate,X.validateTemplate=A.validateTemplate}}),i1=Ye({"src/traces/scatter/xy_defaults.js"(X,H){"use strict";var g=ta(),x=Hn();H.exports=function(M,e,t,r){var o=r("x"),a=r("y"),i,n=x.getComponentMethod("calendars","handleTraceDefaults");if(n(M,e,["x","y"],t),o){var s=g.minRowLength(o);a?i=Math.min(s,g.minRowLength(a)):(i=s,r("y0"),r("dy"))}else{if(!a)return 0;i=g.minRowLength(a),r("x0"),r("dx")}return e._length=i,i}}}),Qd=Ye({"src/traces/scatter/period_defaults.js"(X,H){"use strict";var g=ta().dateTick0,x=ks(),A=x.ONEWEEK;function M(e,t){return e%A===0?g(t,1):g(t,0)}H.exports=function(t,r,o,a,i){if(i||(i={x:!0,y:!0}),i.x){var n=a("xperiod");n&&(a("xperiod0",M(n,r.xcalendar)),a("xperiodalignment"))}if(i.y){var s=a("yperiod");s&&(a("yperiod0",M(s,r.ycalendar)),a("yperiodalignment"))}}}}),UO=Ye({"src/traces/scatter/stack_defaults.js"(X,H){"use strict";var g=["orientation","groupnorm","stackgaps"];H.exports=function(A,M,e,t){var r=e._scatterStackOpts,o=t("stackgroup");if(o){var a=M.xaxis+M.yaxis,i=r[a];i||(i=r[a]={});var n=i[o],s=!1;n?n.traces.push(M):(n=i[o]={traceIndices:[],traces:[M]},s=!0);for(var c={orientation:M.x&&!M.y?"h":"v"},h=0;h<g.length;h++){var v=g[h],p=v+"Found";if(!n[p]){var T=A[v]!==void 0,l=v==="orientation";if((T||s)&&(n[v]=t(v,c[v]),l&&(n.fillDflt=n[v]==="h"?"tonextx":"tonexty"),T&&(n[p]=!0,!s&&(delete n.traces[0][v],l))))for(var _=0;_<n.traces.length-1;_++){var w=n.traces[_];w._input.fill!==w.fill&&(w.fill=n.fillDflt)}}}return n}}}}),md=Ye({"src/traces/scatter/marker_defaults.js"(X,H){"use strict";var g=Fn(),x=Up().hasColorscale,A=sh(),M=uu();H.exports=function(t,r,o,a,i,n){var s=M.isBubble(t),c=(t.line||{}).color,h;if(n=n||{},c&&(o=c),i("marker.symbol"),i("marker.opacity",s?.7:1),i("marker.size"),n.noAngle||(i("marker.angle"),n.noAngleRef||i("marker.angleref"),n.noStandOff||i("marker.standoff")),i("marker.color",o),x(t,"marker")&&A(t,r,a,i,{prefix:"marker.",cLetter:"c"}),n.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),n.noLine||(c&&!Array.isArray(c)&&r.marker.color!==c?h=c:s?h=g.background:h=g.defaultLine,i("marker.line.color",h),x(t,"marker.line")&&A(t,r,a,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",s?1:0)),s&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),n.gradient){var v=i("marker.gradient.type");v!=="none"&&i("marker.gradient.color")}}}}),Dd=Ye({"src/traces/scatter/line_defaults.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Up().hasColorscale,A=sh();H.exports=function(e,t,r,o,a,i){i||(i={});var n=(e.marker||{}).color;if(n&&n._inputArray&&(n=n._inputArray),a("line.color",r),x(e,"line"))A(e,t,o,a,{prefix:"line.",cLetter:"c"});else{var s=(g(n)?!1:n)||r;a("line.color",s)}a("line.width"),i.noDash||a("line.dash"),i.backoff&&a("line.backoff")}}}),n1=Ye({"src/traces/scatter/line_shape_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e=M("line.shape");e==="spline"&&M("line.smoothing")}}}),zd=Ye({"src/traces/scatter/text_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(x,A,M,e,t){t=t||{},e("textposition"),g.coerceFont(e,"textfont",t.font||M.font,t),t.noSelect||(e("selected.textfont.color"),e("unselected.textfont.color"))}}}),ev=Ye({"src/traces/scatter/fillcolor_defaults.js"(X,H){"use strict";var g=Fn(),x=ta().isArrayOrTypedArray;function A(M){for(var e=g.interpolate(M[0][1],M[1][1],.5),t=2;t<M.length;t++){var r=g.interpolate(M[t-1][1],M[t][1],.5);e=g.interpolate(e,r,M[t-1][0]/M[t][0])}return e}H.exports=function(e,t,r,o,a){a||(a={});var i=!1;if(t.marker){var n=t.marker.color,s=(t.marker.line||{}).color;n&&!x(n)?i=n:s&&!x(s)&&(i=s)}var c;if(a.moduleHasFillgradient){var h=o("fillgradient.type");if(h!=="none"){o("fillgradient.start"),o("fillgradient.stop");var v=o("fillgradient.colorscale");v&&(c=A(v))}}o("fillcolor",g.addOpacity((t.line||{}).color||i||c||r,.5))}}}),jO=Ye({"src/traces/scatter/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=Pc(),M=Tv(),e=uu(),t=i1(),r=Qd(),o=UO(),a=md(),i=Dd(),n=n1(),s=zd(),c=ev(),h=ta().coercePattern;H.exports=function(p,T,l,_){function w(f,P){return g.coerce(p,T,A,f,P)}var S=t(p,T,_,w);if(S||(T.visible=!1),!!T.visible){r(p,T,_,w),w("xhoverformat"),w("yhoverformat"),w("zorder");var E=o(p,T,_,w);_.scattermode==="group"&&T.orientation===void 0&&w("orientation","v");var m=!E&&S<M.PTS_LINESONLY?"lines+markers":"lines";w("text"),w("hovertext"),w("mode",m),e.hasMarkers(T)&&a(p,T,l,_,w,{gradient:!0}),e.hasLines(T)&&(i(p,T,l,_,w,{backoff:!0}),n(p,T,w),w("connectgaps"),w("line.simplify")),e.hasText(T)&&(w("texttemplate"),s(p,T,_,w));var b=[];(e.hasMarkers(T)||e.hasText(T))&&(w("cliponaxis"),w("marker.maxdisplayed"),b.push("points")),w("fill",E?E.fillDflt:"none"),T.fill!=="none"&&(c(p,T,l,w,{moduleHasFillgradient:!0}),e.hasLines(T)||n(p,T,w),h(w,"fillpattern",T.fillcolor,!1));var d=(T.line||{}).color,u=(T.marker||{}).color;(T.fill==="tonext"||T.fill==="toself")&&b.push("fills"),w("hoveron",b.join("+")||"points"),T.hoveron!=="fills"&&w("hovertemplate");var y=x.getComponentMethod("errorbars","supplyDefaults");y(p,T,d||u||l,{axis:"y"}),y(p,T,d||u||l,{axis:"x",inherit:"y"}),g.coerceSelectionMarkerOpacity(T,w)}}}}),Jg=Ye({"src/traces/scatter/grouping_defaults.js"(X,H){"use strict";var g=Yg().getAxisGroup;H.exports=function(A,M,e,t,r){var o=M.orientation,a=M[{v:"x",h:"y"}[o]+"axis"],i=g(e,a)+o,n=e._alignmentOpts||{},s=t("alignmentgroup"),c=n[i];c||(c=n[i]={});var h=c[s];h?h.traces.push(M):h=c[s]={traces:[M],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var v=t("offsetgroup")||"",p=h.offsetGroups,T=p[v];M._offsetIndex=0,(r!=="group"||v)&&(T||(T=p[v]={offsetIndex:Object.keys(p).length}),M._offsetIndex=T.offsetIndex)}}}),RS=Ye({"src/traces/scatter/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=Pc();H.exports=function(e,t){var r,o,a,i=t.scattermode;function n(p){return g.coerce(o._input,o,A,p)}if(t.scattermode==="group")for(a=0;a<e.length;a++)o=e[a],o.type==="scatter"&&(r=o._input,x(r,o,t,n,i));for(a=0;a<e.length;a++){var s=e[a];if(s.type==="scatter"){var c=s.fill;if(!(c==="none"||c==="toself")&&(s.opacity=void 0,c==="tonexty"||c==="tonextx"))for(var h=a-1;h>=0;h--){var v=e[h];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}}}),VO=Ye({"src/traces/scatter/layout_defaults.js"(X,H){"use strict";var g=ta(),x=g2();H.exports=function(A,M){function e(r,o){return g.coerce(A,M,x,r,o)}var t=M.barmode==="group";M.scattermode==="group"&&e("scattergap",t?M.bargap:.2)}}}),tv=Ye({"src/plots/cartesian/align_period.js"(X,H){"use strict";var g=jo(),x=ta(),A=x.dateTime2ms,M=x.incrementMonth,e=ks(),t=e.ONEAVGMONTH;H.exports=function(o,a,i,n){if(a.type!=="date")return{vals:n};var s=o[i+"periodalignment"];if(!s)return{vals:n};var c=o[i+"period"],h;if(g(c)){if(c=+c,c<=0)return{vals:n}}else if(typeof c=="string"&&c.charAt(0)==="M"){var v=+c.substring(1);if(v>0&&Math.round(v)===v)h=v;else return{vals:n}}for(var p=a.calendar,T=s==="start",l=s==="end",_=o[i+"period0"],w=A(_,p)||0,S=[],E=[],m=[],b=n.length,d=0;d<b;d++){var u=n[d],y,f,P;if(h){for(y=Math.round((u-w)/(h*t)),P=M(w,h*y,p);P>u;)P=M(P,-h,p);for(;P<=u;)P=M(P,h,p);f=M(P,-h,p)}else{for(y=Math.round((u-w)/c),P=w+y*c;P>u;)P-=c;for(;P<=u;)P+=c;f=P-c}S[d]=T?f:l?P:(f+P)/2,E[d]=f,m[d]=P}return{vals:S,starts:E,ends:m}}}}),Fd=Ye({"src/traces/scatter/colorscale_calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=uu();H.exports=function(e,t){A.hasLines(t)&&g(t,"line")&&x(e,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),A.hasMarkers(t)&&(g(t,"marker")&&x(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g(t,"marker.line")&&x(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}}}),Av=Ye({"src/traces/scatter/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.texttemplate,A,"txt"),g.mergeArray(M.hovertext,A,"htx"),g.mergeArray(M.customdata,A,"data"),g.mergeArray(M.textposition,A,"tp"),M.textfont&&(g.mergeArrayCastPositive(M.textfont.size,A,"ts"),g.mergeArray(M.textfont.color,A,"tc"),g.mergeArray(M.textfont.family,A,"tf"),g.mergeArray(M.textfont.weight,A,"tw"),g.mergeArray(M.textfont.style,A,"ty"),g.mergeArray(M.textfont.variant,A,"tv"),g.mergeArray(M.textfont.textcase,A,"tC"),g.mergeArray(M.textfont.lineposition,A,"tE"),g.mergeArray(M.textfont.shadow,A,"tS"));var t=M.marker;if(t){g.mergeArrayCastPositive(t.size,A,"ms"),g.mergeArrayCastPositive(t.opacity,A,"mo"),g.mergeArray(t.symbol,A,"mx"),g.mergeArray(t.angle,A,"ma"),g.mergeArray(t.standoff,A,"mf"),g.mergeArray(t.color,A,"mc");var r=t.line;t.line&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"));var o=t.gradient;o&&o.type!=="none"&&(g.mergeArray(o.type,A,"mgt"),g.mergeArray(o.color,A,"mgc"))}}}}),Od=Ye({"src/traces/scatter/calc_selection.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){g.isArrayOrTypedArray(M.selectedpoints)&&g.tagSelected(A,M)}}}),Bd=Ye({"src/traces/scatter/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Co(),M=tv(),e=ks().BADNUM,t=uu(),r=Fd(),o=Av(),a=Od();function i(p,T){var l=p._fullLayout,_=T._xA=A.getFromId(p,T.xaxis||"x","x"),w=T._yA=A.getFromId(p,T.yaxis||"y","y"),S=_.makeCalcdata(T,"x"),E=w.makeCalcdata(T,"y"),m=M(T,_,"x",S),b=M(T,w,"y",E),d=m.vals,u=b.vals,y=T._length,f=new Array(y),P=T.ids,L=v(T,l,_,w),z=!1,F,B,O,I,N,U;c(l,T);var W="x",Q="y",ue;if(L)x.pushUnique(L.traceIndices,T.index),F=L.orientation==="v",F?(Q="s",ue="x"):(W="s",ue="y"),N=L.stackgaps==="interpolate";else{var se=s(T,y);n(p,T,_,w,d,u,se)}var he=!!T.xperiodalignment,G=!!T.yperiodalignment;for(B=0;B<y;B++){var $=f[B]={},J=g(d[B]),Z=g(u[B]);J&&Z?($[W]=d[B],$[Q]=u[B],he&&($.orig_x=S[B],$.xEnd=m.ends[B],$.xStart=m.starts[B]),G&&($.orig_y=E[B],$.yEnd=b.ends[B],$.yStart=b.starts[B])):L&&(F?J:Z)?($[ue]=F?d[B]:u[B],$.gap=!0,N?($.s=e,z=!0):$.s=0):$[W]=$[Q]=e,P&&($.id=String(P[B]))}if(o(f,T),r(p,T),a(f,T),L){for(B=0;B<f.length;)f[B][ue]===e?f.splice(B,1):B++;if(x.sort(f,function(ee,ie){return ee[ue]-ie[ue]||ee.i-ie.i}),z){for(B=0;B<f.length-1&&f[B].gap;)B++;for(U=f[B].s,U||(U=f[B].s=0),O=0;O<B;O++)f[O].s=U;for(I=f.length-1;I>B&&f[I].gap;)I--;for(U=f[I].s,O=f.length-1;O>I;O--)f[O].s=U;for(;B<I;)if(B++,f[B].gap){for(O=B+1;f[O].gap;)O++;for(var re=f[B-1][ue],ne=f[B-1].s,j=(f[O].s-ne)/(f[O][ue]-re);B<O;)f[B].s=ne+(f[B][ue]-re)*j,B++}}}return f}function n(p,T,l,_,w,S,E){var m=T._length,b=p._fullLayout,d=l._id,u=_._id,y=b._firstScatter[h(T)]===T.uid,f=(v(T,b,l,_)||{}).orientation,P=T.fill;l._minDtick=0,_._minDtick=0;var L={padded:!0},z={padded:!0};E&&(L.ppad=z.ppad=E);var F=m<2||w[0]!==w[m-1]||S[0]!==S[m-1];F&&(P==="tozerox"||P==="tonextx"&&(y||f==="h"))?L.tozero=!0:!(T.error_y||{}).visible&&(P==="tonexty"||P==="tozeroy"||!t.hasMarkers(T)&&!t.hasText(T))&&(L.padded=!1,L.ppad=0),F&&(P==="tozeroy"||P==="tonexty"&&(y||f==="v"))?z.tozero=!0:(P==="tonextx"||P==="tozerox")&&(z.padded=!1),d&&(T._extremes[d]=A.findExtremes(l,w,L)),u&&(T._extremes[u]=A.findExtremes(_,S,z))}function s(p,T){if(t.hasMarkers(p)){var l=p.marker,_=1.6*(p.marker.sizeref||1),w;if(p.marker.sizemode==="area"?w=function(d){return Math.max(Math.sqrt((d||0)/_),3)}:w=function(d){return Math.max((d||0)/_,3)},x.isArrayOrTypedArray(l.size)){var S={type:"linear"};A.setConvert(S);for(var E=S.makeCalcdata(p.marker,"size"),m=new Array(T),b=0;b<T;b++)m[b]=w(E[b]);return m}else return w(l.size)}}function c(p,T){var l=h(T),_=p._firstScatter;_[l]||(_[l]=T.uid)}function h(p){var T=p.stackgroup;return p.xaxis+p.yaxis+p.type+(T?"-"+T:"")}function v(p,T,l,_){var w=p.stackgroup;if(w){var S=T._scatterStackOpts[l._id+_._id][w],E=S.orientation==="v"?_:l;if(E.type==="linear"||E.type==="log")return S}}H.exports={calc:i,calcMarkerSize:s,calcAxisExpansion:n,setFirstScatter:c,getStackOpts:v}}}),qO=Ye({"src/traces/bar/sieve.js"(X,H){"use strict";H.exports=x;var g=ta().distinctVals;function x(A,M){this.traces=A,this.sepNegVal=M.sepNegVal,this.overlapNoMerge=M.overlapNoMerge;for(var e=1/0,t=M.posAxis._id.charAt(0),r=[],o=0;o<A.length;o++){for(var a=A[o],i=0;i<a.length;i++){var n=a[i],s=n.p;s===void 0&&(s=n[t]),s!==void 0&&r.push(s)}a[0]&&a[0].width1&&(e=Math.min(a[0].width1,e))}this.positions=r;var c=g(r);this.distinctPositions=c.vals,c.vals.length===1&&e!==1/0?this.minDiff=e:this.minDiff=Math.min(c.minDiff,e);var h=(M.posAxis||{}).type;(h==="category"||h==="multicategory")&&(this.minDiff=1),this.binWidth=this.minDiff,this.bins={}}x.prototype.put=function(M,e,t){var r=this.getLabel(M,e,t),o=this.bins[r]||0;return this.bins[r]=o+t,o},x.prototype.get=function(M,e,t){var r=this.getLabel(M,e,t);return this.bins[r]||0},x.prototype.getLabel=function(M,e,t){var r=t<0&&this.sepNegVal?"v":"^",o=this.overlapNoMerge?M:Math.round(M/this.binWidth);return r+o+"g"+e}}}),$g=Ye({"src/traces/bar/cross_trace_calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=Hn(),e=Co(),t=Yg().getAxisGroup,r=qO();function o(f,P){for(var L=P.xaxis,z=P.yaxis,F=f._fullLayout,B=f._fullData,O=f.calcdata,I=[],N=[],U=0;U<B.length;U++){var W=B[U];if(W.visible===!0&&M.traceIs(W,"bar")&&W.xaxis===L._id&&W.yaxis===z._id&&(W.orientation==="h"?I.push(O[U]):N.push(O[U]),W._computePh))for(var Q=f.calcdata[U],ue=0;ue<Q.length;ue++)typeof Q[ue].ph0=="function"&&(Q[ue].ph0=Q[ue].ph0()),typeof Q[ue].ph1=="function"&&(Q[ue].ph1=Q[ue].ph1())}var se={xCat:L.type==="category"||L.type==="multicategory",yCat:z.type==="category"||z.type==="multicategory",mode:F.barmode,norm:F.barnorm,gap:F.bargap,groupgap:F.bargroupgap};a(f,L,z,N,se),a(f,z,L,I,se)}function a(f,P,L,z,F){if(z.length){var B,O,I,N,U;switch(s(L,z),F.mode){case"overlay":c(f,P,L,z,F);break;case"group":for(B=[],O=[],I=0;I<z.length;I++)N=z[I],U=N[0].trace,U.offset===void 0?O.push(N):B.push(N);O.length&&h(f,P,L,O,F),B.length&&c(f,P,L,B,F);break;case"stack":case"relative":for(B=[],O=[],I=0;I<z.length;I++)N=z[I],U=N[0].trace,U.base===void 0?O.push(N):B.push(N);n(O),O.length&&v(f,P,L,O,F),B.length&&c(f,P,L,B,F);break}i(z),u(z,P)}}function i(f){var P,L,z,F,B,O,I;for(P=0;P<f.length;P++)L=f[P],z=L[0].trace,F=L[0].t,F.cornerradiusvalue===void 0&&(B=z.marker?z.marker.cornerradius:void 0,B!==void 0&&(O=g(B)?+B:+B.slice(0,-1),I=g(B)?"px":"%",F.cornerradiusvalue=O,F.cornerradiusform=I))}function n(f){if(!(f.length<2)){var P,L,z,F,B,O,I;for(P=0;P<f.length&&(L=f[P],z=L[0].trace,B=z.marker?z.marker.cornerradius:void 0,B===void 0);P++);if(B!==void 0)for(O=g(B)?+B:+B.slice(0,-1),I=g(B)?"px":"%",P=0;P<f.length;P++)L=f[P],F=L[0].t,F.cornerradiusvalue=O,F.cornerradiusform=I}}function s(f,P){var L,z;for(L=0;L<P.length;L++){var F=P[L],B=F[0].trace,O=B.type==="funnel"?B._base:B.base,I,N=B.orientation==="h"?B.xcalendar:B.ycalendar,U=f.type==="category"||f.type==="multicategory"?function(){return null}:f.d2c;if(x(O)){for(z=0;z<Math.min(O.length,F.length);z++)I=U(O[z],0,N),g(I)?(F[z].b=+I,F[z].hasB=1):F[z].b=0;for(;z<F.length;z++)F[z].b=0}else{I=U(O,0,N);var W=g(I);for(I=W?I:0,z=0;z<F.length;z++)F[z].b=I,W&&(F[z].hasB=1)}}}function c(f,P,L,z,F){for(var B=0;B<z.length;B++){var O=z[B],I=new r([O],{posAxis:P,sepNegVal:!1,overlapNoMerge:!F.norm});p(f,P,I,F),F.norm?(E(I),b(L,I,F)):w(L,I)}}function h(f,P,L,z,F){var B=new r(z,{posAxis:P,sepNegVal:!1,overlapNoMerge:!F.norm});p(f,P,B,F),m(B,P),F.norm?(E(B),b(L,B,F)):w(L,B)}function v(f,P,L,z,F){var B=new r(z,{posAxis:P,sepNegVal:F.mode==="relative",overlapNoMerge:!(F.norm||F.mode==="stack"||F.mode==="relative")});p(f,P,B,F),S(L,B,F);for(var O=0;O<z.length;O++)for(var I=z[O],N=I[0].t.offsetindex,U=0;U<I.length;U++){var W=I[U];if(W.s!==A){var Q=W.b+W.s===B.get(W.p,N,W.s);Q&&(W._outmost=!0)}}F.norm&&b(L,B,F)}function p(f,P,L,z){var F=f._fullLayout,B=L.positions,O=L.distinctPositions,I=L.minDiff,N=L.traces,U=N.length,W=B.length!==O.length,Q=I*(1-z.gap),ue,se,he,G;if(P._id==="angularaxis")ue=Q,se=ue*(1-(z.groupgap||0)),he=-se/2;else{var $=t(F,P._id)+N[0][0].trace.orientation;G=F._alignmentOpts[$]||{}}for(var J=0;J<U;J++){var Z=N[J],re=Z[0].trace;if(P._id!=="angularaxis"){var ne=G[re.alignmentgroup]||{},j=Object.keys(ne.offsetGroups||{}).length;j?ue=Q/j:ue=W?Q/U:Q,se=ue*(1-(z.groupgap||0)),j?he=((2*re._offsetIndex+1-j)*ue-se)/2:he=W?((2*J+1-U)*ue-se)/2:-se/2}var ee=Z[0].t;ee.barwidth=se,ee.offsetindex=re._offsetIndex||0,ee.poffset=he,ee.bargroupwidth=Q,ee.bardelta=I}L.binWidth=N[0][0].t.barwidth/100,T(L),l(P,L),P._id==="angularaxis"?_(P,L):_(P,L,W)}function T(f){var P=f.traces,L,z;for(L=0;L<P.length;L++){var F=P[L],B=F[0],O=B.trace,I=B.t,N=O._offset||O.offset,U=I.poffset,W;if(x(N)){for(W=Array.prototype.slice.call(N,0,F.length),z=0;z<W.length;z++)g(W[z])||(W[z]=U);for(z=W.length;z<F.length;z++)W.push(U);I.poffset=W}else N!==void 0&&(I.poffset=N);var Q=O._width||O.width,ue=I.barwidth;if(x(Q)){var se=Array.prototype.slice.call(Q,0,F.length);for(z=0;z<se.length;z++)g(se[z])||(se[z]=ue);for(z=se.length;z<F.length;z++)se.push(ue);if(I.barwidth=se,N===void 0){for(W=[],z=0;z<F.length;z++)W.push(U+(ue-se[z])/2);I.poffset=W}}else Q!==void 0&&(I.barwidth=Q,N===void 0&&(I.poffset=U+(ue-Q)/2))}}function l(f,P){for(var L=P.traces,z=y(f),F=0;F<L.length;F++)for(var B=L[F],O=B[0].t,I=O.poffset,N=x(I),U=O.barwidth,W=x(U),Q=0;Q<B.length;Q++){var ue=B[Q],se=ue.w=W?U[Q]:U;ue.p===void 0&&(ue.p=ue[z],ue["orig_"+z]=ue[z]);var he=(N?I[Q]:I)+se/2;ue[z]=ue.p+he}}function _(f,P,L){var z=P.traces,F=P.minDiff,B=F/2;e.minDtick(f,P.minDiff,P.distinctPositions[0],L);for(var O=0;O<z.length;O++){var I=z[O],N=I[0],U=N.trace,W=[],Q,ue,se,he;for(he=0;he<I.length;he++)Q=I[he],ue=Q.p-B,se=Q.p+B,W.push(ue,se);if(U.width||U.offset){var G=N.t,$=G.poffset,J=G.barwidth,Z=x($),re=x(J);for(he=0;he<I.length;he++){Q=I[he];var ne=Z?$[he]:$,j=re?J[he]:J;ue=Q.p+ne,se=ue+j,W.push(ue,se)}}U._extremes[f._id]=e.findExtremes(f,W,{padded:!1})}}function w(f,P){for(var L=P.traces,z=y(f),F=0;F<L.length;F++){for(var B=L[F],O=B[0].trace,I=O.type==="scatter",N=O.orientation==="v",U=[],W=!1,Q=0;Q<B.length;Q++){var ue=B[Q],se=I?0:ue.b,he=I?N?ue.y:ue.x:se+ue.s;ue[z]=he,U.push(he),ue.hasB&&U.push(se),(!ue.hasB||!ue.b)&&(W=!0)}O._extremes[f._id]=e.findExtremes(f,U,{tozero:W,padded:!0})}}function S(f,P,L){var z=y(f),F=P.traces,B,O,I,N,U,W,Q;for(N=0;N<F.length;N++)if(B=F[N],O=B[0].trace,O.type==="funnel")for(Q=B[0].t.offsetindex,U=0;U<B.length;U++)W=B[U],W.s!==A&&P.put(W.p,Q,-.5*W.s);for(N=0;N<F.length;N++){B=F[N],O=B[0].trace,I=O.type==="funnel",Q=O.type==="barpolar"?0:B[0].t.offsetindex;var ue=[];for(U=0;U<B.length;U++)if(W=B[U],W.s!==A){var se;I?se=W.s:se=W.s+W.b;var he=P.put(W.p,Q,se),G=he+se;W.b=he,W[z]=G,L.norm||(ue.push(G),W.hasB&&ue.push(he))}L.norm||(O._extremes[f._id]=e.findExtremes(f,ue,{tozero:!0,padded:!0}))}}function E(f){for(var P=f.traces,L=0;L<P.length;L++)for(var z=P[L],F=z[0].t.offsetindex,B=0;B<z.length;B++){var O=z[B];O.s!==A&&f.put(O.p,F,O.b+O.s)}}function m(f,P){for(var L=f.traces,z=0;z<L.length;z++){var F=L[z],B=F[0].trace,O=F[0].t.offsetindex;if(B.base===void 0)for(var I=new r([F],{posAxis:P,sepNegVal:!0,overlapNoMerge:!0}),N=0;N<F.length;N++){var U=F[N];if(U.p!==A){var W=I.put(U.p,O,U.b+U.s);W&&(U.b=W)}}}}function b(f,P,L){var z=P.traces,F=y(f),B=L.norm==="fraction"?1:100,O=B/1e9,I=f.l2c(f.c2l(0)),N=L.mode==="stack"?B:I;function U(ee){return g(f.c2l(ee))&&(ee<I-O||ee>N+O||!g(I))}for(var W=0;W<z.length;W++){for(var Q=z[W],ue=Q[0].t.offsetindex,se=Q[0].trace,he=[],G=!1,$=!1,J=0;J<Q.length;J++){var Z=Q[J];if(Z.s!==A){var re=Math.abs(B/P.get(Z.p,ue,Z.s));Z.b*=re,Z.s*=re;var ne=Z.b,j=ne+Z.s;Z[F]=j,he.push(j),$=$||U(j),Z.hasB&&(he.push(ne),$=$||U(ne)),(!Z.hasB||!Z.b)&&(G=!0)}}se._extremes[f._id]=e.findExtremes(f,he,{tozero:G,padded:$})}}function d(f,P,L,z){for(var F=y(z),B=0;B<f.length;B++)for(var O=f[B],I=0;I<O.length;I++){var N=O[I],U=N[F];N._sMin=P[U],N._sMax=L[U]}}function u(f,P){var L=y(P),z={},F,B,O,I=1/0,N=-1/0;for(F=0;F<f.length;F++)for(O=f[F],B=0;B<O.length;B++){var U=O[B].p;g(U)&&(I=Math.min(I,U),N=Math.max(N,U))}var W=1e4/(N-I),Q=z.round=function(fe){return String(Math.round(W*(fe-I)))},ue={},se={},he=f.some(function(fe){var be=fe[0].trace;return"marker"in be&&be.marker.cornerradius});for(F=0;F<f.length;F++){O=f[F],O[0].t.extents=z;var G=O[0].t.poffset,$=x(G);for(B=0;B<O.length;B++){var J=O[B],Z=J[L]-J.w/2;if(g(Z)){var re=J[L]+J.w/2,ne=Q(J.p);z[ne]?z[ne]=[Math.min(Z,z[ne][0]),Math.max(re,z[ne][1])]:z[ne]=[Z,re]}if(J.p0=J.p+($?G[B]:G),J.p1=J.p0+J.w,J.s0=J.b,J.s1=J.s0+J.s,he){var j=Math.min(J.s0,J.s1)||0,ee=Math.max(J.s0,J.s1)||0,ie=J[L];ue[ie]=ie in ue?Math.min(ue[ie],j):j,se[ie]=ie in se?Math.max(se[ie],ee):ee}}}he&&d(f,ue,se,P)}function y(f){return f._id.charAt(0)}H.exports={crossTraceCalc:o,setGroupPositions:a}}}),HO=Ye({"src/traces/scatter/cross_trace_calc.js"(X,H){"use strict";var g=Bd(),x=$g().setGroupPositions;function A(t,r){for(var o=r.xaxis,a=r.yaxis,i=t._fullLayout,n=t._fullData,s=t.calcdata,c=[],h=[],v=0;v<n.length;v++){var p=n[v];p.visible===!0&&p.type==="scatter"&&p.xaxis===o._id&&p.yaxis===a._id&&(p.orientation==="h"?c.push(s[v]):p.orientation==="v"&&h.push(s[v]))}var T={mode:i.scattermode,gap:i.scattergap};x(t,o,a,h,T),x(t,a,o,c,T)}H.exports=function(r,o){r._fullLayout.scattermode==="group"&&A(r,o);var a=o.xaxis,i=o.yaxis,n=a._id+i._id,s=r._fullLayout._scatterStackOpts[n];if(s){var c=r.calcdata,h,v,p,T,l,_,w,S,E,m,b,d,u,y,f;for(var P in s){m=s[P];var L=m.traceIndices;if(L.length){for(b=m.stackgaps==="interpolate",d=m.groupnorm,m.orientation==="v"?(u="x",y="y"):(u="y",y="x"),f=new Array(L.length),h=0;h<f.length;h++)f[h]=!1;_=c[L[0]];var z=new Array(_.length);for(h=0;h<_.length;h++)z[h]=_[h][u];for(h=1;h<L.length;h++){for(l=c[L[h]],v=p=0;v<l.length;v++){for(w=l[v][u];w>z[p]&&p<z.length;p++)M(l,v,z[p],h,f,b,u),v++;if(w!==z[p]){for(T=0;T<h;T++)M(c[L[T]],p,w,T,f,b,u);z.splice(p,0,w)}p++}for(;p<z.length;p++)M(l,v,z[p],h,f,b,u),v++}var F=z.length;for(v=0;v<_.length;v++){for(S=_[v][y]=_[v].s,h=1;h<L.length;h++)l=c[L[h]],l[0].trace._rawLength=l[0].trace._length,l[0].trace._length=F,S+=l[v].s,l[v][y]=S;if(d)for(E=(d==="fraction"?S:S/100)||1,h=0;h<L.length;h++){var B=c[L[h]][v];B[y]/=E,B.sNorm=B.s/E}}for(h=0;h<L.length;h++){l=c[L[h]];var O=l[0].trace,I=g.calcMarkerSize(O,O._rawLength),N=Array.isArray(I);if(I&&f[h]||N){var U=I;for(I=new Array(F),v=0;v<F;v++)I[v]=l[v].gap?0:N?U[l[v].i]:U}var W=new Array(F),Q=new Array(F);for(v=0;v<F;v++)W[v]=l[v].x,Q[v]=l[v].y;g.calcAxisExpansion(r,O,a,i,W,Q,I),l[0].t.orientation=m.orientation}}}}};function M(t,r,o,a,i,n,s){i[a]=!0;var c={i:null,gap:!0,s:0};if(c[s]=o,t.splice(r,0,c),r&&o===t[r-1][s]){var h=t[r-1];c.s=h.s,c.i=h.i,c.gap=h.gap}else n&&(c.s=e(t,r,o,s));r||(t[0].t=t[1].t,t[0].trace=t[1].trace,delete t[1].t,delete t[1].trace)}function e(t,r,o,a){var i=t[r-1],n=t[r+1];return n?i?i.s+(n.s-i.s)*(o-i[a])/(n[a]-i[a]):n.s:i.s}}}),DS=Ye({"src/traces/scatter/line_points.js"(X,H){"use strict";var g=Bo(),x=ks(),A=x.BADNUM,M=x.LOG_CLIP,e=M+.5,t=M-.5,r=ta(),o=r.segmentsIntersect,a=r.constrain,i=Tv();H.exports=function(s,c){var h=c.trace||{},v=c.xaxis,p=c.yaxis,T=v.type==="log",l=p.type==="log",_=v._length,w=p._length,S=c.backoff,E=h.marker,m=c.connectGaps,b=c.baseTolerance,d=c.shape,u=d==="linear",y=h.fill&&h.fill!=="none",f=[],P=i.minTolerance,L=s.length,z=new Array(L),F=0,B,O,I,N,U,W,Q,ue,se,he,G,$,J,Z,re,ne;function j(dt){var xt=s[dt];if(!xt)return!1;var It=c.linearized?v.l2p(xt.x):v.c2p(xt.x),Bt=c.linearized?p.l2p(xt.y):p.c2p(xt.y);if(It===A){if(T&&(It=v.c2p(xt.x,!0)),It===A)return!1;l&&Bt===A&&(It*=Math.abs(v._m*w*(v._m>0?e:t)/(p._m*_*(p._m>0?e:t)))),It*=1e3}if(Bt===A){if(l&&(Bt=p.c2p(xt.y,!0)),Bt===A)return!1;Bt*=1e3}return[It,Bt]}function ee(dt,xt,It,Bt){var Gt=It-dt,Kt=Bt-xt,sr=.5-dt,sa=.5-xt,Aa=Gt*Gt+Kt*Kt,La=Gt*sr+Kt*sa;if(La>0&&La<Aa){var ka=sr*Kt-sa*Gt;if(ka*ka<Aa)return!0}}var ie,fe;function be(dt,xt){var It=dt[0]/_,Bt=dt[1]/w,Gt=Math.max(0,-It,It-1,-Bt,Bt-1);return Gt&&ie!==void 0&&ee(It,Bt,ie,fe)&&(Gt=0),Gt&&xt&&ee(It,Bt,xt[0]/_,xt[1]/w)&&(Gt=0),(1+i.toleranceGrowth*Gt)*b}function Ae(dt,xt){var It=dt[0]-xt[0],Bt=dt[1]-xt[1];return Math.sqrt(It*It+Bt*Bt)}var Be=i.maxScreensAway,Ie=-_*Be,Ze=_*(1+Be),at=-w*Be,it=w*(1+Be),et=[[Ie,at,Ze,at],[Ze,at,Ze,it],[Ze,it,Ie,it],[Ie,it,Ie,at]],lt,Me,ge,ce,ze,tt;function nt(dt,xt){for(var It=[],Bt=0,Gt=0;Gt<4;Gt++){var Kt=et[Gt],sr=o(dt[0],dt[1],xt[0],xt[1],Kt[0],Kt[1],Kt[2],Kt[3]);sr&&(!Bt||Math.abs(sr.x-It[0][0])>1||Math.abs(sr.y-It[0][1])>1)&&(sr=[sr.x,sr.y],Bt&&Ae(sr,dt)<Ae(It[0],dt)?It.unshift(sr):It.push(sr),Bt++)}return It}function Qe(dt){if(dt[0]<Ie||dt[0]>Ze||dt[1]<at||dt[1]>it)return[a(dt[0],Ie,Ze),a(dt[1],at,it)]}function Ct(dt,xt){if(dt[0]===xt[0]&&(dt[0]===Ie||dt[0]===Ze)||dt[1]===xt[1]&&(dt[1]===at||dt[1]===it))return!0}function St(dt,xt){var It=[],Bt=Qe(dt),Gt=Qe(xt);return Bt&&Gt&&Ct(Bt,Gt)||(Bt&&It.push(Bt),Gt&&It.push(Gt)),It}function Ot(dt,xt,It){return function(Bt,Gt){var Kt=Qe(Bt),sr=Qe(Gt),sa=[];if(Kt&&sr&&Ct(Kt,sr))return sa;Kt&&sa.push(Kt),sr&&sa.push(sr);var Aa=2*r.constrain((Bt[dt]+Gt[dt])/2,xt,It)-((Kt||Bt)[dt]+(sr||Gt)[dt]);if(Aa){var La;Kt&&sr?La=Aa>0==Kt[dt]>sr[dt]?Kt:sr:La=Kt||sr,La[dt]+=Aa}return sa}}var jt;d==="linear"||d==="spline"?jt=nt:d==="hv"||d==="vh"?jt=St:d==="hvh"?jt=Ot(0,Ie,Ze):d==="vhv"&&(jt=Ot(1,at,it));function ur(dt,xt){var It=xt[0]-dt[0],Bt=(xt[1]-dt[1])/It,Gt=(dt[1]*xt[0]-xt[1]*dt[0])/It;return Gt>0?[Bt>0?Ie:Ze,it]:[Bt>0?Ze:Ie,at]}function ar(dt){var xt=dt[0],It=dt[1],Bt=xt===z[F-1][0],Gt=It===z[F-1][1];if(!(Bt&&Gt))if(F>1){var Kt=xt===z[F-2][0],sr=It===z[F-2][1];Bt&&(xt===Ie||xt===Ze)&&Kt?sr?F--:z[F-1]=dt:Gt&&(It===at||It===it)&&sr?Kt?F--:z[F-1]=dt:z[F++]=dt}else z[F++]=dt}function Cr(dt){z[F-1][0]!==dt[0]&&z[F-1][1]!==dt[1]&&ar([ge,ce]),ar(dt),ze=null,ge=ce=0}var vr=r.isArrayOrTypedArray(E);function _r(dt){if(dt&&S&&(dt.i=B,dt.d=s,dt.trace=h,dt.marker=vr?E[dt.i]:E,dt.backoff=S),ie=dt[0]/_,fe=dt[1]/w,lt=dt[0]<Ie?Ie:dt[0]>Ze?Ze:0,Me=dt[1]<at?at:dt[1]>it?it:0,lt||Me){if(!F)z[F++]=[lt||dt[0],Me||dt[1]];else if(ze){var xt=jt(ze,dt);xt.length>1&&(Cr(xt[0]),z[F++]=xt[1])}else tt=jt(z[F-1],dt)[0],z[F++]=tt;var It=z[F-1];lt&&Me&&(It[0]!==lt||It[1]!==Me)?(ze&&(ge!==lt&&ce!==Me?ar(ge&&ce?ur(ze,dt):[ge||lt,ce||Me]):ge&&ce&&ar([ge,ce])),ar([lt,Me])):ge-lt&&ce-Me&&ar([lt||ge,Me||ce]),ze=dt,ge=lt,ce=Me}else ze&&Cr(jt(ze,dt)[0]),z[F++]=dt}for(B=0;B<L;B++)if(O=j(B),!!O){for(F=0,ze=null,_r(O),B++;B<L;B++){if(N=j(B),!N){if(m)continue;break}if(!u||!c.simplify){_r(N);continue}var yt=j(B+1);if(he=Ae(N,O),!(!(y&&(F===0||F===L-1))&&he<be(N,yt)*P)){for(ue=[(N[0]-O[0])/he,(N[1]-O[1])/he],U=O,G=he,$=Z=re=0,Q=!1,I=N,B++;B<s.length;B++){if(W=yt,yt=j(B+1),!W){if(m)continue;break}if(se=[W[0]-O[0],W[1]-O[1]],ne=se[0]*ue[1]-se[1]*ue[0],Z=Math.min(Z,ne),re=Math.max(re,ne),re-Z>be(W,yt))break;I=W,J=se[0]*ue[0]+se[1]*ue[1],J>G?(G=J,N=W,Q=!1):J<$&&($=J,U=W,Q=!0)}if(Q?(_r(N),I!==U&&_r(U)):(U!==O&&_r(U),I!==N&&_r(N)),_r(I),B>=s.length||!W)break;_r(W),O=W}}ze&&ar([ge||ze[0],ce||ze[1]]),f.push(z.slice(0,F))}var Fe=d.slice(d.length-1);if(S&&Fe!=="h"&&Fe!=="v"){for(var Ke=!1,Ne=-1,Ee=[],Ve=0;Ve<f.length;Ve++)for(var ke=0;ke<f[Ve].length-1;ke++){var Te=f[Ve][ke],Le=f[Ve][ke+1],rt=g.applyBackoff(Le,Te);(rt[0]!==Le[0]||rt[1]!==Le[1])&&(Ke=!0),Ee[Ne+1]||(Ne++,Ee[Ne]=[Te,[rt[0],rt[1]]])}return Ke?Ee:f}return f}}}),zS=Ye({"src/traces/scatter/link_traces.js"(X,H){"use strict";var g={tonextx:1,tonexty:1,tonext:1};H.exports=function(A,M,e){var t,r,o,a,i,n={},s=!1,c=-1,h=0,v=-1;for(r=0;r<e.length;r++)t=e[r][0].trace,o=t.stackgroup||"",o?o in n?i=n[o]:(i=n[o]=h,h++):t.fill in g&&v>=0?i=v:(i=v=h,h++),i<c&&(s=!0),t._groupIndex=c=i;var p=e.slice();s&&p.sort(function(l,_){var w=l[0].trace,S=_[0].trace;return w._groupIndex-S._groupIndex||w.index-S.index});var T={};for(r=0;r<p.length;r++)t=p[r][0].trace,o=t.stackgroup||"",t.visible===!0?(t._nexttrace=null,t.fill in g&&(a=T[o],t._prevtrace=a||null,a&&(a._nexttrace=t)),t._ownfill=t.fill&&(t.fill.substr(0,6)==="tozero"||t.fill==="toself"||t.fill.substr(0,2)==="to"&&!t._prevtrace),T[o]=t):t._prevtrace=t._nexttrace=t._ownfill=null;return p}}}),o1=Ye({"src/traces/scatter/plot.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=A.ensureSingle,e=A.identity,t=Bo(),r=uu(),o=DS(),a=zS(),i=C_().tester;H.exports=function(v,p,T,l,_,w){var S,E,m=!_,b=!!_&&_.duration>0,d=a(v,p,T);if(S=l.selectAll("g.trace").data(d,function(y){return y[0].trace.uid}),S.enter().append("g").attr("class",function(y){return"trace scatter trace"+y[0].trace.uid}).style("stroke-miterlimit",2),S.order(),n(v,S,p),b){w&&(E=w());var u=g.transition().duration(_.duration).ease(_.easing).each("end",function(){E&&E()}).each("interrupt",function(){E&&E()});u.each(function(){l.selectAll("g.trace").each(function(y,f){s(v,f,p,y,d,this,_)})})}else S.each(function(y,f){s(v,f,p,y,d,this,_)});m&&S.exit().remove(),l.selectAll("path:not([d])").remove()};function n(h,v,p){v.each(function(T){var l=M(g.select(this),"g","fills");t.setClipUrl(l,p.layerClipId,h);var _=T[0].trace,w=[];_._ownfill&&w.push("_ownFill"),_._nexttrace&&w.push("_nextFill");var S=l.selectAll("g").data(w,e);S.enter().append("g"),S.exit().each(function(E){_[E]=null}).remove(),S.order().each(function(E){_[E]=M(g.select(this),"path","js-fill")})})}function s(h,v,p,T,l,_,w){var S=h._context.staticPlot,E;c(h,v,p,T,l);var m=!!w&&w.duration>0;function b(ar){return m?ar.transition():ar}var d=p.xaxis,u=p.yaxis,y=T[0].trace,f=y.line,P=g.select(_),L=M(P,"g","errorbars"),z=M(P,"g","lines"),F=M(P,"g","points"),B=M(P,"g","text");if(x.getComponentMethod("errorbars","plot")(h,L,p,w),y.visible!==!0)return;b(P).style("opacity",y.opacity);var O,I,N=y.fill.charAt(y.fill.length-1);N!=="x"&&N!=="y"&&(N="");var U,W;N==="y"?(U=1,W=u.c2p(0,!0)):N==="x"&&(U=0,W=d.c2p(0,!0)),T[0][p.isRangePlot?"nodeRangePlot3":"node3"]=P;var Q="",ue=[],se=y._prevtrace,he=null,G=null;se&&(Q=se._prevRevpath||"",I=se._nextFill,ue=se._ownPolygons,he=se._fillsegments,G=se._fillElement);var $,J,Z="",re="",ne,j,ee,ie,fe,be,Ae=[];y._polygons=[];var Be=[],Ie=[],Ze=A.noop;if(O=y._ownFill,r.hasLines(y)||y.fill!=="none"){I&&I.datum(T),["hv","vh","hvh","vhv"].indexOf(f.shape)!==-1?(ne=t.steps(f.shape),j=t.steps(f.shape.split("").reverse().join(""))):f.shape==="spline"?ne=j=function(ar){var Cr=ar[ar.length-1];return ar.length>1&&ar[0][0]===Cr[0]&&ar[0][1]===Cr[1]?t.smoothclosed(ar.slice(1),f.smoothing):t.smoothopen(ar,f.smoothing)}:ne=j=function(ar){return"M"+ar.join("L")},ee=function(ar){return j(ar.reverse())},Ie=o(T,{xaxis:d,yaxis:u,trace:y,connectGaps:y.connectgaps,baseTolerance:Math.max(f.width||1,3)/4,shape:f.shape,backoff:f.backoff,simplify:f.simplify,fill:y.fill}),Be=new Array(Ie.length);var at=0;for(E=0;E<Ie.length;E++){var it,et=Ie[E];!it||!N?(it=et.slice(),Be[at]=it,at++):it.push.apply(it,et)}y._fillElement=null,y._fillExclusionElement=G,y._fillsegments=Be.slice(0,at),Be=y._fillsegments,Ie.length&&(ie=Ie[0][0].slice(),fe=Ie[Ie.length-1],be=fe[fe.length-1].slice()),Ze=function(ar){return function(Cr){if($=ne(Cr),J=ee(Cr),Z?N?(Z+="L"+$.substr(1),re=J+("L"+re.substr(1))):(Z+="Z"+$,re=J+"Z"+re):(Z=$,re=J),r.hasLines(y)){var vr=g.select(this);if(vr.datum(T),ar)b(vr.style("opacity",0).attr("d",$).call(t.lineGroupStyle)).style("opacity",1);else{var _r=b(vr);_r.attr("d",$),t.singleLineStyle(T,_r)}}}}}var lt=z.selectAll(".js-line").data(Ie);b(lt.exit()).style("opacity",0).remove(),lt.each(Ze(!1)),lt.enter().append("path").classed("js-line",!0).style("vector-effect",S?"none":"non-scaling-stroke").call(t.lineGroupStyle).each(Ze(!0)),t.setClipUrl(lt,p.layerClipId,h);function Me(ar){b(ar).attr("d","M0,0Z")}var ge=function(){var ar=new Array(Be.length);for(E=0;E<Be.length;E++)ar[E]=i(Be[E]);return ar},ce=function(ar){var Cr,vr;if(!ar||ar.length===0)for(Cr=new Array(Be.length),vr=0;vr<Be.length;vr++){var _r=Be[vr][0].slice(),yt=Be[vr][Be[vr].length-1].slice();_r[U]=yt[U]=W;var Fe=[yt,_r],Ke=Fe.concat(Be[vr]);Cr[vr]=i(Ke)}else{for(Cr=new Array(ar.length-1+Be.length),vr=0;vr<ar.length-1;vr++)Cr[vr]=i(ar[vr]);var Ne=ar[ar.length-1].slice();for(Ne.reverse(),vr=0;vr<Be.length;vr++)Cr[ar.length-1+vr]=i(Be[vr].concat(Ne))}return Cr};Ie.length?(O?(O.datum(T),ie&&be&&(N?(ie[U]=be[U]=W,b(O).attr("d","M"+be+"L"+ie+"L"+Z.substr(1)).call(t.singleFillStyle,h),Ae=ce(null)):(b(O).attr("d",Z+"Z").call(t.singleFillStyle,h),Ae=ge())),y._polygons=Ae,y._fillElement=O):I&&(y.fill.substr(0,6)==="tonext"&&Z&&Q?(y.fill==="tonext"?(b(I).attr("d",Z+"Z"+Q+"Z").call(t.singleFillStyle,h),Ae=ge(),y._polygons=Ae.concat(ue)):(b(I).attr("d",Z+"L"+Q.substr(1)+"Z").call(t.singleFillStyle,h),Ae=ce(he),y._polygons=Ae),y._fillElement=I):Me(I)),y._prevRevpath=re):(O?Me(O):I&&Me(I),y._prevRevpath=null),y._ownPolygons=Ae;function ze(ar){return ar.filter(function(Cr){return!Cr.gap&&Cr.vis})}function tt(ar){return ar.filter(function(Cr){return Cr.vis})}function nt(ar){return ar.filter(function(Cr){return!Cr.gap})}function Qe(ar){return ar.id}function Ct(ar){if(ar.ids)return Qe}function St(){return!1}function Ot(ar,Cr,vr){var _r,yt,Fe,Ke=vr[0].trace,Ne=r.hasMarkers(Ke),Ee=r.hasText(Ke),Ve=Ct(Ke),ke=St,Te=St;if(Ne||Ee){var Le=e,rt=Ke.stackgroup,dt=rt&&h._fullLayout._scatterStackOpts[d._id+u._id][rt].stackgaps==="infer zero";Ke.marker.maxdisplayed||Ke._needsCull?Le=dt?tt:ze:rt&&!dt&&(Le=nt),Ne&&(ke=Le),Ee&&(Te=Le)}yt=ar.selectAll("path.point"),_r=yt.data(ke,Ve);var xt=_r.enter().append("path").classed("point",!0);m&&xt.call(t.pointStyle,Ke,h).call(t.translatePoints,d,u).style("opacity",0).transition().style("opacity",1),_r.order();var It;Ne&&(It=t.makePointStyleFns(Ke)),_r.each(function(Bt){var Gt=g.select(this),Kt=b(Gt);Fe=t.translatePoint(Bt,Kt,d,u),Fe?(t.singlePointStyle(Bt,Kt,Ke,It,h),p.layerClipId&&t.hideOutsideRangePoint(Bt,Kt,d,u,Ke.xcalendar,Ke.ycalendar),Ke.customdata&&Gt.classed("plotly-customdata",Bt.data!==null&&Bt.data!==void 0)):Kt.remove()}),m?_r.exit().transition().style("opacity",0).remove():_r.exit().remove(),yt=Cr.selectAll("g"),_r=yt.data(Te,Ve),_r.enter().append("g").classed("textpoint",!0).append("text"),_r.order(),_r.each(function(Bt){var Gt=g.select(this),Kt=b(Gt.select("text"));Fe=t.translatePoint(Bt,Kt,d,u),Fe?p.layerClipId&&t.hideOutsideRangePoint(Bt,Gt,d,u,Ke.xcalendar,Ke.ycalendar):Gt.remove()}),_r.selectAll("text").call(t.textPointStyle,Ke,h).each(function(Bt){var Gt=d.c2p(Bt.x),Kt=u.c2p(Bt.y);g.select(this).selectAll("tspan.line").each(function(){b(g.select(this)).attr({x:Gt,y:Kt})})}),_r.exit().remove()}F.datum(T),B.datum(T),Ot(F,B,T);var jt=y.cliponaxis===!1,ur=jt?null:p.layerClipId;t.setClipUrl(F,ur,h),t.setClipUrl(B,ur,h)}function c(h,v,p,T,l){var _=p.xaxis,w=p.yaxis,S=g.extent(A.simpleMap(_.range,_.r2c)),E=g.extent(A.simpleMap(w.range,w.r2c)),m=T[0].trace;if(r.hasMarkers(m)){var b=m.marker.maxdisplayed;if(b!==0){var d=T.filter(function(P){return P.x>=S[0]&&P.x<=S[1]&&P.y>=E[0]&&P.y<=E[1]}),u=Math.ceil(d.length/b),y=0;l.forEach(function(P,L){var z=P[0].trace;r.hasMarkers(z)&&z.marker.maxdisplayed>0&&L<v&&y++});var f=Math.round(y*u/3+Math.floor(y/3)*u/7.1);T.forEach(function(P){delete P.vis}),d.forEach(function(P,L){Math.round((L+f)%u)===0&&(P.vis=!0)})}}}}}),cp=Ye({"src/traces/scatter/marker_colorbar.js"(X,H){"use strict";H.exports={container:"marker",min:"cmin",max:"cmax"}}}),L2=Ye({"src/traces/scatter/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r={_fullLayout:e},o=g.getFromTrace(r,M,"x"),a=g.getFromTrace(r,M,"y"),i=A.orig_x;i===void 0&&(i=A.x);var n=A.orig_y;return n===void 0&&(n=A.y),t.xLabel=g.tickText(o,o.c2l(i),!0).text,t.yLabel=g.tickText(a,a.c2l(n),!0).text,t}}}),ed=Ye({"src/traces/scatter/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Hn();function M(o){var a=g.select(o).selectAll("g.trace.scatter");a.style("opacity",function(i){return i[0].trace.opacity}),a.selectAll("g.points").each(function(i){var n=g.select(this),s=i.trace||i[0].trace;e(n,s,o)}),a.selectAll("g.text").each(function(i){var n=g.select(this),s=i.trace||i[0].trace;t(n,s,o)}),a.selectAll("g.trace path.js-line").call(x.lineGroupStyle),a.selectAll("g.trace path.js-fill").call(x.fillGroupStyle,o,!1),A.getComponentMethod("errorbars","style")(a)}function e(o,a,i){x.pointStyle(o.selectAll("path.point"),a,i)}function t(o,a,i){x.textPointStyle(o.selectAll("text"),a,i)}function r(o,a,i){var n=a[0].trace;n.selectedpoints?(x.selectedPointStyle(i.selectAll("path.point"),n),x.selectedTextStyle(i.selectAll("text"),n)):(e(i,n,o),t(i,n,o))}H.exports={style:M,stylePoints:e,styleText:t,styleOnSelect:r}}}),s1=Ye({"src/traces/scatter/get_trace_color.js"(X,H){"use strict";var g=Fn(),x=uu();H.exports=function(M,e){var t,r;if(M.mode==="lines")return t=M.line.color,t&&g.opacity(t)?t:M.fillcolor;if(M.mode==="none")return M.fill?M.fillcolor:"";var o=e.mcc||(M.marker||{}).color,a=e.mlcc||((M.marker||{}).line||{}).color;return r=o&&g.opacity(o)?o:a&&g.opacity(a)&&(e.mlw||((M.marker||{}).line||{}).width)?a:"",r?g.opacity(r)<.3?g.addOpacity(r,.3):r:(t=(M.line||{}).color,t&&g.opacity(t)&&x.hasLines(M)&&M.line.width?t:M.fillcolor)}}}),l1=Ye({"src/traces/scatter/hover.js"(X,H){"use strict";var g=ta(),x=Lc(),A=Hn(),M=s1(),e=Fn(),t=g.fillText;H.exports=function(o,a,i,n){var s=o.cd,c=s[0].trace,h=o.xa,v=o.ya,p=h.c2p(a),T=v.c2p(i),l=[p,T],_=c.hoveron||"",w=c.mode.indexOf("markers")!==-1?3:.5,S=!!c.xperiodalignment,E=!!c.yperiodalignment;if(_.indexOf("points")!==-1){var m=function(ue){if(S){var se=h.c2p(ue.xStart),he=h.c2p(ue.xEnd);return p>=Math.min(se,he)&&p<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(h.c2p(ue.x)-p);return J<G?$*J/G:J-G+$},b=function(ue){if(E){var se=v.c2p(ue.yStart),he=v.c2p(ue.yEnd);return T>=Math.min(se,he)&&T<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(v.c2p(ue.y)-T);return J<G?$*J/G:J-G+$},d=function(ue){var se=Math.max(w,ue.mrc||0),he=h.c2p(ue.x)-p,G=v.c2p(ue.y)-T;return Math.max(Math.sqrt(he*he+G*G)-se,1-w/se)},u=x.getDistanceFunction(n,m,b,d);if(x.getClosest(s,u,o),o.index!==!1){var y=s[o.index],f=h.c2p(y.x,!0),P=v.c2p(y.y,!0),L=y.mrc||1;o.index=y.i;var z=s[0].t.orientation,F=z&&(y.sNorm||y.s),B=z==="h"?F:y.orig_x!==void 0?y.orig_x:y.x,O=z==="v"?F:y.orig_y!==void 0?y.orig_y:y.y;return g.extendFlat(o,{color:M(c,y),x0:f-L,x1:f+L,xLabelVal:B,y0:P-L,y1:P+L,yLabelVal:O,spikeDistance:d(y),hovertemplate:c.hovertemplate}),t(y,c,o),A.getComponentMethod("errorbars","hoverInfo")(y,c,o),[o]}}function I(ue){if(!ue)return!1;var se=ue.node();try{var he=new DOMPoint(l[0],l[1]);return se.isPointInFill(he)}catch{var G=se.ownerSVGElement.createSVGPoint();return G.x=l[0],G.y=l[1],se.isPointInFill(G)}}function N(ue){var se,he=[],G=1/0,$=-1/0,J=1/0,Z=-1/0,re;for(se=0;se<ue.length;se++){var ne=ue[se];ne.contains(l)&&(he.push(ne),J=Math.min(J,ne.ymin),Z=Math.max(Z,ne.ymax))}if(he.length===0)return null;J=Math.max(J,0),Z=Math.min(Z,v._length),re=(J+Z)/2;var j,ee,ie,fe,be,Ae,Be;for(se=0;se<he.length;se++)for(ee=he[se].pts,j=1;j<ee.length;j++)Ae=ee[j-1][1],Be=ee[j][1],Ae>re!=Be>=re&&(fe=ee[j-1][0],be=ee[j][0],Be-Ae&&(ie=fe+(be-fe)*(re-Ae)/(Be-Ae),G=Math.min(G,ie),$=Math.max($,ie)));return G=Math.max(G,0),$=Math.min($,h._length),{x0:G,x1:$,y0:re,y1:re}}if(_.indexOf("fills")!==-1&&c._fillElement){var U=I(c._fillElement)&&!I(c._fillExclusionElement);if(U){var W=N(c._polygons);W===null&&(W={x0:l[0],x1:l[0],y0:l[1],y1:l[1]});var Q=e.defaultLine;return e.opacity(c.fillcolor)?Q=c.fillcolor:e.opacity((c.line||{}).color)&&(Q=c.line.color),g.extendFlat(o,{distance:o.maxHoverDistance,x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1,color:Q,hovertemplate:!1}),delete o.index,c.text&&!g.isArrayOrTypedArray(c.text)?o.text=String(c.text):o.text=c.name,[o]}}}}}),u1=Ye({"src/traces/scatter/select.js"(X,H){"use strict";var g=uu();H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=[],a=e[0].trace,i,n,s,c,h=!g.hasMarkers(a)&&!g.hasText(a);if(h)return[];if(M===!1)for(i=0;i<e.length;i++)e[i].selected=0;else for(i=0;i<e.length;i++)n=e[i],s=t.c2p(n.x),c=r.c2p(n.y),n.i!==null&&M.contains([s,c],!1,i,A)?(o.push({pointNumber:n.i,x:t.c2d(n.x),y:r.c2d(n.y)}),n.selected=1):n.selected=0;return o}}}),GO=Ye({"src/plots/cartesian/attributes.js"(X,H){"use strict";H.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}}}),FS=Ye({"src/plots/cartesian/type_defaults.js"(X,H){"use strict";var g=Hn().traceIs,x=r1();H.exports=function(o,a,i,n){i("autotypenumbers",n.autotypenumbersDflt);var s=i("type",(n.splomStash||{}).type);s==="-"&&(A(a,n.data),a.type==="-"?a.type="linear":o.type=a.type)};function A(r,o){if(r.type==="-"){var a=r._id,i=a.charAt(0),n;a.indexOf("scene")!==-1&&(a=i);var s=M(o,a,i);if(s){if(s.type==="histogram"&&i==={v:"y",h:"x"}[s.orientation||"v"]){r.type="linear";return}var c=i+"calendar",h=s[c],v={noMultiCategory:!g(s,"cartesian")||g(s,"noMultiCategory")};if(s.type==="box"&&s._hasPreCompStats&&i==={h:"x",v:"y"}[s.orientation||"v"]&&(v.noMultiCategory=!0),v.autotypenumbers=r.autotypenumbers,t(s,i)){var p=e(s),T=[];for(n=0;n<o.length;n++){var l=o[n];!g(l,"box-violin")||(l[i+"axis"]||i)!==a||(l[p]!==void 0?T.push(l[p][0]):l.name!==void 0?T.push(l.name):T.push("text"),l[c]!==h&&(h=void 0))}r.type=x(T,h,v)}else if(s.type==="splom"){var _=s.dimensions,w=_[s._axesDim[a]];w.visible&&(r.type=x(w.values,h,v))}else r.type=x(s[i]||[s[i+"0"]],h,v)}}}function M(r,o,a){for(var i=0;i<r.length;i++){var n=r[i];if(n.type==="splom"&&n._length>0&&(n["_"+a+"axes"]||{})[o])return n;if((n[a+"axis"]||a)===o){if(t(n,a))return n;if((n[a]||[]).length||n[a+"0"])return n}}}function e(r){return{v:"x",h:"y"}[r.orientation||"v"]}function t(r,o){var a=e(r),i=g(r,"box-violin"),n=g(r._fullInput||{},"candlestick");return i&&!n&&o===a&&r[a]===void 0&&r[a+"0"]===void 0}}}),P2=Ye({"src/plots/cartesian/category_order_defaults.js"(X,H){"use strict";var g=xp().isTypedArraySpec;function x(A,M){var e=M.dataAttr||A._id.charAt(0),t={},r,o,a;if(M.axData)r=M.axData;else for(r=[],o=0;o<M.data.length;o++){var i=M.data[o];i[e+"axis"]===A._id&&r.push(i)}for(o=0;o<r.length;o++){var n=r[o][e];for(a=0;a<n.length;a++){var s=n[a];s!=null&&(t[s]=1)}}return Object.keys(t)}H.exports=function(M,e,t,r){if(e.type==="category"){var o=M.categoryarray,a=Array.isArray(o)&&o.length>0||g(o),i;a&&(i="array");var n=t("categoryorder",i),s;n==="array"&&(s=t("categoryarray")),!a&&n==="array"&&(n=e.categoryorder="trace"),n==="trace"?e._initialCategories=[]:n==="array"?e._initialCategories=s.slice():(s=x(e,r).sort(),n==="category ascending"?e._initialCategories=s:n==="category descending"&&(e._initialCategories=s.reverse()))}}}}),I_=Ye({"src/plots/cartesian/line_grid_defaults.js"(X,H){"use strict";var g=bh().mix,x=Gf(),A=ta();H.exports=function(e,t,r,o){o=o||{};var a=o.dfltColor;function i(y,f){return A.coerce2(e,t,o.attributes,y,f)}var n=i("linecolor",a),s=i("linewidth"),c=r("showline",o.showLine||!!n||!!s);c||(delete t.linecolor,delete t.linewidth);var h=g(a,o.bgColor,o.blend||x.lightFraction).toRgbString(),v=i("gridcolor",h),p=i("gridwidth"),T=i("griddash"),l=r("showgrid",o.showGrid||!!v||!!p||!!T);if(l||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),o.hasMinor){var _=g(t.gridcolor,o.bgColor,67).toRgbString(),w=i("minor.gridcolor",_),S=i("minor.gridwidth",t.gridwidth||1),E=i("minor.griddash",t.griddash||"solid"),m=r("minor.showgrid",!!w||!!S||!!E);m||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!o.noZeroLine){var b=i("zerolinecolor",a),d=i("zerolinewidth"),u=r("zeroline",o.showGrid||!!b||!!d);u||(delete t.zerolinecolor,delete t.zerolinewidth)}}}}),R_=Ye({"src/plots/cartesian/axis_defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=up(),t=Vh(),r=Zg(),o=e1(),a=$m(),i=Qm(),n=P2(),s=I_(),c=fS(),h=wv(),v=wh().WEEKDAY_PATTERN,p=wh().HOUR_PATTERN;H.exports=function(S,E,m,b,d){var u=b.letter,y=b.font||{},f=b.splomStash||{},P=m("visible",!b.visibleDflt),L=E._template||{},z=E.type||L.type||"-",F;if(z==="date"){var B=x.getComponentMethod("calendars","handleDefaults");B(S,E,"calendar",b.calendar),b.noTicklabelmode||(F=m("ticklabelmode"))}!b.noTicklabelindex&&(z==="date"||z==="linear")&&m("ticklabelindex");var O="";(!b.noTicklabelposition||z==="multicategory")&&(O=A.coerce(S,E,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:F==="period"?["outside","inside"]:u==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),b.noTicklabeloverflow||m("ticklabeloverflow",O.indexOf("inside")!==-1?"hide past domain":z==="category"||z==="multicategory"?"allow":"hide past div"),h(E,d),c(S,E,m,b),n(S,E,m,b),z!=="category"&&!b.noHover&&m("hoverformat");var I=m("color"),N=I!==t.color.dflt?I:y.color,U=f.label||d._dfltTitle[u];if(i(S,E,m,z,b),!P)return E;m("title.text",U),A.coerceFont(m,"title.font",y,{overrideDflt:{size:A.bigFont(y.size),color:N}}),r(S,E,m,z);var W=b.hasMinor;if(W&&(M.newContainer(E,"minor"),r(S,E,m,z,{isMinor:!0})),a(S,E,m,z,b),o(S,E,m,b),W){var Q=b.isMinor;b.isMinor=!0,o(S,E,m,b),b.isMinor=Q}s(S,E,m,{dfltColor:I,bgColor:b.bgColor,showGrid:b.showGrid,hasMinor:W,attributes:t}),W&&!E.minor.ticks&&!E.minor.showgrid&&delete E.minor,(E.showline||E.ticks)&&m("mirror");var ue=z==="multicategory";if(!b.noTickson&&(z==="category"||ue)&&(E.ticks||E.showgrid)){var se;ue&&(se="boundaries");var he=m("tickson",se);he==="boundaries"&&delete E.ticklabelposition}if(ue){var G=m("showdividers");G&&(m("dividercolor"),m("dividerwidth"))}if(z==="date")if(e(S,E,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:T}),!E.rangebreaks.length)delete E.rangebreaks;else{for(var $=0;$<E.rangebreaks.length;$++)if(E.rangebreaks[$].pattern===v){E._hasDayOfWeekBreaks=!0;break}if(h(E,d),d._has("scattergl")||d._has("splom"))for(var J=0;J<b.data.length;J++){var Z=b.data[J];(Z.type==="scattergl"||Z.type==="splom")&&(Z.visible=!1,A.warn(Z.type+" traces do not work on axes with rangebreaks. Setting trace "+Z.index+" to `visible: false`."))}}return E};function T(w,S,E){function m(F,B){return A.coerce(w,S,t.rangebreaks,F,B)}var b=m("enabled");if(b){var d=m("bounds");if(d&&d.length>=2){var u="",y,f;if(d.length===2){for(y=0;y<2;y++)if(f=_(d[y]),f){u=v;break}}var P=m("pattern",u);if(P===v)for(y=0;y<2;y++)f=_(d[y]),f&&(S.bounds[y]=d[y]=f-1);if(P)for(y=0;y<2;y++)switch(f=d[y],P){case v:if(!g(f)){S.enabled=!1;return}if(f=+f,f!==Math.floor(f)||f<0||f>=7){S.enabled=!1;return}S.bounds[y]=d[y]=f;break;case p:if(!g(f)){S.enabled=!1;return}if(f=+f,f<0||f>24){S.enabled=!1;return}S.bounds[y]=d[y]=f;break}if(E.autorange===!1){var L=E.range;if(L[0]<L[1]){if(d[0]<L[0]&&d[1]>L[1]){S.enabled=!1;return}}else if(d[0]>L[0]&&d[1]<L[1]){S.enabled=!1;return}}}else{var z=m("values");if(z&&z.length)m("dvalue");else{S.enabled=!1;return}}}}var l={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function _(w){if(typeof w=="string")return l[w.substr(0,3).toLowerCase()]}}}),I2=Ye({"src/plots/cartesian/position_defaults.js"(X,H){"use strict";var g=jo(),x=ta();H.exports=function(M,e,t,r){var o=r.counterAxes||[],a=r.overlayableAxes||[],i=r.letter,n=r.grid,s=r.overlayingDomain,c,h,v,p,T,l;n&&(h=n._domains[i][n._axisMap[e._id]],c=n._anchors[e._id],h&&(v=n[i+"side"].split(" ")[0],p=n.domain[i][v==="right"||v==="top"?1:0])),h=h||[0,1],c=c||(g(M.position)?"free":o[0]||"free"),v=v||(i==="x"?"bottom":"left"),p=p||0,T=0,l=!1;var _=x.coerce(M,e,{anchor:{valType:"enumerated",values:["free"].concat(o),dflt:c}},"anchor"),w=x.coerce(M,e,{side:{valType:"enumerated",values:i==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(_==="free"){if(i==="y"){var S=t("autoshift");S&&(p=w==="left"?s[0]:s[1],l=e.automargin?e.automargin:!0,T=w==="left"?-3:3),t("shift",T)}t("position",p)}t("automargin",l);var E=!1;if(a.length&&(E=x.coerce(M,e,{overlaying:{valType:"enumerated",values:[!1].concat(a),dflt:!1}},"overlaying")),!E){var m=t("domain",h);m[0]>m[1]-1/4096&&(e.domain=h),x.noneOrAll(M.domain,e.domain,h),e.tickmode==="sync"&&(e.tickmode="auto")}return t("layer"),e}}}),WO=Ye({"src/plots/cartesian/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover,M=yS(),e=cl(),t=Jy(),r=Vh(),o=FS(),a=R_(),i=Yg(),n=I2(),s=Xc(),c=s.id2name,h=s.name2id,v=wh().AX_ID_PATTERN,p=Hn(),T=p.traceIs,l=p.getComponentMethod;function _(w,S,E){Array.isArray(w[S])?w[S].push(E):w[S]=[E]}H.exports=function(S,E,m){var b=E.autotypenumbers,d={},u={},y={},f={},P={},L={},z={},F={},B={},O={},I,N;for(I=0;I<m.length;I++){var U=m[I];if(T(U,"cartesian")){var W;if(U.xaxis)W=c(U.xaxis),_(d,W,U);else if(U.xaxes)for(N=0;N<U.xaxes.length;N++)_(d,c(U.xaxes[N]),U);var Q;if(U.yaxis)Q=c(U.yaxis),_(d,Q,U);else if(U.yaxes)for(N=0;N<U.yaxes.length;N++)_(d,c(U.yaxes[N]),U);if(U.type==="funnel"?U.orientation==="h"?(W&&(u[W]=!0),Q&&(z[Q]=!0)):Q&&(y[Q]=!0):U.type==="image"?(Q&&(F[Q]=!0),W&&(F[W]=!0)):(Q&&(P[Q]=!0,L[Q]=!0),(!T(U,"carpet")||U.type==="carpet"&&!U._cheater)&&W&&(f[W]=!0)),U.type==="carpet"&&U._cheater&&W&&(u[W]=!0),T(U,"2dMap")&&(B[W]=!0,B[Q]=!0),T(U,"oriented")){var ue=U.orientation==="h"?Q:W;O[ue]=!0}}}var se=E._subplots,he=se.xaxis,G=se.yaxis,$=g.simpleMap(he,c),J=g.simpleMap(G,c),Z=$.concat(J),re=x.background;he.length&&G.length&&(re=g.coerce(S,E,t,"plot_bgcolor"));var ne=x.combine(re,E.paper_bgcolor),j,ee,ie,fe,be;function Ae(){var ke=d[j]||[];be._traceIndices=ke.map(function(Te){return Te.index}),be._annIndices=[],be._shapeIndices=[],be._selectionIndices=[],be._imgIndices=[],be._subplotsWith=[],be._counterAxes=[],be._name=be._attr=j,be._id=ee}function Be(ke,Te){return g.coerce(fe,be,r,ke,Te)}function Ie(ke,Te){return g.coerce2(fe,be,r,ke,Te)}function Ze(ke){return ke==="x"?G:he}function at(ke,Te){for(var Le=ke==="x"?$:J,rt=[],dt=0;dt<Le.length;dt++){var xt=Le[dt];xt!==Te&&!(S[xt]||{}).overlaying&&rt.push(h(xt))}return rt}var it={x:Ze("x"),y:Ze("y")},et=it.x.concat(it.y),lt={},Me=[];function ge(){var ke=fe.matches;v.test(ke)&&et.indexOf(ke)===-1&&(lt[ke]=fe.type,Me=Object.keys(lt))}var ce=M(S,E),ze=A(ce);for(I=0;I<Z.length;I++){j=Z[I],ee=h(j),ie=j.charAt(0),g.isPlainObject(S[j])||(S[j]={}),fe=S[j],be=e.newContainer(E,j,ie+"axis"),Ae();var tt=ie==="x"&&!f[j]&&u[j]||ie==="y"&&!P[j]&&y[j],nt=ie==="y"&&(!L[j]&&z[j]||F[j]),Qe={hasMinor:!0,letter:ie,font:E.font,outerTicks:B[j],showGrid:!O[j],data:d[j]||[],bgColor:ne,calendar:E.calendar,automargin:!0,visibleDflt:tt,reverseDflt:nt,autotypenumbersDflt:b,splomStash:((E._splomAxes||{})[ie]||{})[ee],noAutotickangles:ie==="y"};Be("uirevision",E.uirevision),o(fe,be,Be,Qe),a(fe,be,Be,Qe,E);var Ct=ze&&ie===ce.charAt(0),St=Ie("spikecolor",ze?be.color:void 0),Ot=Ie("spikethickness",ze?1.5:void 0),jt=Ie("spikedash",ze?"dot":void 0),ur=Ie("spikemode",ze?"across":void 0),ar=Ie("spikesnap"),Cr=Be("showspikes",!!Ct||!!St||!!Ot||!!jt||!!ur||!!ar);Cr||(delete be.spikecolor,delete be.spikethickness,delete be.spikedash,delete be.spikemode,delete be.spikesnap);var vr=c(fe.overlaying),_r=[0,1];if(E[vr]!==void 0){var yt=c(E[vr].anchor);E[yt]!==void 0&&(_r=E[yt].domain)}n(fe,be,Be,{letter:ie,counterAxes:it[ie],overlayableAxes:at(ie,j),grid:E.grid,overlayingDomain:_r}),Be("title.standoff"),ge(),be._input=fe}for(I=0;I<Me.length;){ee=Me[I++],j=c(ee),ie=j.charAt(0),g.isPlainObject(S[j])||(S[j]={}),fe=S[j],be=e.newContainer(E,j,ie+"axis"),Ae();var Fe={letter:ie,font:E.font,outerTicks:B[j],showGrid:!O[j],data:[],bgColor:ne,calendar:E.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:b,splomStash:((E._splomAxes||{})[ie]||{})[ee]};Be("uirevision",E.uirevision),be.type=lt[ee]||"linear",a(fe,be,Be,Fe,E),n(fe,be,Be,{letter:ie,counterAxes:it[ie],overlayableAxes:at(ie,j),grid:E.grid}),Be("fixedrange"),ge(),be._input=fe}var Ke=l("rangeslider","handleDefaults"),Ne=l("rangeselector","handleDefaults");for(I=0;I<$.length;I++)j=$[I],fe=S[j],be=E[j],Ke(S,E,j),be.type==="date"&&Ne(fe,be,E,J,be.calendar),Be("fixedrange");for(I=0;I<J.length;I++){j=J[I],fe=S[j],be=E[j];var Ee=E[c(be.anchor)],Ve=l("rangeslider","isVisible")(Ee);Be("fixedrange",Ve)}i.handleDefaults(S,E,{axIds:et.concat(Me).sort(s.idSort),axHasImage:F})}}}),ZO=Ye({"src/plots/cartesian/transition_axes.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=Bo(),e=Co();H.exports=function(r,o,a,i){var n=r._fullLayout;if(o.length===0){e.redrawComponents(r);return}function s(E){var m=E.xaxis,b=E.yaxis;n._defs.select("#"+E.clipId+"> rect").call(M.setTranslate,0,0).call(M.setScale,1,1),E.plot.call(M.setTranslate,m._offset,b._offset).call(M.setScale,1,1);var d=E.plot.selectAll(".scatterlayer .trace");d.selectAll(".point").call(M.setPointGroupScale,1,1),d.selectAll(".textpoint").call(M.setTextPointsScale,1,1),d.call(M.hideOutsideRangePoints,E)}function c(E,m){var b=E.plotinfo,d=b.xaxis,u=b.yaxis,y=d._length,f=u._length,P=!!E.xr1,L=!!E.yr1,z=[];if(P){var F=A.simpleMap(E.xr0,d.r2l),B=A.simpleMap(E.xr1,d.r2l),O=F[1]-F[0],I=B[1]-B[0];z[0]=(F[0]*(1-m)+m*B[0]-F[0])/(F[1]-F[0])*y,z[2]=y*(1-m+m*I/O),d.range[0]=d.l2r(F[0]*(1-m)+m*B[0]),d.range[1]=d.l2r(F[1]*(1-m)+m*B[1])}else z[0]=0,z[2]=y;if(L){var N=A.simpleMap(E.yr0,u.r2l),U=A.simpleMap(E.yr1,u.r2l),W=N[1]-N[0],Q=U[1]-U[0];z[1]=(N[1]*(1-m)+m*U[1]-N[1])/(N[0]-N[1])*f,z[3]=f*(1-m+m*Q/W),u.range[0]=d.l2r(N[0]*(1-m)+m*U[0]),u.range[1]=u.l2r(N[1]*(1-m)+m*U[1])}else z[1]=0,z[3]=f;e.drawOne(r,d,{skipTitle:!0}),e.drawOne(r,u,{skipTitle:!0}),e.redrawComponents(r,[d._id,u._id]);var ue=P?y/z[2]:1,se=L?f/z[3]:1,he=P?z[0]:0,G=L?z[1]:0,$=P?z[0]/z[2]*y:0,J=L?z[1]/z[3]*f:0,Z=d._offset-$,re=u._offset-J;b.clipRect.call(M.setTranslate,he,G).call(M.setScale,1/ue,1/se),b.plot.call(M.setTranslate,Z,re).call(M.setScale,ue,se),M.setPointGroupScale(b.zoomScalePts,1/ue,1/se),M.setTextPointsScale(b.zoomScaleTxt,1/ue,1/se)}var h;i&&(h=i());function v(){for(var E={},m=0;m<o.length;m++){var b=o[m],d=b.plotinfo.xaxis,u=b.plotinfo.yaxis;b.xr1&&(E[d._name+".range"]=b.xr1.slice()),b.yr1&&(E[u._name+".range"]=b.yr1.slice())}return h&&h(),x.call("relayout",r,E).then(function(){for(var y=0;y<o.length;y++)s(o[y].plotinfo)})}function p(){for(var E={},m=0;m<o.length;m++){var b=o[m],d=b.plotinfo.xaxis,u=b.plotinfo.yaxis;b.xr0&&(E[d._name+".range"]=b.xr0.slice()),b.yr0&&(E[u._name+".range"]=b.yr0.slice())}return x.call("relayout",r,E).then(function(){for(var y=0;y<o.length;y++)s(o[y].plotinfo)})}var T,l,_,w=g.ease(a.easing);r._transitionData._interruptCallbacks.push(function(){return window.cancelAnimationFrame(_),_=null,p()});function S(){l=Date.now();for(var E=Math.min(1,(l-T)/a.duration),m=w(E),b=0;b<o.length;b++)c(o[b],m);l-T>a.duration?(v(),_=window.cancelAnimationFrame(S)):_=window.requestAnimationFrame(S)}return T=Date.now(),_=window.requestAnimationFrame(S),Promise.resolve()}}}),Pf=Ye({"src/plots/cartesian/index.js"(X){"use strict";var H=_n(),g=Hn(),x=ta(),A=Gu(),M=Bo(),e=jh().getModuleCalcData,t=Xc(),r=wh(),o=vd(),a=x.ensureSingle;function i(T,l,_){return x.ensureSingle(T,l,_,function(w){w.datum(_)})}var n=r.zindexSeparator;X.name="cartesian",X.attr=["xaxis","yaxis"],X.idRoot=["x","y"],X.idRegex=r.idRegex,X.attrRegex=r.attrRegex,X.attributes=GO(),X.layoutAttributes=Vh(),X.supplyLayoutDefaults=WO(),X.transitionAxes=ZO(),X.finalizeSubplots=function(T,l){var _=l._subplots,w=_.xaxis,S=_.yaxis,E=_.cartesian,m=E,b={},d={},u,y,f;for(u=0;u<m.length;u++){var P=m[u].split("y");b[P[0]]=1,d["y"+P[1]]=1}for(u=0;u<w.length;u++)y=w[u],b[y]||(f=(T[t.id2name(y)]||{}).anchor,r.idRegex.y.test(f)||(f="y"),E.push(y+f),m.push(y+f),d[f]||(d[f]=1,x.pushUnique(S,f)));for(u=0;u<S.length;u++)f=S[u],d[f]||(y=(T[t.id2name(f)]||{}).anchor,r.idRegex.x.test(y)||(y="x"),E.push(y+f),m.push(y+f),b[y]||(b[y]=1,x.pushUnique(w,y)));if(!m.length){y="",f="";for(var L in T)if(r.attrRegex.test(L)){var z=L.charAt(0);z==="x"?(!y||+L.substr(5)<+y.substr(5))&&(y=L):(!f||+L.substr(5)<+f.substr(5))&&(f=L)}y=y?t.name2id(y):"x",f=f?t.name2id(f):"y",w.push(y),S.push(f),E.push(y+f)}},X.plot=function(T,l,_,w){var S=T._fullLayout,E=S._subplots.cartesian,m=T.calcdata,b;if(!Array.isArray(l))for(l=[],b=0;b<m.length;b++)l.push(b);for(var d=S._zindices,u=0;u<d.length;u++){var y=d[u];for(b=0;b<E.length;b++){var f=E[b],P=S._plots[f];if(u>0){var L=P.id;if(L.indexOf(n)!==-1)continue;L+=n+(u+1),P=x.extendFlat({},P,{id:L,plot:S._cartesianlayer.selectAll(".subplot").select("."+L)})}for(var z=[],F,B=0;B<m.length;B++){var O=m[B],I=O[0].trace;y===(I.zorder||0)&&I.xaxis+I.yaxis===f&&((l.indexOf(I.index)!==-1||I.carpet)&&(F&&F[0].trace.xaxis+F[0].trace.yaxis===f&&["tonextx","tonexty","tonext"].indexOf(I.fill)!==-1&&z.indexOf(F)===-1&&z.push(F),z.push(O)),F=O)}s(T,P,z,_,w)}}};function s(T,l,_,w,S){for(var E=r.traceLayerClasses,m=T._fullLayout,b=m._zindices,d=m._modules,u,y,f,P=[],L=[],z=0;z<b.length;z++)for(var F=b[z],B=0;B<d.length;B++){u=d[B];var O=u.name,I=g.modules[O].categories;if(I.svg){var N=u.layerName||O+"layer",U=N+(z?Number(z)+1:""),W=u.plot;y=e(_,W,F),f=y[0],_=y[1],f.length&&P.push({i:E.indexOf(N),zindex:z,className:U,plotMethod:W,cdModule:f}),I.zoomScale&&L.push("."+U)}}P.sort(function(se,he){return(se.zindex||0)-(he.zindex||0)||se.i-he.i});var Q=l.plot.selectAll("g.mlayer").data(P,function(se){return se.className});if(Q.enter().append("g").attr("class",function(se){return se.className}).classed("mlayer",!0).classed("rangeplot",l.isRangePlot),Q.exit().remove(),Q.order(),Q.each(function(se){var he=H.select(this),G=se.className;se.plotMethod(T,l,se.cdModule,he,w,S),r.clipOnAxisFalseQuery.indexOf("."+G)===-1&&M.setClipUrl(he,l.layerClipId,T)}),m._has("scattergl")&&(u=g.getModule("scattergl"),f=e(_,u)[0],u.plot(T,l,f)),!T._context.staticPlot&&(l._hasClipOnAxisFalse&&(l.clipOnAxisFalseTraces=l.plot.selectAll(r.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),L.length)){var ue=l.plot.selectAll(L.join(",")).selectAll(".trace");l.zoomScalePts=ue.selectAll("path.point"),l.zoomScaleTxt=ue.selectAll(".textpoint")}}X.clean=function(T,l,_,w){var S=w._plots||{},E=l._plots||{},m=w._subplots||{},b,d,u;if(w._hasOnlyLargeSploms&&!l._hasOnlyLargeSploms)for(u in S)b=S[u],b.plotgroup&&b.plotgroup.remove();var y=w._has&&w._has("gl"),f=l._has&&l._has("gl");if(y&&!f)for(u in S)b=S[u],b._scene&&b._scene.destroy();if(m.xaxis&&m.yaxis){var P=t.listIds({_fullLayout:w});for(d=0;d<P.length;d++){var L=P[d];l[t.id2name(L)]||w._infolayer.selectAll(".g-"+L+"title").remove()}}var z=w._has&&w._has("cartesian"),F=l._has&&l._has("cartesian");if(z&&!F)v(w._cartesianlayer.selectAll(".subplot"),w),w._defs.selectAll(".axesclip").remove(),delete w._axisConstraintGroups,delete w._axisMatchGroups;else if(m.cartesian)for(d=0;d<m.cartesian.length;d++){var B=m.cartesian[d];if(B.indexOf(n)===-1&&!E[B]){var O="."+B+",."+B+"-x,."+B+"-y";w._cartesianlayer.selectAll(O).remove(),p(B,w)}}},X.drawFramework=function(T){var l=T._fullLayout,_=T.calcdata,w,S={};for(w=0;w<_.length;w++){var E=_[w][0],m=E.trace,b=m.zorder||0;S[b]||(S[b]=[]),S[b].push(E)}var d=Object.keys(S).map(Number).sort(x.sorterAsc);d.length||(d=[0]),l._zindices=d;var u=c(T),y=u.length,f=[];for(w=0;w<y;w++)f[w]=u[w].slice();for(var P=1;P<d.length;P++){var L=[];for(w=0;w<y;w++)L[w]=u[w].slice(),L[w][0]+=n+(P+1);f=f.concat(L)}var z=l._cartesianlayer.selectAll(".subplot").data(f,String);z.enter().append("g").attr("class",function(F){return"subplot "+F[0]}),z.order(),z.exit().call(v,l),z.each(function(F){var B=F[0],O=B.indexOf(n),I=O!==-1,N=I?B.slice(0,O):B,U=l._plots[B];U||(U=x.extendFlat({},l._plots[N]),U&&(U.id=B,l._plots[B]=U,l._subplots.cartesian.push(B))),U&&(U.plotgroup=H.select(this),h(T,U),I||(U.draglayer=a(l._draggers,"g",B)))})},X.rangePlot=function(T,l,_){h(T,l),s(T,l,_),A.style(T)};function c(T){var l=T._fullLayout,_=l._zindices.length,w=l._subplots.cartesian,S=w.length,E,m,b,d,u,y,f=[],P=[];for(E=0;E<S;E++){b=w[E],d=l._plots[b],u=d.xaxis,y=d.yaxis;var L=u._mainAxis,z=y._mainAxis,F=L._id+z._id,B=l._plots[F];d.overlays=[],F!==b&&B?(d.mainplot=F,d.mainplotinfo=B,P.push(b)):(d.mainplot=void 0,d.mainplotinfo=void 0,f.push(b))}for(E=0;E<P.length;E++)b=P[E],d=l._plots[b],d.mainplotinfo.overlays.push(d);var O=f.concat(P),I=[];for(E=0;E<S;E++){b=O[E],d=l._plots[b],u=d.xaxis,y=d.yaxis;for(var N=[],U=1;U<=_;U++){var W="";for(U>1&&(W+=n+U),N.push(b+W),m=0;m<d.overlays.length;m++)N.push(d.overlays[m].id+W)}N=N.concat([u.layer,y.layer,u.overlaying||"",y.overlaying||""]),I.push(N)}return I}function h(T,l){var _=T._fullLayout,w=l.plotgroup,S=l.id,E=S.indexOf(n),m=E!==-1,b=r.layerValue2layerClass[l.xaxis.layer],d=r.layerValue2layerClass[l.yaxis.layer],u=_._hasOnlyLargeSploms,y=_._zindices.length>1,f=l.mainplotinfo;if(!l.mainplot||y)if(u)l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.xaxislayer=a(w,"g","xaxislayer-above"),l.yaxislayer=a(w,"g","yaxislayer-above");else{if(!m){var P=a(w,"g","layer-subplot");l.shapelayer=a(P,"g","shapelayer"),l.imagelayer=a(P,"g","imagelayer"),f&&y?(l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer):(l.minorGridlayer=a(w,"g","minor-gridlayer"),l.gridlayer=a(w,"g","gridlayer"),l.zerolinelayer=a(w,"g","zerolinelayer"));var L=a(w,"g","layer-between");l.shapelayerBetween=a(L,"g","shapelayer"),l.imagelayerBetween=a(L,"g","imagelayer"),a(w,"path","xlines-below"),a(w,"path","ylines-below"),l.overlinesBelow=a(w,"g","overlines-below"),a(w,"g","xaxislayer-below"),a(w,"g","yaxislayer-below"),l.overaxesBelow=a(w,"g","overaxes-below")}l.overplot=a(w,"g","overplot"),l.plot=a(l.overplot,"g",S),m||(l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.overlinesAbove=a(w,"g","overlines-above"),a(w,"g","xaxislayer-above"),a(w,"g","yaxislayer-above"),l.overaxesAbove=a(w,"g","overaxes-above"),l.xlines=w.select(".xlines-"+b),l.ylines=w.select(".ylines-"+d),l.xaxislayer=w.select(".xaxislayer-"+b),l.yaxislayer=w.select(".yaxislayer-"+d))}else{var z=f.plotgroup,F=S+"-x",B=S+"-y";l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer,a(f.overlinesBelow,"path",F),a(f.overlinesBelow,"path",B),a(f.overaxesBelow,"g",F),a(f.overaxesBelow,"g",B),l.plot=a(f.overplot,"g",S),a(f.overlinesAbove,"path",F),a(f.overlinesAbove,"path",B),a(f.overaxesAbove,"g",F),a(f.overaxesAbove,"g",B),l.xlines=z.select(".overlines-"+b).select("."+F),l.ylines=z.select(".overlines-"+d).select("."+B),l.xaxislayer=z.select(".overaxes-"+b).select("."+F),l.yaxislayer=z.select(".overaxes-"+d).select("."+B)}m||(u||(i(l.minorGridlayer,"g",l.xaxis._id),i(l.minorGridlayer,"g",l.yaxis._id),l.minorGridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort),i(l.gridlayer,"g",l.xaxis._id),i(l.gridlayer,"g",l.yaxis._id),l.gridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort)),l.xlines.style("fill","none").classed("crisp",!0),l.ylines.style("fill","none").classed("crisp",!0))}function v(T,l){if(T){var _={};T.each(function(d){var u=d[0],y=H.select(this);y.remove(),p(u,l),_[u]=!0});for(var w in l._plots)for(var S=l._plots[w],E=S.overlays||[],m=0;m<E.length;m++){var b=E[m];_[b.id]&&b.plot.selectAll(".trace").remove()}}}function p(T,l){l._draggers.selectAll("g."+T).remove(),l._defs.select("#clip"+l._uid+T+"plot").remove()}X.toSVG=function(T){var l=T._fullLayout._glimages,_=H.select(T).selectAll(".svg-container"),w=_.filter(function(E,m){return m===_.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function S(){var E=this,m=E.toDataURL("image/png"),b=l.append("svg:image");b.attr({xmlns:o.svg,"xlink:href":m,preserveAspectRatio:"none",x:0,y:0,width:E.style.width,height:E.style.height})}w.each(S)},X.updateFx=LS().updateFx}}),XO=Ye({"src/traces/scatter/index.js"(X,H){"use strict";var g=uu();H.exports={hasLines:g.hasLines,hasMarkers:g.hasMarkers,hasText:g.hasText,isBubble:g.isBubble,attributes:Pc(),layoutAttributes:g2(),supplyDefaults:jO(),crossTraceDefaults:RS(),supplyLayoutDefaults:VO(),calc:Bd().calc,crossTraceCalc:HO(),arraysToCalcdata:Av(),plot:o1(),colorbar:cp(),formatLabels:L2(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:l1(),selectPoints:u1(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Pf(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}}}),YO=Ye({"src/components/annotations/draw_arrow_head.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ES(),M=ta(),e=M.strScale,t=M.strRotate,r=M.strTranslate;H.exports=function(a,i,n){var s=a.node(),c=A[n.arrowhead||0],h=A[n.startarrowhead||0],v=(n.arrowwidth||1)*(n.arrowsize||1),p=(n.arrowwidth||1)*(n.startarrowsize||1),T=i.indexOf("start")>=0,l=i.indexOf("end")>=0,_=c.backoff*v+n.standoff,w=h.backoff*p+n.startstandoff,S,E,m,b;if(s.nodeName==="line"){S={x:+a.attr("x1"),y:+a.attr("y1")},E={x:+a.attr("x2"),y:+a.attr("y2")};var d=S.x-E.x,u=S.y-E.y;if(m=Math.atan2(u,d),b=m+Math.PI,_&&w&&_+w>Math.sqrt(d*d+u*u)){W();return}if(_){if(_*_>d*d+u*u){W();return}var y=_*Math.cos(m),f=_*Math.sin(m);E.x+=y,E.y+=f,a.attr({x2:E.x,y2:E.y})}if(w){if(w*w>d*d+u*u){W();return}var P=w*Math.cos(m),L=w*Math.sin(m);S.x-=P,S.y-=L,a.attr({x1:S.x,y1:S.y})}}else if(s.nodeName==="path"){var z=s.getTotalLength(),F="";if(z<_+w){W();return}var B=s.getPointAtLength(0),O=s.getPointAtLength(.1);m=Math.atan2(B.y-O.y,B.x-O.x),S=s.getPointAtLength(Math.min(w,z)),F="0px,"+w+"px,";var I=s.getPointAtLength(z),N=s.getPointAtLength(z-.1);b=Math.atan2(I.y-N.y,I.x-N.x),E=s.getPointAtLength(Math.max(0,z-_));var U=F?w+_:_;F+=z-U+"px,"+z+"px",a.style("stroke-dasharray",F)}function W(){a.style("stroke-dasharray","0px,100px")}function Q(ue,se,he,G){ue.path&&(ue.noRotate&&(he=0),g.select(s.parentNode).append("path").attr({class:a.attr("class"),d:ue.path,transform:r(se.x,se.y)+t(he*180/Math.PI)+e(G)}).style({fill:x.rgb(n.arrowcolor),"stroke-width":0}))}T&&Q(h,S,m,p),l&&Q(c,E,b,v)}}}),R2=Ye({"src/components/annotations/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Co(),r=Fn(),o=Bo(),a=Lc(),i=jl(),n=Kd(),s=bp(),c=cl().arrayEditor,h=YO();H.exports={draw:v,drawOne:p,drawRaw:l};function v(_){var w=_._fullLayout;w._infolayer.selectAll(".annotation").remove();for(var S=0;S<w.annotations.length;S++)w.annotations[S].visible&&p(_,S);return A.previousPromises(_)}function p(_,w){var S=_._fullLayout,E=S.annotations[w]||{},m=t.getFromId(_,E.xref),b=t.getFromId(_,E.yref);m&&m.setScale(),b&&b.setScale(),l(_,E,w,!1,m,b)}function T(_,w,S,E,m){var b=m[S],d=m[S+"ref"],u=S.indexOf("y")!==-1,y=t.getRefType(d)==="domain",f=u?E.h:E.w;return _?y?b+(u?-w:w)/_._length:_.p2r(_.r2p(b)+w):b+(u?-w:w)/f}function l(_,w,S,E,m,b){var d=_._fullLayout,u=_._fullLayout._size,y=_._context.edits,f,P;E?(f="annotation-"+E,P=E+".annotations"):(f="annotation",P="annotations");var L=c(_.layout,P,w),z=L.modifyBase,F=L.modifyItem,B=L.getUpdateObj;d._infolayer.selectAll("."+f+'[data-index="'+S+'"]').remove();var O="clip"+d._uid+"_ann"+S;if(!w._input||w.visible===!1){g.selectAll("#"+O).remove();return}var I={x:{},y:{}},N=+w.textangle||0,U=d._infolayer.append("g").classed(f,!0).attr("data-index",String(S)).style("opacity",w.opacity),W=U.append("g").classed("annotation-text-g",!0),Q=y[w.showarrow?"annotationTail":"annotationPosition"],ue=w.captureevents||y.annotationText||Q;function se(Ae){var Be={index:S,annotation:w._input,fullAnnotation:w,event:Ae};return E&&(Be.subplotId=E),Be}var he=W.append("g").style("pointer-events",ue?"all":null).call(n,"pointer").on("click",function(){_._dragging=!1,_.emit("plotly_clickannotation",se(g.event))});w.hovertext&&he.on("mouseover",function(){var Ae=w.hoverlabel,Be=Ae.font,Ie=this.getBoundingClientRect(),Ze=_.getBoundingClientRect();a.loneHover({x0:Ie.left-Ze.left,x1:Ie.right-Ze.left,y:(Ie.top+Ie.bottom)/2-Ze.top,text:w.hovertext,color:Ae.bgcolor,borderColor:Ae.bordercolor,fontFamily:Be.family,fontSize:Be.size,fontColor:Be.color,fontWeight:Be.weight,fontStyle:Be.style,fontVariant:Be.variant,fontShadow:Be.fontShadow,fontLineposition:Be.fontLineposition,fontTextcase:Be.fontTextcase},{container:d._hoverlayer.node(),outerContainer:d._paper.node(),gd:_})}).on("mouseout",function(){a.loneUnhover(d._hoverlayer.node())});var G=w.borderwidth,$=w.borderpad,J=G+$,Z=he.append("rect").attr("class","bg").style("stroke-width",G+"px").call(r.stroke,w.bordercolor).call(r.fill,w.bgcolor),re=w.width||w.height,ne=d._topclips.selectAll("#"+O).data(re?[0]:[]);ne.enter().append("clipPath").classed("annclip",!0).attr("id",O).append("rect"),ne.exit().remove();var j=w.font,ee=d._meta?M.templateString(w.text,d._meta):w.text,ie=he.append("text").classed("annotation-text",!0).text(ee);function fe(Ae){return Ae.call(o.font,j).attr({"text-anchor":{left:"start",right:"end"}[w.align]||"middle"}),i.convertToTspans(Ae,_,be),Ae}function be(){var Ae=ie.selectAll("a");if(Ae.size()===1&&Ae.text()===ie.text()){var Be=he.insert("a",":first-child").attr({"xlink:xlink:href":Ae.attr("xlink:href"),"xlink:xlink:show":Ae.attr("xlink:show")}).style({cursor:"pointer"});Be.node().appendChild(Z.node())}var Ie=he.select(".annotation-text-math-group"),Ze=!Ie.empty(),at=o.bBox((Ze?Ie:ie).node()),it=at.width,et=at.height,lt=w.width||it,Me=w.height||et,ge=Math.round(lt+2*J),ce=Math.round(Me+2*J);function ze(Ga,Ma){return Ma==="auto"&&(Ga<1/3?Ma="left":Ga>2/3?Ma="right":Ma="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ma]}for(var tt=!1,nt=["x","y"],Qe=0;Qe<nt.length;Qe++){var Ct=nt[Qe],St=w[Ct+"ref"]||Ct,Ot=w["a"+Ct+"ref"],jt={x:m,y:b}[Ct],ur=(N+(Ct==="x"?0:-90))*Math.PI/180,ar=ge*Math.cos(ur),Cr=ce*Math.sin(ur),vr=Math.abs(ar)+Math.abs(Cr),_r=w[Ct+"anchor"],yt=w[Ct+"shift"]*(Ct==="x"?1:-1),Fe=I[Ct],Ke,Ne,Ee,Ve,ke,Te=t.getRefType(St);if(jt&&Te!=="domain"){var Le=jt.r2fraction(w[Ct]);(Le<0||Le>1)&&(Ot===St?(Le=jt.r2fraction(w["a"+Ct]),(Le<0||Le>1)&&(tt=!0)):tt=!0),Ke=jt._offset+jt.r2p(w[Ct]),Ve=.5}else{var rt=Te==="domain";Ct==="x"?(Ee=w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.l+u.w*Ee):(Ee=1-w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.t+u.h*Ee),Ve=w.showarrow?.5:Ee}if(w.showarrow){Fe.head=Ke;var dt=w["a"+Ct];if(ke=ar*ze(.5,w.xanchor)-Cr*ze(.5,w.yanchor),Ot===St){var xt=t.getRefType(Ot);xt==="domain"?(Ct==="y"&&(dt=1-dt),Fe.tail=jt._offset+jt._length*dt):xt==="paper"?Ct==="y"?(dt=1-dt,Fe.tail=u.t+u.h*dt):Fe.tail=u.l+u.w*dt:Fe.tail=jt._offset+jt.r2p(dt),Ne=ke}else Fe.tail=Ke+dt,Ne=ke+dt;Fe.text=Fe.tail+ke;var It=d[Ct==="x"?"width":"height"];if(St==="paper"&&(Fe.head=M.constrain(Fe.head,1,It-1)),Ot==="pixel"){var Bt=-Math.max(Fe.tail-3,Fe.text),Gt=Math.min(Fe.tail+3,Fe.text)-It;Bt>0?(Fe.tail+=Bt,Fe.text+=Bt):Gt>0&&(Fe.tail-=Gt,Fe.text-=Gt)}Fe.tail+=yt,Fe.head+=yt}else ke=vr*ze(Ve,_r),Ne=ke,Fe.text=Ke+ke;Fe.text+=yt,ke+=yt,Ne+=yt,w["_"+Ct+"padplus"]=vr/2+Ne,w["_"+Ct+"padminus"]=vr/2-Ne,w["_"+Ct+"size"]=vr,w["_"+Ct+"shift"]=ke}if(tt){he.remove();return}var Kt=0,sr=0;if(w.align!=="left"&&(Kt=(lt-it)*(w.align==="center"?.5:1)),w.valign!=="top"&&(sr=(Me-et)*(w.valign==="middle"?.5:1)),Ze)Ie.select("svg").attr({x:J+Kt-1,y:J+sr}).call(o.setClipUrl,re?O:null,_);else{var sa=J+sr-at.top,Aa=J+Kt-at.left;ie.call(i.positionText,Aa,sa).call(o.setClipUrl,re?O:null,_)}ne.select("rect").call(o.setRect,J,J,lt,Me),Z.call(o.setRect,G/2,G/2,ge-G,ce-G),he.call(o.setTranslate,Math.round(I.x.text-ge/2),Math.round(I.y.text-ce/2)),W.attr({transform:"rotate("+N+","+I.x.text+","+I.y.text+")"});var La=function(Ga,Ma){U.selectAll(".annotation-arrow-g").remove();var Ua=I.x.head,ni=I.y.head,Wt=I.x.tail+Ga,zt=I.y.tail+Ma,Vt=I.x.text+Ga,Ut=I.y.text+Ma,xr=M.rotationXYMatrix(N,Vt,Ut),Zr=M.apply2DTransform(xr),pa=M.apply2DTransform2(xr),Xr=+Z.attr("width"),Ea=+Z.attr("height"),Fa=Vt-.5*Xr,qa=Fa+Xr,ya=Ut-.5*Ea,$a=ya+Ea,mt=[[Fa,ya,Fa,$a],[Fa,$a,qa,$a],[qa,$a,qa,ya],[qa,ya,Fa,ya]].map(pa);if(!mt.reduce(function(kt,ir){return kt^!!M.segmentsIntersect(Ua,ni,Ua+1e6,ni+1e6,ir[0],ir[1],ir[2],ir[3])},!1)){mt.forEach(function(kt){var ir=M.segmentsIntersect(Wt,zt,Ua,ni,kt[0],kt[1],kt[2],kt[3]);ir&&(Wt=ir.x,zt=ir.y)});var gt=w.arrowwidth,Er=w.arrowcolor,kr=w.arrowside,br=U.append("g").style({opacity:r.opacity(Er)}).classed("annotation-arrow-g",!0),Tr=br.append("path").attr("d","M"+Wt+","+zt+"L"+Ua+","+ni).style("stroke-width",gt+"px").call(r.stroke,r.rgb(Er));if(h(Tr,kr,w),y.annotationPosition&&Tr.node().parentNode&&!E){var Mr=Ua,Fr=ni;if(w.standoff){var Lr=Math.sqrt(Math.pow(Ua-Wt,2)+Math.pow(ni-zt,2));Mr+=w.standoff*(Wt-Ua)/Lr,Fr+=w.standoff*(zt-ni)/Lr}var Jr=br.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Wt-Mr)+","+(zt-Fr),transform:e(Mr,Fr)}).style("stroke-width",gt+6+"px").call(r.stroke,"rgba(0,0,0,0)").call(r.fill,"rgba(0,0,0,0)"),oa,ca;s.init({element:Jr.node(),gd:_,prepFn:function(){var kt=o.getTranslate(he);oa=kt.x,ca=kt.y,m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0)},moveFn:function(kt,ir){var mr=Zr(oa,ca),$r=mr[0]+kt,ma=mr[1]+ir;he.call(o.setTranslate,$r,ma),F("x",T(m,kt,"x",u,w)),F("y",T(b,ir,"y",u,w)),w.axref===w.xref&&F("ax",T(m,kt,"ax",u,w)),w.ayref===w.yref&&F("ay",T(b,ir,"ay",u,w)),br.attr("transform",e(kt,ir)),W.attr({transform:"rotate("+N+","+$r+","+ma+")"})},doneFn:function(){x.call("_guiRelayout",_,B());var kt=document.querySelector(".js-notes-box-panel");kt&&kt.redraw(kt.selectedObj)}})}}};if(w.showarrow&&La(0,0),Q){var ka;s.init({element:he.node(),gd:_,prepFn:function(){ka=W.attr("transform")},moveFn:function(Ga,Ma){var Ua="pointer";if(w.showarrow)w.axref===w.xref?F("ax",T(m,Ga,"ax",u,w)):F("ax",w.ax+Ga),w.ayref===w.yref?F("ay",T(b,Ma,"ay",u.w,w)):F("ay",w.ay+Ma),La(Ga,Ma);else{if(E)return;var ni,Wt;if(m)ni=T(m,Ga,"x",u,w);else{var zt=w._xsize/u.w,Vt=w.x+(w._xshift-w.xshift)/u.w-zt/2;ni=s.align(Vt+Ga/u.w,zt,0,1,w.xanchor)}if(b)Wt=T(b,Ma,"y",u,w);else{var Ut=w._ysize/u.h,xr=w.y-(w._yshift+w.yshift)/u.h-Ut/2;Wt=s.align(xr-Ma/u.h,Ut,0,1,w.yanchor)}F("x",ni),F("y",Wt),(!m||!b)&&(Ua=s.getCursor(m?.5:ni,b?.5:Wt,w.xanchor,w.yanchor))}W.attr({transform:e(Ga,Ma)+ka}),n(he,Ua)},clickFn:function(Ga,Ma){w.captureevents&&_.emit("plotly_clickannotation",se(Ma))},doneFn:function(){n(he),x.call("_guiRelayout",_,B());var Ga=document.querySelector(".js-notes-box-panel");Ga&&Ga.redraw(Ga.selectedObj)}})}}y.annotationText?ie.call(i.makeEditable,{delegate:he,gd:_}).call(fe).on("edit",function(Ae){w.text=Ae,this.call(fe),F("text",Ae),m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0),x.call("_guiRelayout",_,B())}):ie.call(fe)}}}),KO=Ye({"src/components/annotations/click.js"(X,H){"use strict";var g=ta(),x=Hn(),A=cl().arrayEditor;H.exports={hasClickToShow:M,onClick:e};function M(o,a){var i=t(o,a);return i.on.length>0||i.explicitOff.length>0}function e(o,a){var i=t(o,a),n=i.on,s=i.off.concat(i.explicitOff),c={},h=o._fullLayout.annotations,v,p;if(n.length||s.length){for(v=0;v<n.length;v++)p=A(o.layout,"annotations",h[n[v]]),p.modifyItem("visible",!0),g.extendFlat(c,p.getUpdateObj());for(v=0;v<s.length;v++)p=A(o.layout,"annotations",h[s[v]]),p.modifyItem("visible",!1),g.extendFlat(c,p.getUpdateObj());return x.call("update",o,{},c)}}function t(o,a){var i=o._fullLayout.annotations,n=[],s=[],c=[],h=(a||[]).length,v,p,T,l,_,w,S,E;for(v=0;v<i.length;v++)if(T=i[v],l=T.clicktoshow,l){for(p=0;p<h;p++)if(_=a[p],w=_.xaxis,S=_.yaxis,w._id===T.xref&&S._id===T.yref&&w.d2r(_.x)===r(T._xclick,w)&&S.d2r(_.y)===r(T._yclick,S)){T.visible?l==="onout"?E=s:E=c:E=n,E.push(v);break}p===h&&T.visible&&l==="onout"&&s.push(v)}return{on:n,off:s,explicitOff:c}}function r(o,a){return a.type==="log"?a.l2r(o):a.d2r(o)}}}),OS=Ye({"src/components/annotations/common_defaults.js"(X,H){"use strict";var g=ta(),x=Fn();H.exports=function(M,e,t,r){r("opacity");var o=r("bgcolor"),a=r("bordercolor"),i=x.opacity(a);r("borderpad");var n=r("borderwidth"),s=r("showarrow");r("text",s?" ":t._dfltTitle.annotation),r("textangle"),g.coerceFont(r,"font",t.font),r("width"),r("align");var c=r("height");if(c&&r("valign"),s){var h=r("arrowside"),v,p;h.indexOf("end")!==-1&&(v=r("arrowhead"),p=r("arrowsize")),h.indexOf("start")!==-1&&(r("startarrowhead",v),r("startarrowsize",p)),r("arrowcolor",i?e.bordercolor:x.defaultLine),r("arrowwidth",(i&&n||1)*2),r("standoff"),r("startstandoff")}var T=r("hovertext"),l=t.hoverlabel||{};if(T){var _=r("hoverlabel.bgcolor",l.bgcolor||(x.opacity(o)?x.rgb(o):x.defaultLine)),w=r("hoverlabel.bordercolor",l.bordercolor||x.contrast(_)),S=g.extendFlat({},l.font);S.color||(S.color=w),g.coerceFont(r,"hoverlabel.font",S)}r("captureevents",!!T)}}}),JO=Ye({"src/components/annotations/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=OS(),e=Kg();H.exports=function(o,a){A(o,a,{name:"annotations",handleItemDefaults:t})};function t(r,o,a){function i(u,y){return g.coerce(r,o,e,u,y)}var n=i("visible"),s=i("clicktoshow");if(n||s){M(r,o,a,i);for(var c=o.showarrow,h=["x","y"],v=[-10,-30],p={_fullLayout:a},T=0;T<2;T++){var l=h[T],_=x.coerceRef(r,o,p,l,"","paper");if(_!=="paper"){var w=x.getFromId(p,_);w._annIndices.push(o._index)}if(x.coercePosition(o,p,i,_,l,.5),c){var S="a"+l,E=x.coerceRef(r,o,p,S,"pixel",["pixel","paper"]);E!=="pixel"&&E!==_&&(E=o[S]="pixel");var m=E==="pixel"?v[T]:.4;x.coercePosition(o,p,i,E,S,m)}i(l+"anchor"),i(l+"shift")}if(g.noneOrAll(r,o,["x","y"]),c&&g.noneOrAll(r,o,["ax","ay"]),s){var b=i("xclick"),d=i("yclick");o._xclick=b===void 0?o.x:x.cleanPosition(b,p,o.xref),o._yclick=d===void 0?o.y:x.cleanPosition(d,p,o.yref)}}}}}),$O=Ye({"src/components/annotations/calc_autorange.js"(X,H){"use strict";var g=ta(),x=Co(),A=R2().draw;H.exports=function(r){var o=r._fullLayout,a=g.filterVisible(o.annotations);if(a.length&&r._fullData.length)return g.syncOrAsync([A,M],r)};function M(t){var r=t._fullLayout;g.filterVisible(r.annotations).forEach(function(o){var a=x.getFromId(t,o.xref),i=x.getFromId(t,o.yref),n=x.getRefType(o.xref),s=x.getRefType(o.yref);o._extremes={},n==="range"&&e(o,a),s==="range"&&e(o,i)})}function e(t,r){var o=r._id,a=o.charAt(0),i=t[a],n=t["a"+a],s=t[a+"ref"],c=t["a"+a+"ref"],h=t["_"+a+"padplus"],v=t["_"+a+"padminus"],p={x:1,y:-1}[a]*t[a+"shift"],T=3*t.arrowsize*t.arrowwidth||0,l=T+p,_=T-p,w=3*t.startarrowsize*t.arrowwidth||0,S=w+p,E=w-p,m;if(c===s){var b=x.findExtremes(r,[r.r2c(i)],{ppadplus:l,ppadminus:_}),d=x.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(h,S),ppadminus:Math.max(v,E)});m={min:[b.min[0],d.min[0]],max:[b.max[0],d.max[0]]}}else S=n?S+n:S,E=n?E-n:E,m=x.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(h,l,S),ppadminus:Math.max(v,_,E)});t._extremes[o]=m}}}),QO=Ye({"src/components/annotations/convert_coords.js"(X,H){"use strict";var g=jo(),x=c2();H.exports=function(M,e,t,r){e=e||{};var o=t==="log"&&e.type==="linear",a=t==="linear"&&e.type==="log";if(!(o||a))return;var i=M._fullLayout.annotations,n=e._id.charAt(0),s,c;function h(p){var T=s[p],l=null;o?l=x(T,e.range):l=Math.pow(10,T),g(l)||(l=null),r(c+p,l)}for(var v=0;v<i.length;v++)s=i[v],c="annotations["+v+"].",s[n+"ref"]===e._id&&h(n),s["a"+n+"ref"]===e._id&&h("a"+n)}}}),eB=Ye({"src/components/annotations/index.js"(X,H){"use strict";var g=R2(),x=KO();H.exports={moduleType:"component",name:"annotations",layoutAttributes:Kg(),supplyLayoutDefaults:JO(),includeBasePlot:P_()("annotations"),calcAutorange:$O(),draw:g.draw,drawOne:g.drawOne,drawRaw:g.drawRaw,hasClickToShow:x.hasClickToShow,onClick:x.onClick,convertCoords:QO()}}}),D2=Ye({"src/components/annotations3d/attributes.js"(X,H){"use strict";var g=Kg(),x=Ou().overrideAll,A=cl().templatedArray;H.exports=x(A("annotation",{visible:g.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:g.xanchor,xshift:g.xshift,yanchor:g.yanchor,yshift:g.yshift,text:g.text,textangle:g.textangle,font:g.font,width:g.width,height:g.height,opacity:g.opacity,align:g.align,valign:g.valign,bgcolor:g.bgcolor,bordercolor:g.bordercolor,borderpad:g.borderpad,borderwidth:g.borderwidth,showarrow:g.showarrow,arrowcolor:g.arrowcolor,arrowhead:g.arrowhead,startarrowhead:g.startarrowhead,arrowside:g.arrowside,arrowsize:g.arrowsize,startarrowsize:g.startarrowsize,arrowwidth:g.arrowwidth,standoff:g.standoff,startstandoff:g.startstandoff,hovertext:g.hovertext,hoverlabel:g.hoverlabel,captureevents:g.captureevents}),"calc","from-root")}}),tB=Ye({"src/components/annotations3d/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=OS(),e=D2();H.exports=function(o,a,i){A(o,a,{name:"annotations",handleItemDefaults:t,fullLayout:i.fullLayout})};function t(r,o,a,i){function n(h,v){return g.coerce(r,o,e,h,v)}function s(h){var v=h+"axis",p={_fullLayout:{}};return p._fullLayout[v]=a[v],x.coercePosition(o,p,n,h,h,.5)}var c=n("visible");c&&(M(r,o,i.fullLayout,n),s("x"),s("y"),s("z"),g.noneOrAll(r,o,["x","y","z"]),o.xref="x",o.yref="y",o.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),o.showarrow&&(o.axref="pixel",o.ayref="pixel",n("ax",-10),n("ay",-30),g.noneOrAll(r,o,["ax","ay"])))}}}),rB=Ye({"src/components/annotations3d/convert.js"(X,H){"use strict";var g=ta(),x=Co();H.exports=function(e){for(var t=e.fullSceneLayout,r=t.annotations,o=0;o<r.length;o++)A(r[o],e);e.fullLayout._infolayer.selectAll(".annotation-"+e.id).remove()};function A(M,e){var t=e.fullSceneLayout,r=t.domain,o=e.fullLayout._size,a={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};M._xa={},g.extendFlat(M._xa,a),x.setConvert(M._xa),M._xa._offset=o.l+r.x[0]*o.w,M._xa.l2p=function(){return .5*(1+M._pdata[0]/M._pdata[3])*o.w*(r.x[1]-r.x[0])},M._ya={},g.extendFlat(M._ya,a),x.setConvert(M._ya),M._ya._offset=o.t+(1-r.y[1])*o.h,M._ya.l2p=function(){return .5*(1-M._pdata[1]/M._pdata[3])*o.h*(r.y[1]-r.y[0])}}}}),BS=Ye({"src/plots/gl3d/project.js"(X,H){"use strict";function g(A,M){var e=[0,0,0,0],t,r;for(t=0;t<4;++t)for(r=0;r<4;++r)e[r]+=A[4*t+r]*M[t];return e}function x(A,M){var e=g(A.projection,g(A.view,g(A.model,[M[0],M[1],M[2],1])));return e}H.exports=x}}),aB=Ye({"src/components/annotations3d/draw.js"(X,H){"use strict";var g=R2().drawRaw,x=BS(),A=["x","y","z"];H.exports=function(e){for(var t=e.fullSceneLayout,r=e.dataScale,o=t.annotations,a=0;a<o.length;a++){for(var i=o[a],n=!1,s=0;s<3;s++){var c=A[s],h=i[c],v=t[c+"axis"],p=v.r2fraction(h);if(p<0||p>1){n=!0;break}}n?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+a+'"]').remove():(i._pdata=x(e.glplot.cameraParams,[t.xaxis.r2l(i.x)*r[0],t.yaxis.r2l(i.y)*r[1],t.zaxis.r2l(i.z)*r[2]]),g(e.graphDiv,i,a,e.id,i._xa,i._ya))}}}}),iB=Ye({"src/components/annotations3d/index.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:D2()}}},layoutAttributes:D2(),handleDefaults:tB(),includeBasePlot:A,convert:rB(),draw:aB()};function A(M,e){var t=g.subplotsRegistry.gl3d;if(t)for(var r=t.attrRegex,o=Object.keys(M),a=0;a<o.length;a++){var i=o[a];r.test(i)&&(M[i].annotations||[]).length&&(x.pushUnique(e._basePlotModules,t),x.pushUnique(e._subplots.gl3d,i))}}}}),NS=Ye({"src/components/shapes/attributes.js"(X,H){"use strict";var g=Kg(),x=Au(),A=Pc().line,M=Uh().dash,e=Oo().extendFlat,t=cl().templatedArray,r=L_(),o=Pl(),a=xs().shapeTexttemplateAttrs,i=p2();H.exports=t("shape",{visible:e({},o.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:e({},o.legend,{editType:"calc+arraydraw"}),legendgroup:e({},o.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:e({},o.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:x({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:e({},o.legendrank,{editType:"calc+arraydraw"}),legendwidth:e({},o.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:e({},g.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:e({},g.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:e({},A.color,{editType:"arraydraw"}),width:e({},A.width,{editType:"calc+arraydraw"}),dash:e({},M,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:a({},{keys:Object.keys(i)}),font:x({editType:"calc+arraydraw",colorEditType:"arraydraw"}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})}}),nB=Ye({"src/components/shapes/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=NS(),e=rg();H.exports=function(a,i){A(a,i,{name:"shapes",handleItemDefaults:r})};function t(o,a){return o?"bottom":a.indexOf("top")!==-1?"top":a.indexOf("bottom")!==-1?"bottom":"middle"}function r(o,a,i){function n(G,$){return g.coerce(o,a,M,G,$)}a._isShape=!0;var s=n("visible");if(s){var c=n("showlegend");c&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),g.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var h=n("path"),v=h?"path":"rect",p=n("type",v),T=p!=="path";T&&delete a.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var l=n("line.width");l&&(n("line.color"),n("line.dash"));for(var _=n("xsizemode"),w=n("ysizemode"),S=["x","y"],E=0;E<2;E++){var m=S[E],b=m+"anchor",d=m==="x"?_:w,u={_fullLayout:i},y,f,P,L=x.coerceRef(o,a,u,m,void 0,"paper"),z=x.getRefType(L);if(z==="range"?(y=x.getFromId(u,L),y._shapeIndices.push(a._index),P=e.rangeToShapePosition(y),f=e.shapePositionToRange(y),(y.type==="category"||y.type==="multicategory")&&(n(m+"0shift"),n(m+"1shift"))):f=P=g.identity,T){var F=.25,B=.75,O=m+"0",I=m+"1",N=o[O],U=o[I];o[O]=f(o[O],!0),o[I]=f(o[I],!0),d==="pixel"?(n(O,0),n(I,10)):(x.coercePosition(a,u,n,L,O,F),x.coercePosition(a,u,n,L,I,B)),a[O]=P(a[O]),a[I]=P(a[I]),o[O]=N,o[I]=U}if(d==="pixel"){var W=o[b];o[b]=f(o[b],!0),x.coercePosition(a,u,n,L,b,.25),a[b]=P(a[b]),o[b]=W}}T&&g.noneOrAll(o,a,["x0","x1","y0","y1"]);var Q=p==="line",ue,se;if(T&&(ue=n("label.texttemplate")),ue||(se=n("label.text")),se||ue){n("label.textangle");var he=n("label.textposition",Q?"middle":"middle center");n("label.xanchor"),n("label.yanchor",t(Q,he)),n("label.padding"),g.coerceFont(n,"label.font",i.font)}}}}}),oB=Ye({"src/components/shapes/draw_newshape/defaults.js"(X,H){"use strict";var g=Fn(),x=ta();function A(M,e){return M?"bottom":e.indexOf("top")!==-1?"top":e.indexOf("bottom")!==-1?"bottom":"middle"}H.exports=function(e,t,r){r("newshape.visible"),r("newshape.name"),r("newshape.showlegend"),r("newshape.legend"),r("newshape.legendwidth"),r("newshape.legendgroup"),r("newshape.legendgrouptitle.text"),x.coerceFont(r,"newshape.legendgrouptitle.font"),r("newshape.legendrank"),r("newshape.drawdirection"),r("newshape.layer"),r("newshape.fillcolor"),r("newshape.fillrule"),r("newshape.opacity");var o=r("newshape.line.width");if(o){var a=(e||{}).plot_bgcolor||"#FFF";r("newshape.line.color",g.contrast(a)),r("newshape.line.dash")}var i=e.dragmode==="drawline",n=r("newshape.label.text"),s=r("newshape.label.texttemplate");if(n||s){r("newshape.label.textangle");var c=r("newshape.label.textposition",i?"middle":"middle center");r("newshape.label.xanchor"),r("newshape.label.yanchor",A(i,c)),r("newshape.label.padding"),x.coerceFont(r,"newshape.label.font",t.font)}r("activeshape.fillcolor"),r("activeshape.opacity")}}}),sB=Ye({"src/components/shapes/calc_autorange.js"(X,H){"use strict";var g=ta(),x=Co(),A=E_(),M=rg();H.exports=function(i){var n=i._fullLayout,s=g.filterVisible(n.shapes);if(!(!s.length||!i._fullData.length))for(var c=0;c<s.length;c++){var h=s[c];h._extremes={};var v,p,T=x.getRefType(h.xref),l=x.getRefType(h.yref);h.xref!=="paper"&&T!=="domain"&&(v=x.getFromId(i,h.xref),p=o(v,h,A.paramIsX),p&&(h._extremes[v._id]=x.findExtremes(v,p,e(h)))),h.yref!=="paper"&&l!=="domain"&&(v=x.getFromId(i,h.yref),p=o(v,h,A.paramIsY),p&&(h._extremes[v._id]=x.findExtremes(v,p,t(h))))}};function e(a){return r(a.line.width,a.xsizemode,a.x0,a.x1,a.path,!1)}function t(a){return r(a.line.width,a.ysizemode,a.y0,a.y1,a.path,!0)}function r(a,i,n,s,c,h){var v=a/2,p=h;if(i==="pixel"){var T=c?M.extractPathCoords(c,h?A.paramIsY:A.paramIsX):[n,s],l=g.aggNums(Math.max,null,T),_=g.aggNums(Math.min,null,T),w=_<0?Math.abs(_)+v:v,S=l>0?l+v:v;return{ppad:v,ppadplus:p?w:S,ppadminus:p?S:w}}else return{ppad:v}}function o(a,i,n){var s=a._id.charAt(0)==="x"?"x":"y",c=a.type==="category"||a.type==="multicategory",h,v,p=0,T=0,l=c?a.r2c:a.d2c,_=i[s+"sizemode"]==="scaled";if(_?(h=i[s+"0"],v=i[s+"1"],c&&(p=i[s+"0shift"],T=i[s+"1shift"])):(h=i[s+"anchor"],v=i[s+"anchor"]),h!==void 0)return[l(h)+p,l(v)+T];if(i.path){var w=1/0,S=-1/0,E=i.path.match(A.segmentRE),m,b,d,u,y;for(a.type==="date"&&(l=M.decodeDate(l)),m=0;m<E.length;m++)b=E[m],d=n[b.charAt(0)].drawn,d!==void 0&&(u=E[m].substr(1).match(A.paramRE),!(!u||u.length<d)&&(y=l(u[d]),y<w&&(w=y),y>S&&(S=y)));if(S>=w)return[w,S]}}}}),lB=Ye({"src/components/shapes/index.js"(X,H){"use strict";var g=M2();H.exports={moduleType:"component",name:"shapes",layoutAttributes:NS(),supplyLayoutDefaults:nB(),supplyDrawNewShapeDefaults:oB(),includeBasePlot:P_()("shapes"),calcAutorange:sB(),draw:g.draw,drawOne:g.drawOne}}}),US=Ye({"src/components/images/attributes.js"(X,H){"use strict";var g=wh(),x=cl().templatedArray,A=L_();H.exports=x("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",g.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",g.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})}}),uB=Ye({"src/components/images/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=US(),e="images";H.exports=function(o,a){var i={name:e,handleItemDefaults:t};A(o,a,i)};function t(r,o,a){function i(_,w){return g.coerce(r,o,M,_,w)}var n=i("source"),s=i("visible",!!n);if(!s)return o;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var c={_fullLayout:a},h=["x","y"],v=0;v<2;v++){var p=h[v],T=x.coerceRef(r,o,c,p,"paper",void 0);if(T!=="paper"){var l=x.getFromId(c,T);l._imgIndices.push(o._index)}x.coercePosition(o,c,i,T,p,0)}return o}}}),cB=Ye({"src/components/images/draw.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Co(),M=Xc(),e=vd();H.exports=function(r){var o=r._fullLayout,a=[],i={},n=[],s,c;for(c=0;c<o.images.length;c++){var h=o.images[c];if(h.visible)if(h.layer==="below"&&h.xref!=="paper"&&h.yref!=="paper"){s=M.ref2id(h.xref)+M.ref2id(h.yref);var v=o._plots[s];if(!v){n.push(h);continue}v.mainplot&&(s=v.mainplot.id),i[s]||(i[s]=[]),i[s].push(h)}else h.layer==="above"?a.push(h):n.push(h)}var p={x:{left:{sizing:"xMin",offset:0},center:{sizing:"xMid",offset:-1/2},right:{sizing:"xMax",offset:-1}},y:{top:{sizing:"YMin",offset:0},middle:{sizing:"YMid",offset:-1/2},bottom:{sizing:"YMax",offset:-1}}};function T(u){var y=g.select(this);if(this._imgSrc!==u.source)if(y.attr("xmlns",e.svg),!r._context.staticPlot||u.source&&u.source.slice(0,5)==="data:")y.attr("xlink:href",u.source),this._imgSrc=u.source;else{var f=new Promise(function(P){var L=new Image;this.img=L,L.setAttribute("crossOrigin","anonymous"),L.onerror=z,L.onload=function(){var F=document.createElement("canvas");F.width=this.width,F.height=this.height;var B=F.getContext("2d",{willReadFrequently:!0});B.drawImage(this,0,0);var O=F.toDataURL("image/png");y.attr("xlink:href",O),P()},y.on("error",z),L.src=u.source,this._imgSrc=u.source;function z(){y.remove(),P()}}.bind(this));r._promises.push(f)}}function l(u){var y=g.select(this),f=A.getFromId(r,u.xref),P=A.getFromId(r,u.yref),L=A.getRefType(u.xref)==="domain",z=A.getRefType(u.yref)==="domain",F=o._size,B,O;f!==void 0?B=typeof u.xref=="string"&&L?f._length*u.sizex:Math.abs(f.l2p(u.sizex)-f.l2p(0)):B=u.sizex*F.w,P!==void 0?O=typeof u.yref=="string"&&z?P._length*u.sizey:Math.abs(P.l2p(u.sizey)-P.l2p(0)):O=u.sizey*F.h;var I=B*p.x[u.xanchor].offset,N=O*p.y[u.yanchor].offset,U=p.x[u.xanchor].sizing+p.y[u.yanchor].sizing,W,Q;switch(f!==void 0?W=typeof u.xref=="string"&&L?f._length*u.x+f._offset:f.r2p(u.x)+f._offset:W=u.x*F.w+F.l,W+=I,P!==void 0?Q=typeof u.yref=="string"&&z?P._length*(1-u.y)+P._offset:P.r2p(u.y)+P._offset:Q=F.h-u.y*F.h+F.t,Q+=N,u.sizing){case"fill":U+=" slice";break;case"stretch":U="none";break}y.attr({x:W,y:Q,width:B,height:O,preserveAspectRatio:U,opacity:u.opacity});var ue=f&&A.getRefType(u.xref)!=="domain"?f._id:"",se=P&&A.getRefType(u.yref)!=="domain"?P._id:"",he=ue+se;x.setClipUrl(y,he?"clip"+o._uid+he:null,r)}function _(u){return[u.xref,u.x,u.sizex,u.yref,u.y,u.sizey].join("_")}function w(u,y){return u._index-y._index}var S=o._imageLowerLayer.selectAll("image").data(n,_),E=o._imageUpperLayer.selectAll("image").data(a,_);S.enter().append("image"),E.enter().append("image"),S.exit().remove(),E.exit().remove(),S.each(function(u){T.bind(this)(u),l.bind(this)(u)}),E.each(function(u){T.bind(this)(u),l.bind(this)(u)}),S.sort(w),E.sort(w);var m=Object.keys(o._plots);for(c=0;c<m.length;c++){s=m[c];var b=o._plots[s];if(b.imagelayer){var d=b.imagelayer.selectAll("image").data(i[s]||[],_);d.enter().append("image"),d.exit().remove(),d.each(function(u){T.bind(this)(u),l.bind(this)(u)}),d.sort(w)}}}}}),fB=Ye({"src/components/images/convert_coords.js"(X,H){"use strict";var g=jo(),x=c2();H.exports=function(M,e,t,r){e=e||{};var o=t==="log"&&e.type==="linear",a=t==="linear"&&e.type==="log";if(o||a){for(var i=M._fullLayout.images,n=e._id.charAt(0),s,c,h=0;h<i.length;h++)if(s=i[h],c="images["+h+"].",s[n+"ref"]===e._id){var v=s[n],p=s["size"+n],T=null,l=null;if(o){T=x(v,e.range);var _=p/Math.pow(10,T)/2;l=2*Math.log(_+Math.sqrt(1+_*_))/Math.LN10}else T=Math.pow(10,v),l=T*(Math.pow(10,p/2)-Math.pow(10,-p/2));g(T)?g(l)||(l=null):(T=null,l=null),r(c+n,T),r(c+"size"+n,l)}}}}}),hB=Ye({"src/components/images/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"images",layoutAttributes:US(),supplyLayoutDefaults:uB(),includeBasePlot:P_()("images"),draw:cB(),convertCoords:fB()}}}),z2=Ye({"src/components/updatemenus/constants.js"(X,H){"use strict";H.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:"  "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}}}),jS=Ye({"src/components/updatemenus/attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Oo().extendFlat,M=Ou().overrideAll,e=d2(),t=cl().templatedArray,r=t("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});H.exports=M(t("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:r,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:A(e({editType:"arraydraw"}),{}),font:g({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:x.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")}}),pB=Ye({"src/components/updatemenus/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=jS(),M=z2(),e=M.name,t=A.buttons;H.exports=function(i,n){var s={name:e,handleItemDefaults:r};x(i,n,s)};function r(a,i,n){function s(v,p){return g.coerce(a,i,A,v,p)}var c=x(a,i,{name:"buttons",handleItemDefaults:o}),h=s("visible",c.length>0);h&&(s("active"),s("direction"),s("type"),s("showactive"),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font),s("bgcolor",n.paper_bgcolor),s("bordercolor"),s("borderwidth"))}function o(a,i){function n(c,h){return g.coerce(a,i,t,c,h)}var s=n("visible",a.method==="skip"||Array.isArray(a.args));s&&(n("method"),n("args"),n("args2"),n("label"),n("execute"))}}}),dB=Ye({"src/components/updatemenus/scrollbox.js"(X,H){"use strict";H.exports=e;var g=_n(),x=Fn(),A=Bo(),M=ta();function e(t,r,o){this.gd=t,this.container=r,this.id=o,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}e.barWidth=2,e.barLength=20,e.barRadius=2,e.barPad=1,e.barColor="#808BA4",e.prototype.enable=function(r,o,a){var i=this.gd._fullLayout,n=i.width,s=i.height;this.position=r;var c=this.position.l,h=this.position.w,v=this.position.t,p=this.position.h,T=this.position.direction,l=T==="down",_=T==="left",w=T==="right",S=T==="up",E=h,m=p,b,d,u,y;!l&&!_&&!w&&!S&&(this.position.direction="down",l=!0);var f=l||S;f?(b=c,d=b+E,l?(u=v,y=Math.min(u+m,s),m=y-u):(y=v+m,u=Math.max(y-m,0),m=y-u)):(u=v,y=u+m,_?(d=c+E,b=Math.max(d-E,0),E=d-b):(b=c,d=Math.min(b+E,n),E=d-b)),this._box={l:b,t:u,w:E,h:m};var P=h>E,L=e.barLength+2*e.barPad,z=e.barWidth+2*e.barPad,F=c,B=v+p;B+z>s&&(B=s-z);var O=this.container.selectAll("rect.scrollbar-horizontal").data(P?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-horizontal",!0).call(x.fill,e.barColor),P?(this.hbar=O.attr({rx:e.barRadius,ry:e.barRadius,x:F,y:B,width:L,height:z}),this._hbarXMin=F+L/2,this._hbarTranslateMax=E-L):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=p>m,N=e.barWidth+2*e.barPad,U=e.barLength+2*e.barPad,W=c+h,Q=v;W+N>n&&(W=n-N);var ue=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);ue.exit().on(".drag",null).remove(),ue.enter().append("rect").classed("scrollbar-vertical",!0).call(x.fill,e.barColor),I?(this.vbar=ue.attr({rx:e.barRadius,ry:e.barRadius,x:W,y:Q,width:N,height:U}),this._vbarYMin=Q+U/2,this._vbarTranslateMax=m-U):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var se=this.id,he=b-.5,G=I?d+N+.5:d+.5,$=u-.5,J=P?y+z+.5:y+.5,Z=i._topdefs.selectAll("#"+se).data(P||I?[0]:[]);if(Z.exit().remove(),Z.enter().append("clipPath").attr("id",se).append("rect"),P||I?(this._clipRect=Z.select("rect").attr({x:Math.floor(he),y:Math.floor($),width:Math.ceil(G)-Math.floor(he),height:Math.ceil(J)-Math.floor($)}),this.container.call(A.setClipUrl,se,this.gd),this.bg.attr({x:c,y:v,width:h,height:p})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),P||I){var re=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(re);var ne=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault(),g.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));P&&this.hbar.on(".drag",null).call(ne),I&&this.vbar.on(".drag",null).call(ne)}this.setTranslate(o,a)},e.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},e.prototype._onBoxDrag=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r-=g.event.dx),this.vbar&&(o-=g.event.dy),this.setTranslate(r,o)},e.prototype._onBoxWheel=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r+=g.event.deltaY),this.vbar&&(o+=g.event.deltaY),this.setTranslate(r,o)},e.prototype._onBarDrag=function(){var r=this.translateX,o=this.translateY;if(this.hbar){var a=r+this._hbarXMin,i=a+this._hbarTranslateMax,n=M.constrain(g.event.x,a,i),s=(n-a)/(i-a),c=this.position.w-this._box.w;r=s*c}if(this.vbar){var h=o+this._vbarYMin,v=h+this._vbarTranslateMax,p=M.constrain(g.event.y,h,v),T=(p-h)/(v-h),l=this.position.h-this._box.h;o=T*l}this.setTranslate(r,o)},e.prototype.setTranslate=function(r,o){var a=this.position.w-this._box.w,i=this.position.h-this._box.h;if(r=M.constrain(r||0,0,a),o=M.constrain(o||0,0,i),this.translateX=r,this.translateY=o,this.container.call(A.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-o),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+o-.5)}),this.hbar){var n=r/a;this.hbar.call(A.setTranslate,r+n*this._hbarTranslateMax,o)}if(this.vbar){var s=o/i;this.vbar.call(A.setTranslate,r,o+s*this._vbarTranslateMax)}}}}),vB=Ye({"src/components/updatemenus/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=jl(),r=cl().arrayEditor,o=oh().LINE_SPACING,a=z2(),i=dB();H.exports=function(L){var z=L._fullLayout,F=e.filterVisible(z[a.name]);function B(se){x.autoMargin(L,u(se))}var O=z._menulayer.selectAll("g."+a.containerClassName).data(F.length>0?[0]:[]);if(O.enter().append("g").classed(a.containerClassName,!0).style("cursor","pointer"),O.exit().each(function(){g.select(this).selectAll("g."+a.headerGroupClassName).each(B)}).remove(),F.length!==0){var I=O.selectAll("g."+a.headerGroupClassName).data(F,n);I.enter().append("g").classed(a.headerGroupClassName,!0);for(var N=e.ensureSingle(O,"g",a.dropdownButtonGroupClassName,function(se){se.style("pointer-events","all")}),U=0;U<F.length;U++){var W=F[U];d(L,W)}var Q="updatemenus"+z._uid,ue=new i(L,N,Q);I.enter().size()&&(N.node().parentNode.appendChild(N.node()),N.call(f)),I.exit().each(function(se){N.call(f),B(se)}).remove(),I.each(function(se){var he=g.select(this),G=se.type==="dropdown"?N:null;x.manageCommandObserver(L,se,se.buttons,function($){h(L,se,se.buttons[$.index],he,G,ue,$.index,!0)}),se.type==="dropdown"?(v(L,he,N,ue,se),c(N,se)&&p(L,he,N,ue,se)):p(L,he,null,null,se)})}};function n(P){return P._index}function s(P){return+P.attr(a.menuIndexAttrName)==-1}function c(P,L){return+P.attr(a.menuIndexAttrName)===L._index}function h(P,L,z,F,B,O,I,N){L.active=I,r(P.layout,a.name,L).applyUpdate("active",I),L.type==="buttons"?p(P,F,null,null,L):L.type==="dropdown"&&(B.attr(a.menuIndexAttrName,"-1"),v(P,F,B,O,L),N||p(P,F,B,O,L))}function v(P,L,z,F,B){var O=e.ensureSingle(L,"g",a.headerClassName,function(se){se.style("pointer-events","all")}),I=B._dims,N=B.active,U=B.buttons[N]||a.blankHeaderOpts,W={y:B.pad.t,yPad:0,x:B.pad.l,xPad:0,index:0},Q={width:I.headerWidth,height:I.headerHeight};O.call(_,B,U,P).call(y,B,W,Q);var ue=e.ensureSingle(L,"text",a.headerArrowClassName,function(se){se.attr("text-anchor","end").call(M.font,B.font).text(a.arrowSymbol[B.direction])});ue.attr({x:I.headerWidth-a.arrowOffsetX+B.pad.l,y:I.headerHeight/2+a.textOffsetY+B.pad.t}),O.on("click",function(){z.call(f,String(c(z,B)?-1:B._index)),p(P,L,z,F,B)}),O.on("mouseover",function(){O.call(m)}),O.on("mouseout",function(){O.call(b,B)}),M.setTranslate(L,I.lx,I.ly)}function p(P,L,z,F,B){z||(z=L,z.attr("pointer-events","all"));var O=!s(z)||B.type==="buttons"?B.buttons:[],I=B.type==="dropdown"?a.dropdownButtonClassName:a.buttonClassName,N=z.selectAll("g."+I).data(e.filterVisible(O)),U=N.enter().append("g").classed(I,!0),W=N.exit();B.type==="dropdown"?(U.attr("opacity","0").transition().attr("opacity","1"),W.transition().attr("opacity","0").remove()):W.remove();var Q=0,ue=0,se=B._dims,he=["up","down"].indexOf(B.direction)!==-1;B.type==="dropdown"&&(he?ue=se.headerHeight+a.gapButtonHeader:Q=se.headerWidth+a.gapButtonHeader),B.type==="dropdown"&&B.direction==="up"&&(ue=-a.gapButtonHeader+a.gapButton-se.openHeight),B.type==="dropdown"&&B.direction==="left"&&(Q=-a.gapButtonHeader+a.gapButton-se.openWidth);var G={x:se.lx+Q+B.pad.l,y:se.ly+ue+B.pad.t,yPad:a.gapButton,xPad:a.gapButton,index:0},$={l:G.x+B.borderwidth,t:G.y+B.borderwidth};N.each(function(J,Z){var re=g.select(this);re.call(_,B,J,P).call(y,B,G),re.on("click",function(){g.event.defaultPrevented||(J.execute&&(J.args2&&B.active===Z?(h(P,B,J,L,z,F,-1),x.executeAPICommand(P,J.method,J.args2)):(h(P,B,J,L,z,F,Z),x.executeAPICommand(P,J.method,J.args))),P.emit("plotly_buttonclicked",{menu:B,button:J,active:B.active}))}),re.on("mouseover",function(){re.call(m)}),re.on("mouseout",function(){re.call(b,B),N.call(E,B)})}),N.call(E,B),he?($.w=Math.max(se.openWidth,se.headerWidth),$.h=G.y-$.t):($.w=G.x-$.l,$.h=Math.max(se.openHeight,se.headerHeight)),$.direction=B.direction,F&&(N.size()?T(P,L,z,F,B,$):l(F))}function T(P,L,z,F,B,O){var I=B.direction,N=I==="up"||I==="down",U=B._dims,W=B.active,Q,ue,se;if(N)for(ue=0,se=0;se<W;se++)ue+=U.heights[se]+a.gapButton;else for(Q=0,se=0;se<W;se++)Q+=U.widths[se]+a.gapButton;F.enable(O,Q,ue),F.hbar&&F.hbar.attr("opacity","0").transition().attr("opacity","1"),F.vbar&&F.vbar.attr("opacity","0").transition().attr("opacity","1")}function l(P){var L=!!P.hbar,z=!!P.vbar;L&&P.hbar.transition().attr("opacity","0").each("end",function(){L=!1,z||P.disable()}),z&&P.vbar.transition().attr("opacity","0").each("end",function(){z=!1,L||P.disable()})}function _(P,L,z,F){P.call(w,L).call(S,L,z,F)}function w(P,L){var z=e.ensureSingle(P,"rect",a.itemRectClassName,function(F){F.attr({rx:a.rx,ry:a.ry,"shape-rendering":"crispEdges"})});z.call(A.stroke,L.bordercolor).call(A.fill,L.bgcolor).style("stroke-width",L.borderwidth+"px")}function S(P,L,z,F){var B=e.ensureSingle(P,"text",a.itemTextClassName,function(N){N.attr({"text-anchor":"start","data-notex":1})}),O=z.label,I=F._fullLayout._meta;I&&(O=e.templateString(O,I)),B.call(M.font,L.font).text(O).call(t.convertToTspans,F)}function E(P,L){var z=L.active;P.each(function(F,B){var O=g.select(this);B===z&&L.showactive&&O.select("rect."+a.itemRectClassName).call(A.fill,a.activeColor)})}function m(P){P.select("rect."+a.itemRectClassName).call(A.fill,a.hoverColor)}function b(P,L){P.select("rect."+a.itemRectClassName).call(A.fill,L.bgcolor)}function d(P,L){var z=L._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},F=M.tester.selectAll("g."+a.dropdownButtonClassName).data(e.filterVisible(L.buttons));F.enter().append("g").classed(a.dropdownButtonClassName,!0);var B=["up","down"].indexOf(L.direction)!==-1;F.each(function(Q,ue){var se=g.select(this);se.call(_,L,Q,P);var he=se.select("."+a.itemTextClassName),G=he.node()&&M.bBox(he.node()).width,$=Math.max(G+a.textPadX,a.minWidth),J=L.font.size*o,Z=t.lineCount(he),re=Math.max(J*Z,a.minHeight)+a.textOffsetY;re=Math.ceil(re),$=Math.ceil($),z.widths[ue]=$,z.heights[ue]=re,z.height1=Math.max(z.height1,re),z.width1=Math.max(z.width1,$),B?(z.totalWidth=Math.max(z.totalWidth,$),z.openWidth=z.totalWidth,z.totalHeight+=re+a.gapButton,z.openHeight+=re+a.gapButton):(z.totalWidth+=$+a.gapButton,z.openWidth+=$+a.gapButton,z.totalHeight=Math.max(z.totalHeight,re),z.openHeight=z.totalHeight)}),B?z.totalHeight-=a.gapButton:z.totalWidth-=a.gapButton,z.headerWidth=z.width1+a.arrowPadX,z.headerHeight=z.height1,L.type==="dropdown"&&(B?(z.width1+=a.arrowPadX,z.totalHeight=z.height1):z.totalWidth=z.width1,z.totalWidth+=a.arrowPadX),F.remove();var O=z.totalWidth+L.pad.l+L.pad.r,I=z.totalHeight+L.pad.t+L.pad.b,N=P._fullLayout._size;z.lx=N.l+N.w*L.x,z.ly=N.t+N.h*(1-L.y);var U="left";e.isRightAnchor(L)&&(z.lx-=O,U="right"),e.isCenterAnchor(L)&&(z.lx-=O/2,U="center");var W="top";e.isBottomAnchor(L)&&(z.ly-=I,W="bottom"),e.isMiddleAnchor(L)&&(z.ly-=I/2,W="middle"),z.totalWidth=Math.ceil(z.totalWidth),z.totalHeight=Math.ceil(z.totalHeight),z.lx=Math.round(z.lx),z.ly=Math.round(z.ly),x.autoMargin(P,u(L),{x:L.x,y:L.y,l:O*({right:1,center:.5}[U]||0),r:O*({left:1,center:.5}[U]||0),b:I*({top:1,middle:.5}[W]||0),t:I*({bottom:1,middle:.5}[W]||0)})}function u(P){return a.autoMarginIdRoot+P._index}function y(P,L,z,F){F=F||{};var B=P.select("."+a.itemRectClassName),O=P.select("."+a.itemTextClassName),I=L.borderwidth,N=z.index,U=L._dims;M.setTranslate(P,I+z.x,I+z.y);var W=["up","down"].indexOf(L.direction)!==-1,Q=F.height||(W?U.heights[N]:U.height1);B.attr({x:0,y:0,width:F.width||(W?U.width1:U.widths[N]),height:Q});var ue=L.font.size*o,se=t.lineCount(O),he=(se-1)*ue/2;t.positionText(O,a.textOffsetX,Q/2-he+a.textOffsetY),W?z.y+=U.heights[N]+z.yPad:z.x+=U.widths[N]+z.xPad,z.index++}function f(P,L){P.attr(a.menuIndexAttrName,L||"-1").selectAll("g."+a.dropdownButtonClassName).remove()}}}),mB=Ye({"src/components/updatemenus/index.js"(X,H){"use strict";var g=z2();H.exports={moduleType:"component",name:g.name,layoutAttributes:jS(),supplyLayoutDefaults:pB(),draw:vB()}}}),D_=Ye({"src/components/sliders/constants.js"(X,H){"use strict";H.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}}}),VS=Ye({"src/components/sliders/attributes.js"(X,H){"use strict";var g=Au(),x=d2(),A=Oo().extendDeepAll,M=Ou().overrideAll,e=w_(),t=cl().templatedArray,r=D_(),o=t("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});H.exports=M(t("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:o,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:A(x({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:e.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:g({})},font:g({}),activebgcolor:{valType:"color",dflt:r.gripBgActiveColor},bgcolor:{valType:"color",dflt:r.railBgColor},bordercolor:{valType:"color",dflt:r.railBorderColor},borderwidth:{valType:"number",min:0,dflt:r.railBorderWidth},ticklen:{valType:"number",min:0,dflt:r.tickLength},tickcolor:{valType:"color",dflt:r.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:r.minorTickLength}}),"arraydraw","from-root")}}),gB=Ye({"src/components/sliders/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=VS(),M=D_(),e=M.name,t=A.steps;H.exports=function(i,n){x(i,n,{name:e,handleItemDefaults:r})};function r(a,i,n){function s(w,S){return g.coerce(a,i,A,w,S)}for(var c=x(a,i,{name:"steps",handleItemDefaults:o}),h=0,v=0;v<c.length;v++)c[v].visible&&h++;var p;if(h<2?p=i.visible=!1:p=s("visible"),!!p){i._stepCount=h;var T=i._visibleSteps=g.filterVisible(c),l=s("active");(c[l]||{}).visible||(i.active=T[0]._index),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("len"),s("lenmode"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font);var _=s("currentvalue.visible");_&&(s("currentvalue.xanchor"),s("currentvalue.prefix"),s("currentvalue.suffix"),s("currentvalue.offset"),g.coerceFont(s,"currentvalue.font",i.font)),s("transition.duration"),s("transition.easing"),s("bgcolor"),s("activebgcolor"),s("bordercolor"),s("borderwidth"),s("ticklen"),s("tickwidth"),s("tickcolor"),s("minorticklen")}}function o(a,i){function n(h,v){return g.coerce(a,i,t,h,v)}var s;if(a.method!=="skip"&&!Array.isArray(a.args)?s=i.visible=!1:s=n("visible"),s){n("method"),n("args");var c=n("label","step-"+i._index);n("value",c),n("execute")}}}}),yB=Ye({"src/components/sliders/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=e.strTranslate,r=jl(),o=cl().arrayEditor,a=D_(),i=oh(),n=i.LINE_SPACING,s=i.FROM_TL,c=i.FROM_BR;H.exports=function(O){var I=O._context.staticPlot,N=O._fullLayout,U=v(N,O),W=N._infolayer.selectAll("g."+a.containerClassName).data(U.length>0?[0]:[]);W.enter().append("g").classed(a.containerClassName,!0).style("cursor",I?null:"ew-resize");function Q(G){G._commandObserver&&(G._commandObserver.remove(),delete G._commandObserver),x.autoMargin(O,h(G))}if(W.exit().each(function(){g.select(this).selectAll("g."+a.groupClassName).each(Q)}).remove(),U.length!==0){var ue=W.selectAll("g."+a.groupClassName).data(U,p);ue.enter().append("g").classed(a.groupClassName,!0),ue.exit().each(Q).remove();for(var se=0;se<U.length;se++){var he=U[se];T(O,he)}ue.each(function(G){var $=g.select(this);y(G),x.manageCommandObserver(O,G,G._visibleSteps,function(J){var Z=$.data()[0];Z.active!==J.index&&(Z._dragging||b(O,$,Z,J.index,!1,!0))}),l(O,g.select(this),G)})}};function h(B){return a.autoMarginIdRoot+B._index}function v(B,O){for(var I=B[a.name],N=[],U=0;U<I.length;U++){var W=I[U];W.visible&&(W._gd=O,N.push(W))}return N}function p(B){return B._index}function T(B,O){var I=M.tester.selectAll("g."+a.labelGroupClass).data(O._visibleSteps);I.enter().append("g").classed(a.labelGroupClass,!0);var N=0,U=0;I.each(function(re){var ne=g.select(this),j=S(ne,{step:re},O),ee=j.node();if(ee){var ie=M.bBox(ee);U=Math.max(U,ie.height),N=Math.max(N,ie.width)}}),I.remove();var W=O._dims={};W.inputAreaWidth=Math.max(a.railWidth,a.gripHeight);var Q=B._fullLayout._size;W.lx=Q.l+Q.w*O.x,W.ly=Q.t+Q.h*(1-O.y),O.lenmode==="fraction"?W.outerLength=Math.round(Q.w*O.len):W.outerLength=O.len,W.inputAreaStart=0,W.inputAreaLength=Math.round(W.outerLength-O.pad.l-O.pad.r);var ue=W.inputAreaLength-2*a.stepInset,se=ue/(O._stepCount-1),he=N+a.labelPadding;if(W.labelStride=Math.max(1,Math.ceil(he/se)),W.labelHeight=U,W.currentValueMaxWidth=0,W.currentValueHeight=0,W.currentValueTotalHeight=0,W.currentValueMaxLines=1,O.currentvalue.visible){var G=M.tester.append("g");I.each(function(re){var ne=_(G,O,re.label),j=ne.node()&&M.bBox(ne.node())||{width:0,height:0},ee=r.lineCount(ne);W.currentValueMaxWidth=Math.max(W.currentValueMaxWidth,Math.ceil(j.width)),W.currentValueHeight=Math.max(W.currentValueHeight,Math.ceil(j.height)),W.currentValueMaxLines=Math.max(W.currentValueMaxLines,ee)}),W.currentValueTotalHeight=W.currentValueHeight+O.currentvalue.offset,G.remove()}W.height=W.currentValueTotalHeight+a.tickOffset+O.ticklen+a.labelOffset+W.labelHeight+O.pad.t+O.pad.b;var $="left";e.isRightAnchor(O)&&(W.lx-=W.outerLength,$="right"),e.isCenterAnchor(O)&&(W.lx-=W.outerLength/2,$="center");var J="top";e.isBottomAnchor(O)&&(W.ly-=W.height,J="bottom"),e.isMiddleAnchor(O)&&(W.ly-=W.height/2,J="middle"),W.outerLength=Math.ceil(W.outerLength),W.height=Math.ceil(W.height),W.lx=Math.round(W.lx),W.ly=Math.round(W.ly);var Z={y:O.y,b:W.height*c[J],t:W.height*s[J]};O.lenmode==="fraction"?(Z.l=0,Z.xl=O.x-O.len*s[$],Z.r=0,Z.xr=O.x+O.len*c[$]):(Z.x=O.x,Z.l=W.outerLength*s[$],Z.r=W.outerLength*c[$]),x.autoMargin(B,h(O),Z)}function l(B,O,I){(I.steps[I.active]||{}).visible||(I.active=I._visibleSteps[0]._index),O.call(_,I).call(F,I).call(E,I).call(u,I).call(z,B,I).call(w,B,I);var N=I._dims;M.setTranslate(O,N.lx+I.pad.l,N.ly+I.pad.t),O.call(f,I,!1),O.call(_,I)}function _(B,O,I){if(O.currentvalue.visible){var N=O._dims,U,W;switch(O.currentvalue.xanchor){case"right":U=N.inputAreaLength-a.currentValueInset-N.currentValueMaxWidth,W="left";break;case"center":U=N.inputAreaLength*.5,W="middle";break;default:U=a.currentValueInset,W="left"}var Q=e.ensureSingle(B,"text",a.labelClass,function(J){J.attr({"text-anchor":W,"data-notex":1})}),ue=O.currentvalue.prefix?O.currentvalue.prefix:"";if(typeof I=="string")ue+=I;else{var se=O.steps[O.active].label,he=O._gd._fullLayout._meta;he&&(se=e.templateString(se,he)),ue+=se}O.currentvalue.suffix&&(ue+=O.currentvalue.suffix),Q.call(M.font,O.currentvalue.font).text(ue).call(r.convertToTspans,O._gd);var G=r.lineCount(Q),$=(N.currentValueMaxLines+1-G)*O.currentvalue.font.size*n;return r.positionText(Q,U,$),Q}}function w(B,O,I){var N=e.ensureSingle(B,"rect",a.gripRectClass,function(U){U.call(d,O,B,I).style("pointer-events","all")});N.attr({width:a.gripWidth,height:a.gripHeight,rx:a.gripRadius,ry:a.gripRadius}).call(A.stroke,I.bordercolor).call(A.fill,I.bgcolor).style("stroke-width",I.borderwidth+"px")}function S(B,O,I){var N=e.ensureSingle(B,"text",a.labelClass,function(Q){Q.attr({"text-anchor":"middle","data-notex":1})}),U=O.step.label,W=I._gd._fullLayout._meta;return W&&(U=e.templateString(U,W)),N.call(M.font,I.font).text(U).call(r.convertToTspans,I._gd),N}function E(B,O){var I=e.ensureSingle(B,"g",a.labelsClass),N=O._dims,U=I.selectAll("g."+a.labelGroupClass).data(N.labelSteps);U.enter().append("g").classed(a.labelGroupClass,!0),U.exit().remove(),U.each(function(W){var Q=g.select(this);Q.call(S,W,O),M.setTranslate(Q,P(O,W.fraction),a.tickOffset+O.ticklen+O.font.size*n+a.labelOffset+N.currentValueTotalHeight)})}function m(B,O,I,N,U){var W=Math.round(N*(I._stepCount-1)),Q=I._visibleSteps[W]._index;Q!==I.active&&b(B,O,I,Q,!0,U)}function b(B,O,I,N,U,W){var Q=I.active;I.active=N,o(B.layout,a.name,I).applyUpdate("active",N);var ue=I.steps[I.active];O.call(f,I,W),O.call(_,I),B.emit("plotly_sliderchange",{slider:I,step:I.steps[I.active],interaction:U,previousActive:Q}),ue&&ue.method&&U&&(O._nextMethod?(O._nextMethod.step=ue,O._nextMethod.doCallback=U,O._nextMethod.doTransition=W):(O._nextMethod={step:ue,doCallback:U,doTransition:W},O._nextMethodRaf=window.requestAnimationFrame(function(){var se=O._nextMethod.step;se.method&&(se.execute&&x.executeAPICommand(B,se.method,se.args),O._nextMethod=null,O._nextMethodRaf=null)})))}function d(B,O,I){if(O._context.staticPlot)return;var N=I.node(),U=g.select(O);function W(){return I.data()[0]}function Q(){var ue=W();O.emit("plotly_sliderstart",{slider:ue});var se=I.select("."+a.gripRectClass);g.event.stopPropagation(),g.event.preventDefault(),se.call(A.fill,ue.activebgcolor);var he=L(ue,g.mouse(N)[0]);m(O,I,ue,he,!0),ue._dragging=!0;function G(){var J=W(),Z=L(J,g.mouse(N)[0]);m(O,I,J,Z,!1)}U.on("mousemove",G),U.on("touchmove",G);function $(){var J=W();J._dragging=!1,se.call(A.fill,J.bgcolor),U.on("mouseup",null),U.on("mousemove",null),U.on("touchend",null),U.on("touchmove",null),O.emit("plotly_sliderend",{slider:J,step:J.steps[J.active]})}U.on("mouseup",$),U.on("touchend",$)}B.on("mousedown",Q),B.on("touchstart",Q)}function u(B,O){var I=B.selectAll("rect."+a.tickRectClass).data(O._visibleSteps),N=O._dims;I.enter().append("rect").classed(a.tickRectClass,!0),I.exit().remove(),I.attr({width:O.tickwidth+"px","shape-rendering":"crispEdges"}),I.each(function(U,W){var Q=W%N.labelStride===0,ue=g.select(this);ue.attr({height:Q?O.ticklen:O.minorticklen}).call(A.fill,O.tickcolor),M.setTranslate(ue,P(O,W/(O._stepCount-1))-.5*O.tickwidth,(Q?a.tickOffset:a.minorTickOffset)+N.currentValueTotalHeight)})}function y(B){var O=B._dims;O.labelSteps=[];for(var I=B._stepCount,N=0;N<I;N+=O.labelStride)O.labelSteps.push({fraction:N/(I-1),step:B._visibleSteps[N]})}function f(B,O,I){for(var N=B.select("rect."+a.gripRectClass),U=0,W=0;W<O._stepCount;W++)if(O._visibleSteps[W]._index===O.active){U=W;break}var Q=P(O,U/(O._stepCount-1));if(!O._invokingCommand){var ue=N;I&&O.transition.duration>0&&(ue=ue.transition().duration(O.transition.duration).ease(O.transition.easing)),ue.attr("transform",t(Q-a.gripWidth*.5,O._dims.currentValueTotalHeight))}}function P(B,O){var I=B._dims;return I.inputAreaStart+a.stepInset+(I.inputAreaLength-2*a.stepInset)*Math.min(1,Math.max(0,O))}function L(B,O){var I=B._dims;return Math.min(1,Math.max(0,(O-a.stepInset-I.inputAreaStart)/(I.inputAreaLength-2*a.stepInset-2*I.inputAreaStart)))}function z(B,O,I){var N=I._dims,U=e.ensureSingle(B,"rect",a.railTouchRectClass,function(W){W.call(d,O,B,I).style("pointer-events","all")});U.attr({width:N.inputAreaLength,height:Math.max(N.inputAreaWidth,a.tickOffset+I.ticklen+N.labelHeight)}).call(A.fill,I.bgcolor).attr("opacity",0),M.setTranslate(U,0,N.currentValueTotalHeight)}function F(B,O){var I=O._dims,N=I.inputAreaLength-a.railInset*2,U=e.ensureSingle(B,"rect",a.railRectClass);U.attr({width:N,height:a.railWidth,rx:a.railRadius,ry:a.railRadius,"shape-rendering":"crispEdges"}).call(A.stroke,O.bordercolor).call(A.fill,O.bgcolor).style("stroke-width",O.borderwidth+"px"),M.setTranslate(U,a.railInset,(I.inputAreaWidth-a.railWidth)*.5+I.currentValueTotalHeight)}}}),_B=Ye({"src/components/sliders/index.js"(X,H){"use strict";var g=D_();H.exports={moduleType:"component",name:g.name,layoutAttributes:VS(),supplyLayoutDefaults:gB(),draw:yB()}}}),F2=Ye({"src/components/rangeslider/attributes.js"(X,H){"use strict";var g=Gf();H.exports={bgcolor:{valType:"color",dflt:g.background,editType:"plot"},bordercolor:{valType:"color",dflt:g.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}}}),qS=Ye({"src/components/rangeslider/oppaxis_attributes.js"(X,H){"use strict";H.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}}}),O2=Ye({"src/components/rangeslider/constants.js"(X,H){"use strict";H.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}}}),xB=Ye({"src/components/rangeslider/helpers.js"(X){"use strict";var H=Xc(),g=jl(),x=O2(),A=oh().LINE_SPACING,M=x.name;function e(t){var r=t&&t[M];return r&&r.visible}X.isVisible=e,X.makeData=function(t){for(var r=H.list({_fullLayout:t},"x",!0),o=t.margin,a=[],i=0;i<r.length;i++){var n=r[i];if(e(n)){a.push(n);var s=n[M];s._id=M+n._id,s._height=(t.height-o.b-o.t)*s.thickness,s._offsetShift=Math.floor(s.borderwidth/2)}}t._rangeSliderData=a},X.autoMarginOpts=function(t,r){var o=t._fullLayout,a=r[M],i=r._id.charAt(0),n=0,s=0;if(r.side==="bottom"&&(n=r._depth,r.title.text!==o._dfltTitle[i])){s=1.5*r.title.font.size+10+a._offsetShift;var c=(r.title.text.match(g.BR_TAG_ALL)||[]).length;s+=c*r.title.font.size*A}return{x:0,y:r._counterDomainMin,l:0,r:0,t:0,b:a._height+n+Math.max(o.margin.b,s),pad:x.extraPad+a._offsetShift*2}}}}),bB=Ye({"src/components/rangeslider/defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Xc(),M=F2(),e=qS();H.exports=function(r,o,a){var i=r[a],n=o[a];if(!(i.rangeslider||o._requestRangeslider[n._id]))return;g.isPlainObject(i.rangeslider)||(i.rangeslider={});var s=i.rangeslider,c=x.newContainer(n,"rangeslider");function h(y,f){return g.coerce(s,c,M,y,f)}var v,p;function T(y,f){return g.coerce(v,p,e,y,f)}var l=h("visible");if(l){h("bgcolor",o.plot_bgcolor),h("bordercolor"),h("borderwidth"),h("thickness"),h("autorange",!n.isValidRange(s.range)),h("range");var _=o._subplots;if(_)for(var w=_.cartesian.filter(function(y){return y.substr(0,y.indexOf("y"))===A.name2id(a)}).map(function(y){return y.substr(y.indexOf("y"),y.length)}),S=g.simpleMap(w,A.id2name),E=0;E<S.length;E++){var m=S[E];v=s[m]||{},p=x.newContainer(c,m,"yaxis");var b=o[m],d;v.range&&b.isValidRange(v.range)&&(d="fixed");var u=T("rangemode",d);u!=="match"&&T("range",b.range.slice())}c._input=s}}}}),wB=Ye({"src/components/rangeslider/calc_autorange.js"(X,H){"use strict";var g=Xc().list,x=Yd().getAutoRange,A=O2();H.exports=function(e){for(var t=g(e,"x",!0),r=0;r<t.length;r++){var o=t[r],a=o[A.name];a&&a.visible&&a.autorange&&(a._input.autorange=!0,a._input.range=a.range=x(e,o))}}}}),TB=Ye({"src/components/rangeslider/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Bo(),r=Fn(),o=Xg(),a=Pf(),i=Xc(),n=bp(),s=Kd(),c=O2();H.exports=function(d){for(var u=d._fullLayout,y=u._rangeSliderData,f=0;f<y.length;f++){var P=y[f][c.name];P._clipId=P._id+"-"+u._uid}function L(F){return F._name}var z=u._infolayer.selectAll("g."+c.containerClassName).data(y,L);z.exit().each(function(F){var B=F[c.name];u._topdefs.select("#"+B._clipId).remove()}).remove(),y.length!==0&&(z.enter().append("g").classed(c.containerClassName,!0).attr("pointer-events","all"),z.each(function(F){var B=g.select(this),O=F[c.name],I=u[i.id2name(F.anchor)],N=O[i.id2name(F.anchor)];if(O.range){var U=M.simpleMap(O.range,F.r2l),W=M.simpleMap(F.range,F.r2l),Q;W[0]<W[1]?Q=[Math.min(U[0],W[0]),Math.max(U[1],W[1])]:Q=[Math.max(U[0],W[0]),Math.min(U[1],W[1])],O.range=O._input.range=M.simpleMap(Q,F.l2r)}F.cleanRange("rangeslider.range");var ue=u._size,se=F.domain;O._width=ue.w*(se[1]-se[0]);var he=Math.round(ue.l+ue.w*se[0]),G=Math.round(ue.t+ue.h*(1-F._counterDomainMin)+(F.side==="bottom"?F._depth:0)+O._offsetShift+c.extraPad);B.attr("transform",e(he,G)),O._rl=M.simpleMap(O.range,F.r2l);var $=O._rl[0],J=O._rl[1],Z=J-$;if(O.p2d=function(Ie){return Ie/O._width*Z+$},O.d2p=function(Ie){return(Ie-$)/Z*O._width},F.rangebreaks){var re=F.locateBreaks($,J);if(re.length){var ne,j,ee=0;for(ne=0;ne<re.length;ne++)j=re[ne],ee+=j.max-j.min;var ie=O._width/(J-$-ee),fe=[-ie*$];for(ne=0;ne<re.length;ne++)j=re[ne],fe.push(fe[fe.length-1]-ie*(j.max-j.min));for(O.d2p=function(Ie){for(var Ze=fe[0],at=0;at<re.length;at++){var it=re[at];if(Ie>=it.max)Ze=fe[at+1];else if(Ie<it.min)break}return Ze+ie*Ie},ne=0;ne<re.length;ne++)j=re[ne],j.pmin=O.d2p(j.min),j.pmax=O.d2p(j.max);O.p2d=function(Ie){for(var Ze=fe[0],at=0;at<re.length;at++){var it=re[at];if(Ie>=it.pmax)Ze=fe[at+1];else if(Ie<it.pmin)break}return(Ie-Ze)/ie}}}if(N.rangemode!=="match"){var be=I.r2l(N.range[0]),Ae=I.r2l(N.range[1]),Be=Ae-be;O.d2pOppAxis=function(Ie){return(Ie-be)/Be*O._height}}B.call(l,d,F,O).call(_,d,F,O).call(w,d,F,O).call(E,d,F,O,N).call(m,d,F,O).call(b,d,F,O),v(B,d,F,O),T(B,d,F,O,I,N),F.side==="bottom"&&o.draw(d,F._id+"title",{propContainer:F,propName:F._name+".title",placeholder:u._dfltTitle.x,attributes:{x:F._offset+F._length/2,y:G+O._height+O._offsetShift+10+1.5*F.title.font.size,"text-anchor":"middle"}})}))};function h(d){return typeof d.clientX=="number"?d.clientX:d.touches&&d.touches.length>0?d.touches[0].clientX:0}function v(d,u,y,f){if(u._context.staticPlot)return;var P=d.select("rect."+c.slideBoxClassName).node(),L=d.select("rect."+c.grabAreaMinClassName).node(),z=d.select("rect."+c.grabAreaMaxClassName).node();function F(){var B=g.event,O=B.target,I=h(B),N=I-d.node().getBoundingClientRect().left,U=f.d2p(y._rl[0]),W=f.d2p(y._rl[1]),Q=n.coverSlip();this.addEventListener("touchmove",ue),this.addEventListener("touchend",se),Q.addEventListener("mousemove",ue),Q.addEventListener("mouseup",se);function ue(he){var G=h(he),$=+G-I,J,Z,re;switch(O){case P:if(re="ew-resize",U+$>y._length||W+$<0)return;J=U+$,Z=W+$;break;case L:if(re="col-resize",U+$>y._length)return;J=U+$,Z=W;break;case z:if(re="col-resize",W+$<0)return;J=U,Z=W+$;break;default:re="ew-resize",J=N,Z=N+$;break}if(Z<J){var ne=Z;Z=J,J=ne}f._pixelMin=J,f._pixelMax=Z,s(g.select(Q),re),p(d,u,y,f)}function se(){Q.removeEventListener("mousemove",ue),Q.removeEventListener("mouseup",se),this.removeEventListener("touchmove",ue),this.removeEventListener("touchend",se),M.removeElement(Q)}}d.on("mousedown",F),d.on("touchstart",F)}function p(d,u,y,f){function P(F){return y.l2r(M.constrain(F,f._rl[0],f._rl[1]))}var L=P(f.p2d(f._pixelMin)),z=P(f.p2d(f._pixelMax));window.requestAnimationFrame(function(){x.call("_guiRelayout",u,y._name+".range",[L,z])})}function T(d,u,y,f,P,L){var z=c.handleWidth/2;function F(he){return M.constrain(he,0,f._width)}function B(he){return M.constrain(he,0,f._height)}function O(he){return M.constrain(he,-z,f._width+z)}var I=F(f.d2p(y._rl[0])),N=F(f.d2p(y._rl[1]));if(d.select("rect."+c.slideBoxClassName).attr("x",I).attr("width",N-I),d.select("rect."+c.maskMinClassName).attr("width",I),d.select("rect."+c.maskMaxClassName).attr("x",N).attr("width",f._width-N),L.rangemode!=="match"){var U=f._height-B(f.d2pOppAxis(P._rl[1])),W=f._height-B(f.d2pOppAxis(P._rl[0]));d.select("rect."+c.maskMinOppAxisClassName).attr("x",I).attr("height",U).attr("width",N-I),d.select("rect."+c.maskMaxOppAxisClassName).attr("x",I).attr("y",W).attr("height",f._height-W).attr("width",N-I),d.select("rect."+c.slideBoxClassName).attr("y",U).attr("height",W-U)}var Q=.5,ue=Math.round(O(I-z))-Q,se=Math.round(O(N-z))+Q;d.select("g."+c.grabberMinClassName).attr("transform",e(ue,Q)),d.select("g."+c.grabberMaxClassName).attr("transform",e(se,Q))}function l(d,u,y,f){var P=M.ensureSingle(d,"rect",c.bgClassName,function(B){B.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),L=f.borderwidth%2===0?f.borderwidth:f.borderwidth-1,z=-f._offsetShift,F=t.crispRound(u,f.borderwidth);P.attr({width:f._width+L,height:f._height+L,transform:e(z,z),"stroke-width":F}).call(r.stroke,f.bordercolor).call(r.fill,f.bgcolor)}function _(d,u,y,f){var P=u._fullLayout,L=M.ensureSingleById(P._topdefs,"clipPath",f._clipId,function(z){z.append("rect").attr({x:0,y:0})});L.select("rect").attr({width:f._width,height:f._height})}function w(d,u,y,f){var P=u.calcdata,L=d.selectAll("g."+c.rangePlotClassName).data(y._subplotsWith,M.identity);L.enter().append("g").attr("class",function(F){return c.rangePlotClassName+" "+F}).call(t.setClipUrl,f._clipId,u),L.order(),L.exit().remove();var z;L.each(function(F,B){var O=g.select(this),I=B===0,N=i.getFromId(u,F,"y"),U=N._name,W=f[U],Q={data:[],layout:{xaxis:{type:y.type,domain:[0,1],range:f.range.slice(),calendar:y.calendar},width:f._width,height:f._height,margin:{t:0,b:0,l:0,r:0}},_context:u._context};y.rangebreaks&&(Q.layout.xaxis.rangebreaks=y.rangebreaks),Q.layout[U]={type:N.type,domain:[0,1],range:W.rangemode!=="match"?W.range.slice():N.range.slice(),calendar:N.calendar},N.rangebreaks&&(Q.layout[U].rangebreaks=N.rangebreaks),A.supplyDefaults(Q);var ue=Q._fullLayout.xaxis,se=Q._fullLayout[U];ue.clearCalc(),ue.setScale(),se.clearCalc(),se.setScale();var he={id:F,plotgroup:O,xaxis:ue,yaxis:se,isRangePlot:!0};I?z=he:(he.mainplot="xy",he.mainplotinfo=z),a.rangePlot(u,he,S(P,F))})}function S(d,u){for(var y=[],f=0;f<d.length;f++){var P=d[f],L=P[0].trace;L.xaxis+L.yaxis===u&&y.push(P)}return y}function E(d,u,y,f,P){var L=M.ensureSingle(d,"rect",c.maskMinClassName,function(O){O.attr({x:0,y:0,"shape-rendering":"crispEdges"})});L.attr("height",f._height).call(r.fill,c.maskColor);var z=M.ensureSingle(d,"rect",c.maskMaxClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});if(z.attr("height",f._height).call(r.fill,c.maskColor),P.rangemode!=="match"){var F=M.ensureSingle(d,"rect",c.maskMinOppAxisClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});F.attr("width",f._width).call(r.fill,c.maskOppAxisColor);var B=M.ensureSingle(d,"rect",c.maskMaxOppAxisClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});B.attr("width",f._width).style("border-top",c.maskOppBorder).call(r.fill,c.maskOppAxisColor)}}function m(d,u,y,f){if(!u._context.staticPlot){var P=M.ensureSingle(d,"rect",c.slideBoxClassName,function(L){L.attr({y:0,cursor:c.slideBoxCursor,"shape-rendering":"crispEdges"})});P.attr({height:f._height,fill:c.slideBoxFill})}}function b(d,u,y,f){var P=M.ensureSingle(d,"g",c.grabberMinClassName),L=M.ensureSingle(d,"g",c.grabberMaxClassName),z={x:0,width:c.handleWidth,rx:c.handleRadius,fill:r.background,stroke:r.defaultLine,"stroke-width":c.handleStrokeWidth,"shape-rendering":"crispEdges"},F={y:Math.round(f._height/4),height:Math.round(f._height/2)},B=M.ensureSingle(P,"rect",c.handleMinClassName,function(W){W.attr(z)});B.attr(F);var O=M.ensureSingle(L,"rect",c.handleMaxClassName,function(W){W.attr(z)});O.attr(F);var I={width:c.grabAreaWidth,x:0,y:0,fill:c.grabAreaFill,cursor:u._context.staticPlot?void 0:c.grabAreaCursor},N=M.ensureSingle(P,"rect",c.grabAreaMinClassName,function(W){W.attr(I)});N.attr("height",f._height);var U=M.ensureSingle(L,"rect",c.grabAreaMaxClassName,function(W){W.attr(I)});U.attr("height",f._height)}}}),AB=Ye({"src/components/rangeslider/index.js"(X,H){"use strict";var g=ta(),x=F2(),A=qS(),M=xB();H.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:g.extendFlat({},x,{yaxis:A})}}},layoutAttributes:F2(),handleDefaults:bB(),calcAutorange:wB(),draw:TB(),isVisible:M.isVisible,makeData:M.makeData,autoMarginOpts:M.autoMarginOpts}}}),B2=Ye({"src/components/rangeselector/attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=cl().templatedArray,M=A("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});H.exports={visible:{valType:"boolean",editType:"plot"},buttons:M,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:g({editType:"plot"}),bgcolor:{valType:"color",dflt:x.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:x.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}}}),HS=Ye({"src/components/rangeselector/constants.js"(X,H){"use strict";H.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}}}),SB=Ye({"src/components/rangeselector/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=up(),e=B2(),t=HS();H.exports=function(i,n,s,c,h){var v=i.rangeselector||{},p=A.newContainer(n,"rangeselector");function T(E,m){return g.coerce(v,p,e,E,m)}var l=M(v,p,{name:"buttons",handleItemDefaults:r,calendar:h}),_=T("visible",l.length>0);if(_){var w=o(n,s,c);T("x",w[0]),T("y",w[1]),g.noneOrAll(i,n,["x","y"]),T("xanchor"),T("yanchor"),g.coerceFont(T,"font",s.font);var S=T("bgcolor");T("activecolor",x.contrast(S,t.lightAmount,t.darkAmount)),T("bordercolor"),T("borderwidth")}};function r(a,i,n,s){var c=s.calendar;function h(T,l){return g.coerce(a,i,e.buttons,T,l)}var v=h("visible");if(v){var p=h("step");p!=="all"&&(c&&c!=="gregorian"&&(p==="month"||p==="year")?i.stepmode="backward":h("stepmode"),h("count")),h("label")}}function o(a,i,n){for(var s=n.filter(function(p){return i[p].anchor===a._id}),c=0,h=0;h<s.length;h++){var v=i[s[h]].domain;v&&(c=Math.max(v[1],c))}return[a.domain[0],c+t.yPad]}}}),MB=Ye({"src/components/rangeselector/get_update_object.js"(X,H){"use strict";var g=$p(),x=ta().titleCase;H.exports=function(e,t){var r=e._name,o={};if(t.step==="all")o[r+".autorange"]=!0;else{var a=A(e,t);o[r+".range[0]"]=a[0],o[r+".range[1]"]=a[1]}return o};function A(M,e){var t=M.range,r=new Date(M.r2l(t[1])),o=e.step,a=g["utc"+x(o)],i=e.count,n;switch(e.stepmode){case"backward":n=M.l2r(+a.offset(r,-i));break;case"todate":var s=a.offset(r,-i);n=M.l2r(+a.ceil(s));break}var c=t[1];return[n,c]}}}),EB=Ye({"src/components/rangeselector/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=Fn(),e=Bo(),t=ta(),r=t.strTranslate,o=jl(),a=Xc(),i=oh(),n=i.LINE_SPACING,s=i.FROM_TL,c=i.FROM_BR,h=HS(),v=MB();H.exports=function(d){var u=d._fullLayout,y=u._infolayer.selectAll(".rangeselector").data(p(d),T);y.enter().append("g").classed("rangeselector",!0),y.exit().remove(),y.style({cursor:"pointer","pointer-events":"all"}),y.each(function(f){var P=g.select(this),L=f,z=L.rangeselector,F=P.selectAll("g.button").data(t.filterVisible(z.buttons));F.enter().append("g").classed("button",!0),F.exit().remove(),F.each(function(B){var O=g.select(this),I=v(L,B);B._isActive=l(L,B,I),O.call(_,z,B),O.call(S,z,B,d),O.on("click",function(){d._dragged||x.call("_guiRelayout",d,I)}),O.on("mouseover",function(){B._isHovered=!0,O.call(_,z,B)}),O.on("mouseout",function(){B._isHovered=!1,O.call(_,z,B)})}),m(d,F,z,L._name,P)})};function p(b){for(var d=a.list(b,"x",!0),u=[],y=0;y<d.length;y++){var f=d[y];f.rangeselector&&f.rangeselector.visible&&u.push(f)}return u}function T(b){return b._id}function l(b,d,u){if(d.step==="all")return b.autorange===!0;var y=Object.keys(u);return b.range[0]===u[y[0]]&&b.range[1]===u[y[1]]}function _(b,d,u){var y=t.ensureSingle(b,"rect","selector-rect",function(f){f.attr("shape-rendering","crispEdges")});y.attr({rx:h.rx,ry:h.ry}),y.call(M.stroke,d.bordercolor).call(M.fill,w(d,u)).style("stroke-width",d.borderwidth+"px")}function w(b,d){return d._isActive||d._isHovered?b.activecolor:b.bgcolor}function S(b,d,u,y){function f(L){o.convertToTspans(L,y)}var P=t.ensureSingle(b,"text","selector-text",function(L){L.attr("text-anchor","middle")});P.call(e.font,d.font).text(E(u,y._fullLayout._meta)).call(f)}function E(b,d){return b.label?d?t.templateString(b.label,d):b.label:b.step==="all"?"all":b.count+b.step.charAt(0)}function m(b,d,u,y,f){var P=0,L=0,z=u.borderwidth;d.each(function(){var U=g.select(this),W=U.select(".selector-text"),Q=u.font.size*n,ue=Math.max(Q*o.lineCount(W),16)+3;L=Math.max(L,ue)}),d.each(function(){var U=g.select(this),W=U.select(".selector-rect"),Q=U.select(".selector-text"),ue=Q.node()&&e.bBox(Q.node()).width,se=u.font.size*n,he=o.lineCount(Q),G=Math.max(ue+10,h.minButtonWidth);U.attr("transform",r(z+P,z)),W.attr({x:0,y:0,width:G,height:L}),o.positionText(Q,G/2,L/2-(he-1)*se/2+3),P+=G+5});var F=b._fullLayout._size,B=F.l+F.w*u.x,O=F.t+F.h*(1-u.y),I="left";t.isRightAnchor(u)&&(B-=P,I="right"),t.isCenterAnchor(u)&&(B-=P/2,I="center");var N="top";t.isBottomAnchor(u)&&(O-=L,N="bottom"),t.isMiddleAnchor(u)&&(O-=L/2,N="middle"),P=Math.ceil(P),L=Math.ceil(L),B=Math.round(B),O=Math.round(O),A.autoMargin(b,y+"-range-selector",{x:u.x,y:u.y,l:P*s[I],r:P*c[I],b:L*c[N],t:L*s[N]}),f.attr("transform",r(B,O))}}}),kB=Ye({"src/components/rangeselector/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:B2()}}},layoutAttributes:B2(),handleDefaults:SB(),draw:EB()}}}),Wu=Ye({"src/plots/domain.js"(X){"use strict";var H=Oo().extendFlat;X.attributes=function(g,x){g=g||{},x=x||{};var A={valType:"info_array",editType:g.editType,items:[{valType:"number",min:0,max:1,editType:g.editType},{valType:"number",min:0,max:1,editType:g.editType}],dflt:[0,1]},M=g.name?g.name+" ":"",e=g.trace?"trace ":"subplot ",t=x.description?" "+x.description:"",r={x:H({},A,{}),y:H({},A,{}),editType:g.editType};return g.noGridCell||(r.row={valType:"integer",min:0,dflt:0,editType:g.editType},r.column={valType:"integer",min:0,dflt:0,editType:g.editType}),r},X.defaults=function(g,x,A,M){var e=M&&M.x||[0,1],t=M&&M.y||[0,1],r=x.grid;if(r){var o=A("domain.column");o!==void 0&&(o<r.columns?e=r._domains.x[o]:delete g.domain.column);var a=A("domain.row");a!==void 0&&(a<r.rows?t=r._domains.y[a]:delete g.domain.row)}var i=A("domain.x",e),n=A("domain.y",t);i[0]<i[1]||(g.domain.x=e.slice()),n[0]<n[1]||(g.domain.y=t.slice())}}}),GS=Ye({"src/components/grid/index.js"(X,H){"use strict";var g=ta(),x=Ky().counter,A=Wu().attributes,M=wh().idRegex,e=cl(),t={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[x("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[M.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[M.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:A({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function r(s,c,h){var v=c[h+"axes"],p=Object.keys((s._splomAxes||{})[h]||{});if(Array.isArray(v))return v;if(p.length)return p}function o(s,c){var h=s.grid||{},v=r(c,h,"x"),p=r(c,h,"y");if(!s.grid&&!v&&!p)return;var T=Array.isArray(h.subplots)&&Array.isArray(h.subplots[0]),l=Array.isArray(v),_=Array.isArray(p),w=l&&v!==h.xaxes&&_&&p!==h.yaxes,S,E;T?(S=h.subplots.length,E=h.subplots[0].length):(_&&(S=p.length),l&&(E=v.length));var m=e.newContainer(c,"grid");function b(O,I){return g.coerce(h,m,t,O,I)}var d=b("rows",S),u=b("columns",E);if(!(d*u>1)){delete c.grid;return}if(!T&&!l&&!_){var y=b("pattern")==="independent";y&&(T=!0)}m._hasSubplotGrid=T;var f=b("roworder"),P=f==="top to bottom",L=T?.2:.1,z=T?.3:.1,F,B;w&&c._splomGridDflt&&(F=c._splomGridDflt.xside,B=c._splomGridDflt.yside),m._domains={x:a("x",b,L,F,u),y:a("y",b,z,B,d,P)}}function a(s,c,h,v,p,T){var l=c(s+"gap",h),_=c("domain."+s);c(s+"side",v);for(var w=new Array(p),S=_[0],E=(_[1]-S)/(p-l),m=E*(1-l),b=0;b<p;b++){var d=S+E*b;w[T?p-1-b:b]=[d,d+m]}return w}function i(s,c){var h=c.grid;if(!(!h||!h._domains)){var v=s.grid||{},p=c._subplots,T=h._hasSubplotGrid,l=h.rows,_=h.columns,w=h.pattern==="independent",S,E,m,b,d,u,y,f=h._axisMap={};if(T){var P=v.subplots||[];u=h.subplots=new Array(l);var L=1;for(S=0;S<l;S++){var z=u[S]=new Array(_),F=P[S]||[];for(E=0;E<_;E++)if(w?(d=L===1?"xy":"x"+L+"y"+L,L++):d=F[E],z[E]="",p.cartesian.indexOf(d)!==-1){if(y=d.indexOf("y"),m=d.slice(0,y),b=d.slice(y),f[m]!==void 0&&f[m]!==E||f[b]!==void 0&&f[b]!==S)continue;z[E]=d,f[m]=E,f[b]=S}}}else{var B=r(c,v,"x"),O=r(c,v,"y");h.xaxes=n(B,p.xaxis,_,f,"x"),h.yaxes=n(O,p.yaxis,l,f,"y")}var I=h._anchors={},N=h.roworder==="top to bottom";for(var U in f){var W=U.charAt(0),Q=h[W+"side"],ue,se,he;if(Q.length<8)I[U]="free";else if(W==="x"){if(Q.charAt(0)==="t"===N?(ue=0,se=1,he=l):(ue=l-1,se=-1,he=-1),T){var G=f[U];for(S=ue;S!==he;S+=se)if(d=u[S][G],!!d&&(y=d.indexOf("y"),d.slice(0,y)===U)){I[U]=d.slice(y);break}}else for(S=ue;S!==he;S+=se)if(b=h.yaxes[S],p.cartesian.indexOf(U+b)!==-1){I[U]=b;break}}else if(Q.charAt(0)==="l"?(ue=0,se=1,he=_):(ue=_-1,se=-1,he=-1),T){var $=f[U];for(S=ue;S!==he;S+=se)if(d=u[$][S],!!d&&(y=d.indexOf("y"),d.slice(y)===U)){I[U]=d.slice(0,y);break}}else for(S=ue;S!==he;S+=se)if(m=h.xaxes[S],p.cartesian.indexOf(m+U)!==-1){I[U]=m;break}}}}function n(s,c,h,v,p){var T=new Array(h),l;function _(w,S){c.indexOf(S)!==-1&&v[S]===void 0?(T[w]=S,v[S]=w):T[w]=""}if(Array.isArray(s))for(l=0;l<h;l++)_(l,s[l]);else for(_(0,p),l=1;l<h;l++)_(l,p+(l+1));return T}H.exports={moduleType:"component",name:"grid",schema:{layout:{grid:t}},layoutAttributes:t,sizeDefaults:o,contentDefaults:i}}}),WS=Ye({"src/components/errorbars/attributes.js"(X,H){"use strict";H.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}}}),CB=Ye({"src/components/errorbars/defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=WS();H.exports=function(t,r,o,a){var i="error_"+a.axis,n=M.newContainer(r,i),s=t[i]||{};function c(w,S){return A.coerce(s,n,e,w,S)}var h=s.array!==void 0||s.value!==void 0||s.type==="sqrt",v=c("visible",h);if(v!==!1){var p=c("type","array"in s?"data":"percent"),T=!0;p!=="sqrt"&&(T=c("symmetric",!((p==="data"?"arrayminus":"valueminus")in s))),p==="data"?(c("array"),c("traceref"),T||(c("arrayminus"),c("tracerefminus"))):(p==="percent"||p==="constant")&&(c("value"),T||c("valueminus"));var l="copy_"+a.inherit+"style";if(a.inherit){var _=r["error_"+a.inherit];(_||{}).visible&&c(l,!(s.color||g(s.thickness)||g(s.width)))}(!a.inherit||!n[l])&&(c("color",o),c("thickness"),c("width",x.traceIs(r,"gl3d")?0:4))}}}}),ZS=Ye({"src/components/errorbars/compute_error.js"(X,H){"use strict";H.exports=function(A){var M=A.type,e=A.symmetric;if(M==="data"){var t=A.array||[];if(e)return function(n,s){var c=+t[s];return[c,c]};var r=A.arrayminus||[];return function(n,s){var c=+t[s],h=+r[s];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var o=g(M,A.value),a=g(M,A.valueminus);return e||A.valueminus===void 0?function(n){var s=o(n);return[s,s]}:function(n){return[a(n),o(n)]}}};function g(x,A){if(x==="percent")return function(M){return Math.abs(M*A/100)};if(x==="constant")return function(){return Math.abs(A)};if(x==="sqrt")return function(M){return Math.sqrt(Math.abs(M))}}}}),LB=Ye({"src/components/errorbars/calc.js"(X,H){"use strict";var g=jo(),x=Hn(),A=Co(),M=ta(),e=ZS();H.exports=function(o){for(var a=o.calcdata,i=0;i<a.length;i++){var n=a[i],s=n[0].trace;if(s.visible===!0&&x.traceIs(s,"errorBarsOK")){var c=A.getFromId(o,s.xaxis),h=A.getFromId(o,s.yaxis);t(n,s,c,"x"),t(n,s,h,"y")}}};function t(r,o,a,i){var n=o["error_"+i]||{},s=n.visible&&["linear","log"].indexOf(a.type)!==-1,c=[];if(s){for(var h=e(n),v=0;v<r.length;v++){var p=r[v],T=p.i;if(T===void 0)T=v;else if(T===null)continue;var l=p[i];if(g(a.c2l(l))){var _=h(l,T);if(g(_[0])&&g(_[1])){var w=p[i+"s"]=l-_[0],S=p[i+"h"]=l+_[1];c.push(w,S)}}}var E=a._id,m=o._extremes[E],b=A.findExtremes(a,c,M.extendFlat({tozero:m.opts.tozero},{padded:!0}));m.min=m.min.concat(b.min),m.max=m.max.concat(b.max)}}}}),PB=Ye({"src/components/errorbars/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=Bo(),M=uu();H.exports=function(r,o,a,i){var n,s=a.xaxis,c=a.yaxis,h=i&&i.duration>0,v=r._context.staticPlot;o.each(function(p){var T=p[0].trace,l=T.error_x||{},_=T.error_y||{},w;T.ids&&(w=function(b){return b.id});var S=M.hasMarkers(T)&&T.marker.maxdisplayed>0;!_.visible&&!l.visible&&(p=[]);var E=g.select(this).selectAll("g.errorbar").data(p,w);if(E.exit().remove(),!!p.length){l.visible||E.selectAll("path.xerror").remove(),_.visible||E.selectAll("path.yerror").remove(),E.style("opacity",1);var m=E.enter().append("g").classed("errorbar",!0);h&&m.style("opacity",0).transition().duration(i.duration).style("opacity",1),A.setClipUrl(E,a.layerClipId,r),E.each(function(b){var d=g.select(this),u=e(b,s,c);if(!(S&&!b.vis)){var y,f=d.select("path.yerror");if(_.visible&&x(u.x)&&x(u.yh)&&x(u.ys)){var P=_.width;y="M"+(u.x-P)+","+u.yh+"h"+2*P+"m-"+P+",0V"+u.ys,u.noYS||(y+="m-"+P+",0h"+2*P),n=!f.size(),n?f=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("yerror",!0):h&&(f=f.transition().duration(i.duration).ease(i.easing)),f.attr("d",y)}else f.remove();var L=d.select("path.xerror");if(l.visible&&x(u.y)&&x(u.xh)&&x(u.xs)){var z=(l.copy_ystyle?_:l).width;y="M"+u.xh+","+(u.y-z)+"v"+2*z+"m0,-"+z+"H"+u.xs,u.noXS||(y+="m0,-"+z+"v"+2*z),n=!L.size(),n?L=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("xerror",!0):h&&(L=L.transition().duration(i.duration).ease(i.easing)),L.attr("d",y)}else L.remove()}})}})};function e(t,r,o){var a={x:r.c2p(t.x),y:o.c2p(t.y)};return t.yh!==void 0&&(a.yh=o.c2p(t.yh),a.ys=o.c2p(t.ys),x(a.ys)||(a.noYS=!0,a.ys=o.c2p(t.ys,!0))),t.xh!==void 0&&(a.xh=r.c2p(t.xh),a.xs=r.c2p(t.xs),x(a.xs)||(a.noXS=!0,a.xs=r.c2p(t.xs,!0))),a}}}),IB=Ye({"src/components/errorbars/style.js"(X,H){"use strict";var g=_n(),x=Fn();H.exports=function(M){M.each(function(e){var t=e[0].trace,r=t.error_y||{},o=t.error_x||{},a=g.select(this);a.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(x.stroke,r.color),o.copy_ystyle&&(o=r),a.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(x.stroke,o.color)})}}}),RB=Ye({"src/components/errorbars/index.js"(X,H){"use strict";var g=ta(),x=Ou().overrideAll,A=WS(),M={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A)};delete M.error_x.copy_zstyle,delete M.error_y.copy_zstyle,delete M.error_y.copy_ystyle;var e={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A),error_z:g.extendFlat({},A)};delete e.error_x.copy_ystyle,delete e.error_y.copy_ystyle,delete e.error_z.copy_ystyle,delete e.error_z.copy_zstyle,H.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:M,bar:M,histogram:M,scatter3d:x(e,"calc","nested"),scattergl:x(M,"calc","nested")}},supplyDefaults:CB(),calc:LB(),makeComputeError:ZS(),plot:PB(),style:IB(),hoverInfo:t};function t(r,o,a){(o.error_y||{}).visible&&(a.yerr=r.yh-r.y,o.error_y.symmetric||(a.yerrneg=r.y-r.ys)),(o.error_x||{}).visible&&(a.xerr=r.xh-r.x,o.error_x.symmetric||(a.xerrneg=r.x-r.xs))}}}),DB=Ye({"src/components/colorbar/constants.js"(X,H){"use strict";H.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}}}),zB=Ye({"src/components/colorbar/draw.js"(X,H){"use strict";var g=_n(),x=bh(),A=Gu(),M=Hn(),e=Co(),t=bp(),r=ta(),o=r.strTranslate,a=Oo().extendFlat,i=Kd(),n=Bo(),s=Fn(),c=Xg(),h=jl(),v=Up().flipScale,p=R_(),T=I2(),l=Vh(),_=oh(),w=_.LINE_SPACING,S=_.FROM_TL,E=_.FROM_BR,m=DB().cn;function b(L){var z=L._fullLayout,F=z._infolayer.selectAll("g."+m.colorbar).data(d(L),function(B){return B._id});F.enter().append("g").attr("class",function(B){return B._id}).classed(m.colorbar,!0),F.each(function(B){var O=g.select(this);r.ensureSingle(O,"rect",m.cbbg),r.ensureSingle(O,"g",m.cbfills),r.ensureSingle(O,"g",m.cblines),r.ensureSingle(O,"g",m.cbaxis,function(N){N.classed(m.crisp,!0)}),r.ensureSingle(O,"g",m.cbtitleunshift,function(N){N.append("g").classed(m.cbtitle,!0)}),r.ensureSingle(O,"rect",m.cboutline);var I=u(O,B,L);I&&I.then&&(L._promises||[]).push(I),L._context.edits.colorbarPosition&&y(O,B,L)}),F.exit().each(function(B){A.autoMargin(L,B._id)}).remove(),F.order()}function d(L){var z=L._fullLayout,F=L.calcdata,B=[],O,I,N,U;function W(j){return a(j,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function Q(){typeof U.calc=="function"?U.calc(L,N,O):(O._fillgradient=I.reversescale?v(I.colorscale):I.colorscale,O._zrange=[I[U.min],I[U.max]])}for(var ue=0;ue<F.length;ue++){var se=F[ue];if(N=se[0].trace,!!N._module){var he=N._module.colorbar;if(N.visible===!0&&he)for(var G=Array.isArray(he),$=G?he:[he],J=0;J<$.length;J++){U=$[J];var Z=U.container;I=Z?N[Z]:N,I&&I.showscale&&(O=W(I.colorbar),O._id="cb"+N.uid+(G&&Z?"-"+Z:""),O._traceIndex=N.index,O._propPrefix=(Z?Z+".":"")+"colorbar.",O._meta=N._meta,Q(),B.push(O))}}}for(var re in z._colorAxes)if(I=z[re],I.showscale){var ne=z._colorAxes[re];O=W(I.colorbar),O._id="cb"+re,O._propPrefix=re+".colorbar.",O._meta=z._meta,U={min:"cmin",max:"cmax"},ne[0]!=="heatmap"&&(N=ne[1],U.calc=N._module.colorbar.calc),Q(),B.push(O)}return B}function u(L,z,F){var B=z.orientation==="v",O=z.len,I=z.lenmode,N=z.thickness,U=z.thicknessmode,W=z.outlinewidth,Q=z.borderwidth,ue=z.bgcolor,se=z.xanchor,he=z.yanchor,G=z.xpad,$=z.ypad,J=z.x,Z=B?z.y:1-z.y,re=z.yref==="paper",ne=z.xref==="paper",j=F._fullLayout,ee=j._size,ie=z._fillcolor,fe=z._line,be=z.title,Ae=be.side,Be=z._zrange||g.extent((typeof ie=="function"?ie:fe.color).domain()),Ie=typeof fe.color=="function"?fe.color:function(){return fe.color},Ze=typeof ie=="function"?ie:function(){return ie},at=z._levels,it=f(F,z,Be),et=it.fill,lt=it.line,Me=Math.round(N*(U==="fraction"?B?ee.w:ee.h:1)),ge=Me/(B?ee.w:ee.h),ce=Math.round(O*(I==="fraction"?B?ee.h:ee.w:1)),ze=ce/(B?ee.h:ee.w),tt=ne?ee.w:F._fullLayout.width,nt=re?ee.h:F._fullLayout.height,Qe=Math.round(B?J*tt+G:Z*nt+$),Ct={center:.5,right:1}[se]||0,St={top:1,middle:.5}[he]||0,Ot=B?J-Ct*ge:Z-St*ge,jt=B?Z-St*ze:J-Ct*ze,ur=Math.round(B?nt*(1-jt):tt*jt);z._lenFrac=ze,z._thickFrac=ge,z._uFrac=Ot,z._vFrac=jt;var ar=z._axis=P(F,z,Be);ar.position=ge+(B?J+G/ee.w:Z+$/ee.h);var Cr=["top","bottom"].indexOf(Ae)!==-1;if(B&&Cr&&(ar.title.side=Ae,ar.titlex=J+G/ee.w,ar.titley=jt+(be.side==="top"?ze-$/ee.h:$/ee.h)),!B&&!Cr&&(ar.title.side=Ae,ar.titley=Z+$/ee.h,ar.titlex=jt+G/ee.w),fe.color&&z.tickmode==="auto"){ar.tickmode="linear",ar.tick0=at.start;var vr=at.size,_r=r.constrain(ce/50,4,15)+1,yt=(Be[1]-Be[0])/((z.nticks||_r)*vr);if(yt>1){var Fe=Math.pow(10,Math.floor(Math.log(yt)/Math.LN10));vr*=Fe*r.roundUp(yt/Fe,[2,5,10]),(Math.abs(at.start)/at.size+1e-6)%1<2e-6&&(ar.tick0=0)}ar.dtick=vr}ar.domain=B?[jt+$/ee.h,jt+ze-$/ee.h]:[jt+G/ee.w,jt+ze-G/ee.w],ar.setScale(),L.attr("transform",o(Math.round(ee.l),Math.round(ee.t)));var Ke=L.select("."+m.cbtitleunshift).attr("transform",o(-Math.round(ee.l),-Math.round(ee.t))),Ne=ar.ticklabelposition,Ee=ar.title.font.size,Ve=L.select("."+m.cbaxis),ke,Te=0,Le=0;function rt(Gt,Kt){var sr={propContainer:ar,propName:z._propPrefix+"title",traceIndex:z._traceIndex,_meta:z._meta,placeholder:j._dfltTitle.colorbar,containerGroup:L.select("."+m.cbtitle)},sa=Gt.charAt(0)==="h"?Gt.substr(1):"h"+Gt;L.selectAll("."+sa+",."+sa+"-math-group").remove(),c.draw(F,Gt,a(sr,Kt||{}))}function dt(){if(B&&Cr||!B&&!Cr){var Gt,Kt;Ae==="top"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt-ze)+3+Ee*.75),Ae==="bottom"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt)-3-Ee*.25),Ae==="right"&&(Kt=$+ee.t+nt*Z+3+Ee*.75,Gt=G+ee.l+tt*jt),rt(ar._id+"title",{attributes:{x:Gt,y:Kt,"text-anchor":B?"start":"middle"}})}}function xt(){if(B&&!Cr||!B&&Cr){var Gt=ar.position||0,Kt=ar._offset+ar._length/2,sr,sa;if(Ae==="right")sa=Kt,sr=ee.l+tt*Gt+10+Ee*(ar.showticklabels?1:.5);else if(sr=Kt,Ae==="bottom"&&(sa=ee.t+nt*Gt+10+(Ne.indexOf("inside")===-1?ar.tickfont.size:0)+(ar.ticks!=="intside"&&z.ticklen||0)),Ae==="top"){var Aa=be.text.split("<br>").length;sa=ee.t+nt*Gt+10-Me-w*Ee*Aa}rt((B?"h":"v")+ar._id+"title",{avoid:{selection:g.select(F).selectAll("g."+ar._id+"tick"),side:Ae,offsetTop:B?0:ee.t,offsetLeft:B?ee.l:0,maxShift:B?j.width:j.height},attributes:{x:sr,y:sa,"text-anchor":"middle"},transform:{rotate:B?-90:0,offset:0}})}}function It(){if(!B&&!Cr||B&&Cr){var Gt=L.select("."+m.cbtitle),Kt=Gt.select("text"),sr=[-W/2,W/2],sa=Gt.select(".h"+ar._id+"title-math-group").node(),Aa=15.6;Kt.node()&&(Aa=parseInt(Kt.node().style.fontSize,10)*w);var La;if(sa?(La=n.bBox(sa),Le=La.width,Te=La.height,Te>Aa&&(sr[1]-=(Te-Aa)/2)):Kt.node()&&!Kt.classed(m.jsPlaceholder)&&(La=n.bBox(Kt.node()),Le=La.width,Te=La.height),B){if(Te){if(Te+=5,Ae==="top")ar.domain[1]-=Te/ee.h,sr[1]*=-1;else{ar.domain[0]+=Te/ee.h;var ka=h.lineCount(Kt);sr[1]+=(1-ka)*Aa}Gt.attr("transform",o(sr[0],sr[1])),ar.setScale()}}else Le&&(Ae==="right"&&(ar.domain[0]+=(Le+Ee/2)/ee.w),Gt.attr("transform",o(sr[0],sr[1])),ar.setScale())}L.selectAll("."+m.cbfills+",."+m.cblines).attr("transform",B?o(0,Math.round(ee.h*(1-ar.domain[1]))):o(Math.round(ee.w*ar.domain[0]),0)),Ve.attr("transform",B?o(0,Math.round(-ee.t)):o(Math.round(-ee.l),0));var Ga=L.select("."+m.cbfills).selectAll("rect."+m.cbfill).attr("style","").data(et);Ga.enter().append("rect").classed(m.cbfill,!0).attr("style",""),Ga.exit().remove();var Ma=Be.map(ar.c2p).map(Math.round).sort(function(Vt,Ut){return Vt-Ut});Ga.each(function(Vt,Ut){var xr=[Ut===0?Be[0]:(et[Ut]+et[Ut-1])/2,Ut===et.length-1?Be[1]:(et[Ut]+et[Ut+1])/2].map(ar.c2p).map(Math.round);B&&(xr[1]=r.constrain(xr[1]+(xr[1]>xr[0])?1:-1,Ma[0],Ma[1]));var Zr=g.select(this).attr(B?"x":"y",Qe).attr(B?"y":"x",g.min(xr)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(g.max(xr)-g.min(xr),2));if(z._fillgradient)n.gradient(Zr,F,z._id,B?"vertical":"horizontalreversed",z._fillgradient,"fill");else{var pa=Ze(Vt).replace("e-","");Zr.attr("fill",x(pa).toHexString())}});var Ua=L.select("."+m.cblines).selectAll("path."+m.cbline).data(fe.color&&fe.width?lt:[]);Ua.enter().append("path").classed(m.cbline,!0),Ua.exit().remove(),Ua.each(function(Vt){var Ut=Qe,xr=Math.round(ar.c2p(Vt))+fe.width/2%1;g.select(this).attr("d","M"+(B?Ut+","+xr:xr+","+Ut)+(B?"h":"v")+Me).call(n.lineGroupStyle,fe.width,Ie(Vt),fe.dash)}),Ve.selectAll("g."+ar._id+"tick,path").remove();var ni=Qe+Me+(W||0)/2-(z.ticks==="outside"?1:0),Wt=e.calcTicks(ar),zt=e.getTickSigns(ar)[2];return e.drawTicks(F,ar,{vals:ar.ticks==="inside"?e.clipEnds(ar,Wt):Wt,layer:Ve,path:e.makeTickPath(ar,ni,zt),transFn:e.makeTransTickFn(ar)}),e.drawLabels(F,ar,{vals:Wt,layer:Ve,transFn:e.makeTransTickLabelFn(ar),labelFns:e.makeLabelFns(ar,ni)})}function Bt(){var Gt,Kt=Me+W/2;Ne.indexOf("inside")===-1&&(Gt=n.bBox(Ve.node()),Kt+=B?Gt.width:Gt.height),ke=Ke.select("text");var sr=0,sa=B&&Ae==="top",Aa=!B&&Ae==="right",La=0;if(ke.node()&&!ke.classed(m.jsPlaceholder)){var ka,Ga=Ke.select(".h"+ar._id+"title-math-group").node();Ga&&(B&&Cr||!B&&!Cr)?(Gt=n.bBox(Ga),sr=Gt.width,ka=Gt.height):(Gt=n.bBox(Ke.node()),sr=Gt.right-ee.l-(B?Qe:ur),ka=Gt.bottom-ee.t-(B?ur:Qe),!B&&Ae==="top"&&(Kt+=Gt.height,La=Gt.height)),Aa&&(ke.attr("transform",o(sr/2+Ee/2,0)),sr*=2),Kt=Math.max(Kt,B?sr:ka)}var Ma=(B?G:$)*2+Kt+Q+W/2,Ua=0;!B&&be.text&&he==="bottom"&&Z<=0&&(Ua=Ma/2,Ma+=Ua,La+=Ua),j._hColorbarMoveTitle=Ua,j._hColorbarMoveCBTitle=La;var ni=Q+W,Wt=(B?Qe:ur)-ni/2-(B?G:0),zt=(B?ur:Qe)-(B?ce:$+La-Ua);L.select("."+m.cbbg).attr("x",Wt).attr("y",zt).attr(B?"width":"height",Math.max(Ma-Ua,2)).attr(B?"height":"width",Math.max(ce+ni,2)).call(s.fill,ue).call(s.stroke,z.bordercolor).style("stroke-width",Q);var Vt=Aa?Math.max(sr-10,0):0;L.selectAll("."+m.cboutline).attr("x",(B?Qe:ur+G)+Vt).attr("y",(B?ur+$-ce:Qe)+(sa?Te:0)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(ce-(B?2*$+Te:2*G+Vt),2)).call(s.stroke,z.outlinecolor).style({fill:"none","stroke-width":W});var Ut=B?Ct*Ma:0,xr=B?0:(1-St)*Ma-La;if(Ut=ne?ee.l-Ut:-Ut,xr=re?ee.t-xr:-xr,L.attr("transform",o(Ut,xr)),!B&&(Q||x(ue).getAlpha()&&!x.equals(j.paper_bgcolor,ue))){var Zr=Ve.selectAll("text"),pa=Zr[0].length,Xr=L.select("."+m.cbbg).node(),Ea=n.bBox(Xr),Fa=n.getTranslate(L),qa=2;Zr.each(function(Fr,Lr){var Jr=0,oa=pa-1;if(Lr===Jr||Lr===oa){var ca=n.bBox(this),kt=n.getTranslate(this),ir;if(Lr===oa){var mr=ca.right+kt.x,$r=Ea.right+Fa.x+ur-Q-qa+J;ir=$r-mr,ir>0&&(ir=0)}else if(Lr===Jr){var ma=ca.left+kt.x,Ba=Ea.left+Fa.x+ur+Q+qa;ir=Ba-ma,ir<0&&(ir=0)}ir&&(pa<3?this.setAttribute("transform","translate("+ir+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var ya={},$a=S[se],mt=E[se],gt=S[he],Er=E[he],kr=Ma-Me;B?(I==="pixels"?(ya.y=Z,ya.t=ce*gt,ya.b=ce*Er):(ya.t=ya.b=0,ya.yt=Z+O*gt,ya.yb=Z-O*Er),U==="pixels"?(ya.x=J,ya.l=Ma*$a,ya.r=Ma*mt):(ya.l=kr*$a,ya.r=kr*mt,ya.xl=J-N*$a,ya.xr=J+N*mt)):(I==="pixels"?(ya.x=J,ya.l=ce*$a,ya.r=ce*mt):(ya.l=ya.r=0,ya.xl=J+O*$a,ya.xr=J-O*mt),U==="pixels"?(ya.y=1-Z,ya.t=Ma*gt,ya.b=Ma*Er):(ya.t=kr*gt,ya.b=kr*Er,ya.yt=Z-N*gt,ya.yb=Z+N*Er));var br=z.y<.5?"b":"t",Tr=z.x<.5?"l":"r";F._fullLayout._reservedMargin[z._id]={};var Mr={r:j.width-Wt-Ut,l:Wt+ya.r,b:j.height-zt-xr,t:zt+ya.b};ne&&re?A.autoMargin(F,z._id,ya):ne?F._fullLayout._reservedMargin[z._id][br]=Mr[br]:re||B?F._fullLayout._reservedMargin[z._id][Tr]=Mr[Tr]:F._fullLayout._reservedMargin[z._id][br]=Mr[br]}return r.syncOrAsync([A.previousPromises,dt,It,xt,A.previousPromises,Bt],F)}function y(L,z,F){var B=z.orientation==="v",O=F._fullLayout,I=O._size,N,U,W;t.init({element:L.node(),gd:F,prepFn:function(){N=L.attr("transform"),i(L)},moveFn:function(Q,ue){L.attr("transform",N+o(Q,ue)),U=t.align((B?z._uFrac:z._vFrac)+Q/I.w,B?z._thickFrac:z._lenFrac,0,1,z.xanchor),W=t.align((B?z._vFrac:1-z._uFrac)-ue/I.h,B?z._lenFrac:z._thickFrac,0,1,z.yanchor);var se=t.getCursor(U,W,z.xanchor,z.yanchor);i(L,se)},doneFn:function(){if(i(L),U!==void 0&&W!==void 0){var Q={};Q[z._propPrefix+"x"]=U,Q[z._propPrefix+"y"]=W,z._traceIndex!==void 0?M.call("_guiRestyle",F,Q,z._traceIndex):M.call("_guiRelayout",F,Q)}}})}function f(L,z,F){var B=z._levels,O=[],I=[],N,U,W=B.end+B.size/100,Q=B.size,ue=1.001*F[0]-.001*F[1],se=1.001*F[1]-.001*F[0];for(U=0;U<1e5&&(N=B.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>ue&&N<se&&O.push(N);if(z._fillgradient)I=[0];else if(typeof z._fillcolor=="function"){var he=z._filllevels;if(he)for(W=he.end+he.size/100,Q=he.size,U=0;U<1e5&&(N=he.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>F[0]&&N<F[1]&&I.push(N);else I=O.map(function(G){return G-B.size/2}),I.push(I[I.length-1]+B.size)}else z._fillcolor&&typeof z._fillcolor=="string"&&(I=[0]);return B.size<0&&(O.reverse(),I.reverse()),{line:O,fill:I}}function P(L,z,F){var B=L._fullLayout,O=z.orientation==="v",I={type:"linear",range:F,tickmode:z.tickmode,nticks:z.nticks,tick0:z.tick0,dtick:z.dtick,tickvals:z.tickvals,ticktext:z.ticktext,ticks:z.ticks,ticklen:z.ticklen,tickwidth:z.tickwidth,tickcolor:z.tickcolor,showticklabels:z.showticklabels,labelalias:z.labelalias,ticklabelposition:z.ticklabelposition,ticklabeloverflow:z.ticklabeloverflow,ticklabelstep:z.ticklabelstep,tickfont:z.tickfont,tickangle:z.tickangle,tickformat:z.tickformat,exponentformat:z.exponentformat,minexponent:z.minexponent,separatethousands:z.separatethousands,showexponent:z.showexponent,showtickprefix:z.showtickprefix,tickprefix:z.tickprefix,showticksuffix:z.showticksuffix,ticksuffix:z.ticksuffix,title:z.title,showline:!0,anchor:"free",side:O?"right":"bottom",position:1},N=O?"y":"x",U={type:"linear",_id:N+z._id},W={letter:N,font:B.font,noAutotickangles:N==="y",noHover:!0,noTickson:!0,noTicklabelmode:!0,noInsideRange:!0,calendar:B.calendar};function Q(ue,se){return r.coerce(I,U,l,ue,se)}return p(I,U,Q,W,B),T(I,U,Q,W),U}H.exports={draw:b}}}),FB=Ye({"src/components/colorbar/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"colorbar",attributes:y2(),supplyDefaults:uS(),draw:zB().draw,hasColorbar:oS()}}}),OB=Ye({"src/components/legend/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"legend",layoutAttributes:hS(),supplyLayoutDefaults:pS(),draw:mS(),style:vS()}}}),BB=Ye({"src/locale-en.js"(X,H){"use strict";H.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}}}),NB=Ye({"src/locale-en-us.js"(X,H){"use strict";H.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}}}),XS=Ye({"src/snapshot/cloneplot.js"(X,H){"use strict";var g=Hn(),x=ta(),A=x.extendFlat,M=x.extendDeep;function e(r){var o;switch(r){case"themes__thumb":o={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":o={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:o={}}return o}function t(r){var o=["xaxis","yaxis","zaxis"];return o.indexOf(r.slice(0,5))>-1}H.exports=function(o,a){var i,n=o.data,s=o.layout,c=M([],n),h=M({},s,e(a.tileClass)),v=o._context||{};if(a.width&&(h.width=a.width),a.height&&(h.height=a.height),a.tileClass==="thumbnail"||a.tileClass==="themes__thumb"){h.annotations=[];var p=Object.keys(h);for(i=0;i<p.length;i++)t(p[i])&&(h[p[i]].title={text:""});for(i=0;i<c.length;i++){var T=c[i];T.showscale=!1,T.marker&&(T.marker.showscale=!1),g.traceIs(T,"pie-like")&&(T.textposition="none")}}if(Array.isArray(a.annotations))for(i=0;i<a.annotations.length;i++)h.annotations.push(a.annotations[i]);var l=Object.keys(h).filter(function(m){return m.match(/^scene\d*$/)});if(l.length){var _={};for(a.tileClass==="thumbnail"&&(_={title:{text:""},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),i=0;i<l.length;i++){var w=h[l[i]];w.xaxis||(w.xaxis={}),w.yaxis||(w.yaxis={}),w.zaxis||(w.zaxis={}),A(w.xaxis,_),A(w.yaxis,_),A(w.zaxis,_),w._scene=null}}var S=document.createElement("div");a.tileClass&&(S.className=a.tileClass);var E={gd:S,td:S,layout:h,data:c,config:{staticPlot:a.staticPlot===void 0?!0:a.staticPlot,plotGlPixelRatio:a.plotGlPixelRatio===void 0?2:a.plotGlPixelRatio,displaylogo:a.displaylogo||!1,showLink:a.showLink||!1,showTips:a.showTips||!1,mapboxAccessToken:v.mapboxAccessToken}};return a.setBackground!=="transparent"&&(E.config.setBackground=a.setBackground||"opaque"),E.gd.defaultLayout=e(a.tileClass),E}}}),UB=Ye({"src/snapshot/toimage.js"(X,H){"use strict";var g=Wg().EventEmitter,x=Hn(),A=ta(),M=Xv(),e=XS(),t=k2(),r=C2();function o(a,i){var n=new g,s=e(a,{format:"png"}),c=s.gd;c.style.position="absolute",c.style.left="-5000px",document.body.appendChild(c);function h(){var p=M.getDelay(c._fullLayout);setTimeout(function(){var T=t(c),l=document.createElement("canvas");l.id=A.randstr(),n=r({format:i.format,width:c._fullLayout.width,height:c._fullLayout.height,canvas:l,emitter:n,svg:T}),n.clean=function(){c&&document.body.removeChild(c)}},p)}var v=M.getRedrawFunc(c);return x.call("_doPlot",c,s.data,s.layout,s.config).then(v).then(h).catch(function(p){n.emit("error",p)}),n}H.exports=o}}),jB=Ye({"src/snapshot/index.js"(X,H){"use strict";var g=Xv(),x={getDelay:g.getDelay,getRedrawFunc:g.getRedrawFunc,clone:XS(),toSVG:k2(),svgToImg:C2(),toImage:UB(),downloadImage:IS()};H.exports=x}}),VB=Ye({"src/core.js"(X){"use strict";X.version=xh().version,Bp(),$F();var H=Hn(),g=X.register=H.register,x=NO(),A=Object.keys(x);for(e=0;e<A.length;e++)M=A[e],M.charAt(0)!=="_"&&(X[M]=x[M]),g({moduleType:"apiMethod",name:M,fn:x[M]});var M,e;g(XO()),g([eB(),iB(),ff(),lB(),hB(),mB(),_B(),AB(),kB(),GS(),RB(),Su(),FB(),OB(),Lc(),AS()]),g([BB(),NB()]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(g(window.PlotlyLocales),delete window.PlotlyLocales),X.Icons=b2();var t=Lc(),r=Gu();X.Plots={resize:r.resize,graphJson:r.graphJson,sendDataToCloud:r.sendDataToCloud},X.Fx={hover:t.hover,unhover:t.unhover,loneHover:t.loneHover,loneUnhover:t.loneUnhover},X.Snapshot=jB(),X.PlotSchema=Qy()}}),qB=Ye({"lib/core.js"(X,H){"use strict";H.exports=VB()}}),Qg=Ye({"src/traces/bar/constants.js"(X,H){"use strict";H.exports={TEXTPAD:3,eventDataKeys:["value","label"]}}}),Sv=Ye({"src/traces/bar/attributes.js"(X,H){"use strict";var g=Pc(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=xs().texttemplateAttrs,e=tu(),t=Au(),r=Qg(),o=Uh().pattern,a=Oo().extendFlat,i=t({editType:"calc",arrayOk:!0,colorEditType:"style"}),n=g.marker,s=n.line,c=a({},s.width,{dflt:0}),h=a({width:c,editType:"calc"},e("marker.line")),v=a({line:h,editType:"calc"},e("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:o,cornerradius:{valType:"any",editType:"calc"}});H.exports={x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:x("x"),yhoverformat:x("y"),text:g.text,texttemplate:M({editType:"plot"},{keys:r.eventDataKeys}),hovertext:g.hovertext,hovertemplate:A({},{keys:r.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:a({},i,{}),insidetextfont:a({},i,{}),outsidetextfont:a({},i,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:a({},g.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:v,offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:{marker:{opacity:g.selected.marker.opacity,color:g.selected.marker.color,editType:"style"},textfont:g.selected.textfont,editType:"style"},unselected:{marker:{opacity:g.unselected.marker.opacity,color:g.unselected.marker.color,editType:"style"},textfont:g.unselected.textfont,editType:"style"},zorder:g.zorder}}}),N2=Ye({"src/traces/bar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}}}),U2=Ye({"src/traces/bar/style_defaults.js"(X,H){"use strict";var g=Fn(),x=Up().hasColorscale,A=sh(),M=ta().coercePattern;H.exports=function(t,r,o,a,i){var n=o("marker.color",a),s=x(t,"marker");s&&A(t,r,i,o,{prefix:"marker.",cLetter:"c"}),o("marker.line.color",g.defaultLine),x(t,"marker.line")&&A(t,r,i,o,{prefix:"marker.line.",cLetter:"c"}),o("marker.line.width"),o("marker.opacity"),M(o,"marker.pattern",n,s),o("selected.marker.color"),o("unselected.marker.color")}}}),gd=Ye({"src/traces/bar/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Hn(),e=i1(),t=Qd(),r=U2(),o=Jg(),a=Sv(),i=x.coerceFont;function n(v,p,T,l){function _(b,d){return x.coerce(v,p,a,b,d)}var w=e(v,p,l,_);if(!w){p.visible=!1;return}t(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("zorder"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");h(v,p,l,_,S,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r(v,p,_,T,l);var E=(p.marker.line||{}).color,m=M.getComponentMethod("errorbars","supplyDefaults");m(v,p,E||A.defaultLine,{axis:"y"}),m(v,p,E||A.defaultLine,{axis:"x",inherit:"y"}),x.coerceSelectionMarkerOpacity(p,_)}function s(v,p){var T,l;function _(E,m){return x.coerce(l._input,l,a,E,m)}for(var w=0;w<v.length;w++)if(l=v[w],l.type==="bar"){T=l._input;var S=_("marker.cornerradius",p.barcornerradius);l.marker&&(l.marker.cornerradius=c(S)),o(T,l,p,_,p.barmode)}}function c(v){if(g(v)){if(v=+v,v>=0)return v}else if(typeof v=="string"&&(v=v.trim(),v.slice(-1)==="%"&&g(v.slice(0,-1))&&(v=+v.slice(0,-1),v>=0)))return v+"%"}function h(v,p,T,l,_,w){w=w||{};var S=w.moduleHasSelected!==!1,E=w.moduleHasUnselected!==!1,m=w.moduleHasConstrain!==!1,b=w.moduleHasCliponaxis!==!1,d=w.moduleHasTextangle!==!1,u=w.moduleHasInsideanchor!==!1,y=!!w.hasPathbar,f=Array.isArray(_)||_==="auto",P=f||_==="inside",L=f||_==="outside";if(P||L){var z=i(l,"textfont",T.font),F=x.extendFlat({},z),B=v.textfont&&v.textfont.color,O=!B;if(O&&delete F.color,i(l,"insidetextfont",F),y){var I=x.extendFlat({},z);O&&delete I.color,i(l,"pathbar.textfont",I)}L&&i(l,"outsidetextfont",z),S&&l("selected.textfont.color"),E&&l("unselected.textfont.color"),m&&l("constraintext"),b&&l("cliponaxis"),d&&l("textangle"),l("texttemplate")}P&&u&&l("insidetextanchor")}H.exports={supplyDefaults:n,crossTraceDefaults:s,handleText:h,validateCornerradius:c}}}),YS=Ye({"src/traces/bar/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=Co(),A=ta(),M=N2(),e=gd().validateCornerradius;H.exports=function(t,r,o){function a(S,E){return A.coerce(t,r,M,S,E)}for(var i=!1,n=!1,s=!1,c={},h=a("barmode"),v=h==="group",p=0;p<o.length;p++){var T=o[p];if(g.traceIs(T,"bar")&&T.visible)i=!0;else continue;var l=T.xaxis+T.yaxis;if(v?(c[l]&&(s=!0),c[l]=!0):(l+=T._input.offsetgroup,c.length>0&&!c[l]&&(s=!0),c[l]=!0),T.visible&&T.type==="histogram"){var _=x.getFromId({_fullLayout:r},T[T.orientation==="v"?"xaxis":"yaxis"]);_.type!=="category"&&(n=!0)}}if(!i){delete r.barmode;return}h!=="overlay"&&a("barnorm"),a("bargap",n&&!s?0:.2),a("bargroupgap");var w=a("barcornerradius");r.barcornerradius=e(w)}}}),z_=Ye({"src/traces/bar/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.hovertext,A,"htx");var t=M.marker;if(t){g.mergeArray(t.opacity,A,"mo",!0),g.mergeArray(t.color,A,"mc");var r=t.line;r&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"))}}}}),HB=Ye({"src/traces/bar/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=Up().hasColorscale,M=jp(),e=z_(),t=Od();H.exports=function(o,a){var i=g.getFromId(o,a.xaxis||"x"),n=g.getFromId(o,a.yaxis||"y"),s,c,h,v,p,T,l={msUTC:!!(a.base||a.base===0)};a.orientation==="h"?(s=i.makeCalcdata(a,"x",l),h=n.makeCalcdata(a,"y"),v=x(a,n,"y",h),p=!!a.yperiodalignment,T="y"):(s=n.makeCalcdata(a,"y",l),h=i.makeCalcdata(a,"x"),v=x(a,i,"x",h),p=!!a.xperiodalignment,T="x"),c=v.vals;for(var _=Math.min(c.length,s.length),w=new Array(_),S=0;S<_;S++)w[S]={p:c[S],s:s[S]},p&&(w[S].orig_p=h[S],w[S][T+"End"]=v.ends[S],w[S][T+"Start"]=v.starts[S]),a.ids&&(w[S].id=String(a.ids[S]));return A(a,"marker")&&M(o,a,{vals:a.marker.color,containerStr:"marker",cLetter:"c"}),A(a,"marker.line")&&M(o,a,{vals:a.marker.line.color,containerStr:"marker.line",cLetter:"c"}),e(w,a),t(w,a),w}}}),wp=Ye({"src/traces/bar/uniform_text.js"(X,H){"use strict";var g=_n(),x=ta();function A(r,o,a){var i=r._fullLayout,n=i["_"+a+"Text_minsize"];if(n){var s=i.uniformtext.mode==="hide",c;switch(a){case"funnelarea":case"pie":case"sunburst":c="g.slice";break;case"treemap":case"icicle":c="g.slice, g.pathbar";break;default:c="g.points > g.point"}o.selectAll(c).each(function(h){var v=h.transform;if(v){v.scale=s&&v.hide?0:n/v.fontSize;var p=g.select(this).select("text");x.setTransormAndDisplay(p,v)}})}}function M(r,o,a){if(a.uniformtext.mode){var i=t(r),n=a.uniformtext.minsize,s=o.scale*o.fontSize;o.hide=s<n,a[i]=a[i]||1/0,o.hide||(a[i]=Math.min(a[i],Math.max(s,n)))}}function e(r,o){var a=t(r);o[a]=void 0}function t(r){return"_"+r+"Text_minsize"}H.exports={recordMinTextSize:M,clearMinTextSize:e,resizeText:A}}}),j2=Ye({"src/traces/bar/helpers.js"(X){"use strict";var H=jo(),g=bh(),x=ta().isArrayOrTypedArray;X.coerceString=function(A,M,e){if(typeof M=="string"){if(M||!A.noBlank)return M}else if((typeof M=="number"||M===!0)&&!A.strict)return String(M);return e!==void 0?e:A.dflt},X.coerceNumber=function(A,M,e){if(H(M)){M=+M;var t=A.min,r=A.max,o=t!==void 0&&M<t||r!==void 0&&M>r;if(!o)return M}return e!==void 0?e:A.dflt},X.coerceColor=function(A,M,e){return g(M).isValid()?M:e!==void 0?e:A.dflt},X.coerceEnumerated=function(A,M,e){return A.coerceNumber&&(M=+M),A.values.indexOf(M)!==-1?M:e!==void 0?e:A.dflt},X.getValue=function(A,M){var e;return x(A)?M<A.length&&(e=A[M]):e=A,e},X.getLineWidth=function(A,M){var e=0<M.mlw?M.mlw:x(A.marker.line.width)?0:A.marker.line.width;return e}}}),Nd=Ye({"src/traces/bar/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo(),M=ta(),e=Hn(),t=wp().resizeText,r=Sv(),o=r.textfont,a=r.insidetextfont,i=r.outsidetextfont,n=j2();function s(b){var d=g.select(b).selectAll('g[class^="barlayer"]').selectAll("g.trace");t(b,d,"bar");var u=d.size(),y=b._fullLayout;d.style("opacity",function(f){return f[0].trace.opacity}).each(function(f){(y.barmode==="stack"&&u>1||y.bargap===0&&y.bargroupgap===0&&!f[0].trace.marker.line.width)&&g.select(this).attr("shape-rendering","crispEdges")}),d.selectAll("g.points").each(function(f){var P=g.select(this),L=f[0].trace;c(P,L,b)}),e.getComponentMethod("errorbars","style")(d)}function c(b,d,u){A.pointStyle(b.selectAll("path"),d,u),h(b,d,u)}function h(b,d,u){b.selectAll("text").each(function(y){var f=g.select(this),P=M.ensureUniformFontSize(u,l(f,y,d,u));A.font(f,P)})}function v(b,d,u){var y=d[0].trace;y.selectedpoints?p(u,y,b):(c(u,y,b),e.getComponentMethod("errorbars","style")(u))}function p(b,d,u){A.selectedPointStyle(b.selectAll("path"),d),T(b.selectAll("text"),d,u)}function T(b,d,u){b.each(function(y){var f=g.select(this),P;if(y.selected){P=M.ensureUniformFontSize(u,l(f,y,d,u));var L=d.selected.textfont&&d.selected.textfont.color;L&&(P.color=L),A.font(f,P)}else A.selectedTextStyle(f,d)})}function l(b,d,u,y){var f=y._fullLayout.font,P=u.textfont;if(b.classed("bartext-inside")){var L=m(d,u);P=w(u,d.i,f,L)}else b.classed("bartext-outside")&&(P=S(u,d.i,f));return P}function _(b,d,u){return E(o,b.textfont,d,u)}function w(b,d,u,y){var f=_(b,d,u),P=b._input.textfont===void 0||b._input.textfont.color===void 0||Array.isArray(b.textfont.color)&&b.textfont.color[d]===void 0;return P&&(f={color:x.contrast(y),family:f.family,size:f.size,weight:f.weight,style:f.style,variant:f.variant,textcase:f.textcase,lineposition:f.lineposition,shadow:f.shadow}),E(a,b.insidetextfont,d,f)}function S(b,d,u){var y=_(b,d,u);return E(i,b.outsidetextfont,d,y)}function E(b,d,u,y){d=d||{};var f=n.getValue(d.family,u),P=n.getValue(d.size,u),L=n.getValue(d.color,u),z=n.getValue(d.weight,u),F=n.getValue(d.style,u),B=n.getValue(d.variant,u),O=n.getValue(d.textcase,u),I=n.getValue(d.lineposition,u),N=n.getValue(d.shadow,u);return{family:n.coerceString(b.family,f,y.family),size:n.coerceNumber(b.size,P,y.size),color:n.coerceColor(b.color,L,y.color),weight:n.coerceString(b.weight,z,y.weight),style:n.coerceString(b.style,F,y.style),variant:n.coerceString(b.variant,B,y.variant),textcase:n.coerceString(b.variant,O,y.textcase),lineposition:n.coerceString(b.variant,I,y.lineposition),shadow:n.coerceString(b.variant,N,y.shadow)}}function m(b,d){return d.type==="waterfall"?d[b.dir].marker.color:b.mcc||b.mc||d.marker.color}H.exports={style:s,styleTextPoints:h,styleOnSelect:v,getInsideTextFont:w,getOutsideTextFont:S,getBarColor:m,resizeText:t}}}),e0=Ye({"src/traces/bar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=jl(),e=Fn(),t=Bo(),r=Hn(),o=Co().tickText,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=Nd(),c=j2(),h=Qg(),v=Sv(),p=v.text,T=v.textposition,l=Qp().appendArrayPointValue,_=h.TEXTPAD;function w(Q){return Q.id}function S(Q){if(Q.ids)return w}function E(Q){return(Q>0)-(Q<0)}function m(Q,ue){return Q<ue?1:-1}function b(Q,ue,se,he){var G=[],$=[],J=he?ue:se,Z=he?se:ue;return G[0]=J.c2p(Q.s0,!0),$[0]=Z.c2p(Q.p0,!0),G[1]=J.c2p(Q.s1,!0),$[1]=Z.c2p(Q.p1,!0),he?[G,$]:[$,G]}function d(Q,ue,se,he){if(!ue.uniformtext.mode&&u(se)){var G;return he&&(G=he()),Q.transition().duration(se.duration).ease(se.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()})}else return Q}function u(Q){return Q&&Q.duration>0}function y(Q,ue,se,he,G,$){var J=ue.xaxis,Z=ue.yaxis,re=Q._fullLayout,ne=Q._context.staticPlot;G||(G={mode:re.barmode,norm:re.barmode,gap:re.bargap,groupgap:re.bargroupgap},n("bar",re));var j=A.makeTraceGroups(he,se,"trace bars").each(function(ee){var ie=g.select(this),fe=ee[0].trace,be=ee[0].t,Ae=fe.type==="waterfall",Be=fe.type==="funnel",Ie=fe.type==="histogram",Ze=fe.type==="bar",at=Ze||Be,it=0;Ae&&fe.connector.visible&&fe.connector.mode==="between"&&(it=fe.connector.line.width/2);var et=fe.orientation==="h",lt=u(G),Me=A.ensureSingle(ie,"g","points"),ge=S(fe),ce=Me.selectAll("g.point").data(A.identity,ge);ce.enter().append("g").classed("point",!0),ce.exit().remove(),ce.each(function(tt,nt){var Qe=g.select(this),Ct=b(tt,J,Z,et),St=Ct[0][0],Ot=Ct[0][1],jt=Ct[1][0],ur=Ct[1][1],ar=(et?Ot-St:ur-jt)===0;ar&&at&&c.getLineWidth(fe,tt)&&(ar=!1),ar||(ar=!x(St)||!x(Ot)||!x(jt)||!x(ur)),tt.isBlank=ar,ar&&(et?Ot=St:ur=jt),it&&!ar&&(et?(St-=m(St,Ot)*it,Ot+=m(St,Ot)*it):(jt-=m(jt,ur)*it,ur+=m(jt,ur)*it));var Cr,vr;if(fe.type==="waterfall"){if(!ar){var _r=fe[tt.dir].marker;Cr=_r.line.width,vr=_r.color}}else Cr=c.getLineWidth(fe,tt),vr=tt.mc||fe.marker.color;function yt(ni){var Wt=g.round(Cr/2%1,2);return G.gap===0&&G.groupgap===0?g.round(Math.round(ni)-Wt,2):ni}function Fe(ni,Wt,zt){return zt&&ni===Wt?ni:Math.abs(ni-Wt)>=2?yt(ni):ni>Wt?Math.ceil(ni):Math.floor(ni)}var Ke=e.opacity(vr),Ne=Ke<1||Cr>.01?yt:Fe;Q._context.staticPlot||(St=Ne(St,Ot,et),Ot=Ne(Ot,St,et),jt=Ne(jt,ur,!et),ur=Ne(ur,jt,!et));var Ee=et?J.c2p:Z.c2p,Ve;tt.s0>0?Ve=tt._sMax:tt.s0<0?Ve=tt._sMin:Ve=tt.s1>0?tt._sMax:tt._sMin;function ke(ni,Wt){if(!ni)return 0;var zt=Math.abs(et?ur-jt:Ot-St),Vt=Math.abs(et?Ot-St:ur-jt),Ut=Ne(Math.abs(Ee(Ve,!0)-Ee(0,!0))),xr=tt.hasB?Math.min(zt/2,Vt/2):Math.min(zt/2,Ut),Zr;if(Wt==="%"){var pa=Math.min(50,ni);Zr=zt*(pa/100)}else Zr=ni;return Ne(Math.max(Math.min(Zr,xr),0))}var Te=Ze||Ie?ke(be.cornerradiusvalue,be.cornerradiusform):0,Le,rt,dt="M"+St+","+jt+"V"+ur+"H"+Ot+"V"+jt+"Z",xt=0;if(Te&&tt.s){var It=E(tt.s0)===0||E(tt.s)===E(tt.s0)?tt.s1:tt.s0;if(xt=Ne(tt.hasB?0:Math.abs(Ee(Ve,!0)-Ee(It,!0))),xt<Te){var Bt=m(St,Ot),Gt=m(jt,ur),Kt=Bt===-Gt?1:0;if(et)if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(Ot-St)+xt;var sr=rt<Te?Te-Math.sqrt(rt*(2*Te-rt)):0,sa=xt>0?Math.sqrt(xt*(2*Te-xt)):0,Aa=Bt>0?Math.max:Math.min;Le="M"+St+","+jt+"V"+(ur-sr*Gt)+"H"+Aa(Ot-(Te-xt)*Bt,St)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt-sa)+"V"+(jt+Te*Gt+sa)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Aa(Ot-(Te-xt)*Bt,St)+","+(jt+sr*Gt)+"Z"}else if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(ur-jt)+xt;var La=rt<Te?Te-Math.sqrt(rt*(2*Te-rt)):0,ka=xt>0?Math.sqrt(xt*(2*Te-xt)):0,Ga=Gt>0?Math.max:Math.min;Le="M"+(St+La*Bt)+","+jt+"V"+Ga(ur-(Te-xt)*Gt,jt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt-ka)+","+ur+"H"+(Ot-Te*Bt+ka)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-La*Bt)+","+Ga(ur-(Te-xt)*Gt,jt)+"V"+jt+"Z"}}else Le=dt}else Le=dt;var Ma=d(A.ensureSingle(Qe,"path"),re,G,$);if(Ma.style("vector-effect",ne?"none":"non-scaling-stroke").attr("d",isNaN((Ot-St)*(ur-jt))||ar&&Q._context.staticPlot?"M0,0Z":Le).call(t.setClipUrl,ue.layerClipId,Q),!re.uniformtext.mode&&lt){var Ua=t.makePointStyleFns(fe);t.singlePointStyle(tt,Ma,fe,Ua,Q)}f(Q,ue,Qe,ee,nt,St,Ot,jt,ur,Te,xt,G,$),ue.layerClipId&&t.hideOutsideRangePoint(tt,Qe.select("text"),J,Z,fe.xcalendar,fe.ycalendar)});var ze=fe.cliponaxis===!1;t.setClipUrl(ie,ze?null:ue.layerClipId,Q)});r.getComponentMethod("errorbars","plot")(Q,j,ue,G)}function f(Q,ue,se,he,G,$,J,Z,re,ne,j,ee,ie){var fe=ue.xaxis,be=ue.yaxis,Ae=Q._fullLayout,Be;function Ie(rt,dt,xt){var It=A.ensureSingle(rt,"text").text(dt).attr({class:"bartext bartext-"+Be,"text-anchor":"middle","data-notex":1}).call(t.font,xt).call(M.convertToTspans,Q);return It}var Ze=he[0].trace,at=Ze.orientation==="h",it=I(Ae,he,G,fe,be);Be=N(Ze,G);var et=ee.mode==="stack"||ee.mode==="relative",lt=he[G],Me=!et||lt._outmost,ge=lt.hasB,ce=ne&&ne-j>_;if(!it||Be==="none"||(lt.isBlank||$===J||Z===re)&&(Be==="auto"||Be==="inside")){se.select("text").remove();return}var ze=Ae.font,tt=s.getBarColor(he[G],Ze),nt=s.getInsideTextFont(Ze,G,ze,tt),Qe=s.getOutsideTextFont(Ze,G,ze),Ct=Ze.insidetextanchor||"end",St=se.datum();at?fe.type==="log"&&St.s0<=0&&(fe.range[0]<fe.range[1]?$=0:$=fe._length):be.type==="log"&&St.s0<=0&&(be.range[0]<be.range[1]?Z=be._length:Z=0);var Ot=Math.abs(J-$),jt=Math.abs(re-Z),ur=Ot-2*_,ar=jt-2*_,Cr,vr,_r,yt,Fe;if(Be==="outside"&&!Me&&!lt.hasB&&(Be="inside"),Be==="auto")if(Me){Be="inside",Fe=A.ensureUniformFontSize(Q,nt),Cr=Ie(se,it,Fe),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height;var Ke=_r>0&&yt>0,Ne;ce?ge?Ne=P(ur-2*ne,ar,_r,yt,at)||P(ur,ar-2*ne,_r,yt,at):at?Ne=P(ur-(ne-j),ar,_r,yt,at)||P(ur,ar-2*(ne-j),_r,yt,at):Ne=P(ur,ar-(ne-j),_r,yt,at)||P(ur-2*(ne-j),ar,_r,yt,at):Ne=P(ur,ar,_r,yt,at),Ke&&Ne?Be="inside":(Be="outside",Cr.remove(),Cr=null)}else Be="inside";if(!Cr){Fe=A.ensureUniformFontSize(Q,Be==="outside"?Qe:nt),Cr=Ie(se,it,Fe);var Ee=Cr.attr("transform");if(Cr.attr("transform",""),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height,Cr.attr("transform",Ee),_r<=0||yt<=0){Cr.remove();return}}var Ve=Ze.textangle,ke,Te;Be==="outside"?(Te=Ze.constraintext==="both"||Ze.constraintext==="outside",ke=O($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve})):(Te=Ze.constraintext==="both"||Ze.constraintext==="inside",ke=F($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve,anchor:Ct,hasB:ge,r:ne,overhead:j})),ke.fontSize=Fe.size,i(Ze.type==="histogram"?"bar":Ze.type,ke,Ae),lt.transform=ke;var Le=d(Cr,Ae,ee,ie);A.setTransormAndDisplay(Le,ke)}function P(Q,ue,se,he,G){if(Q<0||ue<0)return!1;var $=se<=Q&&he<=ue,J=se<=ue&&he<=Q,Z=G?Q>=se*(ue/he):ue>=he*(Q/se);return $||J||Z}function L(Q){return Q==="auto"?0:Q}function z(Q,ue){var se=Math.PI/180*ue,he=Math.abs(Math.sin(se)),G=Math.abs(Math.cos(se));return{x:Q.width*G+Q.height*he,y:Q.width*he+Q.height*G}}function F(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=$.anchor,j=ne==="end",ee=ne==="start",ie=$.leftToRight||0,fe=(ie+1)/2,be=1-fe,Ae=$.hasB,Be=$.r,Ie=$.overhead,Ze=G.width,at=G.height,it=Math.abs(ue-Q),et=Math.abs(he-se),lt=it>2*_&&et>2*_?_:0;it-=2*lt,et-=2*lt;var Me=L(re);re==="auto"&&!(Ze<=it&&at<=et)&&(Ze>it||at>et)&&(!(Ze>et||at>it)||Ze<at!=it<et)&&(Me+=90);var ge=z(G,Me),ce,ze;if(Be&&Be-Ie>_){var tt=B(Q,ue,se,he,ge,Be,Ie,J,Ae);ce=tt.scale,ze=tt.pad}else ce=1,Z&&(ce=Math.min(1,it/ge.x,et/ge.y)),ze=0;var nt=G.left*be+G.right*fe,Qe=(G.top+G.bottom)/2,Ct=(Q+_)*be+(ue-_)*fe,St=(se+he)/2,Ot=0,jt=0;if(ee||j){var ur=(J?ge.x:ge.y)/2;Be&&(j||Ae)&&(lt+=ze);var ar=J?m(Q,ue):m(se,he);J?ee?(Ct=Q+ar*lt,Ot=-ar*ur):(Ct=ue-ar*lt,Ot=ar*ur):ee?(St=se+ar*lt,jt=-ar*ur):(St=he-ar*lt,jt=ar*ur)}return{textX:nt,textY:Qe,targetX:Ct,targetY:St,anchorX:Ot,anchorY:jt,scale:ce,rotate:Me}}function B(Q,ue,se,he,G,$,J,Z,re){var ne=Math.max(0,Math.abs(ue-Q)-2*_),j=Math.max(0,Math.abs(he-se)-2*_),ee=$-_,ie=J?ee-Math.sqrt(ee*ee-(ee-J)*(ee-J)):ee,fe=re?ee*2:Z?ee-J:2*ie,be=re?ee*2:Z?2*ie:ee-J,Ae,Be,Ie,Ze,at;return G.y/G.x>=j/(ne-fe)?Ze=j/G.y:G.y/G.x<=(j-be)/ne?Ze=ne/G.x:!re&&Z?(Ae=G.x*G.x+G.y*G.y/4,Be=-2*G.x*(ne-ee)-G.y*(j/2-ee),Ie=(ne-ee)*(ne-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):re?(Ae=(G.x*G.x+G.y*G.y)/4,Be=-G.x*(ne/2-ee)-G.y*(j/2-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):(Ae=G.x*G.x/4+G.y*G.y,Be=-G.x*(ne/2-ee)-2*G.y*(j-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j-ee)*(j-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)),Ze=Math.min(1,Ze),Z?at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(j-G.y*Ze)/2)*(ee-(j-G.y*Ze)/2)))-J):at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(ne-G.x*Ze)/2)*(ee-(ne-G.x*Ze)/2)))-J),{scale:Ze,pad:at}}function O(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=G.width,j=G.height,ee=Math.abs(ue-Q),ie=Math.abs(he-se),fe;J?fe=ie>2*_?_:0:fe=ee>2*_?_:0;var be=1;Z&&(be=J?Math.min(1,ie/j):Math.min(1,ee/ne));var Ae=L(re),Be=z(G,Ae),Ie=(J?Be.x:Be.y)/2,Ze=(G.left+G.right)/2,at=(G.top+G.bottom)/2,it=(Q+ue)/2,et=(se+he)/2,lt=0,Me=0,ge=J?m(ue,Q):m(se,he);return J?(it=ue-ge*fe,lt=ge*Ie):(et=he+ge*fe,Me=-ge*Ie),{textX:Ze,textY:at,targetX:it,targetY:et,anchorX:lt,anchorY:Me,scale:be,rotate:Ae}}function I(Q,ue,se,he,G){var $=ue[0].trace,J=$.texttemplate,Z;return J?Z=U(Q,ue,se,he,G):$.textinfo?Z=W(ue,se,he,G):Z=c.getValue($.text,se),c.coerceString(p,Z)}function N(Q,ue){var se=c.getValue(Q.textposition,ue);return c.coerceEnumerated(T,se)}function U(Q,ue,se,he,G){var $=ue[0].trace,J=A.castOption($,se,"texttemplate");if(!J)return"";var Z=$.type==="histogram",re=$.type==="waterfall",ne=$.type==="funnel",j=$.orientation==="h",ee,ie,fe,be;j?(ee="y",ie=G,fe="x",be=he):(ee="x",ie=he,fe="y",be=G);function Ae(lt){return o(ie,ie.c2l(lt),!0).text}function Be(lt){return o(be,be.c2l(lt),!0).text}var Ie=ue[se],Ze={};Ze.label=Ie.p,Ze.labelLabel=Ze[ee+"Label"]=Ae(Ie.p);var at=A.castOption($,Ie.i,"text");(at===0||at)&&(Ze.text=at),Ze.value=Ie.s,Ze.valueLabel=Ze[fe+"Label"]=Be(Ie.s);var it={};l(it,$,Ie.i),(Z||it.x===void 0)&&(it.x=j?Ze.value:Ze.label),(Z||it.y===void 0)&&(it.y=j?Ze.label:Ze.value),(Z||it.xLabel===void 0)&&(it.xLabel=j?Ze.valueLabel:Ze.labelLabel),(Z||it.yLabel===void 0)&&(it.yLabel=j?Ze.labelLabel:Ze.valueLabel),re&&(Ze.delta=+Ie.rawS||Ie.s,Ze.deltaLabel=Be(Ze.delta),Ze.final=Ie.v,Ze.finalLabel=Be(Ze.final),Ze.initial=Ze.final-Ze.delta,Ze.initialLabel=Be(Ze.initial)),ne&&(Ze.value=Ie.s,Ze.valueLabel=Be(Ze.value),Ze.percentInitial=Ie.begR,Ze.percentInitialLabel=A.formatPercent(Ie.begR),Ze.percentPrevious=Ie.difR,Ze.percentPreviousLabel=A.formatPercent(Ie.difR),Ze.percentTotal=Ie.sumR,Ze.percenTotalLabel=A.formatPercent(Ie.sumR));var et=A.castOption($,Ie.i,"customdata");return et&&(Ze.customdata=et),A.texttemplateString(J,Ze,Q._d3locale,it,Ze,$._meta||{})}function W(Q,ue,se,he){var G=Q[0].trace,$=G.orientation==="h",J=G.type==="waterfall",Z=G.type==="funnel";function re(et){var lt=$?he:se;return o(lt,et,!0).text}function ne(et){var lt=$?se:he;return o(lt,+et,!0).text}var j=G.textinfo,ee=Q[ue],ie=j.split("+"),fe=[],be,Ae=function(et){return ie.indexOf(et)!==-1};if(Ae("label")&&fe.push(re(Q[ue].p)),Ae("text")&&(be=A.castOption(G,ee.i,"text"),(be===0||be)&&fe.push(be)),J){var Be=+ee.rawS||ee.s,Ie=ee.v,Ze=Ie-Be;Ae("initial")&&fe.push(ne(Ze)),Ae("delta")&&fe.push(ne(Be)),Ae("final")&&fe.push(ne(Ie))}if(Z){Ae("value")&&fe.push(ne(ee.s));var at=0;Ae("percent initial")&&at++,Ae("percent previous")&&at++,Ae("percent total")&&at++;var it=at>1;Ae("percent initial")&&(be=A.formatPercent(ee.begR),it&&(be+=" of initial"),fe.push(be)),Ae("percent previous")&&(be=A.formatPercent(ee.difR),it&&(be+=" of previous"),fe.push(be)),Ae("percent total")&&(be=A.formatPercent(ee.sumR),it&&(be+=" of total"),fe.push(be))}return fe.join("<br>")}H.exports={plot:y,toMoveInsideBar:F}}}),c1=Ye({"src/traces/bar/hover.js"(X,H){"use strict";var g=Lc(),x=Hn(),A=Fn(),M=ta().fillText,e=j2().getLineWidth,t=Co().hoverLabelText,r=ks().BADNUM;function o(n,s,c,h,v){var p=a(n,s,c,h,v);if(p){var T=p.cd,l=T[0].trace,_=T[p.index];return p.color=i(l,_),x.getComponentMethod("errorbars","hoverInfo")(_,l,p),[p]}}function a(n,s,c,h,v){var p=n.cd,T=p[0].trace,l=p[0].t,_=h==="closest",w=T.type==="waterfall",S=n.maxHoverDistance,E=n.maxSpikeDistance,m,b,d,u,y,f,P;T.orientation==="h"?(m=c,b=s,d="y",u="x",y=he,f=Q):(m=s,b=c,d="x",u="y",f=he,y=Q);var L=T[d+"period"],z=_||L;function F(be){return O(be,-1)}function B(be){return O(be,1)}function O(be,Ae){var Be=be.w;return be[d]+Ae*Be/2}function I(be){return be[d+"End"]-be[d+"Start"]}var N=_?F:L?function(be){return be.p-I(be)/2}:function(be){return Math.min(F(be),be.p-l.bardelta/2)},U=_?B:L?function(be){return be.p+I(be)/2}:function(be){return Math.max(B(be),be.p+l.bardelta/2)};function W(be,Ae,Be){return v.finiteRange&&(Be=0),g.inbox(be-m,Ae-m,Be+Math.min(1,Math.abs(Ae-be)/P)-1)}function Q(be){return W(N(be),U(be),S)}function ue(be){return W(F(be),B(be),E)}function se(be){var Ae=be[u];if(w){var Be=Math.abs(be.rawS)||0;b>0?Ae+=Be:b<0&&(Ae-=Be)}return Ae}function he(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,S+(Ie-Ae)/(Ie-Be)-1)}function G(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,E+(Ie-Ae)/(Ie-Be)-1)}var $=n[d+"a"],J=n[u+"a"];P=Math.abs($.r2c($.range[1])-$.r2c($.range[0]));function Z(be){return(y(be)+f(be))/2}var re=g.getDistanceFunction(h,y,f,Z);if(g.getClosest(p,re,n),n.index!==!1&&p[n.index].p!==r){z||(N=function(be){return Math.min(F(be),be.p-l.bargroupwidth/2)},U=function(be){return Math.max(B(be),be.p+l.bargroupwidth/2)});var ne=n.index,j=p[ne],ee=T.base?j.b+j.s:j.s;n[u+"0"]=n[u+"1"]=J.c2p(j[u],!0),n[u+"LabelVal"]=ee;var ie=l.extents[l.extents.round(j.p)];n[d+"0"]=$.c2p(_?N(j):ie[0],!0),n[d+"1"]=$.c2p(_?U(j):ie[1],!0);var fe=j.orig_p!==void 0;return n[d+"LabelVal"]=fe?j.orig_p:j.p,n.labelLabel=t($,n[d+"LabelVal"],T[d+"hoverformat"]),n.valueLabel=t(J,n[u+"LabelVal"],T[u+"hoverformat"]),n.baseLabel=t(J,j.b,T[u+"hoverformat"]),n.spikeDistance=(G(j)+ue(j))/2,n[d+"Spike"]=$.c2p(j.p,!0),M(j,T,n),n.hovertemplate=T.hovertemplate,n}}function i(n,s){var c=s.mcc||n.marker.color,h=s.mlcc||n.marker.line.color,v=e(n,s);if(A.opacity(c))return c;if(A.opacity(h)&&v)return h}H.exports={hoverPoints:o,hoverOnBars:a,getTraceColor:i}}}),GB=Ye({"src/traces/bar/event_data.js"(X,H){"use strict";H.exports=function(x,A,M){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),M.orientation==="h"?(x.label=x.y,x.value=x.x):(x.label=x.x,x.value=x.y),x}}}),f1=Ye({"src/traces/bar/select.js"(X,H){"use strict";H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=e[0].trace,a=o.type==="funnel",i=o.orientation==="h",n=[],s;if(M===!1)for(s=0;s<e.length;s++)e[s].selected=0;else for(s=0;s<e.length;s++){var c=e[s],h="ct"in c?c.ct:g(c,t,r,i,a);M.contains(h,!1,s,A)?(n.push({pointNumber:s,x:t.c2d(c.x),y:r.c2d(c.y)}),c.selected=1):c.selected=0}return n};function g(x,A,M,e,t){var r=A.c2p(e?x.s0:x.p0,!0),o=A.c2p(e?x.s1:x.p1,!0),a=M.c2p(e?x.p0:x.s0,!0),i=M.c2p(e?x.p1:x.s1,!0);return t?[(r+o)/2,(a+i)/2]:e?[o,(a+i)/2]:[(r+o)/2,i]}}}),WB=Ye({"src/traces/bar/index.js"(X,H){"use strict";H.exports={attributes:Sv(),layoutAttributes:N2(),supplyDefaults:gd().supplyDefaults,crossTraceDefaults:gd().crossTraceDefaults,supplyLayoutDefaults:YS(),calc:HB(),crossTraceCalc:$g().crossTraceCalc,colorbar:cp(),arraysToCalcdata:z_(),plot:e0().plot,style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:c1().hoverPoints,eventData:GB(),selectPoints:f1(),moduleType:"trace",name:"bar",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}}}),ZB=Ye({"lib/bar.js"(X,H){"use strict";H.exports=WB()}}),F_=Ye({"src/traces/box/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Sv(),M=Gf(),e=Cc().axisHoverFormat,t=xs().hovertemplateAttrs,r=Oo().extendFlat,o=x.marker,a=o.line;H.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:x.xperiod,yperiod:x.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:x.xperiodalignment,yperiodalignment:x.yperiodalignment,xhoverformat:e("x"),yhoverformat:e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:r({},o.symbol,{arrayOk:!1,editType:"plot"}),opacity:r({},o.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:r({},o.angle,{arrayOk:!1,editType:"calc"}),size:r({},o.size,{arrayOk:!1,editType:"calc"}),color:r({},o.color,{arrayOk:!1,editType:"style"}),line:{color:r({},a.color,{arrayOk:!1,dflt:M.defaultLine,editType:"style"}),width:r({},a.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:g(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:A.offsetgroup,alignmentgroup:A.alignmentgroup,selected:{marker:x.selected.marker,editType:"style"},unselected:{marker:x.unselected.marker,editType:"style"},text:r({},x.text,{}),hovertext:r({},x.hovertext,{}),hovertemplate:t({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:x.zorder}}}),O_=Ye({"src/traces/box/layout_attributes.js"(X,H){"use strict";H.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}}}),B_=Ye({"src/traces/box/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=Fn(),M=Qd(),e=Jg(),t=r1(),r=F_();function o(s,c,h,v){function p(u,y){return g.coerce(s,c,r,u,y)}if(a(s,c,p,v),c.visible!==!1){M(s,c,v,p),p("xhoverformat"),p("yhoverformat");var T=c._hasPreCompStats;T&&(p("lowerfence"),p("upperfence")),p("line.color",(s.marker||{}).color||h),p("line.width"),p("fillcolor",A.addOpacity(c.line.color,.5));var l=!1;if(T){var _=p("mean"),w=p("sd");_&&_.length&&(l=!0,w&&w.length&&(l="sd"))}p("whiskerwidth");var S=p("sizemode"),E;S==="quartiles"&&(E=p("boxmean",l)),p("showwhiskers",S==="quartiles"),(S==="sd"||E==="sd")&&p("sdmultiple"),p("width"),p("quartilemethod");var m=!1;if(T){var b=p("notchspan");b&&b.length&&(m=!0)}else g.validate(s.notchwidth,r.notchwidth)&&(m=!0);var d=p("notched",m);d&&p("notchwidth"),i(s,c,p,{prefix:"box"}),p("zorder")}}function a(s,c,h,v){function p(W){var Q=0;return W&&W.length&&(Q+=1,g.isArrayOrTypedArray(W[0])&&W[0].length&&(Q+=1)),Q}function T(W){return g.validate(s[W],r[W])}var l=h("y"),_=h("x"),w;if(c.type==="box"){var S=h("q1"),E=h("median"),m=h("q3");c._hasPreCompStats=S&&S.length&&E&&E.length&&m&&m.length,w=Math.min(g.minRowLength(S),g.minRowLength(E),g.minRowLength(m))}var b=p(l),d=p(_),u=b&&g.minRowLength(l),y=d&&g.minRowLength(_),f=v.calendar,P={autotypenumbers:v.autotypenumbers},L,z;if(c._hasPreCompStats)switch(String(d)+String(b)){case"00":var F=T("x0")||T("dx"),B=T("y0")||T("dy");B&&!F?L="h":L="v",z=w;break;case"10":L="v",z=Math.min(w,y);break;case"20":L="h",z=Math.min(w,_.length);break;case"01":L="h",z=Math.min(w,u);break;case"02":L="v",z=Math.min(w,l.length);break;case"12":L="v",z=Math.min(w,y,l.length);break;case"21":L="h",z=Math.min(w,_.length,u);break;case"11":z=0;break;case"22":var O=!1,I;for(I=0;I<_.length;I++)if(t(_[I],f,P)==="category"){O=!0;break}if(O)L="v",z=Math.min(w,y,l.length);else{for(I=0;I<l.length;I++)if(t(l[I],f,P)==="category"){O=!0;break}O?(L="h",z=Math.min(w,_.length,u)):(L="v",z=Math.min(w,y,l.length))}break}else b>0?(L="v",d>0?z=Math.min(y,u):z=Math.min(u)):d>0?(L="h",z=Math.min(y)):z=0;if(!z){c.visible=!1;return}c._length=z;var N=h("orientation",L);c._hasPreCompStats?N==="v"&&d===0?(h("x0",0),h("dx",1)):N==="h"&&b===0&&(h("y0",0),h("dy",1)):N==="v"&&d===0?h("x0"):N==="h"&&b===0&&h("y0");var U=x.getComponentMethod("calendars","handleTraceDefaults");U(s,c,["x","y"],v)}function i(s,c,h,v){var p=v.prefix,T=g.coerce2(s,c,r,"marker.outliercolor"),l=h("marker.line.outliercolor"),_="outliers";c._hasPreCompStats?_="all":(T||l)&&(_="suspectedoutliers");var w=h(p+"points",_);w?(h("jitter",w==="all"?.3:0),h("pointpos",w==="all"?-1.5:0),h("marker.symbol"),h("marker.opacity"),h("marker.size"),h("marker.angle"),h("marker.color",c.line.color),h("marker.line.color"),h("marker.line.width"),w==="suspectedoutliers"&&(h("marker.line.outliercolor",c.marker.color),h("marker.line.outlierwidth")),h("selected.marker.color"),h("unselected.marker.color"),h("selected.marker.size"),h("unselected.marker.size"),h("text"),h("hovertext")):delete c.marker;var S=h("hoveron");(S==="all"||S.indexOf("points")!==-1)&&h("hovertemplate"),g.coerceSelectionMarkerOpacity(c,h)}function n(s,c){var h,v;function p(w){return g.coerce(v._input,v,r,w)}for(var T=0;T<s.length;T++){v=s[T];var l=v.type;if(l==="box"||l==="violin"){h=v._input;var _=c[l+"mode"];_==="group"&&e(h,v,c,p,_)}}}H.exports={supplyDefaults:o,crossTraceDefaults:n,handleSampleDefaults:a,handlePointsDefaults:i}}}),V2=Ye({"src/traces/box/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=O_();function M(t,r,o,a,i){for(var n=i+"Layout",s=!1,c=0;c<o.length;c++){var h=o[c];if(g.traceIs(h,n)){s=!0;break}}s&&(a(i+"mode"),a(i+"gap"),a(i+"groupgap"))}function e(t,r,o){function a(i,n){return x.coerce(t,r,A,i,n)}M(t,r,o,a,"box")}H.exports={supplyLayoutDefaults:e,_supply:M}}}),KS=Ye({"src/traces/box/calc.js"(X,H){"use strict";var g=jo(),x=Co(),A=tv(),M=ta(),e=ks().BADNUM,t=M._;H.exports=function(S,E){var m=S._fullLayout,b=x.getFromId(S,E.xaxis||"x"),d=x.getFromId(S,E.yaxis||"y"),u=[],y=E.type==="violin"?"_numViolins":"_numBoxes",f,P,L,z,F,B,O;E.orientation==="h"?(L=b,z="x",F=d,B="y",O=!!E.yperiodalignment):(L=d,z="y",F=b,B="x",O=!!E.xperiodalignment);var I=r(E,B,F,m[y]),N=I[0],U=I[1],W=M.distinctVals(N,F),Q=W.vals,ue=W.minDiff/2,se,he,G,$,J,Z,re=(E.boxpoints||E.points)==="all"?M.identity:function(ar){return ar.v<se.lf||ar.v>se.uf};if(E._hasPreCompStats){var ne=E[z],j=function(ar){return L.d2c((E[ar]||[])[f])},ee=1/0,ie=-1/0;for(f=0;f<E._length;f++){var fe=N[f];if(g(fe)){if(se={},se.pos=se[B]=fe,O&&U&&(se.orig_p=U[f]),se.q1=j("q1"),se.med=j("median"),se.q3=j("q3"),he=[],ne&&M.isArrayOrTypedArray(ne[f]))for(P=0;P<ne[f].length;P++)Z=L.d2c(ne[f][P]),Z!==e&&(J={v:Z,i:[f,P]},n(J,E,[f,P]),he.push(J));if(se.pts=he.sort(c),G=se[z]=he.map(h),$=G.length,se.med!==e&&se.q1!==e&&se.q3!==e&&se.med>=se.q1&&se.q3>=se.med){var be=j("lowerfence");se.lf=be!==e&&be<=se.q1?be:v(se,G,$);var Ae=j("upperfence");se.uf=Ae!==e&&Ae>=se.q3?Ae:p(se,G,$);var Be=j("mean");se.mean=Be!==e?Be:$?M.mean(G,$):(se.q1+se.q3)/2;var Ie=j("sd");se.sd=Be!==e&&Ie>=0?Ie:$?M.stdev(G,$,se.mean):se.q3-se.q1,se.lo=T(se),se.uo=l(se);var Ze=j("notchspan");Ze=Ze!==e&&Ze>0?Ze:_(se,$),se.ln=se.med-Ze,se.un=se.med+Ze;var at=se.lf,it=se.uf;E.boxpoints&&G.length&&(at=Math.min(at,G[0]),it=Math.max(it,G[$-1])),E.notched&&(at=Math.min(at,se.ln),it=Math.max(it,se.un)),se.min=at,se.max=it}else{M.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+se.q1,"median = "+se.med,"q3 = "+se.q3].join(`
`));var et;se.med!==e?et=se.med:se.q1!==e?se.q3!==e?et=(se.q1+se.q3)/2:et=se.q1:se.q3!==e?et=se.q3:et=0,se.med=et,se.q1=se.q3=et,se.lf=se.uf=et,se.mean=se.sd=et,se.ln=se.un=et,se.min=se.max=et}ee=Math.min(ee,se.min),ie=Math.max(ie,se.max),se.pts2=he.filter(re),u.push(se)}}E._extremes[L._id]=x.findExtremes(L,[ee,ie],{padded:!0})}else{var lt=L.makeCalcdata(E,z),Me=o(Q,ue),ge=Q.length,ce=a(ge);for(f=0;f<E._length;f++)if(Z=lt[f],!!g(Z)){var ze=M.findBin(N[f],Me);ze>=0&&ze<ge&&(J={v:Z,i:f},n(J,E,f),ce[ze].push(J))}var tt=1/0,nt=-1/0,Qe=E.quartilemethod,Ct=Qe==="exclusive",St=Qe==="inclusive";for(f=0;f<ge;f++)if(ce[f].length>0){if(se={},se.pos=se[B]=Q[f],he=se.pts=ce[f].sort(c),G=se[z]=he.map(h),$=G.length,se.min=G[0],se.max=G[$-1],se.mean=M.mean(G,$),se.sd=M.stdev(G,$,se.mean)*E.sdmultiple,se.med=M.interp(G,.5),$%2&&(Ct||St)){var Ot,jt;Ct?(Ot=G.slice(0,$/2),jt=G.slice($/2+1)):St&&(Ot=G.slice(0,$/2+1),jt=G.slice($/2)),se.q1=M.interp(Ot,.5),se.q3=M.interp(jt,.5)}else se.q1=M.interp(G,.25),se.q3=M.interp(G,.75);se.lf=v(se,G,$),se.uf=p(se,G,$),se.lo=T(se),se.uo=l(se);var ur=_(se,$);se.ln=se.med-ur,se.un=se.med+ur,tt=Math.min(tt,se.ln),nt=Math.max(nt,se.un),se.pts2=he.filter(re),u.push(se)}E.notched&&M.isTypedArray(lt)&&(lt=Array.from(lt)),E._extremes[L._id]=x.findExtremes(L,E.notched?lt.concat([tt,nt]):lt,{padded:!0})}return s(u,E),u.length>0?(u[0].t={num:m[y],dPos:ue,posLetter:B,valLetter:z,labels:{med:t(S,"median:"),min:t(S,"min:"),q1:t(S,"q1:"),q3:t(S,"q3:"),max:t(S,"max:"),mean:E.boxmean==="sd"||E.sizemode==="sd"?t(S,"mean \xB1 \u03C3:").replace("\u03C3",E.sdmultiple===1?"\u03C3":E.sdmultiple+"\u03C3"):t(S,"mean:"),lf:t(S,"lower fence:"),uf:t(S,"upper fence:")}},m[y]++,u):[{t:{empty:!0}}]};function r(w,S,E,m){var b=S in w,d=S+"0"in w,u="d"+S in w;if(b||d&&u){var y=E.makeCalcdata(w,S),f=A(w,E,S,y).vals;return[f,y]}var P;d?P=w[S+"0"]:"name"in w&&(E.type==="category"||g(w.name)&&["linear","log"].indexOf(E.type)!==-1||M.isDateTime(w.name)&&E.type==="date")?P=w.name:P=m;for(var L=E.type==="multicategory"?E.r2c_just_indices(P):E.d2c(P,0,w[S+"calendar"]),z=w._length,F=new Array(z),B=0;B<z;B++)F[B]=L;return[F]}function o(w,S){for(var E=w.length,m=new Array(E+1),b=0;b<E;b++)m[b]=w[b]-S;return m[E]=w[E-1]+S,m}function a(w){for(var S=new Array(w),E=0;E<w;E++)S[E]=[];return S}var i={text:"tx",hovertext:"htx"};function n(w,S,E){for(var m in i)M.isArrayOrTypedArray(S[m])&&(Array.isArray(E)?M.isArrayOrTypedArray(S[m][E[0]])&&(w[i[m]]=S[m][E[0]][E[1]]):w[i[m]]=S[m][E])}function s(w,S){if(M.isArrayOrTypedArray(S.selectedpoints))for(var E=0;E<w.length;E++){for(var m=w[E].pts||[],b={},d=0;d<m.length;d++)b[m[d].i]=d;M.tagSelected(m,S,b)}}function c(w,S){return w.v-S.v}function h(w){return w.v}function v(w,S,E){return E===0?w.q1:Math.min(w.q1,S[Math.min(M.findBin(2.5*w.q1-1.5*w.q3,S,!0)+1,E-1)])}function p(w,S,E){return E===0?w.q3:Math.max(w.q3,S[Math.max(M.findBin(2.5*w.q3-1.5*w.q1,S),0)])}function T(w){return 4*w.q1-3*w.q3}function l(w){return 4*w.q3-3*w.q1}function _(w,S){return S===0?0:1.57*(w.q3-w.q1)/Math.sqrt(S)}}}),q2=Ye({"src/traces/box/cross_trace_calc.js"(X,H){"use strict";var g=Co(),x=ta(),A=Yg().getAxisGroup,M=["v","h"];function e(r,o){for(var a=r.calcdata,i=o.xaxis,n=o.yaxis,s=0;s<M.length;s++){for(var c=M[s],h=c==="h"?n:i,v=[],p=0;p<a.length;p++){var T=a[p],l=T[0].t,_=T[0].trace;_.visible===!0&&(_.type==="box"||_.type==="candlestick")&&!l.empty&&(_.orientation||"v")===c&&_.xaxis===i._id&&_.yaxis===n._id&&v.push(p)}t("box",r,v,h)}}function t(r,o,a,i){var n=o.calcdata,s=o._fullLayout,c=i._id,h=c.charAt(0),v,p,T,l=[],_=0;for(v=0;v<a.length;v++)for(T=n[a[v]],p=0;p<T.length;p++)l.push(i.c2l(T[p].pos,!0)),_+=(T[p].pts2||[]).length;if(l.length){var w=x.distinctVals(l);(i.type==="category"||i.type==="multicategory")&&(w.minDiff=1);var S=w.minDiff/2;g.minDtick(i,w.minDiff,w.vals[0],!0);var E=r==="violin"?"_numViolins":"_numBoxes",m=s[E],b=s[r+"mode"]==="group"&&m>1,d=1-s[r+"gap"],u=1-s[r+"groupgap"];for(v=0;v<a.length;v++){T=n[a[v]];var y=T[0].trace,f=T[0].t,P=y.width,L=y.side,z,F,B,O;if(P)z=F=O=P/2,B=0;else if(z=S,b){var I=A(s,i._id)+y.orientation,N=s._alignmentOpts[I]||{},U=N[y.alignmentgroup]||{},W=Object.keys(U.offsetGroups||{}).length,Q=W||m,ue=W?y._offsetIndex:f.num;F=z*d*u/Q,B=2*z*(-.5+(ue+.5)/Q)*d,O=z*d/Q}else F=z*d*u,B=0,O=z;f.dPos=z,f.bPos=B,f.bdPos=F,f.wHover=O;var se,he,G=B+F,$,J,Z,re,ne,j,ee=!!P,ie=(y.boxpoints||y.points)&&_>0;if(L==="positive"?(se=z*(P?1:.5),$=G,he=$=B):L==="negative"?(se=$=B,he=z*(P?1:.5),J=G):(se=he=z,$=J=G),ie){var fe=y.pointpos,be=y.jitter,Ae=y.marker.size/2,Be=0;fe+be>=0&&(Be=G*(fe+be),Be>se?(ee=!0,ne=Ae,Z=Be):Be>$&&(ne=Ae,Z=se)),Be<=se&&(Z=se);var Ie=0;fe-be<=0&&(Ie=-G*(fe-be),Ie>he?(ee=!0,j=Ae,re=Ie):Ie>J&&(j=Ae,re=he)),Ie<=he&&(re=he)}else Z=se,re=he;var Ze=new Array(T.length);for(p=0;p<T.length;p++)Ze[p]=T[p].pos;y._extremes[c]=g.findExtremes(i,Ze,{padded:ee,vpadminus:re,vpadplus:Z,vpadLinearized:!0,ppadminus:{x:j,y:ne}[h],ppadplus:{x:ne,y:j}[h]})}}}H.exports={crossTraceCalc:e,setPositionOffset:t}}}),H2=Ye({"src/traces/box/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=5,e=.01;function t(i,n,s,c){var h=i._context.staticPlot,v=n.xaxis,p=n.yaxis;x.makeTraceGroups(c,s,"trace boxes").each(function(T){var l=g.select(this),_=T[0],w=_.t,S=_.trace;if(w.wdPos=w.bdPos*S.whiskerwidth,S.visible!==!0||w.empty){l.remove();return}var E,m;S.orientation==="h"?(E=p,m=v):(E=v,m=p),r(l,{pos:E,val:m},S,w,h),o(l,{x:v,y:p},S,w),a(l,{pos:E,val:m},S,w)})}function r(i,n,s,c,h){var v=s.orientation==="h",p=n.val,T=n.pos,l=!!T.rangebreaks,_=c.bPos,w=c.wdPos||0,S=c.bPosPxOffset||0,E=s.whiskerwidth||0,m=s.showwhiskers!==!1,b=s.notched||!1,d=b?1-2*s.notchwidth:1,u,y;Array.isArray(c.bdPos)?(u=c.bdPos[0],y=c.bdPos[1]):(u=c.bdPos,y=c.bdPos);var f=i.selectAll("path.box").data(s.type!=="violin"||s.box.visible?x.identity:[]);f.enter().append("path").style("vector-effect",h?"none":"non-scaling-stroke").attr("class","box"),f.exit().remove(),f.each(function(P){if(P.empty)return g.select(this).attr("d","M0,0Z");var L=T.c2l(P.pos+_,!0),z=T.l2p(L-u)+S,F=T.l2p(L+y)+S,B=l?(z+F)/2:T.l2p(L)+S,O=s.whiskerwidth,I=l?z*O+(1-O)*B:T.l2p(L-w)+S,N=l?F*O+(1-O)*B:T.l2p(L+w)+S,U=T.l2p(L-u*d)+S,W=T.l2p(L+y*d)+S,Q=s.sizemode==="sd",ue=p.c2p(Q?P.mean-P.sd:P.q1,!0),se=Q?p.c2p(P.mean+P.sd,!0):p.c2p(P.q3,!0),he=x.constrain(Q?p.c2p(P.mean,!0):p.c2p(P.med,!0),Math.min(ue,se)+1,Math.max(ue,se)-1),G=P.lf===void 0||s.boxpoints===!1||Q,$=p.c2p(G?P.min:P.lf,!0),J=p.c2p(G?P.max:P.uf,!0),Z=p.c2p(P.ln,!0),re=p.c2p(P.un,!0);v?g.select(this).attr("d","M"+he+","+U+"V"+W+"M"+ue+","+z+"V"+F+(b?"H"+Z+"L"+he+","+W+"L"+re+","+F:"")+"H"+se+"V"+z+(b?"H"+re+"L"+he+","+U+"L"+Z+","+z:"")+"Z"+(m?"M"+ue+","+B+"H"+$+"M"+se+","+B+"H"+J+(E===0?"":"M"+$+","+I+"V"+N+"M"+J+","+I+"V"+N):"")):g.select(this).attr("d","M"+U+","+he+"H"+W+"M"+z+","+ue+"H"+F+(b?"V"+Z+"L"+W+","+he+"L"+F+","+re:"")+"V"+se+"H"+z+(b?"V"+re+"L"+U+","+he+"L"+z+","+Z:"")+"Z"+(m?"M"+B+","+ue+"V"+$+"M"+B+","+se+"V"+J+(E===0?"":"M"+I+","+$+"H"+N+"M"+I+","+J+"H"+N):""))})}function o(i,n,s,c){var h=n.x,v=n.y,p=c.bdPos,T=c.bPos,l=s.boxpoints||s.points;x.seedPseudoRandom();var _=function(E){return E.forEach(function(m){m.t=c,m.trace=s}),E},w=i.selectAll("g.points").data(l?_:[]);w.enter().append("g").attr("class","points"),w.exit().remove();var S=w.selectAll("path").data(function(E){var m,b=E.pts2,d=Math.max((E.max-E.min)/10,E.q3-E.q1),u=d*1e-9,y=d*e,f=[],P=0,L;if(s.jitter){if(d===0)for(P=1,f=new Array(b.length),m=0;m<b.length;m++)f[m]=1;else for(m=0;m<b.length;m++){var z=Math.max(0,m-M),F=b[z].v,B=Math.min(b.length-1,m+M),O=b[B].v;l!=="all"&&(b[m].v<E.lf?O=Math.min(O,E.lf):F=Math.max(F,E.uf));var I=Math.sqrt(y*(B-z)/(O-F+u))||0;I=x.constrain(Math.abs(I),0,1),f.push(I),P=Math.max(I,P)}L=s.jitter*2/(P||1)}for(m=0;m<b.length;m++){var N=b[m],U=N.v,W=s.jitter?L*f[m]*(x.pseudoRandom()-.5):0,Q=E.pos+T+p*(s.pointpos+W);s.orientation==="h"?(N.y=Q,N.x=U):(N.x=Q,N.y=U),l==="suspectedoutliers"&&U<E.uo&&U>E.lo&&(N.so=!0)}return b});S.enter().append("path").classed("point",!0),S.exit().remove(),S.call(A.translatePoints,h,v)}function a(i,n,s,c){var h=n.val,v=n.pos,p=!!v.rangebreaks,T=c.bPos,l=c.bPosPxOffset||0,_=s.boxmean||(s.meanline||{}).visible,w,S;Array.isArray(c.bdPos)?(w=c.bdPos[0],S=c.bdPos[1]):(w=c.bdPos,S=c.bdPos);var E=i.selectAll("path.mean").data(s.type==="box"&&s.boxmean||s.type==="violin"&&s.box.visible&&s.meanline.visible?x.identity:[]);E.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),E.exit().remove(),E.each(function(m){var b=v.c2l(m.pos+T,!0),d=v.l2p(b-w)+l,u=v.l2p(b+S)+l,y=p?(d+u)/2:v.l2p(b)+l,f=h.c2p(m.mean,!0),P=h.c2p(m.mean-m.sd,!0),L=h.c2p(m.mean+m.sd,!0);s.orientation==="h"?g.select(this).attr("d","M"+f+","+d+"V"+u+(_==="sd"?"m0,0L"+P+","+y+"L"+f+","+d+"L"+L+","+y+"Z":"")):g.select(this).attr("d","M"+d+","+f+"H"+u+(_==="sd"?"m0,0L"+y+","+P+"L"+d+","+f+"L"+y+","+L+"Z":""))})}H.exports={plot:t,plotBoxAndWhiskers:r,plotPoints:o,plotBoxMean:a}}}),G2=Ye({"src/traces/box/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo();function M(t,r,o){var a=o||g.select(t).selectAll("g.trace.boxes");a.style("opacity",function(i){return i[0].trace.opacity}),a.each(function(i){var n=g.select(this),s=i[0].trace,c=s.line.width;function h(T,l,_,w){T.style("stroke-width",l+"px").call(x.stroke,_).call(x.fill,w)}var v=n.selectAll("path.box");if(s.type==="candlestick")v.each(function(T){if(!T.empty){var l=g.select(this),_=s[T.dir];h(l,_.line.width,_.line.color,_.fillcolor),l.style("opacity",s.selectedpoints&&!T.selected?.3:1)}});else{h(v,c,s.line.color,s.fillcolor),n.selectAll("path.mean").style({"stroke-width":c,"stroke-dasharray":2*c+"px,"+c+"px"}).call(x.stroke,s.line.color);var p=n.selectAll("path.point");A.pointStyle(p,s,t)}})}function e(t,r,o){var a=r[0].trace,i=o.selectAll("path.point");a.selectedpoints?A.selectedPointStyle(i,a):A.pointStyle(i,a,t)}H.exports={style:M,styleOnSelect:e}}}),JS=Ye({"src/traces/box/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=x.fillText;function t(a,i,n,s){var c=a.cd,h=c[0].trace,v=h.hoveron,p=[],T;return v.indexOf("boxes")!==-1&&(p=p.concat(r(a,i,n,s))),v.indexOf("points")!==-1&&(T=o(a,i,n)),s==="closest"?T?[T]:p:(T&&p.push(T),p)}function r(a,i,n,s){var c=a.cd,h=a.xa,v=a.ya,p=c[0].trace,T=c[0].t,l=p.type==="violin",_,w,S,E,m,b,d,u,y,f,P,L=T.bdPos,z,F,B=T.wHover,O=function(Ie){return S.c2l(Ie.pos)+T.bPos-S.c2l(b)};l&&p.side!=="both"?(p.side==="positive"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze,Ze+B,f)},z=L,F=0),p.side==="negative"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze,f)},z=0,F=L)):(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze+B,f)},z=F=L);var I;l?I=function(Ie){return A.inbox(Ie.span[0]-m,Ie.span[1]-m,f)}:I=function(Ie){return A.inbox(Ie.min-m,Ie.max-m,f)},p.orientation==="h"?(m=i,b=n,d=I,u=y,_="y",S=v,w="x",E=h):(m=n,b=i,d=y,u=I,_="x",S=h,w="y",E=v);var N=Math.min(1,L/Math.abs(S.r2c(S.range[1])-S.r2c(S.range[0])));f=a.maxHoverDistance-N,P=a.maxSpikeDistance-N;function U(Ie){return(d(Ie)+u(Ie))/2}var W=A.getDistanceFunction(s,d,u,U);if(A.getClosest(c,W,a),a.index===!1)return[];var Q=c[a.index],ue=p.line.color,se=(p.marker||{}).color;M.opacity(ue)&&p.line.width?a.color=ue:M.opacity(se)&&p.boxpoints?a.color=se:a.color=p.fillcolor,a[_+"0"]=S.c2p(Q.pos+T.bPos-F,!0),a[_+"1"]=S.c2p(Q.pos+T.bPos+z,!0),a[_+"LabelVal"]=Q.orig_p!==void 0?Q.orig_p:Q.pos;var he=_+"Spike";a.spikeDistance=U(Q)*P/f,a[he]=S.c2p(Q.pos,!0);var G=p.boxmean||p.sizemode==="sd"||(p.meanline||{}).visible,$=p.boxpoints||p.points,J=$&&G?["max","uf","q3","med","mean","q1","lf","min"]:$&&!G?["max","uf","q3","med","q1","lf","min"]:!$&&G?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],Z=E.range[1]<E.range[0];p.orientation===(Z?"v":"h")&&J.reverse();for(var re=a.spikeDistance,ne=a[he],j=[],ee=0;ee<J.length;ee++){var ie=J[ee];if(ie in Q){var fe=Q[ie],be=E.c2p(fe,!0),Ae=x.extendFlat({},a);Ae.attr=ie,Ae[w+"0"]=Ae[w+"1"]=be,Ae[w+"LabelVal"]=fe,Ae[w+"Label"]=(T.labels?T.labels[ie]+" ":"")+g.hoverLabelText(E,fe,p[w+"hoverformat"]),Ae.hoverOnBox=!0,ie==="mean"&&"sd"in Q&&(p.boxmean==="sd"||p.sizemode==="sd")&&(Ae[w+"err"]=Q.sd),Ae.hovertemplate=!1,j.push(Ae)}}a.name="",a.spikeDistance=void 0,a[he]=void 0;for(var Be=0;Be<j.length;Be++)j[Be].attr!=="med"?(j[Be].name="",j[Be].spikeDistance=void 0,j[Be][he]=void 0):(j[Be].spikeDistance=re,j[Be][he]=ne);return j}function o(a,i,n){for(var s=a.cd,c=a.xa,h=a.ya,v=s[0].trace,p=c.c2p(i),T=h.c2p(n),l,_=function(I){var N=Math.max(3,I.mrc||0);return Math.max(Math.abs(c.c2p(I.x)-p)-N,1-3/N)},w=function(I){var N=Math.max(3,I.mrc||0);return Math.max(Math.abs(h.c2p(I.y)-T)-N,1-3/N)},S=A.quadrature(_,w),E=!1,m,b,d=0;d<s.length;d++){m=s[d];for(var u=0;u<(m.pts||[]).length;u++){b=m.pts[u];var y=S(b);y<=a.distance&&(a.distance=y,E=[d,u])}}if(!E)return!1;m=s[E[0]],b=m.pts[E[1]];var f=c.c2p(b.x,!0),P=h.c2p(b.y,!0),L=b.mrc||1;l=x.extendFlat({},a,{index:b.i,color:(v.marker||{}).color,name:v.name,x0:f-L,x1:f+L,y0:P-L,y1:P+L,spikeDistance:a.distance,hovertemplate:v.hovertemplate});var z=m.orig_p,F=z!==void 0?z:m.pos,B;v.orientation==="h"?(B=h,l.xLabelVal=b.x,l.yLabelVal=F):(B=c,l.xLabelVal=F,l.yLabelVal=b.y);var O=B._id.charAt(0);return l[O+"Spike"]=B.c2p(m.pos,!0),e(b,v,l),l}H.exports={hoverPoints:t,hoverOnBoxes:r,hoverOnPoints:o}}}),XB=Ye({"src/traces/box/event_data.js"(X,H){"use strict";H.exports=function(x,A){return A.hoverOnBox&&(x.hoverOnBox=A.hoverOnBox),"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),$S=Ye({"src/traces/box/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a;if(A===!1)for(o=0;o<M.length;o++)for(a=0;a<(M[o].pts||[]).length;a++)M[o].pts[a].selected=0;else for(o=0;o<M.length;o++)for(a=0;a<(M[o].pts||[]).length;a++){var i=M[o].pts[a],n=e.c2p(i.x),s=t.c2p(i.y);A.contains([n,s],null,i.i,x)?(r.push({pointNumber:i.i,x:e.c2d(i.x),y:t.c2d(i.y)}),i.selected=1):i.selected=0}return r}}}),YB=Ye({"src/traces/box/index.js"(X,H){"use strict";H.exports={attributes:F_(),layoutAttributes:O_(),supplyDefaults:B_().supplyDefaults,crossTraceDefaults:B_().crossTraceDefaults,supplyLayoutDefaults:V2().supplyLayoutDefaults,calc:KS(),crossTraceCalc:q2().crossTraceCalc,plot:H2().plot,style:G2().style,styleOnSelect:G2().styleOnSelect,hoverPoints:JS().hoverPoints,eventData:XB(),selectPoints:$S(),moduleType:"trace",name:"box",basePlotModule:Pf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}}}),KB=Ye({"lib/box.js"(X,H){"use strict";H.exports=YB()}}),h1=Ye({"src/traces/heatmap/attributes.js"(X,H){"use strict";var g=Pc(),x=Pl(),A=Au(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=tu(),o=Oo().extendFlat;H.exports=o({z:{valType:"data_array",editType:"calc"},x:o({},g.x,{impliedEdits:{xtype:"array"}}),x0:o({},g.x0,{impliedEdits:{xtype:"scaled"}}),dx:o({},g.dx,{impliedEdits:{xtype:"scaled"}}),y:o({},g.y,{impliedEdits:{ytype:"array"}}),y0:o({},g.y0,{impliedEdits:{ytype:"scaled"}}),dy:o({},g.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:o({},g.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:o({},g.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:o({},g.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:o({},g.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:o({},g.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:o({},g.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:e(),texttemplate:t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:A({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:o({},x.showlegend,{dflt:!1}),zorder:g.zorder},r("",{cLetter:"z",autoColorDflt:!1}))}}),W2=Ye({"src/traces/heatmap/xyz_defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn();H.exports=function(r,o,a,i,n,s){var c=a("z");n=n||"x",s=s||"y";var h,v;if(c===void 0||!c.length)return 0;if(x.isArray1D(c)){h=a(n),v=a(s);var p=x.minRowLength(h),T=x.minRowLength(v);if(p===0||T===0)return 0;o._length=Math.min(p,T,c.length)}else{if(h=M(n,a),v=M(s,a),!e(c))return 0;a("transpose"),o._length=null}var l=A.getComponentMethod("calendars","handleTraceDefaults");return l(r,o,[n,s],i),!0};function M(t,r){var o=r(t),a=o?r(t+"type","array"):"scaled";return a==="scaled"&&(r(t+"0"),r("d"+t)),o}function e(t){for(var r=!0,o=!1,a=!1,i,n=0;n<t.length;n++){if(i=t[n],!x.isArrayOrTypedArray(i)){r=!1;break}i.length>0&&(o=!0);for(var s=0;s<i.length;s++)if(g(i[s])){a=!0;break}}return r&&o&&a}}}),N_=Ye({"src/traces/heatmap/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){A("texttemplate");var e=g.extendFlat({},M.font,{color:"auto",size:"auto"});g.coerceFont(A,"textfont",e)}}}),QS=Ye({"src/traces/heatmap/style_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e=M("zsmooth");e===!1&&(M("xgap"),M("ygap")),M("zhoverformat")}}}),JB=Ye({"src/traces/heatmap/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=N_(),M=Qd(),e=QS(),t=sh(),r=h1();H.exports=function(a,i,n,s){function c(v,p){return g.coerce(a,i,r,v,p)}var h=x(a,i,c,s);if(!h){i.visible=!1;return}M(a,i,s,c),c("xhoverformat"),c("yhoverformat"),c("text"),c("hovertext"),c("hovertemplate"),A(c,s),e(a,i,c,s),c("hoverongaps"),c("connectgaps",g.isArray1D(i.z)&&i.zsmooth!==!1),t(a,i,s,c,{prefix:"",cLetter:"z"}),c("zorder")}}}),eM=Ye({"src/traces/histogram/bin_functions.js"(X,H){"use strict";var g=jo();H.exports={count:function(x,A,M){return M[x]++,1},sum:function(x,A,M,e){var t=e[A];return g(t)?(t=Number(t),M[x]+=t,t):0},avg:function(x,A,M,e,t){var r=e[A];return g(r)&&(r=Number(r),M[x]+=r,t[x]++),0},min:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]>t){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0},max:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]<t){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0}}}}),tM=Ye({"src/traces/histogram/norm_functions.js"(X,H){"use strict";H.exports={percent:function(g,x){for(var A=g.length,M=100/x,e=0;e<A;e++)g[e]*=M},probability:function(g,x){for(var A=g.length,M=0;M<A;M++)g[M]/=x},density:function(g,x,A,M){var e=g.length;M=M||1;for(var t=0;t<e;t++)g[t]*=A[t]*M},"probability density":function(g,x,A,M){var e=g.length;M&&(x/=M);for(var t=0;t<e;t++)g[t]*=A[t]/x}}}}),rM=Ye({"src/traces/histogram/average.js"(X,H){"use strict";H.exports=function(x,A){for(var M=x.length,e=0,t=0;t<M;t++)A[t]?(x[t]/=A[t],e+=x[t]):x[t]=null;return e}}}),aM=Ye({"src/traces/histogram/bin_label_vals.js"(X,H){"use strict";var g=ks(),x=g.ONEAVGYEAR,A=g.ONEAVGMONTH,M=g.ONEDAY,e=g.ONEHOUR,t=g.ONEMIN,r=g.ONESEC,o=Co().tickIncrement;H.exports=function(h,v,p,T,l){var _=-1.1*v,w=-.1*v,S=h-w,E=p[0],m=p[1],b=Math.min(a(E+w,E+S,T,l),a(m+w,m+S,T,l)),d=Math.min(a(E+_,E+w,T,l),a(m+_,m+w,T,l)),u,y;if(b>d&&d<Math.abs(m-E)/4e3?(u=b,y=!1):(u=Math.min(b,d),y=!0),T.type==="date"&&u>M){var f=u===x?1:6,P=u===x?"M12":"M1";return function(L,z){var F=T.c2d(L,x,l),B=F.indexOf("-",f);B>0&&(F=F.substr(0,B));var O=T.d2c(F,0,l);if(O<L){var I=o(O,P,!1,l);(O+I)/2<L+h&&(O=I)}return z&&y?o(O,P,!0,l):O}}return function(L,z){var F=u*Math.round(L/u);return F+u/10<L&&F+u*.9<L+h&&(F+=u),z&&y&&(F-=u),F}};function a(c,h,v,p){if(c*h<=0)return 1/0;for(var T=Math.abs(h-c),l=v.type==="date",_=i(T,l),w=0;w<10;w++){var S=i(_*80,l);if(_===S)break;if(n(S,c,h,l,v,p))_=S;else break}return _}function i(c,h){return h&&c>r?c>M?c>x*1.1?x:c>A*1.1?A:M:c>e?e:c>t?t:r:Math.pow(10,Math.floor(Math.log(c)/Math.LN10))}function n(c,h,v,p,T,l){if(p&&c>M){var _=s(h,T,l),w=s(v,T,l),S=c===x?0:1;return _[S]!==w[S]}return Math.floor(v/c)-Math.floor(h/c)>.1}function s(c,h,v){var p=h.c2d(c,x,v).split("-");return p[0]===""&&(p.unshift(),p[0]="-"+p[0]),p}}}),iM=Ye({"src/traces/histogram/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn(),M=Co(),e=z_(),t=eM(),r=tM(),o=rM(),a=aM();function i(v,p){var T=[],l=[],_=p.orientation==="h",w=M.getFromId(v,_?p.yaxis:p.xaxis),S=_?"y":"x",E={x:"y",y:"x"}[S],m=p[S+"calendar"],b=p.cumulative,d,u=n(v,p,w,S),y=u[0],f=u[1],P=typeof y.size=="string",L=[],z=P?L:y,F=[],B=[],O=[],I=0,N=p.histnorm,U=p.histfunc,W=N.indexOf("density")!==-1,Q,ue,se;b.enabled&&W&&(N=N.replace(/ ?density$/,""),W=!1);var he=U==="max"||U==="min",G=he?null:0,$=t.count,J=r[N],Z=!1,re=function(ge){return w.r2c(ge,0,m)},ne;for(x.isArrayOrTypedArray(p[E])&&U!=="count"&&(ne=p[E],Z=U==="avg",$=t[U]),d=re(y.start),ue=re(y.end)+(d-M.tickIncrement(d,y.size,!1,m))/1e6;d<ue&&T.length<1e6&&(Q=M.tickIncrement(d,y.size,!1,m),T.push((d+Q)/2),l.push(G),O.push([]),L.push(d),W&&F.push(1/(Q-d)),Z&&B.push(0),!(Q<=d));)d=Q;L.push(d),!P&&w.type==="date"&&(z={start:re(z.start),end:re(z.end),size:z.size}),v._fullLayout._roundFnOpts||(v._fullLayout._roundFnOpts={});var j=p["_"+S+"bingroup"],ee={leftGap:1/0,rightGap:1/0};j&&(v._fullLayout._roundFnOpts[j]||(v._fullLayout._roundFnOpts[j]=ee),ee=v._fullLayout._roundFnOpts[j]);var ie=l.length,fe=!0,be=ee.leftGap,Ae=ee.rightGap,Be={};for(d=0;d<f.length;d++){var Ie=f[d];se=x.findBin(Ie,z),se>=0&&se<ie&&(I+=$(se,d,l,ne,B),fe&&O[se].length&&Ie!==f[O[se][0]]&&(fe=!1),O[se].push(d),Be[d]=se,be=Math.min(be,Ie-L[se]),Ae=Math.min(Ae,L[se+1]-Ie))}ee.leftGap=be,ee.rightGap=Ae;var Ze;fe||(Ze=function(ge,ce){return function(){var ze=v._fullLayout._roundFnOpts[j];return a(ze.leftGap,ze.rightGap,L,w,m)(ge,ce)}}),Z&&(I=o(l,B)),J&&J(l,I,F),b.enabled&&h(l,b.direction,b.currentbin);var at=Math.min(T.length,l.length),it=[],et=0,lt=at-1;for(d=0;d<at;d++)if(l[d]){et=d;break}for(d=at-1;d>=et;d--)if(l[d]){lt=d;break}for(d=et;d<=lt;d++)if(g(T[d])&&g(l[d])){var Me={p:T[d],s:l[d],b:0};b.enabled||(Me.pts=O[d],fe?Me.ph0=Me.ph1=O[d].length?f[O[d][0]]:T[d]:(p._computePh=!0,Me.ph0=Ze(L[d]),Me.ph1=Ze(L[d+1],!0))),it.push(Me)}return it.length===1&&(it[0].width1=M.tickIncrement(it[0].p,y.size,!1,m)-it[0].p),e(it,p),x.isArrayOrTypedArray(p.selectedpoints)&&x.tagSelected(it,p,Be),it}function n(v,p,T,l,_){var w=l+"bins",S=v._fullLayout,E=p["_"+l+"bingroup"],m=S._histogramBinOpts[E],b=S.barmode==="overlay",d,u,y,f,P,L,z,F=function(Ie){return T.r2c(Ie,0,f)},B=function(Ie){return T.c2r(Ie,0,f)},O=T.type==="date"?function(Ie){return Ie||Ie===0?x.cleanDate(Ie,null,f):null}:function(Ie){return g(Ie)?Number(Ie):null};function I(Ie,Ze,at){Ze[Ie+"Found"]?(Ze[Ie]=O(Ze[Ie]),Ze[Ie]===null&&(Ze[Ie]=at[Ie])):(L[Ie]=Ze[Ie]=at[Ie],x.nestedProperty(u[0],w+"."+Ie).set(at[Ie]))}if(p["_"+l+"autoBinFinished"])delete p["_"+l+"autoBinFinished"];else{u=m.traces;var N=[],U=!0,W=!1,Q=!1;for(d=0;d<u.length;d++)if(y=u[d],y.visible){var ue=m.dirs[d];P=y["_"+ue+"pos0"]=T.makeCalcdata(y,ue),N=x.concat(N,P),delete y["_"+l+"autoBinFinished"],p.visible===!0&&(U?U=!1:(delete y._autoBin,y["_"+l+"autoBinFinished"]=1),A.traceIs(y,"2dMap")&&(W=!0),y.type==="histogram2dcontour"&&(Q=!0))}f=u[0][l+"calendar"];var se=M.autoBin(N,T,m.nbins,W,f,m.sizeFound&&m.size),he=u[0]._autoBin={};if(L=he[m.dirs[0]]={},Q&&(m.size||(se.start=B(M.tickIncrement(F(se.start),se.size,!0,f))),m.end===void 0&&(se.end=B(M.tickIncrement(F(se.end),se.size,!1,f)))),b&&!A.traceIs(p,"2dMap")&&se._dataSpan===0&&T.type!=="category"&&T.type!=="multicategory"&&p.bingroup===""&&typeof p.xbins>"u"){if(_)return[se,P,!0];se=s(v,p,T,l,w)}z=y.cumulative||{},z.enabled&&z.currentbin!=="include"&&(z.direction==="decreasing"?se.start=B(M.tickIncrement(F(se.start),se.size,!0,f)):se.end=B(M.tickIncrement(F(se.end),se.size,!1,f))),m.size=se.size,m.sizeFound||(L.size=se.size,x.nestedProperty(u[0],w+".size").set(se.size)),I("start",m,se),I("end",m,se)}P=p["_"+l+"pos0"],delete p["_"+l+"pos0"];var G=p._input[w]||{},$=x.extendFlat({},m),J=m.start,Z=T.r2l(G.start),re=Z!==void 0;if((m.startFound||re)&&Z!==T.r2l(J)){var ne=re?Z:x.aggNums(Math.min,null,P),j={type:T.type==="category"||T.type==="multicategory"?"linear":T.type,r2l:T.r2l,dtick:m.size,tick0:J,calendar:f,range:[ne,M.tickIncrement(ne,m.size,!1,f)].map(T.l2r)},ee=M.tickFirst(j);ee>T.r2l(ne)&&(ee=M.tickIncrement(ee,m.size,!0,f)),$.start=T.l2r(ee),re||x.nestedProperty(p,w+".start").set($.start)}var ie=m.end,fe=T.r2l(G.end),be=fe!==void 0;if((m.endFound||be)&&fe!==T.r2l(ie)){var Ae=be?fe:x.aggNums(Math.max,null,P);$.end=T.l2r(Ae),be||x.nestedProperty(p,w+".start").set($.end)}var Be="autobin"+l;return p._input[Be]===!1&&(p._input[w]=x.extendFlat({},p[w]||{}),delete p._input[Be],delete p[Be]),[$,P]}function s(v,p,T,l,_){var w=v._fullLayout,S=c(v,p),E=!1,m=1/0,b=[p],d,u,y;for(d=0;d<S.length;d++)if(u=S[d],u===p)E=!0;else if(!E)y=w._histogramBinOpts[u["_"+l+"bingroup"]],m=Math.min(m,y.size||u[_].size);else{var f=n(v,u,T,l,!0),P=f[0],L=f[2];u["_"+l+"autoBinFinished"]=1,u["_"+l+"pos0"]=f[1],L?b.push(u):m=Math.min(m,P.size)}var z=new Array(b.length);for(d=0;d<b.length;d++)for(var F=b[d]["_"+l+"pos0"],B=0;B<F.length;B++)if(F[B]!==void 0){z[d]=F[B];break}for(isFinite(m)||(m=x.distinctVals(z).minDiff),d=0;d<b.length;d++){u=b[d];var O=u[l+"calendar"],I={start:T.c2r(z[d]-m/2,0,O),end:T.c2r(z[d]+m/2,0,O),size:m};u._input[_]=u[_]=I,y=w._histogramBinOpts[u["_"+l+"bingroup"]],y&&x.extendFlat(y,I)}return p[_]}function c(v,p){for(var T=p.xaxis,l=p.yaxis,_=p.orientation,w=[],S=v._fullData,E=0;E<S.length;E++){var m=S[E];m.type==="histogram"&&m.visible===!0&&m.orientation===_&&m.xaxis===T&&m.yaxis===l&&w.push(m)}return w}function h(v,p,T){var l,_,w;function S(m){w=v[m],v[m]/=2}function E(m){_=v[m],v[m]=w+_/2,w+=_}if(T==="half")if(p==="increasing")for(S(0),l=1;l<v.length;l++)E(l);else for(S(v.length-1),l=v.length-2;l>=0;l--)E(l);else if(p==="increasing"){for(l=1;l<v.length;l++)v[l]+=v[l-1];T==="exclude"&&(v.unshift(0),v.pop())}else{for(l=v.length-2;l>=0;l--)v[l]+=v[l+1];T==="exclude"&&(v.push(0),v.shift())}}H.exports={calc:i,calcAllAutoBins:n}}}),$B=Ye({"src/traces/histogram2d/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=eM(),M=tM(),e=rM(),t=aM(),r=iM().calcAllAutoBins;H.exports=function(s,c){var h=x.getFromId(s,c.xaxis),v=x.getFromId(s,c.yaxis),p=c.xcalendar,T=c.ycalendar,l=function(Fe){return h.r2c(Fe,0,p)},_=function(Fe){return v.r2c(Fe,0,T)},w=function(Fe){return h.c2r(Fe,0,p)},S=function(Fe){return v.c2r(Fe,0,T)},E,m,b,d,u=r(s,c,h,"x"),y=u[0],f=u[1],P=r(s,c,v,"y"),L=P[0],z=P[1],F=c._length;f.length>F&&f.splice(F,f.length-F),z.length>F&&z.splice(F,z.length-F);var B=[],O=[],I=[],N=typeof y.size=="string",U=typeof L.size=="string",W=[],Q=[],ue=N?W:y,se=U?Q:L,he=0,G=[],$=[],J=c.histnorm,Z=c.histfunc,re=J.indexOf("density")!==-1,ne=Z==="max"||Z==="min",j=ne?null:0,ee=A.count,ie=M[J],fe=!1,be=[],Ae=[],Be="z"in c?c.z:"marker"in c&&Array.isArray(c.marker.color)?c.marker.color:"";Be&&Z!=="count"&&(fe=Z==="avg",ee=A[Z]);var Ie=y.size,Ze=l(y.start),at=l(y.end)+(Ze-x.tickIncrement(Ze,Ie,!1,p))/1e6;for(E=Ze;E<at;E=x.tickIncrement(E,Ie,!1,p))O.push(j),W.push(E),fe&&I.push(0);W.push(E);var it=O.length,et=(E-Ze)/it,lt=w(Ze+et/2),Me=L.size,ge=_(L.start),ce=_(L.end)+(ge-x.tickIncrement(ge,Me,!1,T))/1e6;for(E=ge;E<ce;E=x.tickIncrement(E,Me,!1,T)){B.push(O.slice()),Q.push(E);var ze=new Array(it);for(m=0;m<it;m++)ze[m]=[];$.push(ze),fe&&G.push(I.slice())}Q.push(E);var tt=B.length,nt=(E-ge)/tt,Qe=S(ge+nt/2);re&&(be=o(O.length,ue,et,N),Ae=o(B.length,se,nt,U)),!N&&h.type==="date"&&(ue=a(l,ue)),!U&&v.type==="date"&&(se=a(_,se));var Ct=!0,St=!0,Ot=new Array(it),jt=new Array(tt),ur=1/0,ar=1/0,Cr=1/0,vr=1/0;for(E=0;E<F;E++){var _r=f[E],yt=z[E];b=g.findBin(_r,ue),d=g.findBin(yt,se),b>=0&&b<it&&d>=0&&d<tt&&(he+=ee(b,E,B[d],Be,G[d]),$[d][b].push(E),Ct&&(Ot[b]===void 0?Ot[b]=_r:Ot[b]!==_r&&(Ct=!1)),St&&(jt[d]===void 0?jt[d]=yt:jt[d]!==yt&&(St=!1)),ur=Math.min(ur,_r-W[b]),ar=Math.min(ar,W[b+1]-_r),Cr=Math.min(Cr,yt-Q[d]),vr=Math.min(vr,Q[d+1]-yt))}if(fe)for(d=0;d<tt;d++)he+=e(B[d],G[d]);if(ie)for(d=0;d<tt;d++)ie(B[d],he,be,Ae[d]);return{x:f,xRanges:i(W,Ct&&Ot,ur,ar,h,p),x0:lt,dx:et,y:z,yRanges:i(Q,St&&jt,Cr,vr,v,T),y0:Qe,dy:nt,z:B,pts:$}};function o(n,s,c,h){var v=new Array(n),p;if(h)for(p=0;p<n;p++)v[p]=1/(s[p+1]-s[p]);else{var T=1/c;for(p=0;p<n;p++)v[p]=T}return v}function a(n,s){return{start:n(s.start),end:n(s.end),size:s.size}}function i(n,s,c,h,v,p){var T,l=n.length-1,_=new Array(l),w=t(c,h,n,v,p);for(T=0;T<l;T++){var S=(s||[])[T];_[T]=S===void 0?[w(n[T]),w(n[T+1],!0)]:[S,S]}return _}}}),Z2=Ye({"src/traces/heatmap/convert_column_xyz.js"(X,H){"use strict";var g=ta(),x=ks().BADNUM,A=tv();H.exports=function(e,t,r,o,a,i){var n=e._length,s=t.makeCalcdata(e,o),c=r.makeCalcdata(e,a);s=A(e,t,o,s).vals,c=A(e,r,a,c).vals;var h=e.text,v=h!==void 0&&g.isArray1D(h),p=e.hovertext,T=p!==void 0&&g.isArray1D(p),l,_,w=g.distinctVals(s),S=w.vals,E=g.distinctVals(c),m=E.vals,b=[],d,u,y=m.length,f=S.length;for(l=0;l<i.length;l++)b[l]=g.init2dArray(y,f);v&&(d=g.init2dArray(y,f)),T&&(u=g.init2dArray(y,f));var P=g.init2dArray(y,f);for(l=0;l<n;l++)if(s[l]!==x&&c[l]!==x){var L=g.findBin(s[l]+w.minDiff/2,S),z=g.findBin(c[l]+E.minDiff/2,m);for(_=0;_<i.length;_++){var F=i[_],B=e[F],O=b[_];O[z][L]=B[l],P[z][L]=l}v&&(d[z][L]=h[l]),T&&(u[z][L]=p[l])}for(e["_"+o]=S,e["_"+a]=m,_=0;_<i.length;_++)e["_"+i[_]]=b[_];v&&(e._text=d),T&&(e._hovertext=u),t&&t.type==="category"&&(e["_"+o+"CategoryMap"]=S.map(function(I){return t._categories[I]})),r&&r.type==="category"&&(e["_"+a+"CategoryMap"]=m.map(function(I){return r._categories[I]})),e._after2before=P}}}),X2=Ye({"src/traces/heatmap/clean_2d_array.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM;H.exports=function(e,t,r,o){var a,i,n,s,c,h;function v(S){if(g(S))return+S}if(t&&t.transpose){for(a=0,c=0;c<e.length;c++)a=Math.max(a,e[c].length);if(a===0)return!1;n=function(S){return S.length},s=function(S,E,m){return(S[m]||[])[E]}}else a=e.length,n=function(S,E){return S[E].length},s=function(S,E,m){return(S[E]||[])[m]};var p=function(S,E,m){return E===A||m===A?A:s(S,E,m)};function T(S){if(t&&t.type!=="carpet"&&t.type!=="contourcarpet"&&S&&S.type==="category"&&t["_"+S._id.charAt(0)].length){var E=S._id.charAt(0),m={},b=t["_"+E+"CategoryMap"]||t[E];for(c=0;c<b.length;c++)m[b[c]]=c;return function(d){var u=m[S._categories[d]];return u+1?u:A}}else return x.identity}var l=T(r),_=T(o);o&&o.type==="category"&&(a=o._categories.length);var w=new Array(a);for(c=0;c<a;c++)for(r&&r.type==="category"?i=r._categories.length:i=n(e,c),w[c]=new Array(i),h=0;h<i;h++)w[c][h]=v(p(e,_(c),l(h)));return w}}}),Y2=Ye({"src/traces/heatmap/interp2d.js"(X,H){"use strict";var g=ta(),x=.01,A=[[-1,0],[1,0],[0,-1],[0,1]];function M(t){return .5-.25*Math.min(1,t*.5)}H.exports=function(r,o){var a=1,i;for(e(r,o),i=0;i<o.length&&!(o[i][2]<4);i++);for(o=o.slice(i),i=0;i<100&&a>x;i++)a=e(r,o,M(a));return a>x&&g.log("interp2d didn't converge quickly",a),r};function e(t,r,o){var a=0,i,n,s,c,h,v,p,T,l,_,w,S,E;for(c=0;c<r.length;c++){for(i=r[c],n=i[0],s=i[1],w=t[n][s],_=0,l=0,h=0;h<4;h++)v=A[h],p=t[n+v[0]],p&&(T=p[s+v[1]],T!==void 0&&(_===0?S=E=T:(S=Math.min(S,T),E=Math.max(E,T)),l++,_+=T));if(l===0)throw"iterateInterp2d order is wrong: no defined neighbors";t[n][s]=_/l,w===void 0?l<4&&(a=1):(t[n][s]=(1+o)*t[n][s]-o*w,E>S&&(a=Math.max(a,Math.abs(t[n][s]-w)/(E-S))))}return a}}}),K2=Ye({"src/traces/heatmap/find_empties.js"(X,H){"use strict";var g=ta().maxRowLength;H.exports=function(A){var M=[],e={},t=[],r=A[0],o=[],a=[0,0,0],i=g(A),n,s,c,h,v,p,T,l;for(s=0;s<A.length;s++)for(n=o,o=r,r=A[s+1]||[],c=0;c<i;c++)o[c]===void 0&&(p=(o[c-1]!==void 0?1:0)+(o[c+1]!==void 0?1:0)+(n[c]!==void 0?1:0)+(r[c]!==void 0?1:0),p?(s===0&&p++,c===0&&p++,s===A.length-1&&p++,c===o.length-1&&p++,p<4&&(e[[s,c]]=[s,c,p]),M.push([s,c,p])):t.push([s,c]));for(;t.length;){for(T={},l=!1,v=t.length-1;v>=0;v--)h=t[v],s=h[0],c=h[1],p=((e[[s-1,c]]||a)[2]+(e[[s+1,c]]||a)[2]+(e[[s,c-1]]||a)[2]+(e[[s,c+1]]||a)[2])/20,p&&(T[h]=[s,c,p],t.splice(v,1),l=!0);if(!l)throw"findEmpties iterated with no new neighbors";for(h in T)e[h]=T[h],M.push(T[h])}return M.sort(function(_,w){return w[2]-_[2]})}}}),nM=Ye({"src/traces/heatmap/make_bound_array.js"(X,H){"use strict";var g=Hn(),x=ta().isArrayOrTypedArray;H.exports=function(M,e,t,r,o,a){var i=[],n=g.traceIs(M,"contour"),s=g.traceIs(M,"histogram"),c,h,v,p=x(e)&&e.length>1;if(p&&!s&&a.type!=="category"){var T=e.length;if(T<=o){if(n)i=Array.from(e).slice(0,o);else if(o===1)a.type==="log"?i=[.5*e[0],2*e[0]]:i=[e[0]-.5,e[0]+.5];else if(a.type==="log"){for(i=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],v=1;v<T;v++)i.push(Math.sqrt(e[v-1]*e[v]));i.push(Math.pow(e[T-1],1.5)/Math.pow(e[T-2],.5))}else{for(i=[1.5*e[0]-.5*e[1]],v=1;v<T;v++)i.push((e[v-1]+e[v])*.5);i.push(1.5*e[T-1]-.5*e[T-2])}if(T<o){var l=i[i.length-1],_;if(a.type==="log")for(_=l/i[i.length-2],v=T;v<o;v++)l*=_,i.push(l);else for(_=l-i[i.length-2],v=T;v<o;v++)l+=_,i.push(l)}}else return n?e.slice(0,o):e.slice(0,o+1)}else{var w=M[a._id.charAt(0)+"calendar"];if(s)c=a.r2c(t,0,w);else if(x(e)&&e.length===1)c=e[0];else if(t===void 0)c=0;else{var S=a.type==="log"?a.d2c:a.r2c;c=S(t,0,w)}for(h=r||1,v=n?0:-.5;v<o;v++)i.push(c+h*v)}return i}}}),J2=Ye({"src/traces/heatmap/calc.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Co(),M=tv(),e=$B(),t=jp(),r=Z2(),o=X2(),a=Y2(),i=K2(),n=nM(),s=ks().BADNUM;H.exports=function(p,T){var l=A.getFromId(p,T.xaxis||"x"),_=A.getFromId(p,T.yaxis||"y"),w=g.traceIs(T,"contour"),S=g.traceIs(T,"histogram"),E=w?"best":T.zsmooth,m,b,d,u,y,f,P,L,z,F,B;if(l._minDtick=0,_._minDtick=0,S)B=e(p,T),u=B.orig_x,m=B.x,b=B.x0,d=B.dx,L=B.orig_y,y=B.y,f=B.y0,P=B.dy,z=B.z;else{var O=T.z;x.isArray1D(O)?(r(T,l,_,"x","y",["z"]),m=T._x,y=T._y,O=T._z):(u=T.x?l.makeCalcdata(T,"x"):[],L=T.y?_.makeCalcdata(T,"y"):[],m=M(T,l,"x",u).vals,y=M(T,_,"y",L).vals,T._x=m,T._y=y),b=T.x0,d=T.dx,f=T.y0,P=T.dy,z=o(O,T,l,_)}(l.rangebreaks||_.rangebreaks)&&(z=h(m,y,z),S||(m=c(m),y=c(y),T._x=m,T._y=y)),!S&&(w||T.connectgaps)&&(T._emptypoints=i(z),a(z,T._emptypoints));function I($){E=T._input.zsmooth=T.zsmooth=!1,x.warn('cannot use zsmooth: "fast": '+$)}function N($){if($.length>1){var J=($[$.length-1]-$[0])/($.length-1),Z=Math.abs(J/100);for(F=0;F<$.length-1;F++)if(Math.abs($[F+1]-$[F]-J)>Z)return!1}return!0}T._islinear=!1,l.type==="log"||_.type==="log"?E==="fast"&&I("log axis found"):N(m)?N(y)?T._islinear=!0:E==="fast"&&I("y scale is not linear"):E==="fast"&&I("x scale is not linear");var U=x.maxRowLength(z),W=T.xtype==="scaled"?"":m,Q=n(T,W,b,d,U,l),ue=T.ytype==="scaled"?"":y,se=n(T,ue,f,P,z.length,_);T._extremes[l._id]=A.findExtremes(l,Q),T._extremes[_._id]=A.findExtremes(_,se);var he={x:Q,y:se,z,text:T._text||T.text,hovertext:T._hovertext||T.hovertext};if(T.xperiodalignment&&u&&(he.orig_x=u),T.yperiodalignment&&L&&(he.orig_y=L),W&&W.length===Q.length-1&&(he.xCenter=W),ue&&ue.length===se.length-1&&(he.yCenter=ue),S&&(he.xRanges=B.xRanges,he.yRanges=B.yRanges,he.pts=B.pts),w||t(p,T,{vals:z,cLetter:"z"}),w&&T.contours&&T.contours.coloring==="heatmap"){var G={type:T.type==="contour"?"heatmap":"histogram2d",xcalendar:T.xcalendar,ycalendar:T.ycalendar};he.xfill=n(G,W,b,d,U,l),he.yfill=n(G,ue,f,P,z.length,_)}return[he]};function c(v){for(var p=[],T=v.length,l=0;l<T;l++){var _=v[l];_!==s&&p.push(_)}return p}function h(v,p,T){for(var l=[],_=-1,w=0;w<T.length;w++)if(p[w]!==s){_++,l[_]=[];for(var S=0;S<T[w].length;S++)v[S]!==s&&l[_].push(T[w][S])}return l}}}),$2=Ye({"src/constants/pixelated_image.js"(X){"use strict";X.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]],X.STYLE=X.CSS_DECLARATIONS.map(function(H){return H.join(": ")+"; "}).join("")}}),oM=Ye({"src/lib/supports_pixelated_image.js"(X,H){"use strict";var g=$2(),x=Bo(),A=ta(),M=null;function e(){if(M!==null)return M;M=!1;var t=A.isSafari()||A.isIOS();if(window.navigator.userAgent&&!t){var r=Array.from(g.CSS_DECLARATIONS).reverse(),o=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof o=="function")M=r.some(function(s){return o.apply(null,s)});else{var a=x.tester.append("image").attr("style",g.STYLE),i=window.getComputedStyle(a.node()),n=i.imageRendering;M=r.some(function(s){var c=s[1];return n===c||n===c.toLowerCase()}),a.remove()}}return M}H.exports=e}}),Q2=Ye({"src/traces/heatmap/plot.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=Bo(),e=Co(),t=ta(),r=jl(),o=L2(),a=Fn(),i=Su().extractOpts,n=Su().makeColorScaleFuncFromTrace,s=vd(),c=oh(),h=c.LINE_SPACING,v=oM(),p=$2().STYLE,T="heatmap-label";function l(m){return m.selectAll("g."+T)}function _(m){l(m).remove()}H.exports=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;t.makeTraceGroups(u,d,"hm").each(function(P){var L=g.select(this),z=P[0],F=z.trace,B=F.xgap||0,O=F.ygap||0,I=z.z,N=z.x,U=z.y,W=z.xCenter,Q=z.yCenter,ue=A.traceIs(F,"contour"),se=ue?"best":F.zsmooth,he=I.length,G=t.maxRowLength(I),$=!1,J=!1,Z,re,ne,j,ee,ie,fe,be;for(ie=0;Z===void 0&&ie<N.length-1;)Z=y.c2p(N[ie]),ie++;for(ie=N.length-1;re===void 0&&ie>0;)re=y.c2p(N[ie]),ie--;for(re<Z&&(ne=re,re=Z,Z=ne,$=!0),ie=0;j===void 0&&ie<U.length-1;)j=f.c2p(U[ie]),ie++;for(ie=U.length-1;ee===void 0&&ie>0;)ee=f.c2p(U[ie]),ie--;ee<j&&(ne=j,j=ee,ee=ne,J=!0),ue&&(W=N,Q=U,N=z.xfill,U=z.yfill);var Ae="default";if(se?Ae=se==="best"?"smooth":"fast":F._islinear&&B===0&&O===0&&v()&&(Ae="fast"),Ae!=="fast"){var Be=se==="best"?0:.5;Z=Math.max(-Be*y._length,Z),re=Math.min((1+Be)*y._length,re),j=Math.max(-Be*f._length,j),ee=Math.min((1+Be)*f._length,ee)}var Ie=Math.round(re-Z),Ze=Math.round(ee-j),at=Z>=y._length||re<=0||j>=f._length||ee<=0;if(at){var it=L.selectAll("image").data([]);it.exit().remove(),_(L);return}var et,lt;Ae==="fast"?(et=G,lt=he):(et=Ie,lt=Ze);var Me=document.createElement("canvas");Me.width=et,Me.height=lt;var ge=Me.getContext("2d",{willReadFrequently:!0}),ce=n(F,{noNumericCheck:!0,returnArray:!0}),ze,tt;Ae==="fast"?(ze=$?function(Sa){return G-1-Sa}:t.identity,tt=J?function(Sa){return he-1-Sa}:t.identity):(ze=function(Sa){return t.constrain(Math.round(y.c2p(N[Sa])-Z),0,Ie)},tt=function(Sa){return t.constrain(Math.round(f.c2p(U[Sa])-j),0,Ze)});var nt=tt(0),Qe=[nt,nt],Ct=$?0:1,St=J?0:1,Ot=0,jt=0,ur=0,ar=0,Cr,vr,_r,yt,Fe;function Ke(Sa,Ti){if(Sa!==void 0){var ai=ce(Sa);return ai[0]=Math.round(ai[0]),ai[1]=Math.round(ai[1]),ai[2]=Math.round(ai[2]),Ot+=Ti,jt+=ai[0]*Ti,ur+=ai[1]*Ti,ar+=ai[2]*Ti,ai}return[0,0,0,0]}function Ne(Sa,Ti,ai,an){var sn=Sa[ai.bin0];if(sn===void 0)return Ke(void 0,1);var Mn=Sa[ai.bin1],On=Ti[ai.bin0],$n=Ti[ai.bin1],Cn=Mn-sn||0,Lo=On-sn||0,Xi;return Mn===void 0?$n===void 0?Xi=0:On===void 0?Xi=2*($n-sn):Xi=(2*$n-On-sn)*2/3:$n===void 0?On===void 0?Xi=0:Xi=(2*sn-Mn-On)*2/3:On===void 0?Xi=(2*$n-Mn-sn)*2/3:Xi=$n+sn-Mn-On,Ke(sn+ai.frac*Cn+an.frac*(Lo+ai.frac*Xi))}if(Ae!=="default"){var Ee=0,Ve;try{Ve=new Uint8Array(et*lt*4)}catch{Ve=new Array(et*lt*4)}if(Ae==="smooth"){var ke=W||N,Te=Q||U,Le=new Array(ke.length),rt=new Array(Te.length),dt=new Array(Ie),xt=W?S:w,It=Q?S:w,Bt,Gt,Kt;for(ie=0;ie<ke.length;ie++)Le[ie]=Math.round(y.c2p(ke[ie])-Z);for(ie=0;ie<Te.length;ie++)rt[ie]=Math.round(f.c2p(Te[ie])-j);for(ie=0;ie<Ie;ie++)dt[ie]=xt(ie,Le);for(fe=0;fe<Ze;fe++)for(Bt=It(fe,rt),Gt=I[Bt.bin0],Kt=I[Bt.bin1],ie=0;ie<Ie;ie++,Ee+=4)Fe=Ne(Gt,Kt,dt[ie],Bt),E(Ve,Ee,Fe)}else for(fe=0;fe<he;fe++)for(yt=I[fe],Qe=tt(fe),ie=0;ie<G;ie++)Fe=Ke(yt[ie],1),Ee=(Qe*G+ze(ie))*4,E(Ve,Ee,Fe);var sr=ge.createImageData(et,lt);try{sr.data.set(Ve)}catch{var sa=sr.data,Aa=sa.length;for(fe=0;fe<Aa;fe++)sa[fe]=Ve[fe]}ge.putImageData(sr,0,0)}else{var La=Math.floor(B/2),ka=Math.floor(O/2);for(fe=0;fe<he;fe++)if(yt=I[fe],Qe.reverse(),Qe[St]=tt(fe+1),!(Qe[0]===Qe[1]||Qe[0]===void 0||Qe[1]===void 0))for(vr=ze(0),Cr=[vr,vr],ie=0;ie<G;ie++)Cr.reverse(),Cr[Ct]=ze(ie+1),!(Cr[0]===Cr[1]||Cr[0]===void 0||Cr[1]===void 0)&&(_r=yt[ie],Fe=Ke(_r,(Cr[1]-Cr[0])*(Qe[1]-Qe[0])),ge.fillStyle="rgba("+Fe.join(",")+")",ge.fillRect(Cr[0]+La,Qe[0]+ka,Cr[1]-Cr[0]-B,Qe[1]-Qe[0]-O))}jt=Math.round(jt/Ot),ur=Math.round(ur/Ot),ar=Math.round(ar/Ot);var Ga=x("rgb("+jt+","+ur+","+ar+")");m._hmpixcount=(m._hmpixcount||0)+Ot,m._hmlumcount=(m._hmlumcount||0)+Ot*Ga.getLuminance();var Ma=L.selectAll("image").data(P);Ma.enter().append("svg:image").attr({xmlns:s.svg,preserveAspectRatio:"none"}),Ma.attr({height:Ze,width:Ie,x:Z,y:j,"xlink:href":Me.toDataURL("image/png")}),Ae==="fast"&&!se&&Ma.attr("style",p),_(L);var Ua=F.texttemplate;if(Ua){var ni=i(F),Wt={type:"linear",range:[ni.min,ni.max],_separators:y._separators,_numFormat:y._numFormat},zt=F.type==="histogram2dcontour",Vt=F.type==="contour",Ut=Vt?1:0,xr=Vt?he-1:he,Zr=Vt?1:0,pa=Vt?G-1:G,Xr=[];for(ie=Ut;ie<xr;ie++){var Ea;if(Vt)Ea=z.y[ie];else if(zt){if(ie===0||ie===he-1)continue;Ea=z.y[ie]}else if(z.yCenter)Ea=z.yCenter[ie];else{if(ie+1===he&&z.y[ie+1]===void 0)continue;Ea=(z.y[ie]+z.y[ie+1])/2}var Fa=Math.round(f.c2p(Ea));if(!(0>Fa||Fa>f._length))for(fe=Zr;fe<pa;fe++){var qa;if(Vt)qa=z.x[fe];else if(zt){if(fe===0||fe===G-1)continue;qa=z.x[fe]}else if(z.xCenter)qa=z.xCenter[fe];else{if(fe+1===G&&z.x[fe+1]===void 0)continue;qa=(z.x[fe]+z.x[fe+1])/2}var ya=Math.round(y.c2p(qa));if(!(0>ya||ya>y._length)){var $a=o({x:qa,y:Ea},F,m._fullLayout);$a.x=qa,$a.y=Ea;var mt=z.z[ie][fe];mt===void 0?($a.z="",$a.zLabel=""):($a.z=mt,$a.zLabel=e.tickText(Wt,mt,"hover").text);var gt=z.text&&z.text[ie]&&z.text[ie][fe];(gt===void 0||gt===!1)&&(gt=""),$a.text=gt;var Er=t.texttemplateString(Ua,$a,m._fullLayout._d3locale,$a,F._meta||{});if(Er){var kr=Er.split("<br>"),br=kr.length,Tr=0;for(be=0;be<br;be++)Tr=Math.max(Tr,kr[be].length);Xr.push({l:br,c:Tr,t:Er,x:ya,y:Fa,z:mt})}}}}var Mr=F.textfont,Fr=Mr.size,Lr=m._fullLayout.font.size;if(!Fr||Fr==="auto"){var Jr=1/0,oa=1/0,ca=0,kt=0;for(be=0;be<Xr.length;be++){var ir=Xr[be];if(ca=Math.max(ca,ir.l),kt=Math.max(kt,ir.c),be<Xr.length-1){var mr=Xr[be+1],$r=Math.abs(mr.x-ir.x),ma=Math.abs(mr.y-ir.y);$r&&(Jr=Math.min(Jr,$r)),ma&&(oa=Math.min(oa,ma))}}!isFinite(Jr)||!isFinite(oa)?Fr=Lr:(Jr-=B,oa-=O,Jr/=kt,oa/=ca,Jr/=h/2,oa/=h,Fr=Math.min(Math.floor(Jr),Math.floor(oa),Lr))}if(Fr<=0||!isFinite(Fr))return;var Ba=function(Sa){return Sa.x},Ca=function(Sa){return Sa.y-Fr*(Sa.l*h/2-1)},da=l(L).data(Xr);da.enter().append("g").classed(T,1).append("text").attr("text-anchor","middle").each(function(Sa){var Ti=g.select(this),ai=Mr.color;(!ai||ai==="auto")&&(ai=a.contrast(Sa.z===void 0?m._fullLayout.plot_bgcolor:"rgba("+ce(Sa.z).join()+")")),Ti.attr("data-notex",1).call(r.positionText,Ba(Sa),Ca(Sa)).call(M.font,{family:Mr.family,size:Fr,color:ai,weight:Mr.weight,style:Mr.style,variant:Mr.variant,textcase:Mr.textcase,lineposition:Mr.lineposition,shadow:Mr.shadow}).text(Sa.t).call(r.convertToTspans,m)})}})};function w(m,b){var d=b.length-2,u=t.constrain(t.findBin(m,b),0,d),y=b[u],f=b[u+1],P=t.constrain(u+(m-y)/(f-y)-.5,0,d),L=Math.round(P),z=Math.abs(P-L);return!P||P===d||!z?{bin0:L,bin1:L,frac:0}:{bin0:L,frac:z,bin1:Math.round(L+z/(P-L))}}function S(m,b){var d=b.length-1,u=t.constrain(t.findBin(m,b),0,d),y=b[u],f=b[u+1],P=(m-y)/(f-y)||0;return P<=0?{bin0:u,bin1:u,frac:0}:P<.5?{bin0:u,bin1:u+1,frac:P}:{bin0:u+1,bin1:u,frac:1-P}}function E(m,b,d){m[b]=d[0],m[b+1]=d[1],m[b+2]=d[2],m[b+3]=Math.round(d[3]*255)}}}),ag=Ye({"src/traces/heatmap/colorbar.js"(X,H){"use strict";H.exports={min:"zmin",max:"zmax"}}}),e3=Ye({"src/traces/heatmap/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".hm image").style("opacity",function(M){return M.trace.opacity})}}}),t3=Ye({"src/traces/heatmap/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=Co(),e=Su().extractOpts;H.exports=function(r,o,a,i,n){n||(n={});var s=n.isContour,c=r.cd[0],h=c.trace,v=r.xa,p=r.ya,T=c.x,l=c.y,_=c.z,w=c.xCenter,S=c.yCenter,E=c.zmask,m=h.zhoverformat,b=T,d=l,u,y,f,P;if(r.index!==!1){try{f=Math.round(r.index[1]),P=Math.round(r.index[0])}catch{x.error("Error hovering on heatmap, pointNumber must be [row,col], found:",r.index);return}if(f<0||f>=_[0].length||P<0||P>_.length)return}else{if(g.inbox(o-T[0],o-T[T.length-1],0)>0||g.inbox(a-l[0],a-l[l.length-1],0)>0)return;if(s){var L;for(b=[2*T[0]-T[1]],L=1;L<T.length;L++)b.push((T[L]+T[L-1])/2);for(b.push([2*T[T.length-1]-T[T.length-2]]),d=[2*l[0]-l[1]],L=1;L<l.length;L++)d.push((l[L]+l[L-1])/2);d.push([2*l[l.length-1]-l[l.length-2]])}f=Math.max(0,Math.min(b.length-2,x.findBin(o,b))),P=Math.max(0,Math.min(d.length-2,x.findBin(a,d)))}var z=v.c2p(T[f]),F=v.c2p(T[f+1]),B=p.c2p(l[P]),O=p.c2p(l[P+1]),I,N;s?(I=c.orig_x||T,N=c.orig_y||l,F=z,u=I[f],O=B,y=N[P]):(I=c.orig_x||w||T,N=c.orig_y||S||l,u=w?I[f]:(I[f]+I[f+1])/2,y=S?N[P]:(N[P]+N[P+1])/2,v&&v.type==="category"&&(u=T[f]),p&&p.type==="category"&&(y=l[P]),h.zsmooth&&(z=F=v.c2p(u),B=O=p.c2p(y)));var U=_[P][f];if(E&&!E[P][f]&&(U=void 0),!(U===void 0&&!h.hoverongaps)){var W;A(c.hovertext)&&A(c.hovertext[P])?W=c.hovertext[P][f]:A(c.text)&&A(c.text[P])&&(W=c.text[P][f]);var Q=e(h),ue={type:"linear",range:[Q.min,Q.max],hoverformat:m,_separators:v._separators,_numFormat:v._numFormat},se=M.tickText(ue,U,"hover").text;return[x.extendFlat(r,{index:h._after2before?h._after2before[P][f]:[P,f],distance:r.maxHoverDistance,spikeDistance:r.maxSpikeDistance,x0:z,x1:F,y0:B,y1:O,xLabelVal:u,yLabelVal:y,zLabelVal:U,zLabel:se,text:W})]}}}}),QB=Ye({"src/traces/heatmap/index.js"(X,H){"use strict";H.exports={attributes:h1(),supplyDefaults:JB(),calc:J2(),plot:Q2(),colorbar:ag(),style:e3(),hoverPoints:t3(),moduleType:"trace",name:"heatmap",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}}}),e7=Ye({"lib/heatmap.js"(X,H){"use strict";H.exports=QB()}}),sM=Ye({"src/traces/histogram/bin_attributes.js"(X,H){"use strict";H.exports=function(x,A){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}}}),t7=Ye({"src/traces/histogram/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["binNumber"]}}}),r3=Ye({"src/traces/histogram/attributes.js"(X,H){"use strict";var g=Sv(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=xs().texttemplateAttrs,e=Au(),t=sM(),r=t7(),o=Oo().extendFlat;H.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:x("x"),yhoverformat:x("y"),text:o({},g.text,{}),hovertext:o({},g.hovertext,{}),orientation:g.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:t("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:t("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:A({},{keys:r.eventDataKeys}),texttemplate:M({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:o({},g.textposition,{arrayOk:!1}),textfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:g.insidetextanchor,textangle:g.textangle,cliponaxis:g.cliponaxis,constraintext:g.constraintext,marker:g.marker,offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:g.selected,unselected:g.unselected,zorder:g.zorder}}}),r7=Ye({"src/traces/histogram/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Fn(),M=gd().handleText,e=U2(),t=r3();H.exports=function(o,a,i,n){function s(d,u){return x.coerce(o,a,t,d,u)}var c=s("x"),h=s("y"),v=s("cumulative.enabled");v&&(s("cumulative.direction"),s("cumulative.currentbin")),s("text");var p=s("textposition");M(o,a,n,s,p,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s("hovertext"),s("hovertemplate"),s("xhoverformat"),s("yhoverformat");var T=s("orientation",h&&!c?"h":"v"),l=T==="v"?"x":"y",_=T==="v"?"y":"x",w=c&&h?Math.min(x.minRowLength(c)&&x.minRowLength(h)):x.minRowLength(a[l]||[]);if(!w){a.visible=!1;return}a._length=w;var S=g.getComponentMethod("calendars","handleTraceDefaults");S(o,a,["x","y"],n);var E=a[_];E&&s("histfunc"),s("histnorm"),s("autobin"+l),e(o,a,s,i,n),x.coerceSelectionMarkerOpacity(a,s);var m=(a.marker.line||{}).color,b=g.getComponentMethod("errorbars","supplyDefaults");b(o,a,m||A.defaultLine,{axis:"y"}),b(o,a,m||A.defaultLine,{axis:"x",inherit:"y"}),s("zorder")}}}),a3=Ye({"src/traces/histogram/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Xc(),A=Hn().traceIs,M=Jg(),e=gd().validateCornerradius,t=g.nestedProperty,r=Yg().getAxisGroup,o=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],a=["x","y"];H.exports=function(n,s){var c=s._histogramBinOpts={},h=[],v={},p=[],T,l,_,w,S,E,m;function b(se,he){return g.coerce(T._input,T,T._module.attributes,se,he)}function d(se){return se.orientation==="v"?"x":"y"}function u(se,he){var G=x.getFromTrace({_fullLayout:s},se,he);return G.type}function y(se,he,G){var $=se.uid+"__"+G;he||(he=$);var J=u(se,G),Z=se[G+"calendar"]||"",re=c[he],ne=!0;re&&(J===re.axType&&Z===re.calendar?(ne=!1,re.traces.push(se),re.dirs.push(G)):(he=$,J!==re.axType&&g.warn(["Attempted to group the bins of trace",se.index,"set on a","type:"+J,"axis","with bins on","type:"+re.axType,"axis."].join(" ")),Z!==re.calendar&&g.warn(["Attempted to group the bins of trace",se.index,"set with a",Z,"calendar","with bins",re.calendar?"on a "+re.calendar+" calendar":"w/o a set calendar"].join(" ")))),ne&&(c[he]={traces:[se],dirs:[G],axType:J,calendar:se[G+"calendar"]||""}),se["_"+G+"bingroup"]=he}for(S=0;S<n.length;S++)if(T=n[S],A(T,"histogram")){if(h.push(T),delete T._xautoBinFinished,delete T._yautoBinFinished,T.type==="histogram"){var f=b("marker.cornerradius",s.barcornerradius);T.marker&&(T.marker.cornerradius=e(f))}A(T,"2dMap")||M(T._input,T,s,b,s.barmode)}var P=s._alignmentOpts||{};for(S=0;S<h.length;S++){if(T=h[S],_="",!A(T,"2dMap")){if(w=d(T),s.barmode==="group"&&T.alignmentgroup){var L=T[w+"axis"],z=r(s,L)+T.orientation;(P[z]||{})[T.alignmentgroup]&&(_=z)}!_&&s.barmode!=="overlay"&&(_=r(s,T.xaxis)+r(s,T.yaxis)+d(T))}_?(v[_]||(v[_]=[]),v[_].push(T)):p.push(T)}for(_ in v){if(l=v[_],l.length===1){p.push(l[0]);continue}var F=!1;for(l.length&&(T=l[0],F=b("bingroup")),_=F||_,S=0;S<l.length;S++){T=l[S];var B=T._input.bingroup;B&&B!==_&&g.warn(["Trace",T.index,"must match","within bingroup",_+".","Ignoring its bingroup:",B,"setting."].join(" ")),T.bingroup=_,y(T,_,d(T))}}for(S=0;S<p.length;S++){T=p[S];var O=b("bingroup");if(A(T,"2dMap"))for(m=0;m<2;m++){w=a[m];var I=b(w+"bingroup",O?O+"__"+w:null);y(T,I,w)}else y(T,O,d(T))}for(_ in c){var N=c[_];for(l=N.traces,E=0;E<o.length;E++){var U=o[E],W=U.name,Q,ue;if(!(W==="nbins"&&N.sizeFound)){for(S=0;S<l.length;S++){if(T=l[S],w=N.dirs[S],Q=U.aStr[w],t(T._input,Q).get()!==void 0){N[W]=b(Q),N[W+"Found"]=!0;break}ue=(T._autoBin||{})[w]||{},ue[W]&&t(T,Q).set(ue[W])}if(W==="start"||W==="end")for(;S<l.length;S++)T=l[S],T["_"+w+"bingroup"]&&(ue=(T._autoBin||{})[w]||{},b(Q,ue[W]));W==="nbins"&&!N.sizeFound&&!N.nbinsFound&&(T=l[0],N[W]=b(Q))}}}}}}),a7=Ye({"src/traces/histogram/hover.js"(X,H){"use strict";var g=c1().hoverPoints,x=Co().hoverLabelText;H.exports=function(M,e,t,r,o){var a=g(M,e,t,r,o);if(a){M=a[0];var i=M.cd[M.index],n=M.cd[0].trace;if(!n.cumulative.enabled){var s=n.orientation==="h"?"y":"x";M[s+"Label"]=x(M[s+"a"],[i.ph0,i.ph1],n[s+"hoverformat"])}return a}}}}),lM=Ye({"src/traces/histogram/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"zLabelVal"in A&&(x.z=A.zLabelVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),!(M.cumulative||{}).enabled){var r=Array.isArray(t)?e[0].pts[t[0]][t[1]]:e[t].pts;x.pointNumbers=r,x.binNumber=x.pointNumber,delete x.pointNumber,delete x.pointIndex;var o;if(M._indexToPoints){o=[];for(var a=0;a<r.length;a++)o=o.concat(M._indexToPoints[r[a]])}else o=r;x.pointIndices=o}return x}}}),i7=Ye({"src/traces/histogram/index.js"(X,H){"use strict";H.exports={attributes:r3(),layoutAttributes:N2(),supplyDefaults:r7(),crossTraceDefaults:a3(),supplyLayoutDefaults:YS(),calc:iM().calc,crossTraceCalc:$g().crossTraceCalc,plot:e0().plot,layerName:"barlayer",style:Nd().style,styleOnSelect:Nd().styleOnSelect,colorbar:cp(),hoverPoints:a7(),selectPoints:f1(),eventData:lM(),moduleType:"trace",name:"histogram",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}}}),n7=Ye({"lib/histogram.js"(X,H){"use strict";H.exports=i7()}}),i3=Ye({"src/traces/histogram2d/attributes.js"(X,H){"use strict";var g=r3(),x=sM(),A=h1(),M=Pl(),e=Cc().axisHoverFormat,t=xs().hovertemplateAttrs,r=xs().texttemplateAttrs,o=tu(),a=Oo().extendFlat;H.exports=a({x:g.x,y:g.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:x("x"),nbinsy:g.nbinsy,ybins:x("y"),autobinx:g.autobinx,autobiny:g.autobiny,bingroup:a({},g.bingroup,{}),xbingroup:a({},g.bingroup,{}),ybingroup:a({},g.bingroup,{}),xgap:A.xgap,ygap:A.ygap,zsmooth:A.zsmooth,xhoverformat:e("x"),yhoverformat:e("y"),zhoverformat:e("z",1),hovertemplate:t({},{keys:"z"}),texttemplate:r({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:A.textfont,showlegend:a({},M.showlegend,{dflt:!1})},o("",{cLetter:"z",autoColorDflt:!1}))}}),uM=Ye({"src/traces/histogram2d/sample_defaults.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports=function(M,e,t,r){var o=t("x"),a=t("y"),i=x.minRowLength(o),n=x.minRowLength(a);if(!i||!n){e.visible=!1;return}e._length=Math.min(i,n);var s=g.getComponentMethod("calendars","handleTraceDefaults");s(M,e,["x","y"],r);var c=t("z")||t("marker.color");c&&t("histfunc"),t("histnorm"),t("autobinx"),t("autobiny")}}}),o7=Ye({"src/traces/histogram2d/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=QS(),M=sh(),e=N_(),t=i3();H.exports=function(o,a,i,n){function s(c,h){return g.coerce(o,a,t,c,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,n),M(o,a,n,s,{prefix:"",cLetter:"z"}),s("hovertemplate"),e(s,n),s("xhoverformat"),s("yhoverformat"))}}}),s7=Ye({"src/traces/histogram2d/hover.js"(X,H){"use strict";var g=t3(),x=Co().hoverLabelText;H.exports=function(M,e,t,r,o){var a=g(M,e,t,r,o);if(a){M=a[0];var i=M.index,n=i[0],s=i[1],c=M.cd[0],h=c.trace,v=c.xRanges[s],p=c.yRanges[n];return M.xLabel=x(M.xa,[v[0],v[1]],h.xhoverformat),M.yLabel=x(M.ya,[p[0],p[1]],h.yhoverformat),a}}}}),l7=Ye({"src/traces/histogram2d/index.js"(X,H){"use strict";H.exports={attributes:i3(),supplyDefaults:o7(),crossTraceDefaults:a3(),calc:J2(),plot:Q2(),layerName:"heatmaplayer",colorbar:ag(),style:e3(),hoverPoints:s7(),eventData:lM(),moduleType:"trace",name:"histogram2d",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}}}),u7=Ye({"lib/histogram2d.js"(X,H){"use strict";H.exports=l7()}}),n3=Ye({"src/constants/filter_ops.js"(X,H){"use strict";H.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}}}),U_=Ye({"src/traces/contour/attributes.js"(X,H){"use strict";var g=h1(),x=Pc(),A=Cc(),M=A.axisHoverFormat,e=A.descriptionOnlyNumbers,t=tu(),r=Uh().dash,o=Au(),a=Oo().extendFlat,i=n3(),n=i.COMPARISON_OPS2,s=i.INTERVAL_OPS,c=x.line;H.exports=a({z:g.z,x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,text:g.text,hovertext:g.hovertext,transpose:g.transpose,xtype:g.xtype,ytype:g.ytype,xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:a({},g.texttemplate,{}),textfont:a({},g.textfont,{}),hoverongaps:g.hoverongaps,connectgaps:a({},g.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:o({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:e("contour label")},operation:{valType:"enumerated",values:[].concat(n).concat(s),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:a({},c.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:r,smoothing:a({},c.smoothing,{}),editType:"plot"},zorder:x.zorder},t("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))}}),cM=Ye({"src/traces/histogram2dcontour/attributes.js"(X,H){"use strict";var g=i3(),x=U_(),A=tu(),M=Cc().axisHoverFormat,e=Oo().extendFlat;H.exports=e({x:g.x,y:g.y,z:g.z,marker:g.marker,histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:g.xbins,nbinsy:g.nbinsy,ybins:g.ybins,autobinx:g.autobinx,autobiny:g.autobiny,bingroup:g.bingroup,xbingroup:g.xbingroup,ybingroup:g.ybingroup,autocontour:x.autocontour,ncontours:x.ncontours,contours:x.contours,line:{color:x.line.color,width:e({},x.line.width,{dflt:.5}),dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:x.texttemplate,textfont:x.textfont},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),o3=Ye({"src/traces/contour/contours_defaults.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t=e("contours.start"),r=e("contours.end"),o=t===!1||r===!1,a=M("contours.size"),i;o?i=A.autocontour=!0:i=M("autocontour",!1),(i||!a)&&M("ncontours")}}}),fM=Ye({"src/traces/contour/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e,t){t||(t={});var r=A("contours.showlabels");if(r){var o=M.font;g.coerceFont(A,"contours.labelfont",o,{overrideDflt:{color:e}}),A("contours.labelformat")}t.hasHover!==!1&&A("zhoverformat")}}}),s3=Ye({"src/traces/contour/style_defaults.js"(X,H){"use strict";var g=sh(),x=fM();H.exports=function(M,e,t,r,o){var a=t("contours.coloring"),i,n="";a==="fill"&&(i=t("contours.showlines")),i!==!1&&(a!=="lines"&&(n=t("line.color","#000")),t("line.width",.5),t("line.dash")),a!=="none"&&(M.showlegend!==!0&&(e.showlegend=!1),e._dfltShowLegend=!1,g(M,e,r,t,{prefix:"",cLetter:"z"})),t("line.smoothing"),x(t,r,n,o)}}}),c7=Ye({"src/traces/histogram2dcontour/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=o3(),M=s3(),e=N_(),t=cM();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,t,h,v)}function c(h){return g.coerce2(o,a,t,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,c),M(o,a,s,n),s("xhoverformat"),s("yhoverformat"),s("hovertemplate"),a.contours&&a.contours.coloring==="heatmap"&&e(s,n))}}}),hM=Ye({"src/traces/contour/set_contours.js"(X,H){"use strict";var g=Co(),x=ta();H.exports=function(e,t){var r=e.contours;if(e.autocontour){var o=e.zmin,a=e.zmax;(e.zauto||o===void 0)&&(o=x.aggNums(Math.min,null,t)),(e.zauto||a===void 0)&&(a=x.aggNums(Math.max,null,t));var i=A(o,a,e.ncontours);r.size=i.dtick,r.start=g.tickFirst(i),i.range.reverse(),r.end=g.tickFirst(i),r.start===o&&(r.start+=r.size),r.end===a&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),x.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if(r.type!=="constraint"){var n=r.start,s=r.end,c=e._input.contours;if(n>s&&(r.start=c.start=s,s=r.end=c.end=n,n=r.start),!(r.size>0)){var h;n===s?h=1:h=A(n,s,e.ncontours).dtick,c.size=r.size=h}}};function A(M,e,t){var r={type:"linear",range:[M,e]};return g.autoTicks(r,(e-M)/(t||15)),r}}}),j_=Ye({"src/traces/contour/end_plus.js"(X,H){"use strict";H.exports=function(x){return x.end+x.size/1e6}}}),pM=Ye({"src/traces/contour/calc.js"(X,H){"use strict";var g=Su(),x=J2(),A=hM(),M=j_();H.exports=function(t,r){var o=x(t,r),a=o[0].z;A(r,a);var i=r.contours,n=g.extractOpts(r),s;if(i.coloring==="heatmap"&&n.auto&&r.autocontour===!1){var c=i.start,h=M(i),v=i.size||1,p=Math.floor((h-c)/v)+1;isFinite(v)||(v=1,p=1);var T=c-v/2,l=T+p*v;s=[T,l]}else s=a;return g.calc(t,r,{vals:s,cLetter:"z"}),o}}}),V_=Ye({"src/traces/contour/constants.js"(X,H){"use strict";H.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}}}),dM=Ye({"src/traces/contour/make_crossings.js"(X,H){"use strict";var g=V_();H.exports=function(M){var e=M[0].z,t=e.length,r=e[0].length,o=t===2||r===2,a,i,n,s,c,h,v,p,T;for(i=0;i<t-1;i++)for(s=[],i===0&&(s=s.concat(g.BOTTOMSTART)),i===t-2&&(s=s.concat(g.TOPSTART)),a=0;a<r-1;a++)for(n=s.slice(),a===0&&(n=n.concat(g.LEFTSTART)),a===r-2&&(n=n.concat(g.RIGHTSTART)),c=a+","+i,h=[[e[i][a],e[i][a+1]],[e[i+1][a],e[i+1][a+1]]],T=0;T<M.length;T++)p=M[T],v=x(p.level,h),v&&(p.crossings[c]=v,n.indexOf(v)!==-1&&(p.starts.push([a,i]),o&&n.indexOf(v,n.indexOf(v)+1)!==-1&&p.starts.push([a,i])))};function x(A,M){var e=(M[0][0]>A?0:1)+(M[0][1]>A?0:2)+(M[1][1]>A?0:4)+(M[1][0]>A?0:8);if(e===5||e===10){var t=(M[0][0]+M[0][1]+M[1][0]+M[1][1])/4;return A>t?e===5?713:1114:e===5?104:208}return e===15?0:e}}}),vM=Ye({"src/traces/contour/find_all_paths.js"(X,H){"use strict";var g=ta(),x=V_();H.exports=function(a,i,n){var s,c,h,v,p;for(i=i||.01,n=n||.01,h=0;h<a.length;h++){for(v=a[h],p=0;p<v.starts.length;p++)c=v.starts[p],e(v,c,"edge",i,n);for(s=0;Object.keys(v.crossings).length&&s<1e4;)s++,c=Object.keys(v.crossings)[0].split(",").map(Number),e(v,c,void 0,i,n);s===1e4&&g.log("Infinite loop in contour?")}};function A(o,a,i,n){return Math.abs(o[0]-a[0])<i&&Math.abs(o[1]-a[1])<n}function M(o,a){var i=o[2]-a[2],n=o[3]-a[3];return Math.sqrt(i*i+n*n)}function e(o,a,i,n,s){var c=a.join(","),h=o.crossings[c],v=t(h,i,a),p=[r(o,a,[-v[0],-v[1]])],T=o.z.length,l=o.z[0].length,_=a.slice(),w=v.slice(),S;for(S=0;S<1e4;S++){if(h>20?(h=x.CHOOSESADDLE[h][(v[0]||v[1])<0?0:1],o.crossings[c]=x.SADDLEREMAINDER[h]):delete o.crossings[c],v=x.NEWDELTA[h],!v){g.log("Found bad marching index:",h,a,o.level);break}p.push(r(o,a,v)),a[0]+=v[0],a[1]+=v[1],c=a.join(","),A(p[p.length-1],p[p.length-2],n,s)&&p.pop();var E=v[0]&&(a[0]<0||a[0]>l-2)||v[1]&&(a[1]<0||a[1]>T-2),m=a[0]===_[0]&&a[1]===_[1]&&v[0]===w[0]&&v[1]===w[1];if(m||i&&E)break;h=o.crossings[c]}S===1e4&&g.log("Infinite loop in contour?");var b=A(p[0],p[p.length-1],n,s),d=0,u=.2*o.smoothing,y=[],f=0,P,L,z,F,B,O,I,N,U,W,Q;for(S=1;S<p.length;S++)I=M(p[S],p[S-1]),d+=I,y.push(I);var ue=d/y.length*u;function se($){return p[$%p.length]}for(S=p.length-2;S>=f;S--)if(P=y[S],P<ue){for(z=0,L=S-1;L>=f&&P+y[L]<ue;L--)P+=y[L];if(b&&S===p.length-2)for(z=0;z<L&&P+y[z]<ue;z++)P+=y[z];B=S-L+z+1,O=Math.floor((S+L+z+2)/2),!b&&S===p.length-2?F=p[p.length-1]:!b&&L===-1?F=p[0]:B%2?F=se(O):F=[(se(O)[0]+se(O+1)[0])/2,(se(O)[1]+se(O+1)[1])/2],p.splice(L+1,S-L+1,F),S=L+1,z&&(f=z),b&&(S===p.length-2?p[z]=p[p.length-1]:S===0&&(p[p.length-1]=p[0]))}for(p.splice(0,f),S=0;S<p.length;S++)p[S].length=2;if(!(p.length<2))if(b)p.pop(),o.paths.push(p);else{i||g.log("Unclosed interior contour?",o.level,_.join(","),p.join("L"));var he=!1;for(N=0;N<o.edgepaths.length;N++)if(W=o.edgepaths[N],!he&&A(W[0],p[p.length-1],n,s)){p.pop(),he=!0;var G=!1;for(U=0;U<o.edgepaths.length;U++)if(Q=o.edgepaths[U],A(Q[Q.length-1],p[0],n,s)){G=!0,p.shift(),o.edgepaths.splice(N,1),U===N?o.paths.push(p.concat(Q)):(U>N&&U--,o.edgepaths[U]=Q.concat(p,W));break}G||(o.edgepaths[N]=p.concat(W))}for(N=0;N<o.edgepaths.length&&!he;N++)W=o.edgepaths[N],A(W[W.length-1],p[0],n,s)&&(p.shift(),o.edgepaths[N]=W.concat(p),he=!0);he||o.edgepaths.push(p)}}function t(o,a,i){var n=0,s=0;return o>20&&a?o===208||o===1114?n=i[0]===0?1:-1:s=i[1]===0?1:-1:x.BOTTOMSTART.indexOf(o)!==-1?s=1:x.LEFTSTART.indexOf(o)!==-1?n=1:x.TOPSTART.indexOf(o)!==-1?s=-1:n=-1,[n,s]}function r(o,a,i){var n=a[0]+Math.max(i[0],0),s=a[1]+Math.max(i[1],0),c=o.z[s][n],h=o.xaxis,v=o.yaxis;if(i[1]){var p=(o.level-c)/(o.z[s][n+1]-c),T=(p!==1?(1-p)*h.c2l(o.x[n]):0)+(p!==0?p*h.c2l(o.x[n+1]):0);return[h.c2p(h.l2c(T),!0),v.c2p(o.y[s],!0),n+p,s]}else{var l=(o.level-c)/(o.z[s+1][n]-c),_=(l!==1?(1-l)*v.c2l(o.y[s]):0)+(l!==0?l*v.c2l(o.y[s+1]):0);return[h.c2p(o.x[n],!0),v.c2p(v.l2c(_),!0),n,s+l]}}}}),f7=Ye({"src/traces/contour/constraint_mapping.js"(X,H){"use strict";var g=n3(),x=jo();H.exports={"[]":M("[]"),"][":M("]["),">":e(">"),"<":e("<"),"=":e("=")};function A(t,r){var o=Array.isArray(r),a;function i(n){return x(n)?+n:null}return g.COMPARISON_OPS2.indexOf(t)!==-1?a=i(o?r[0]:r):g.INTERVAL_OPS.indexOf(t)!==-1?a=o?[i(r[0]),i(r[1])]:[i(r),i(r)]:g.SET_OPS.indexOf(t)!==-1&&(a=o?r.map(i):[i(r)]),a}function M(t){return function(r){r=A(t,r);var o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);return{start:o,end:a,size:a-o}}}function e(t){return function(r){return r=A(t,r),{start:r,end:1/0,size:1/0}}}}}),mM=Ye({"src/traces/contour/empty_pathinfo.js"(X,H){"use strict";var g=ta(),x=f7(),A=j_();H.exports=function(e,t,r){for(var o=e.type==="constraint"?x[e._operation](e.value):e,a=o.size,i=[],n=A(o),s=r.trace._carpetTrace,c=s?{xaxis:s.aaxis,yaxis:s.baxis,x:r.a,y:r.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:r.x,y:r.y},h=o.start;h<n;h+=a)if(i.push(g.extendFlat({level:h,crossings:{},starts:[],edgepaths:[],paths:[],z:r.z,smoothing:r.trace.line.smoothing},c)),i.length>1e3){g.warn("Too many contours, clipping at 1000",e);break}return i}}}),gM=Ye({"src/traces/contour/convert_to_constraints.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e,t,r,o=function(n){return n.reverse()},a=function(n){return n};switch(M){case"=":case"<":return A;case">":for(A.length!==1&&g.warn("Contour data invalid for the specified inequality operation."),t=A[0],e=0;e<t.edgepaths.length;e++)t.edgepaths[e]=o(t.edgepaths[e]);for(e=0;e<t.paths.length;e++)t.paths[e]=o(t.paths[e]);for(e=0;e<t.starts.length;e++)t.starts[e]=o(t.starts[e]);return A;case"][":var i=o;o=a,a=i;case"[]":for(A.length!==2&&g.warn("Contour data invalid for the specified inequality range operation."),t=x(A[0]),r=x(A[1]),e=0;e<t.edgepaths.length;e++)t.edgepaths[e]=o(t.edgepaths[e]);for(e=0;e<t.paths.length;e++)t.paths[e]=o(t.paths[e]);for(e=0;e<t.starts.length;e++)t.starts[e]=o(t.starts[e]);for(;r.edgepaths.length;)t.edgepaths.push(a(r.edgepaths.shift()));for(;r.paths.length;)t.paths.push(a(r.paths.shift()));for(;r.starts.length;)t.starts.push(a(r.starts.shift()));return[t]}};function x(A){return g.extendFlat({},A,{edgepaths:g.extendDeep([],A.edgepaths),paths:g.extendDeep([],A.paths),starts:g.extendDeep([],A.starts)})}}}),yM=Ye({"src/traces/contour/close_boundaries.js"(X,H){"use strict";H.exports=function(g,x){var A=g[0],M=A.z,e;switch(x.type){case"levels":var t=Math.min(M[0][0],M[0][1]);for(e=0;e<g.length;e++){var r=g[e];r.prefixBoundary=!r.edgepaths.length&&(t>r.level||r.starts.length&&t===r.level)}break;case"constraint":if(A.prefixBoundary=!1,A.edgepaths.length)return;var o=A.x.length,a=A.y.length,i=-1/0,n=1/0;for(e=0;e<a;e++)n=Math.min(n,M[e][0]),n=Math.min(n,M[e][o-1]),i=Math.max(i,M[e][0]),i=Math.max(i,M[e][o-1]);for(e=1;e<o-1;e++)n=Math.min(n,M[0][e]),n=Math.min(n,M[a-1][e]),i=Math.max(i,M[0][e]),i=Math.max(i,M[a-1][e]);var s=x.value,c,h;switch(x._operation){case">":s>i&&(A.prefixBoundary=!0);break;case"<":(s<n||A.starts.length&&s===n)&&(A.prefixBoundary=!0);break;case"[]":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),(h<n||c>i||A.starts.length&&h===n)&&(A.prefixBoundary=!0);break;case"][":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),c<n&&h>i&&(A.prefixBoundary=!0);break}break}}}}),l3=Ye({"src/traces/contour/plot.js"(X){"use strict";var H=_n(),g=ta(),x=Bo(),A=Su(),M=jl(),e=Co(),t=wv(),r=Q2(),o=dM(),a=vM(),i=mM(),n=gM(),s=yM(),c=V_(),h=c.LABELOPTIMIZER;X.plot=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;g.makeTraceGroups(u,d,"contour").each(function(P){var L=H.select(this),z=P[0],F=z.trace,B=z.x,O=z.y,I=F.contours,N=i(I,b,z),U=g.ensureSingle(L,"g","heatmapcoloring"),W=[];I.coloring==="heatmap"&&(W=[P]),r(m,b,W,U),o(N),a(N);var Q=y.c2p(B[0],!0),ue=y.c2p(B[B.length-1],!0),se=f.c2p(O[0],!0),he=f.c2p(O[O.length-1],!0),G=[[Q,he],[ue,he],[ue,se],[Q,se]],$=N;I.type==="constraint"&&($=n(N,I._operation)),v(L,G,I),p(L,$,G,I),l(L,N,m,z,I),w(L,b,m,z,G)})};function v(E,m,b){var d=g.ensureSingle(E,"g","contourbg"),u=d.selectAll("path").data(b.coloring==="fill"?[0]:[]);u.enter().append("path"),u.exit().remove(),u.attr("d","M"+m.join("L")+"Z").style("stroke","none")}function p(E,m,b,d){var u=d.coloring==="fill"||d.type==="constraint"&&d._operation!=="=",y="M"+b.join("L")+"Z";u&&s(m,d);var f=g.ensureSingle(E,"g","contourfill"),P=f.selectAll("path").data(u?m:[]);P.enter().append("path"),P.exit().remove(),P.each(function(L){var z=(L.prefixBoundary?y:"")+T(L,b);z?H.select(this).attr("d",z).style("stroke","none"):H.select(this).remove()})}function T(E,m){var b="",d=0,u=E.edgepaths.map(function(Q,ue){return ue}),y=!0,f,P,L,z,F,B;function O(Q){return Math.abs(Q[1]-m[0][1])<.01}function I(Q){return Math.abs(Q[1]-m[2][1])<.01}function N(Q){return Math.abs(Q[0]-m[0][0])<.01}function U(Q){return Math.abs(Q[0]-m[2][0])<.01}for(;u.length;){for(B=x.smoothopen(E.edgepaths[d],E.smoothing),b+=y?B:B.replace(/^M/,"L"),u.splice(u.indexOf(d),1),f=E.edgepaths[d][E.edgepaths[d].length-1],z=-1,L=0;L<4;L++){if(!f){g.log("Missing end?",d,E);break}for(O(f)&&!U(f)?P=m[1]:N(f)?P=m[0]:I(f)?P=m[3]:U(f)&&(P=m[2]),F=0;F<E.edgepaths.length;F++){var W=E.edgepaths[F][0];Math.abs(f[0]-P[0])<.01?Math.abs(f[0]-W[0])<.01&&(W[1]-f[1])*(P[1]-W[1])>=0&&(P=W,z=F):Math.abs(f[1]-P[1])<.01?Math.abs(f[1]-W[1])<.01&&(W[0]-f[0])*(P[0]-W[0])>=0&&(P=W,z=F):g.log("endpt to newendpt is not vert. or horz.",f,P,W)}if(f=P,z>=0)break;b+="L"+P}if(z===E.edgepaths.length){g.log("unclosed perimeter path");break}d=z,y=u.indexOf(d)===-1,y&&(d=u[0],b+="Z")}for(d=0;d<E.paths.length;d++)b+=x.smoothclosed(E.paths[d],E.smoothing);return b}function l(E,m,b,d,u){var y=b._context.staticPlot,f=g.ensureSingle(E,"g","contourlines"),P=u.showlines!==!1,L=u.showlabels,z=P&&L,F=X.createLines(f,P||L,m,y),B=X.createLineClip(f,z,b,d.trace.uid),O=E.selectAll("g.contourlabels").data(L?[0]:[]);if(O.exit().remove(),O.enter().append("g").classed("contourlabels",!0),L){var I=[],N=[];g.clearLocationCache();var U=X.labelFormatter(b,d),W=x.tester.append("text").attr("data-notex",1).call(x.font,u.labelfont),Q=m[0].xaxis,ue=m[0].yaxis,se=Q._length,he=ue._length,G=Q.range,$=ue.range,J=g.aggNums(Math.min,null,d.x),Z=g.aggNums(Math.max,null,d.x),re=g.aggNums(Math.min,null,d.y),ne=g.aggNums(Math.max,null,d.y),j=Math.max(Q.c2p(J,!0),0),ee=Math.min(Q.c2p(Z,!0),se),ie=Math.max(ue.c2p(ne,!0),0),fe=Math.min(ue.c2p(re,!0),he),be={};G[0]<G[1]?(be.left=j,be.right=ee):(be.left=ee,be.right=j),$[0]<$[1]?(be.top=ie,be.bottom=fe):(be.top=fe,be.bottom=ie),be.middle=(be.top+be.bottom)/2,be.center=(be.left+be.right)/2,I.push([[be.left,be.top],[be.right,be.top],[be.right,be.bottom],[be.left,be.bottom]]);var Ae=Math.sqrt(se*se+he*he),Be=c.LABELDISTANCE*Ae/Math.max(1,m.length/c.LABELINCREASE);F.each(function(Ie){var Ze=X.calcTextOpts(Ie.level,U,W,b);H.select(this).selectAll("path").each(function(){var at=this,it=g.getVisibleSegment(at,be,Ze.height/2);if(it&&!(it.len<(Ze.width+Ze.height)*c.LABELMIN))for(var et=Math.min(Math.ceil(it.len/Be),c.LABELMAX),lt=0;lt<et;lt++){var Me=X.findBestTextLocation(at,it,Ze,N,be);if(!Me)break;X.addLabelData(Me,Ze,N,I)}})}),W.remove(),X.drawLabels(O,N,b,B,z?I:null)}L&&!P&&F.remove()}X.createLines=function(E,m,b,d){var u=b[0].smoothing,y=E.selectAll("g.contourlevel").data(m?b:[]);if(y.exit().remove(),y.enter().append("g").classed("contourlevel",!0),m){var f=y.selectAll("path.openline").data(function(L){return L.pedgepaths||L.edgepaths});f.exit().remove(),f.enter().append("path").classed("openline",!0),f.attr("d",function(L){return x.smoothopen(L,u)}).style("stroke-miterlimit",1).style("vector-effect",d?"none":"non-scaling-stroke");var P=y.selectAll("path.closedline").data(function(L){return L.ppaths||L.paths});P.exit().remove(),P.enter().append("path").classed("closedline",!0),P.attr("d",function(L){return x.smoothclosed(L,u)}).style("stroke-miterlimit",1).style("vector-effect",d?"none":"non-scaling-stroke")}return y},X.createLineClip=function(E,m,b,d){var u=b._fullLayout._clips,y=m?"clipline"+d:null,f=u.selectAll("#"+y).data(m?[0]:[]);return f.exit().remove(),f.enter().append("clipPath").classed("contourlineclip",!0).attr("id",y),x.setClipUrl(E,y,b),f},X.labelFormatter=function(E,m){var b=E._fullLayout,d=m.trace,u=d.contours,y={type:"linear",_id:"ycontour",showexponent:"all",exponentformat:"B"};if(u.labelformat)y.tickformat=u.labelformat,t(y,b);else{var f=A.extractOpts(d);if(f&&f.colorbar&&f.colorbar._axis)y=f.colorbar._axis;else{if(u.type==="constraint"){var P=u.value;g.isArrayOrTypedArray(P)?y.range=[P[0],P[P.length-1]]:y.range=[P,P]}else y.range=[u.start,u.end],y.nticks=(u.end-u.start)/u.size;y.range[0]===y.range[1]&&(y.range[1]+=y.range[0]||1),y.nticks||(y.nticks=1e3),t(y,b),e.prepTicks(y),y._tmin=null,y._tmax=null}}return function(L){return e.tickText(y,L).text}},X.calcTextOpts=function(E,m,b,d){var u=m(E);b.text(u).call(M.convertToTspans,d);var y=b.node(),f=x.bBox(y,!0);return{text:u,width:f.width,height:f.height,fontSize:+y.style["font-size"].replace("px",""),level:E,dy:(f.top+f.bottom)/2}},X.findBestTextLocation=function(E,m,b,d,u){var y=b.width,f,P,L,z,F;m.isClosed?(P=m.len/h.INITIALSEARCHPOINTS,f=m.min+P/2,L=m.max):(P=(m.len-y)/(h.INITIALSEARCHPOINTS+1),f=m.min+P+y/2,L=m.max-(P+y)/2);for(var B=1/0,O=0;O<h.ITERATIONS;O++){for(var I=f;I<L;I+=P){var N=g.getTextLocation(E,m.total,I,y),U=_(N,b,d,u);U<B&&(B=U,F=N,z=I)}if(B>h.MAXCOST*2)break;O&&(P/=2),f=z-P/2,L=f+P*1.5}if(B<=h.MAXCOST)return F};function _(E,m,b,d){var u=m.width/2,y=m.height/2,f=E.x,P=E.y,L=E.theta,z=Math.cos(L)*u,F=Math.sin(L)*u,B=(f>d.center?d.right-f:f-d.left)/(z+Math.abs(Math.sin(L)*y)),O=(P>d.middle?d.bottom-P:P-d.top)/(Math.abs(F)+Math.cos(L)*y);if(B<1||O<1)return 1/0;var I=h.EDGECOST*(1/(B-1)+1/(O-1));I+=h.ANGLECOST*L*L;for(var N=f-z,U=P-F,W=f+z,Q=P+F,ue=0;ue<b.length;ue++){var se=b[ue],he=Math.cos(se.theta)*se.width/2,G=Math.sin(se.theta)*se.width/2,$=g.segmentDistance(N,U,W,Q,se.x-he,se.y-G,se.x+he,se.y+G)*2/(m.height+se.height),J=se.level===m.level,Z=J?h.SAMELEVELDISTANCE:1;if($<=Z)return 1/0;var re=h.NEIGHBORCOST*(J?h.SAMELEVELFACTOR:1);I+=re/($-Z)}return I}X.addLabelData=function(E,m,b,d){var u=m.fontSize,y=m.width+u/3,f=Math.max(0,m.height-u/3),P=E.x,L=E.y,z=E.theta,F=Math.sin(z),B=Math.cos(z),O=function(N,U){return[P+N*B-U*F,L+N*F+U*B]},I=[O(-y/2,-f/2),O(-y/2,f/2),O(y/2,f/2),O(y/2,-f/2)];b.push({text:m.text,x:P,y:L,dy:m.dy,theta:z,level:m.level,width:y,height:f}),d.push(I)},X.drawLabels=function(E,m,b,d,u){var y=E.selectAll("text").data(m,function(z){return z.text+","+z.x+","+z.y+","+z.theta});if(y.exit().remove(),y.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each(function(z){var F=z.x+Math.sin(z.theta)*z.dy,B=z.y-Math.cos(z.theta)*z.dy;H.select(this).text(z.text).attr({x:F,y:B,transform:"rotate("+180*z.theta/Math.PI+" "+F+" "+B+")"}).call(M.convertToTspans,b)}),u){for(var f="",P=0;P<u.length;P++)f+="M"+u[P].join("L")+"Z";var L=g.ensureSingle(d,"path","");L.attr("d",f)}};function w(E,m,b,d,u){var y=d.trace,f=b._fullLayout._clips,P="clip"+y.uid,L=f.selectAll("#"+P).data(y.connectgaps?[]:[0]);if(L.enter().append("clipPath").classed("contourclip",!0).attr("id",P),L.exit().remove(),y.connectgaps===!1){var z={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:m.xaxis,yaxis:m.yaxis,x:d.x,y:d.y,z:S(d),smoothing:0};o([z]),a([z]),s([z],{type:"levels"});var F=g.ensureSingle(L,"path","");F.attr("d",(z.prefixBoundary?"M"+u.join("L")+"Z":"")+T(z,u))}else P=null;x.setClipUrl(E,P,b)}function S(E){var m=E.trace._emptypoints,b=[],d=E.z.length,u=E.z[0].length,y,f=[],P;for(y=0;y<u;y++)f.push(1);for(y=0;y<d;y++)b.push(f.slice());for(y=0;y<m.length;y++)P=m[y],b[P[0]][P[1]]=0;return E.zmask=b,b}}}),_M=Ye({"src/traces/contour/make_color_map.js"(X,H){"use strict";var g=_n(),x=Su(),A=j_();H.exports=function(e){var t=e.contours,r=t.start,o=A(t),a=t.size||1,i=Math.floor((o-r)/a)+1,n=t.coloring==="lines"?0:1,s=x.extractOpts(e);isFinite(a)||(a=1,i=1);var c=s.reversescale?x.flipScale(s.colorscale):s.colorscale,h=c.length,v=new Array(h),p=new Array(h),T,l,_=s.min,w=s.max;if(t.coloring==="heatmap"){for(l=0;l<h;l++)T=c[l],v[l]=T[0]*(w-_)+_,p[l]=T[1];var S=g.extent([_,w,t.start,t.start+a*(i-1)]),E=S[_<w?0:1],m=S[_<w?1:0];E!==_&&(v.splice(0,0,E),p.splice(0,0,p[0])),m!==w&&(v.push(m),p.push(p[p.length-1]))}else{var b=e._input&&typeof e._input.zmin=="number"&&typeof e._input.zmax=="number";for(b&&(r<=_||o>=w)&&(r<=_&&(r=_),o>=w&&(o=w),i=Math.floor((o-r)/a)+1,n=0),l=0;l<h;l++)T=c[l],v[l]=(T[0]*(i+n-1)-n/2)*a+r,p[l]=T[1];(b||e.autocontour)&&(v[0]>_&&(v.unshift(_),p.unshift(p[0])),v[v.length-1]<w&&(v.push(w),p.push(p[p.length-1])))}return x.makeColorScaleFunc({domain:v,range:p},{noNumericCheck:!0})}}}),u3=Ye({"src/traces/contour/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=e3(),M=_M();H.exports=function(t){var r=g.select(t).selectAll("g.contour");r.style("opacity",function(o){return o[0].trace.opacity}),r.each(function(o){var a=g.select(this),i=o[0].trace,n=i.contours,s=i.line,c=n.size||1,h=n.start,v=n.type==="constraint",p=!v&&n.coloring==="lines",T=!v&&n.coloring==="fill",l=p||T?M(i):null;a.selectAll("g.contourlevel").each(function(S){g.select(this).selectAll("path").call(x.lineGroupStyle,s.width,p?l(S.level):s.color,s.dash)});var _=n.labelfont;if(a.selectAll("g.contourlabels text").each(function(S){x.font(g.select(this),{weight:_.weight,style:_.style,variant:_.variant,textcase:_.textcase,lineposition:_.lineposition,shadow:_.shadow,family:_.family,size:_.size,color:_.color||(p?l(S.level):s.color)})}),v)a.selectAll("g.contourfill path").style("fill",i.fillcolor);else if(T){var w;a.selectAll("g.contourfill path").style("fill",function(S){return w===void 0&&(w=S.level),l(S.level+.5*c)}),w===void 0&&(w=h),a.selectAll("g.contourbg path").style("fill",l(w-.5*c))}}),A(t)}}}),c3=Ye({"src/traces/contour/colorbar.js"(X,H){"use strict";var g=Su(),x=_M(),A=j_();function M(e,t,r){var o=t.contours,a=t.line,i=o.size||1,n=o.coloring,s=x(t,{isColorbar:!0});if(n==="heatmap"){var c=g.extractOpts(t);r._fillgradient=c.reversescale?g.flipScale(c.colorscale):c.colorscale,r._zrange=[c.min,c.max]}else n==="fill"&&(r._fillcolor=s);r._line={color:n==="lines"?s:a.color,width:o.showlines!==!1?a.width:0,dash:a.dash},r._levels={start:o.start,end:A(o),size:i}}H.exports={min:"zmin",max:"zmax",calc:M}}}),xM=Ye({"src/traces/contour/hover.js"(X,H){"use strict";var g=Fn(),x=t3();H.exports=function(M,e,t,r,o){o||(o={}),o.isContour=!0;var a=x(M,e,t,r,o);return a&&a.forEach(function(i){var n=i.trace;n.contours.type==="constraint"&&(n.fillcolor&&g.opacity(n.fillcolor)?i.color=g.addOpacity(n.fillcolor,1):n.contours.showlines&&g.opacity(n.line.color)&&(i.color=g.addOpacity(n.line.color,1)))}),a}}}),h7=Ye({"src/traces/histogram2dcontour/index.js"(X,H){"use strict";H.exports={attributes:cM(),supplyDefaults:c7(),crossTraceDefaults:a3(),calc:pM(),plot:l3().plot,layerName:"contourlayer",style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}}}),p7=Ye({"lib/histogram2dcontour.js"(X,H){"use strict";H.exports=h7()}}),bM=Ye({"src/traces/contour/constraint_defaults.js"(X,H){"use strict";var g=jo(),x=fM(),A=Fn(),M=A.addOpacity,e=A.opacity,t=n3(),r=ta().isArrayOrTypedArray,o=t.CONSTRAINT_REDUCTION,a=t.COMPARISON_OPS2;H.exports=function(s,c,h,v,p,T){var l=c.contours,_,w,S,E=h("contours.operation");if(l._operation=o[E],i(h,l),E==="="?_=l.showlines=!0:(_=h("contours.showlines"),S=h("fillcolor",M((s.line||{}).color||p,.5))),_){var m=S&&e(S)?M(c.fillcolor,1):p;w=h("line.color",m),h("line.width",2),h("line.dash")}h("line.smoothing"),x(h,v,w,T)};function i(n,s){var c;a.indexOf(s.operation)===-1?(n("contours.value",[0,1]),r(s.value)?s.value.length>2?s.value=s.value.slice(2):s.length===0?s.value=[0,1]:s.length<2?(c=parseFloat(s.value[0]),s.value=[c,c+1]):s.value=[parseFloat(s.value[0]),parseFloat(s.value[1])]:g(s.value)&&(c=parseFloat(s.value),s.value=[c,c+1])):(n("contours.value",0),g(s.value)||(r(s.value)?s.value=parseFloat(s.value[0]):s.value=0))}}}),d7=Ye({"src/traces/contour/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Qd(),M=bM(),e=o3(),t=s3(),r=N_(),o=U_();H.exports=function(i,n,s,c){function h(l,_){return g.coerce(i,n,o,l,_)}function v(l){return g.coerce2(i,n,o,l)}var p=x(i,n,h,c);if(!p){n.visible=!1;return}A(i,n,c,h),h("xhoverformat"),h("yhoverformat"),h("text"),h("hovertext"),h("hoverongaps"),h("hovertemplate");var T=h("contours.type")==="constraint";h("connectgaps",g.isArray1D(n.z)),T?M(i,n,h,c,s):(e(i,n,h,v),t(i,n,h,c)),n.contours&&n.contours.coloring==="heatmap"&&r(h,c),h("zorder")}}}),v7=Ye({"src/traces/contour/index.js"(X,H){"use strict";H.exports={attributes:U_(),supplyDefaults:d7(),calc:pM(),plot:l3().plot,style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"contour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}}}),m7=Ye({"lib/contour.js"(X,H){"use strict";H.exports=v7()}}),wM=Ye({"src/traces/scatterternary/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=M.marker,i=M.line,n=a.line;H.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:o({},M.hovertext,{}),line:{color:i.color,width:i.width,dash:r,backoff:i.backoff,shape:o({},i.shape,{values:["linear","spline"]}),smoothing:i.smoothing,editType:"calc"},connectgaps:M.connectgaps,cliponaxis:M.cliponaxis,fill:o({},M.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:A(),marker:o({symbol:a.symbol,opacity:a.opacity,angle:a.angle,angleref:a.angleref,standoff:a.standoff,maxdisplayed:a.maxdisplayed,size:a.size,sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,line:o({width:n.width,editType:"calc"},t("marker.line")),gradient:a.gradient,editType:"calc"},t("marker")),textfont:M.textfont,textposition:M.textposition,selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:M.hoveron,hovertemplate:g()}}}),g7=Ye({"src/traces/scatterternary/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=wM();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}var p=v("a"),T=v("b"),l=v("c"),_;if(p?(_=p.length,T?(_=Math.min(_,T.length),l&&(_=Math.min(_,l.length))):l?_=Math.min(_,l.length):_=0):T&&l&&(_=Math.min(T.length,l.length)),!_){s.visible=!1;return}s._length=_,v("sum"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate");var w=_<x.PTS_LINESONLY?"lines+markers":"lines";v("mode",w),A.hasMarkers(s)&&M(n,s,c,h,v,{gradient:!0}),A.hasLines(s)&&(e(n,s,c,h,v,{backoff:!0}),t(n,s,v),v("connectgaps")),A.hasText(s)&&(v("texttemplate"),r(n,s,h,v));var S=[];(A.hasMarkers(s)||A.hasText(s))&&(v("cliponaxis"),v("marker.maxdisplayed"),S.push("points")),v("fill"),s.fill!=="none"&&(o(n,s,c,v),A.hasLines(s)||t(n,s,v)),(s.fill==="tonext"||s.fill==="toself")&&S.push("fills"),v("hoveron",S.join("+")||"points"),g.coerceSelectionMarkerOpacity(s,v)}}}),y7=Ye({"src/traces/scatterternary/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot;return t.aLabel=g.tickText(r.aaxis,A.a,!0).text,t.bLabel=g.tickText(r.baxis,A.b,!0).text,t.cLabel=g.tickText(r.caxis,A.c,!0).text,t}}}),_7=Ye({"src/traces/scatterternary/calc.js"(X,H){"use strict";var g=jo(),x=Fd(),A=Av(),M=Od(),e=Bd().calcMarkerSize,t=["a","b","c"],r={a:["b","c"],b:["a","c"],c:["a","b"]};H.exports=function(a,i){var n=a._fullLayout[i.subplot],s=n.sum,c=i.sum||s,h={a:i.a,b:i.b,c:i.c},v=i.ids,p,T,l,_,w,S;for(p=0;p<t.length;p++)if(l=t[p],!h[l]){for(w=h[r[l][0]],S=h[r[l][1]],_=new Array(w.length),T=0;T<w.length;T++)_[T]=c-w[T]-S[T];h[l]=_}var E=i._length,m=new Array(E),b,d,u,y,f,P;for(p=0;p<E;p++)b=h.a[p],d=h.b[p],u=h.c[p],g(b)&&g(d)&&g(u)?(b=+b,d=+d,u=+u,y=s/(b+d+u),y!==1&&(b*=y,d*=y,u*=y),P=b,f=u-d,m[p]={x:f,y:P,a:b,b:d,c:u},v&&(m[p].id=v[p])):m[p]={x:!1,y:!1};return e(i,E),x(a,i),A(m,i),M(m,i),m}}}),x7=Ye({"src/traces/scatterternary/plot.js"(X,H){"use strict";var g=o1();H.exports=function(A,M,e){var t=M.plotContainer;t.select(".scatterlayer").selectAll("*").remove();for(var r=M.xaxis,o=M.yaxis,a={xaxis:r,yaxis:o,plot:t,layerClipId:M._hasClipOnAxisFalse?M.clipIdRelative:null},i=M.layers.frontplot.select("g.scatterlayer"),n=0;n<e.length;n++){var s=e[n];s.length&&(s[0].trace._xA=r,s[0].trace._yA=o)}g(A,a,e,i)}}}),b7=Ye({"src/traces/scatterternary/hover.js"(X,H){"use strict";var g=l1();H.exports=function(A,M,e,t){var r=g(A,M,e,t);if(!r||r[0].index===!1)return;var o=r[0];if(o.index===void 0){var a=1-o.y0/A.ya._length,i=A.xa._length,n=i*a/2,s=i-n;return o.x0=Math.max(Math.min(o.x0,s),n),o.x1=Math.max(Math.min(o.x1,s),n),r}var c=o.cd[o.index],h=o.trace,v=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[h.subplot]={_subplot:v};var T=h._module.formatLabels(c,h,p);o.aLabel=T.aLabel,o.bLabel=T.bLabel,o.cLabel=T.cLabel;var l=c.hi||h.hoverinfo,_=[];function w(E,m){_.push(E._hovertitle+": "+m)}if(!h.hovertemplate){var S=l.split("+");S.indexOf("all")!==-1&&(S=["a","b","c"]),S.indexOf("a")!==-1&&w(v.aaxis,o.aLabel),S.indexOf("b")!==-1&&w(v.baxis,o.bLabel),S.indexOf("c")!==-1&&w(v.caxis,o.cLabel)}return o.extraText=_.join("<br>"),o.hovertemplate=h.hovertemplate,r}}}),w7=Ye({"src/traces/scatterternary/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),e[t]){var r=e[t];x.a=r.a,x.b=r.b,x.c=r.c}else x.a=A.a,x.b=A.b,x.c=A.c;return x}}}),T7=Ye({"src/plots/ternary/ternary.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strTranslate,t=M._,r=Fn(),o=Bo(),a=wv(),i=Oo().extendFlat,n=Gu(),s=Co(),c=bp(),h=Lc(),v=Jd(),p=v.freeMode,T=v.rectMode,l=Xg(),_=ff().prepSelect,w=ff().selectOnClick,S=ff().clearOutline,E=ff().clearSelectionsCache,m=wh();function b(I,N){this.id=I.id,this.graphDiv=I.graphDiv,this.init(N),this.makeFramework(N),this.updateFx(N),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}H.exports=b;var d=b.prototype;d.init=function(I){this.container=I._ternarylayer,this.defs=I._defs,this.layoutId=I._uid,this.traceHash={},this.layers={}},d.plot=function(I,N){var U=this,W=N[U.id],Q=N._size;U._hasClipOnAxisFalse=!1;for(var ue=0;ue<I.length;ue++){var se=I[ue][0].trace;if(se.cliponaxis===!1){U._hasClipOnAxisFalse=!0;break}}U.updateLayers(W),U.adjustLayout(W,Q),n.generalUpdatePerTraceModule(U.graphDiv,U,I,W),U.layers.plotbg.select("path").call(r.fill,W.bgcolor)},d.makeFramework=function(I){var N=this,U=N.graphDiv,W=I[N.id],Q=N.clipId="clip"+N.layoutId+N.id,ue=N.clipIdRelative="clip-relative"+N.layoutId+N.id;N.clipDef=M.ensureSingleById(I._clips,"clipPath",Q,function(se){se.append("path").attr("d","M0,0Z")}),N.clipDefRelative=M.ensureSingleById(I._clips,"clipPath",ue,function(se){se.append("path").attr("d","M0,0Z")}),N.plotContainer=M.ensureSingle(N.container,"g",N.id),N.updateLayers(W),o.setClipUrl(N.layers.backplot,Q,U),o.setClipUrl(N.layers.grids,Q,U)},d.updateFx=function(I){I._ternarylayer.selectAll("g.toplevel").style("cursor",I.dragmode==="pan"?"move":"crosshair")},d.updateLayers=function(I){var N=this,U=N.layers,W=["draglayer","plotbg","backplot","grids"];I.aaxis.layer==="below traces"&&W.push("aaxis","aline"),I.baxis.layer==="below traces"&&W.push("baxis","bline"),I.caxis.layer==="below traces"&&W.push("caxis","cline"),W.push("frontplot"),I.aaxis.layer==="above traces"&&W.push("aaxis","aline"),I.baxis.layer==="above traces"&&W.push("baxis","bline"),I.caxis.layer==="above traces"&&W.push("caxis","cline");var Q=N.plotContainer.selectAll("g.toplevel").data(W,String),ue=["agrid","bgrid","cgrid"];Q.enter().append("g").attr("class",function(se){return"toplevel "+se}).each(function(se){var he=g.select(this);U[se]=he,se==="frontplot"?he.append("g").classed("scatterlayer",!0):se==="backplot"?he.append("g").classed("maplayer",!0):se==="plotbg"?he.append("path").attr("d","M0,0Z"):se==="aline"||se==="bline"||se==="cline"?he.append("path"):se==="grids"&&ue.forEach(function(G){U[G]=he.append("g").classed("grid "+G,!0)})}),Q.order()};var u=Math.sqrt(4/3);d.adjustLayout=function(I,N){var U=this,W=I.domain,Q=(W.x[0]+W.x[1])/2,ue=(W.y[0]+W.y[1])/2,se=W.x[1]-W.x[0],he=W.y[1]-W.y[0],G=se*N.w,$=he*N.h,J=I.sum,Z=I.aaxis.min,re=I.baxis.min,ne=I.caxis.min,j,ee,ie,fe,be,Ae;G>u*$?(fe=$,ie=fe*u):(ie=G,fe=ie/u),be=se*ie/G,Ae=he*fe/$,j=N.l+N.w*Q-ie/2,ee=N.t+N.h*(1-ue)-fe/2,U.x0=j,U.y0=ee,U.w=ie,U.h=fe,U.sum=J,U.xaxis={type:"linear",range:[Z+2*ne-J,J-Z-2*re],domain:[Q-be/2,Q+be/2],_id:"x"},a(U.xaxis,U.graphDiv._fullLayout),U.xaxis.setScale(),U.xaxis.isPtWithinRange=function(ze){return ze.a>=U.aaxis.range[0]&&ze.a<=U.aaxis.range[1]&&ze.b>=U.baxis.range[1]&&ze.b<=U.baxis.range[0]&&ze.c>=U.caxis.range[1]&&ze.c<=U.caxis.range[0]},U.yaxis={type:"linear",range:[Z,J-re-ne],domain:[ue-Ae/2,ue+Ae/2],_id:"y"},a(U.yaxis,U.graphDiv._fullLayout),U.yaxis.setScale(),U.yaxis.isPtWithinRange=function(){return!0};var Be=U.yaxis.domain[0],Ie=U.aaxis=i({},I.aaxis,{range:[Z,J-re-ne],side:"left",tickangle:(+I.aaxis.tickangle||0)-30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(Ie,U.graphDiv._fullLayout),Ie.setScale();var Ze=U.baxis=i({},I.baxis,{range:[J-Z-ne,re],side:"bottom",domain:U.xaxis.domain,anchor:"free",position:0,_id:"x",_length:ie});a(Ze,U.graphDiv._fullLayout),Ze.setScale();var at=U.caxis=i({},I.caxis,{range:[J-Z-re,ne],side:"right",tickangle:(+I.caxis.tickangle||0)+30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(at,U.graphDiv._fullLayout),at.setScale();var it="M"+j+","+(ee+fe)+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDef.select("path").attr("d",it),U.layers.plotbg.select("path").attr("d",it);var et="M0,"+fe+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDefRelative.select("path").attr("d",et);var lt=e(j,ee);U.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",lt),U.clipDefRelative.select("path").attr("transform",null);var Me=e(j-Ze._offset,ee+fe);U.layers.baxis.attr("transform",Me),U.layers.bgrid.attr("transform",Me);var ge=e(j+ie/2,ee)+"rotate(30)"+e(0,-Ie._offset);U.layers.aaxis.attr("transform",ge),U.layers.agrid.attr("transform",ge);var ce=e(j+ie/2,ee)+"rotate(-30)"+e(0,-at._offset);U.layers.caxis.attr("transform",ce),U.layers.cgrid.attr("transform",ce),U.drawAxes(!0),U.layers.aline.select("path").attr("d",Ie.showline?"M"+j+","+(ee+fe)+"l"+ie/2+",-"+fe:"M0,0").call(r.stroke,Ie.linecolor||"#000").style("stroke-width",(Ie.linewidth||0)+"px"),U.layers.bline.select("path").attr("d",Ze.showline?"M"+j+","+(ee+fe)+"h"+ie:"M0,0").call(r.stroke,Ze.linecolor||"#000").style("stroke-width",(Ze.linewidth||0)+"px"),U.layers.cline.select("path").attr("d",at.showline?"M"+(j+ie/2)+","+ee+"l"+ie/2+","+fe:"M0,0").call(r.stroke,at.linecolor||"#000").style("stroke-width",(at.linewidth||0)+"px"),U.graphDiv._context.staticPlot||U.initInteractions(),o.setClipUrl(U.layers.frontplot,U._hasClipOnAxisFalse?null:U.clipId,U.graphDiv)},d.drawAxes=function(I){var N=this,U=N.graphDiv,W=N.id.substr(7)+"title",Q=N.layers,ue=N.aaxis,se=N.baxis,he=N.caxis;if(N.drawAx(ue),N.drawAx(se),N.drawAx(he),I){var G=Math.max(ue.showticklabels?ue.tickfont.size/2:0,(he.showticklabels?he.tickfont.size*.75:0)+(he.ticks==="outside"?he.ticklen*.87:0)),$=(se.showticklabels?se.tickfont.size:0)+(se.ticks==="outside"?se.ticklen:0)+3;Q["a-title"]=l.draw(U,"a"+W,{propContainer:ue,propName:N.id+".aaxis.title",placeholder:t(U,"Click to enter Component A title"),attributes:{x:N.x0+N.w/2,y:N.y0-ue.title.font.size/3-G,"text-anchor":"middle"}}),Q["b-title"]=l.draw(U,"b"+W,{propContainer:se,propName:N.id+".baxis.title",placeholder:t(U,"Click to enter Component B title"),attributes:{x:N.x0-$,y:N.y0+N.h+se.title.font.size*.83+$,"text-anchor":"middle"}}),Q["c-title"]=l.draw(U,"c"+W,{propContainer:he,propName:N.id+".caxis.title",placeholder:t(U,"Click to enter Component C title"),attributes:{x:N.x0+N.w+$,y:N.y0+N.h+he.title.font.size*.83+$,"text-anchor":"middle"}})}},d.drawAx=function(I){var N=this,U=N.graphDiv,W=I._name,Q=W.charAt(0),ue=I._id,se=N.layers[W],he=30,G=Q+"tickLayout",$=y(I);N[G]!==$&&(se.selectAll("."+ue+"tick").remove(),N[G]=$),I.setScale();var J=s.calcTicks(I),Z=s.clipEnds(I,J),re=s.makeTransTickFn(I),ne=s.getTickSigns(I)[2],j=M.deg2rad(he),ee=ne*(I.linewidth||1)/2,ie=ne*I.ticklen,fe=N.w,be=N.h,Ae=Q==="b"?"M0,"+ee+"l"+Math.sin(j)*ie+","+Math.cos(j)*ie:"M"+ee+",0l"+Math.cos(j)*ie+","+-Math.sin(j)*ie,Be={a:"M0,0l"+be+",-"+fe/2,b:"M0,0l-"+fe/2+",-"+be,c:"M0,0l-"+be+","+fe/2}[Q];s.drawTicks(U,I,{vals:I.ticks==="inside"?Z:J,layer:se,path:Ae,transFn:re,crisp:!1}),s.drawGrid(U,I,{vals:Z,layer:N.layers[Q+"grid"],path:Be,transFn:re,crisp:!1}),s.drawLabels(U,I,{vals:J,layer:se,transFn:re,labelFns:s.makeLabelFns(I,0,he)})};function y(I){return I.ticks+String(I.ticklen)+String(I.showticklabels)}var f=m.MINZOOM/2+.87,P="m-0.87,.5h"+f+"v3h-"+(f+5.2)+"l"+(f/2+2.6)+",-"+(f*.87+4.5)+"l2.6,1.5l-"+f/2+","+f*.87+"Z",L="m0.87,.5h-"+f+"v3h"+(f+5.2)+"l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-2.6,1.5l"+f/2+","+f*.87+"Z",z="m0,1l"+f/2+","+f*.87+"l2.6,-1.5l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-"+(f/2+2.6)+","+(f*.87+4.5)+"l2.6,1.5l"+f/2+",-"+f*.87+"Z",F="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",B=!0;d.clearOutline=function(){E(this.dragOptions),S(this.dragOptions.gd)},d.initInteractions=function(){var I=this,N=I.layers.plotbg.select("path").node(),U=I.graphDiv,W=U._fullLayout._zoomlayer,Q,ue;this.dragOptions={element:N,gd:U,plotinfo:{id:I.id,domain:U._fullLayout[I.id].domain,xaxis:I.xaxis,yaxis:I.yaxis},subplot:I.id,prepFn:function(Me,ge,ce){I.dragOptions.xaxes=[I.xaxis],I.dragOptions.yaxes=[I.yaxis],Q=U._fullLayout._invScaleX,ue=U._fullLayout._invScaleY;var ze=I.dragOptions.dragmode=U._fullLayout.dragmode;p(ze)?I.dragOptions.minDrag=1:I.dragOptions.minDrag=void 0,ze==="zoom"?(I.dragOptions.moveFn=Ze,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=at,be(Me,ge,ce)):ze==="pan"?(I.dragOptions.moveFn=et,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=lt,it(),I.clearOutline(U)):(T(ze)||p(ze))&&_(Me,ge,ce,I.dragOptions,ze)}};var se,he,G,$,J,Z,re,ne,j,ee;function ie(Me){var ge={};return ge[I.id+".aaxis.min"]=Me.a,ge[I.id+".baxis.min"]=Me.b,ge[I.id+".caxis.min"]=Me.c,ge}function fe(Me,ge){var ce=U._fullLayout.clickmode;O(U),Me===2&&(U.emit("plotly_doubleclick",null),A.call("_guiRelayout",U,ie({a:0,b:0,c:0}))),ce.indexOf("select")>-1&&Me===1&&w(ge,U,[I.xaxis],[I.yaxis],I.id,I.dragOptions),ce.indexOf("event")>-1&&h.click(U,ge,I.id)}function be(Me,ge,ce){var ze=N.getBoundingClientRect();se=ge-ze.left,he=ce-ze.top,U._fullLayout._calcInverseTransform(U);var tt=U._fullLayout._invTransform,nt=M.apply3DTransform(tt)(se,he);se=nt[0],he=nt[1],G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G,$=I.aaxis.range[1]-G.a,Z=x(I.graphDiv._fullLayout[I.id].bgcolor).getLuminance(),re="M0,"+I.h+"L"+I.w/2+", 0L"+I.w+","+I.h+"Z",ne=!1,j=W.append("path").attr("class","zoombox").attr("transform",e(I.x0,I.y0)).style({fill:Z>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",re),ee=W.append("path").attr("class","zoombox-corners").attr("transform",e(I.x0,I.y0)).style({fill:r.background,stroke:r.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),I.clearOutline(U)}function Ae(Me,ge){return 1-ge/I.h}function Be(Me,ge){return 1-(Me+(I.h-ge)/Math.sqrt(3))/I.w}function Ie(Me,ge){return(Me-(I.h-ge)/Math.sqrt(3))/I.w}function Ze(Me,ge){var ce=se+Me*Q,ze=he+ge*ue,tt=Math.max(0,Math.min(1,Ae(se,he),Ae(ce,ze))),nt=Math.max(0,Math.min(1,Be(se,he),Be(ce,ze))),Qe=Math.max(0,Math.min(1,Ie(se,he),Ie(ce,ze))),Ct=(tt/2+Qe)*I.w,St=(1-tt/2-nt)*I.w,Ot=(Ct+St)/2,jt=St-Ct,ur=(1-tt)*I.h,ar=ur-jt/u;jt<m.MINZOOM?(J=G,j.attr("d",re),ee.attr("d","M0,0Z")):(J={a:G.a+tt*$,b:G.b+nt*$,c:G.c+Qe*$},j.attr("d",re+"M"+Ct+","+ur+"H"+St+"L"+Ot+","+ar+"L"+Ct+","+ur+"Z"),ee.attr("d","M"+se+","+he+F+"M"+Ct+","+ur+P+"M"+St+","+ur+L+"M"+Ot+","+ar+z)),ne||(j.transition().style("fill",Z>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),ee.transition().style("opacity",1).duration(200),ne=!0),U.emit("plotly_relayouting",ie(J))}function at(){O(U),J!==G&&(A.call("_guiRelayout",U,ie(J)),B&&U.data&&U._context.showTips&&(M.notifier(t(U,"Double-click to zoom back out"),"long"),B=!1))}function it(){G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G}function et(Me,ge){var ce=Me/I.xaxis._m,ze=ge/I.yaxis._m;J={a:G.a-ze,b:G.b+(ce+ze)/2,c:G.c-(ce-ze)/2};var tt=[J.a,J.b,J.c].sort(M.sorterAsc),nt={a:tt.indexOf(J.a),b:tt.indexOf(J.b),c:tt.indexOf(J.c)};tt[0]<0&&(tt[1]+tt[0]/2<0?(tt[2]+=tt[0]+tt[1],tt[0]=tt[1]=0):(tt[2]+=tt[0]/2,tt[1]+=tt[0]/2,tt[0]=0),J={a:tt[nt.a],b:tt[nt.b],c:tt[nt.c]},ge=(G.a-J.a)*I.yaxis._m,Me=(G.c-J.c-G.b+J.b)*I.xaxis._m);var Qe=e(I.x0+Me,I.y0+ge);I.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",Qe);var Ct=e(-Me,-ge);I.clipDefRelative.select("path").attr("transform",Ct),I.aaxis.range=[J.a,I.sum-J.b-J.c],I.baxis.range=[I.sum-J.a-J.c,J.b],I.caxis.range=[I.sum-J.a-J.b,J.c],I.drawAxes(!1),I._hasClipOnAxisFalse&&I.plotContainer.select(".scatterlayer").selectAll(".trace").call(o.hideOutsideRangePoints,I),U.emit("plotly_relayouting",ie(J))}function lt(){A.call("_guiRelayout",U,ie(J))}N.onmousemove=function(Me){h.hover(U,Me,I.id),U._fullLayout._lasthover=N,U._fullLayout._hoversubplot=I.id},N.onmouseout=function(Me){U._dragging||c.unhover(U,Me)},c.init(this.dragOptions)};function O(I){g.select(I).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}}}),TM=Ye({"src/plots/ternary/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Vh(),M=Ou().overrideAll,e=Oo().extendFlat,t={title:{text:A.title.text,font:A.title.font},color:A.color,tickmode:A.minor.tickmode,nticks:e({},A.nticks,{dflt:6,min:1}),tick0:A.tick0,dtick:A.dtick,tickvals:A.tickvals,ticktext:A.ticktext,ticks:A.ticks,ticklen:A.ticklen,tickwidth:A.tickwidth,tickcolor:A.tickcolor,ticklabelstep:A.ticklabelstep,showticklabels:A.showticklabels,labelalias:A.labelalias,showtickprefix:A.showtickprefix,tickprefix:A.tickprefix,showticksuffix:A.showticksuffix,ticksuffix:A.ticksuffix,showexponent:A.showexponent,exponentformat:A.exponentformat,minexponent:A.minexponent,separatethousands:A.separatethousands,tickfont:A.tickfont,tickangle:A.tickangle,tickformat:A.tickformat,tickformatstops:A.tickformatstops,hoverformat:A.hoverformat,showline:e({},A.showline,{dflt:!0}),linecolor:A.linecolor,linewidth:A.linewidth,showgrid:e({},A.showgrid,{dflt:!0}),gridcolor:A.gridcolor,gridwidth:A.gridwidth,griddash:A.griddash,layer:A.layer,min:{valType:"number",dflt:0,min:0}},r=H.exports=M({domain:x({name:"ternary"}),bgcolor:{valType:"color",dflt:g.background},sum:{valType:"number",dflt:1,min:0},aaxis:t,baxis:t,caxis:t},"plot","from-root");r.uirevision={valType:"any",editType:"none"},r.aaxis.uirevision=r.baxis.uirevision=r.caxis.uirevision={valType:"any",editType:"none"}}}),ig=Ye({"src/plots/subplot_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Wu().defaults;H.exports=function(e,t,r,o){var a=o.type,i=o.attributes,n=o.handleDefaults,s=o.partition||"x",c=t._subplots[a],h=c.length,v=h&&c[0].replace(/\d+$/,""),p,T;function l(E,m){return g.coerce(p,T,i,E,m)}for(var _=0;_<h;_++){var w=c[_];e[w]?p=e[w]:p=e[w]={},T=x.newContainer(t,w,v),o.noUirevision||l("uirevision",t.uirevision);var S={};S[s]=[_/h,(_+1)/h],A(T,t,l,S),o.id=w,n(p,T,l,o)}}}}),A7=Ye({"src/plots/ternary/layout_defaults.js"(X,H){"use strict";var g=Fn(),x=cl(),A=ta(),M=ig(),e=$m(),t=Qm(),r=e1(),o=Zg(),a=I_(),i=TM(),n=["aaxis","baxis","caxis"];H.exports=function(v,p,T){M(v,p,T,{type:"ternary",attributes:i,handleDefaults:s,font:p.font,paper_bgcolor:p.paper_bgcolor})};function s(h,v,p,T){var l=p("bgcolor"),_=p("sum");T.bgColor=g.combine(l,T.paper_bgcolor);for(var w,S,E,m=0;m<n.length;m++)w=n[m],S=h[w]||{},E=x.newContainer(v,w),E._name=w,c(S,E,T,v);var b=v.aaxis,d=v.baxis,u=v.caxis;b.min+d.min+u.min>=_&&(b.min=0,d.min=0,u.min=0,h.aaxis&&delete h.aaxis.min,h.baxis&&delete h.baxis.min,h.caxis&&delete h.caxis.min)}function c(h,v,p,T){var l=i[v._name];function _(y,f){return A.coerce(h,v,l,y,f)}_("uirevision",T.uirevision),v.type="linear";var w=_("color"),S=w!==l.color.dflt?w:p.font.color,E=v._name,m=E.charAt(0).toUpperCase(),b="Component "+m,d=_("title.text",b);v._hovertitle=d===b?d:m,A.coerceFont(_,"title.font",p.font,{overrideDflt:{size:A.bigFont(p.font.size),color:S}}),_("min"),o(h,v,_,"linear"),t(h,v,_,"linear"),e(h,v,_,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),r(h,v,_,{outerTicks:!0});var u=_("showticklabels");u&&(A.coerceFont(_,"tickfont",p.font,{overrideDflt:{color:S}}),_("tickangle"),_("tickformat")),a(h,v,_,{dfltColor:w,bgColor:p.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:l}),_("hoverformat"),_("layer")}}}),S7=Ye({"src/plots/ternary/index.js"(X){"use strict";var H=T7(),g=jh().getSubplotCalcData,x=ta().counterRegex,A="ternary";X.name=A;var M=X.attr="subplot";X.idRoot=A,X.idRegex=X.attrRegex=x(A);var e=X.attributes={};e[M]={valType:"subplotid",dflt:"ternary",editType:"calc"},X.layoutAttributes=TM(),X.supplyLayoutDefaults=A7(),X.plot=function(r){for(var o=r._fullLayout,a=r.calcdata,i=o._subplots[A],n=0;n<i.length;n++){var s=i[n],c=g(a,A,s),h=o[s]._subplot;h||(h=new H({id:s,graphDiv:r,container:o._ternarylayer.node()},o),o[s]._subplot=h),h.plot(c,o,r._promises)}},X.clean=function(t,r,o,a){for(var i=a._subplots[A]||[],n=0;n<i.length;n++){var s=i[n],c=a[s]._subplot;!r[s]&&c&&(c.plotContainer.remove(),c.clipDef.remove(),c.clipDefRelative.remove(),c.layers["a-title"].remove(),c.layers["b-title"].remove(),c.layers["c-title"].remove())}},X.updateFx=function(t){var r=t._fullLayout;r._ternarylayer.selectAll("g.toplevel").style("cursor",r.dragmode==="pan"?"move":"crosshair")}}}),M7=Ye({"src/traces/scatterternary/index.js"(X,H){"use strict";H.exports={attributes:wM(),supplyDefaults:g7(),colorbar:cp(),formatLabels:y7(),calc:_7(),plot:x7(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:b7(),selectPoints:u1(),eventData:w7(),moduleType:"trace",name:"scatterternary",basePlotModule:S7(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}}}),E7=Ye({"lib/scatterternary.js"(X,H){"use strict";H.exports=M7()}}),AM=Ye({"src/traces/violin/attributes.js"(X,H){"use strict";var g=F_(),x=Oo().extendFlat,A=Cc().axisHoverFormat;H.exports={y:g.y,x:g.x,x0:g.x0,y0:g.y0,xhoverformat:A("x"),yhoverformat:A("y"),name:x({},g.name,{}),orientation:x({},g.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:g.fillcolor,points:x({},g.boxpoints,{}),jitter:x({},g.jitter,{}),pointpos:x({},g.pointpos,{}),width:x({},g.width,{}),marker:g.marker,text:g.text,hovertext:g.hovertext,hovertemplate:g.hovertemplate,quartilemethod:g.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:g.selected,unselected:g.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:g.zorder}}}),SM=Ye({"src/traces/violin/layout_attributes.js"(X,H){"use strict";var g=O_(),x=ta().extendFlat;H.exports={violinmode:x({},g.boxmode,{}),violingap:x({},g.boxgap,{}),violingroupgap:x({},g.boxgroupgap,{})}}}),k7=Ye({"src/traces/violin/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=B_(),M=AM();H.exports=function(t,r,o,a){function i(u,y){return g.coerce(t,r,M,u,y)}function n(u,y){return g.coerce2(t,r,M,u,y)}if(A.handleSampleDefaults(t,r,i,a),r.visible!==!1){i("bandwidth"),i("side");var s=i("width");s||(i("scalegroup",r.name),i("scalemode"));var c=i("span"),h;Array.isArray(c)&&(h="manual"),i("spanmode",h);var v=i("line.color",(t.marker||{}).color||o),p=i("line.width"),T=i("fillcolor",x.addOpacity(r.line.color,.5));A.handlePointsDefaults(t,r,i,{prefix:""});var l=n("box.width"),_=n("box.fillcolor",T),w=n("box.line.color",v),S=n("box.line.width",p),E=i("box.visible",!!(l||_||w||S));E||(r.box={visible:!1});var m=n("meanline.color",v),b=n("meanline.width",p),d=i("meanline.visible",!!(m||b));d||(r.meanline={visible:!1}),i("quartilemethod"),i("zorder")}}}}),C7=Ye({"src/traces/violin/layout_defaults.js"(X,H){"use strict";var g=ta(),x=SM(),A=V2();H.exports=function(e,t,r){function o(a,i){return g.coerce(e,t,x,a,i)}A._supply(e,t,r,o,"violin")}}}),f3=Ye({"src/traces/violin/helpers.js"(X){"use strict";var H=ta(),g={gaussian:function(x){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*x*x)}};X.makeKDE=function(x,A,M){var e=M.length,t=g.gaussian,r=x.bandwidth,o=1/(e*r);return function(a){for(var i=0,n=0;n<e;n++)i+=t((a-M[n])/r);return o*i}},X.getPositionOnKdePath=function(x,A,M){var e,t;A.orientation==="h"?(e="y",t="x"):(e="x",t="y");var r=H.findPointOnPath(x.path,M,t,{pathLength:x.pathLength}),o=x.posCenterPx,a=r[e],i=A.side==="both"?2*o-a:o;return[a,i]},X.getKdeValue=function(x,A,M){var e=x.pts.map(X.extractVal),t=X.makeKDE(x,A,e);return t(M)/x.posDensityScale},X.extractVal=function(x){return x.v}}}),L7=Ye({"src/traces/violin/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=KS(),M=f3(),e=ks().BADNUM;H.exports=function(i,n){var s=A(i,n);if(s[0].t.empty)return s;for(var c=i._fullLayout,h=x.getFromId(i,n[n.orientation==="h"?"xaxis":"yaxis"]),v=1/0,p=-1/0,T=0,l=0,_=0;_<s.length;_++){var w=s[_],S=w.pts.map(M.extractVal),E=w.bandwidth=r(n,w,S),m=w.span=o(n,w,h,E);if(w.min===w.max&&E===0)m=w.span=[w.min,w.max],w.density=[{v:1,t:m[0]}],w.bandwidth=E,T=Math.max(T,1);else{var b=m[1]-m[0],d=Math.ceil(b/(E/3)),u=b/d;if(!isFinite(u)||!isFinite(d))return g.error("Something went wrong with computing the violin span"),s[0].t.empty=!0,s;var y=M.makeKDE(w,n,S);w.density=new Array(d);for(var f=0,P=m[0];P<m[1]+u/2;f++,P+=u){var L=y(P);w.density[f]={v:L,t:P},T=Math.max(T,L)}}l=Math.max(l,S.length),v=Math.min(v,m[0]),p=Math.max(p,m[1])}var z=x.findExtremes(h,[v,p],{padded:!0});if(n._extremes[h._id]=z,n.width)s[0].t.maxKDE=T;else{var F=c._violinScaleGroupStats,B=n.scalegroup,O=F[B];O?(O.maxKDE=Math.max(O.maxKDE,T),O.maxCount=Math.max(O.maxCount,l)):F[B]={maxKDE:T,maxCount:l}}return s[0].t.labels.kde=g._(i,"kde:"),s};function t(a,i,n){var s=Math.min(i,n/1.349);return 1.059*s*Math.pow(a,-.2)}function r(a,i,n){var s=i.max-i.min;if(!s)return a.bandwidth?a.bandwidth:0;if(a.bandwidth)return Math.max(a.bandwidth,s/1e4);var c=n.length,h=g.stdev(n,c-1,i.mean);return Math.max(t(c,h,i.q3-i.q1),s/100)}function o(a,i,n,s){var c=a.spanmode,h=a.span||[],v=[i.min,i.max],p=[i.min-2*s,i.max+2*s],T;function l(w){var S=h[w],E=n.type==="multicategory"?n.r2c(S):n.d2c(S,0,a[i.valLetter+"calendar"]);return E===e?p[w]:E}c==="soft"?T=p:c==="hard"?T=v:T=[l(0),l(1)];var _={type:"linear",range:T};return x.setConvert(_),_.cleanRange(),T}}}),P7=Ye({"src/traces/violin/cross_trace_calc.js"(X,H){"use strict";var g=q2().setPositionOffset,x=["v","h"];H.exports=function(M,e){for(var t=M.calcdata,r=e.xaxis,o=e.yaxis,a=0;a<x.length;a++){for(var i=x[a],n=i==="h"?o:r,s=[],c=0;c<t.length;c++){var h=t[c],v=h[0].t,p=h[0].trace;p.visible===!0&&p.type==="violin"&&!v.empty&&p.orientation===i&&p.xaxis===r._id&&p.yaxis===o._id&&s.push(c)}g("violin",M,s,n)}}}}),I7=Ye({"src/traces/violin/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=H2(),e=DS(),t=f3();H.exports=function(o,a,i,n){var s=o._context.staticPlot,c=o._fullLayout,h=a.xaxis,v=a.yaxis;function p(T,l){var _=e(T,{xaxis:h,yaxis:v,trace:l,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return A.smoothopen(_[0],1)}x.makeTraceGroups(n,i,"trace violins").each(function(T){var l=g.select(this),_=T[0],w=_.t,S=_.trace;if(S.visible!==!0||w.empty){l.remove();return}var E=w.bPos,m=w.bdPos,b=a[w.valLetter+"axis"],d=a[w.posLetter+"axis"],u=S.side==="both",y=u||S.side==="positive",f=u||S.side==="negative",P=l.selectAll("path.violin").data(x.identity);P.enter().append("path").style("vector-effect",s?"none":"non-scaling-stroke").attr("class","violin"),P.exit().remove(),P.each(function(U){var W=g.select(this),Q=U.density,ue=Q.length,se=d.c2l(U.pos+E,!0),he=d.l2p(se),G;if(S.width)G=w.maxKDE/m;else{var $=c._violinScaleGroupStats[S.scalegroup];G=S.scalemode==="count"?$.maxKDE/m*($.maxCount/U.pts.length):$.maxKDE/m}var J,Z,re,ne,j,ee,ie;if(y){for(ee=new Array(ue),ne=0;ne<ue;ne++)ie=ee[ne]={},ie[w.posLetter]=se+Q[ne].v/G,ie[w.valLetter]=b.c2l(Q[ne].t,!0);J=p(ee,S)}if(f){for(ee=new Array(ue),j=0,ne=ue-1;j<ue;j++,ne--)ie=ee[j]={},ie[w.posLetter]=se-Q[ne].v/G,ie[w.valLetter]=b.c2l(Q[ne].t,!0);Z=p(ee,S)}if(u)re=J+"L"+Z.substr(1)+"Z";else{var fe=[he,b.c2p(Q[0].t)],be=[he,b.c2p(Q[ue-1].t)];S.orientation==="h"&&(fe.reverse(),be.reverse()),y?re="M"+fe+"L"+J.substr(1)+"L"+be:re="M"+be+"L"+Z.substr(1)+"L"+fe}W.attr("d",re),U.posCenterPx=he,U.posDensityScale=G*m,U.path=W.node(),U.pathLength=U.path.getTotalLength()/(u?2:1)});var L=S.box,z=L.width,F=(L.line||{}).width,B,O;u?(B=m*z,O=0):y?(B=[0,m*z/2],O=F*{x:1,y:-1}[w.posLetter]):(B=[m*z/2,0],O=F*{x:-1,y:1}[w.posLetter]),M.plotBoxAndWhiskers(l,{pos:d,val:b},S,{bPos:E,bdPos:B,bPosPxOffset:O}),M.plotBoxMean(l,{pos:d,val:b},S,{bPos:E,bdPos:B,bPosPxOffset:O});var I;!S.box.visible&&S.meanline.visible&&(I=x.identity);var N=l.selectAll("path.meanline").data(I||[]);N.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect",s?"none":"non-scaling-stroke"),N.exit().remove(),N.each(function(U){var W=b.c2p(U.mean,!0),Q=t.getPositionOnKdePath(U,S,W);g.select(this).attr("d",S.orientation==="h"?"M"+W+","+Q[0]+"V"+Q[1]:"M"+Q[0]+","+W+"H"+Q[1])}),M.plotPoints(l,{x:h,y:v},S,w)})}}}),R7=Ye({"src/traces/violin/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ed().stylePoints;H.exports=function(e){var t=g.select(e).selectAll("g.trace.violins");t.style("opacity",function(r){return r[0].trace.opacity}),t.each(function(r){var o=r[0].trace,a=g.select(this),i=o.box||{},n=i.line||{},s=o.meanline||{},c=s.width;a.selectAll("path.violin").style("stroke-width",o.line.width+"px").call(x.stroke,o.line.color).call(x.fill,o.fillcolor),a.selectAll("path.box").style("stroke-width",n.width+"px").call(x.stroke,n.color).call(x.fill,i.fillcolor);var h={"stroke-width":c+"px","stroke-dasharray":2*c+"px,"+c+"px"};a.selectAll("path.mean").style(h).call(x.stroke,s.color),a.selectAll("path.meanline").style(h).call(x.stroke,s.color),A(a,o,e)})}}}),D7=Ye({"src/traces/violin/hover.js"(X,H){"use strict";var g=Fn(),x=ta(),A=Co(),M=JS(),e=f3();H.exports=function(r,o,a,i,n){n||(n={});var s=n.hoverLayer,c=r.cd,h=c[0].trace,v=h.hoveron,p=v.indexOf("violins")!==-1,T=v.indexOf("kde")!==-1,l=[],_,w;if(p||T){var S=M.hoverOnBoxes(r,o,a,i);if(T&&S.length>0){var E=r.xa,m=r.ya,b,d,u,y,f;h.orientation==="h"?(f=o,b="y",u=m,d="x",y=E):(f=a,b="x",u=E,d="y",y=m);var P=c[r.index];if(f>=P.span[0]&&f<=P.span[1]){var L=x.extendFlat({},r),z=y.c2p(f,!0),F=e.getKdeValue(P,h,f),B=e.getPositionOnKdePath(P,h,z),O=u._offset,I=u._length;L[b+"0"]=B[0],L[b+"1"]=B[1],L[d+"0"]=L[d+"1"]=z,L[d+"Label"]=d+": "+A.hoverLabelText(y,f,h[d+"hoverformat"])+", "+c[0].t.labels.kde+" "+F.toFixed(3);for(var N=0,U=0;U<S.length;U++)if(S[U].attr==="med"){N=U;break}L.spikeDistance=S[N].spikeDistance;var W=b+"Spike";L[W]=S[N][W],S[N].spikeDistance=void 0,S[N][W]=void 0,L.hovertemplate=!1,l.push(L),w={},w[b+"1"]=x.constrain(O+B[0],O,O+I),w[b+"2"]=x.constrain(O+B[1],O,O+I),w[d+"1"]=w[d+"2"]=y._offset+z}}p&&(l=l.concat(S))}v.indexOf("points")!==-1&&(_=M.hoverOnPoints(r,o,a));var Q=s.selectAll(".violinline-"+h.uid).data(w?[0]:[]);return Q.enter().append("line").classed("violinline-"+h.uid,!0).attr("stroke-width",1.5),Q.exit().remove(),Q.attr(w).call(g.stroke,r.color),i==="closest"?_?[_]:l:(_&&l.push(_),l)}}}),z7=Ye({"src/traces/violin/index.js"(X,H){"use strict";H.exports={attributes:AM(),layoutAttributes:SM(),supplyDefaults:k7(),crossTraceDefaults:B_().crossTraceDefaults,supplyLayoutDefaults:C7(),calc:L7(),crossTraceCalc:P7(),plot:I7(),style:R7(),styleOnSelect:ed().styleOnSelect,hoverPoints:D7(),selectPoints:$S(),moduleType:"trace",name:"violin",basePlotModule:Pf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}}}),F7=Ye({"lib/violin.js"(X,H){"use strict";H.exports=z7()}}),O7=Ye({"src/traces/funnel/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}}}),MM=Ye({"src/traces/funnel/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=O7(),o=Oo().extendFlat,a=Fn();H.exports={x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),text:g.text,textposition:g.textposition,insidetextanchor:o({},g.insidetextanchor,{dflt:"middle"}),textangle:o({},g.textangle,{dflt:0}),textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:o({},g.orientation,{}),offset:o({},g.offset,{arrayOk:!1}),width:o({},g.width,{arrayOk:!1}),marker:i(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{dflt:0,editType:"plot"}),dash:x.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder};function i(){var n=o({},g.marker);return delete n.pattern,delete n.cornerradius,n}}}),EM=Ye({"src/traces/funnel/layout_attributes.js"(X,H){"use strict";H.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),kM=Ye({"src/traces/funnel/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=MM(),r=Fn();function o(n,s,c,h){function v(E,m){return g.coerce(n,s,t,E,m)}var p=M(n,s,h,v);if(!p){s.visible=!1;return}e(n,s,h,v),v("xhoverformat"),v("yhoverformat"),v("orientation",s.y&&!s.x?"v":"h"),v("offset"),v("width");var T=v("text");v("hovertext"),v("hovertemplate");var l=v("textposition");A(n,s,h,v,l,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s.textposition!=="none"&&!s.texttemplate&&v("textinfo",g.isArrayOrTypedArray(T)?"text+value":"value");var _=v("marker.color",c);v("marker.line.color",r.defaultLine),v("marker.line.width");var w=v("connector.visible");if(w){v("connector.fillcolor",a(_));var S=v("connector.line.width");S&&(v("connector.line.color"),v("connector.line.dash"))}v("zorder")}function a(n){var s=g.isArrayOrTypedArray(n)?"#000":n;return r.addOpacity(s,.5*r.opacity(s))}function i(n,s){var c,h;function v(T){return g.coerce(h._input,h,t,T)}for(var p=0;p<n.length;p++)h=n[p],h.type==="funnel"&&(c=h._input,x(c,h,s,v,s.funnelmode))}H.exports={supplyDefaults:o,crossTraceDefaults:i}}}),B7=Ye({"src/traces/funnel/layout_defaults.js"(X,H){"use strict";var g=ta(),x=EM();H.exports=function(A,M,e){var t=!1;function r(i,n){return g.coerce(A,M,x,i,n)}for(var o=0;o<e.length;o++){var a=e[o];if(a.visible&&a.type==="funnel"){t=!0;break}}t&&(r("funnelmode"),r("funnelgap",.2),r("funnelgroupgap"))}}}),N7=Ye({"src/traces/funnel/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.hovertext,A,"htx");var t=M.marker;if(t){g.mergeArray(t.opacity,A,"mo"),g.mergeArray(t.color,A,"mc");var r=t.line;r&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"))}}}}),U7=Ye({"src/traces/funnel/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=N7(),M=Od(),e=ks().BADNUM;H.exports=function(o,a){var i=g.getFromId(o,a.xaxis||"x"),n=g.getFromId(o,a.yaxis||"y"),s,c,h,v,p,T,l,_;a.orientation==="h"?(s=i.makeCalcdata(a,"x"),h=n.makeCalcdata(a,"y"),v=x(a,n,"y",h),p=!!a.yperiodalignment,T="y"):(s=n.makeCalcdata(a,"y"),h=i.makeCalcdata(a,"x"),v=x(a,i,"x",h),p=!!a.xperiodalignment,T="x"),c=v.vals;var w=Math.min(c.length,s.length),S=new Array(w);for(a._base=[],l=0;l<w;l++){s[l]<0&&(s[l]=e);var E=!1;s[l]!==e&&l+1<w&&s[l+1]!==e&&(E=!0),_=S[l]={p:c[l],s:s[l],cNext:E},a._base[l]=-.5*_.s,p&&(S[l].orig_p=h[l],S[l][T+"End"]=v.ends[l],S[l][T+"Start"]=v.starts[l]),a.ids&&(_.id=String(a.ids[l])),l===0&&(S[0].vTotal=0),S[0].vTotal+=t(_.s),_.begR=t(_.s)/t(S[0].s)}var m;for(l=0;l<w;l++)_=S[l],_.s!==e&&(_.sumR=_.s/S[0].vTotal,_.difR=m!==void 0?_.s/m:1,m=_.s);return A(S,a),M(S,a),S};function t(r){return r===e?0:r}}}),j7=Ye({"src/traces/funnel/cross_trace_calc.js"(X,H){"use strict";var g=$g().setGroupPositions;H.exports=function(A,M){var e=A._fullLayout,t=A._fullData,r=A.calcdata,o=M.xaxis,a=M.yaxis,i=[],n=[],s=[],c,h;for(h=0;h<t.length;h++){var v=t[h],p=v.orientation==="h";v.visible===!0&&v.xaxis===o._id&&v.yaxis===a._id&&v.type==="funnel"&&(c=r[h],p?s.push(c):n.push(c),i.push(c))}var T={mode:e.funnelmode,norm:e.funnelnorm,gap:e.funnelgap,groupgap:e.funnelgroupgap};for(g(A,o,a,n,T),g(A,a,o,s,T),h=0;h<i.length;h++){c=i[h];for(var l=0;l<c.length;l++)l+1<c.length&&(c[l].nextP0=c[l+1].p0,c[l].nextS0=c[l+1].s0,c[l].nextP1=c[l+1].p1,c[l].nextS1=c[l+1].s1)}}}}),V7=Ye({"src/traces/funnel/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=ks().BADNUM,e=e0(),t=wp().clearMinTextSize;H.exports=function(n,s,c,h){var v=n._fullLayout;t("funnel",v),r(n,s,c,h),o(n,s,c,h),e.plot(n,s,c,h,{mode:v.funnelmode,norm:v.funnelmode,gap:v.funnelgap,groupgap:v.funnelgroupgap})};function r(i,n,s,c){var h=n.xaxis,v=n.yaxis;x.makeTraceGroups(c,s,"trace bars").each(function(p){var T=g.select(this),l=p[0].trace,_=x.ensureSingle(T,"g","regions");if(!l.connector||!l.connector.visible){_.remove();return}var w=l.orientation==="h",S=_.selectAll("g.region").data(x.identity);S.enter().append("g").classed("region",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=a(m,h,v,w),u=d[0],y=d[1],f="";u[0]!==M&&y[0]!==M&&u[1]!==M&&y[1]!==M&&u[2]!==M&&y[2]!==M&&u[3]!==M&&y[3]!==M&&(w?f+="M"+u[0]+","+y[1]+"L"+u[2]+","+y[2]+"H"+u[3]+"L"+u[1]+","+y[1]+"Z":f+="M"+u[1]+","+y[1]+"L"+u[2]+","+y[3]+"V"+y[2]+"L"+u[1]+","+y[0]+"Z"),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,n.layerClipId,i)}})})}function o(i,n,s,c){var h=n.xaxis,v=n.yaxis;x.makeTraceGroups(c,s,"trace bars").each(function(p){var T=g.select(this),l=p[0].trace,_=x.ensureSingle(T,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){_.remove();return}var w=l.orientation==="h",S=_.selectAll("g.line").data(x.identity);S.enter().append("g").classed("line",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=a(m,h,v,w),u=d[0],y=d[1],f="";u[3]!==void 0&&y[3]!==void 0&&(w?(f+="M"+u[0]+","+y[1]+"L"+u[2]+","+y[2],f+="M"+u[1]+","+y[1]+"L"+u[3]+","+y[2]):(f+="M"+u[1]+","+y[1]+"L"+u[2]+","+y[3],f+="M"+u[1]+","+y[0]+"L"+u[2]+","+y[2])),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,n.layerClipId,i)}})})}function a(i,n,s,c){var h=[],v=[],p=c?n:s,T=c?s:n;return h[0]=p.c2p(i.s0,!0),v[0]=T.c2p(i.p0,!0),h[1]=p.c2p(i.s1,!0),v[1]=T.c2p(i.p1,!0),h[2]=p.c2p(i.nextS0,!0),v[2]=T.c2p(i.nextP0,!0),h[3]=p.c2p(i.nextS1,!0),v[3]=T.c2p(i.nextP1,!0),c?[h,v]:[v,h]}}}),q7=Ye({"src/traces/funnel/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=Xm().DESELECTDIM,e=Nd(),t=wp().resizeText,r=e.styleTextPoints;function o(a,i,n){var s=n||g.select(a).selectAll('g[class^="funnellayer"]').selectAll("g.trace");t(a,s,"funnel"),s.style("opacity",function(c){return c[0].trace.opacity}),s.each(function(c){var h=g.select(this),v=c[0].trace;h.selectAll(".point > path").each(function(p){if(!p.isBlank){var T=v.marker;g.select(this).call(A.fill,p.mc||T.color).call(A.stroke,p.mlc||T.line.color).call(x.dashLine,T.line.dash,p.mlw||T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".regions").each(function(){g.select(this).selectAll("path").style("stroke-width",0).call(A.fill,v.connector.fillcolor)}),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),H7=Ye({"src/traces/funnel/hover.js"(X,H){"use strict";var g=Fn().opacity,x=c1().hoverOnBars,A=ta().formatPercent;H.exports=function(t,r,o,a,i){var n=x(t,r,o,a,i);if(n){var s=n.cd,c=s[0].trace,h=c.orientation==="h",v=n.index,p=s[v],T=h?"x":"y";n[T+"LabelVal"]=p.s,n.percentInitial=p.begR,n.percentInitialLabel=A(p.begR,1),n.percentPrevious=p.difR,n.percentPreviousLabel=A(p.difR,1),n.percentTotal=p.sumR,n.percentTotalLabel=A(p.sumR,1);var l=p.hi||c.hoverinfo,_=[];if(l&&l!=="none"&&l!=="skip"){var w=l==="all",S=l.split("+"),E=function(m){return w||S.indexOf(m)!==-1};E("percent initial")&&_.push(n.percentInitialLabel+" of initial"),E("percent previous")&&_.push(n.percentPreviousLabel+" of previous"),E("percent total")&&_.push(n.percentTotalLabel+" of total")}return n.extraText=_.join("<br>"),n.color=M(c,p),[n]}};function M(e,t){var r=e.marker,o=t.mc||r.color,a=t.mlc||r.line.color,i=t.mlw||r.line.width;if(g(o))return o;if(g(a)&&i)return a}}}),G7=Ye({"src/traces/funnel/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"percentInitial"in A&&(x.percentInitial=A.percentInitial),"percentPrevious"in A&&(x.percentPrevious=A.percentPrevious),"percentTotal"in A&&(x.percentTotal=A.percentTotal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),W7=Ye({"src/traces/funnel/index.js"(X,H){"use strict";H.exports={attributes:MM(),layoutAttributes:EM(),supplyDefaults:kM().supplyDefaults,crossTraceDefaults:kM().crossTraceDefaults,supplyLayoutDefaults:B7(),calc:U7(),crossTraceCalc:j7(),plot:V7(),style:q7().style,hoverPoints:H7(),eventData:G7(),selectPoints:f1(),moduleType:"trace",name:"funnel",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),Z7=Ye({"lib/funnel.js"(X,H){"use strict";H.exports=W7()}}),X7=Ye({"src/traces/waterfall/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["initial","delta","final"]}}}),CM=Ye({"src/traces/waterfall/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=X7(),o=Oo().extendFlat,a=Fn();function i(n){return{marker:{color:o({},g.marker.color,{arrayOk:!1,editType:"style"}),line:{color:o({},g.marker.line.color,{arrayOk:!1,editType:"style"}),width:o({},g.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}H.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label"])}),text:g.text,textposition:g.textposition,insidetextanchor:g.insidetextanchor,textangle:g.textangle,textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:g.orientation,offset:g.offset,width:g.width,increasing:i("increasing"),decreasing:i("decreasing"),totals:i("intermediate sums and total"),connector:{line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{editType:"plot"}),dash:x.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder}}}),LM=Ye({"src/traces/waterfall/layout_attributes.js"(X,H){"use strict";H.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),p1=Ye({"src/constants/delta.js"(X,H){"use strict";H.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}}}),PM=Ye({"src/traces/waterfall/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=CM(),r=Fn(),o=p1(),a=o.INCREASING.COLOR,i=o.DECREASING.COLOR,n="#4499FF";function s(v,p,T){v(p+".marker.color",T),v(p+".marker.line.color",r.defaultLine),v(p+".marker.line.width")}function c(v,p,T,l){function _(b,d){return g.coerce(v,p,t,b,d)}var w=M(v,p,l,_);if(!w){p.visible=!1;return}e(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("measure"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");A(v,p,l,_,S,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),p.textposition!=="none"&&(_("texttemplate"),p.texttemplate||_("textinfo")),s(_,"increasing",a),s(_,"decreasing",i),s(_,"totals",n);var E=_("connector.visible");if(E){_("connector.mode");var m=_("connector.line.width");m&&(_("connector.line.color"),_("connector.line.dash"))}_("zorder")}function h(v,p){var T,l;function _(S){return g.coerce(l._input,l,t,S)}if(p.waterfallmode==="group")for(var w=0;w<v.length;w++)l=v[w],T=l._input,x(T,l,p,_,p.waterfallmode)}H.exports={supplyDefaults:c,crossTraceDefaults:h}}}),Y7=Ye({"src/traces/waterfall/layout_defaults.js"(X,H){"use strict";var g=ta(),x=LM();H.exports=function(A,M,e){var t=!1;function r(i,n){return g.coerce(A,M,x,i,n)}for(var o=0;o<e.length;o++){var a=e[o];if(a.visible&&a.type==="waterfall"){t=!0;break}}t&&(r("waterfallmode"),r("waterfallgap",.2),r("waterfallgroupgap"))}}}),K7=Ye({"src/traces/waterfall/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=ta().mergeArray,M=Od(),e=ks().BADNUM;function t(o){return o==="a"||o==="absolute"}function r(o){return o==="t"||o==="total"}H.exports=function(a,i){var n=g.getFromId(a,i.xaxis||"x"),s=g.getFromId(a,i.yaxis||"y"),c,h,v,p,T,l;i.orientation==="h"?(c=n.makeCalcdata(i,"x"),v=s.makeCalcdata(i,"y"),p=x(i,s,"y",v),T=!!i.yperiodalignment,l="y"):(c=s.makeCalcdata(i,"y"),v=n.makeCalcdata(i,"x"),p=x(i,n,"x",v),T=!!i.xperiodalignment,l="x"),h=p.vals;for(var _=Math.min(h.length,c.length),w=new Array(_),S=0,E,m=!1,b=0;b<_;b++){var d=c[b]||0,u=!1;(c[b]!==e||r(i.measure[b])||t(i.measure[b]))&&b+1<_&&(c[b+1]!==e||r(i.measure[b+1])||t(i.measure[b+1]))&&(u=!0);var y=w[b]={i:b,p:h[b],s:d,rawS:d,cNext:u};t(i.measure[b])?(S=y.s,y.isSum=!0,y.dir="totals",y.s=S):r(i.measure[b])?(y.isSum=!0,y.dir="totals",y.s=S):(y.isSum=!1,y.dir=y.rawS<0?"decreasing":"increasing",E=y.s,y.s=S+E,S+=E),y.dir==="totals"&&(m=!0),T&&(w[b].orig_p=v[b],w[b][l+"End"]=p.ends[b],w[b][l+"Start"]=p.starts[b]),i.ids&&(y.id=String(i.ids[b])),y.v=(i.base||0)+S}return w.length&&(w[0].hasTotals=m),A(i.text,w,"tx"),A(i.hovertext,w,"htx"),M(w,i),w}}}),J7=Ye({"src/traces/waterfall/cross_trace_calc.js"(X,H){"use strict";var g=$g().setGroupPositions;H.exports=function(A,M){var e=A._fullLayout,t=A._fullData,r=A.calcdata,o=M.xaxis,a=M.yaxis,i=[],n=[],s=[],c,h;for(h=0;h<t.length;h++){var v=t[h];v.visible===!0&&v.xaxis===o._id&&v.yaxis===a._id&&v.type==="waterfall"&&(c=r[h],v.orientation==="h"?s.push(c):n.push(c),i.push(c))}var p={mode:e.waterfallmode,norm:e.waterfallnorm,gap:e.waterfallgap,groupgap:e.waterfallgroupgap};for(g(A,o,a,n,p),g(A,a,o,s,p),h=0;h<i.length;h++){c=i[h];for(var T=0;T<c.length;T++){var l=c[T];l.isSum===!1&&(l.s0+=T===0?0:c[T-1].s),T+1<c.length&&(c[T].nextP0=c[T+1].p0,c[T].nextS0=c[T+1].s0)}}}}}),$7=Ye({"src/traces/waterfall/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=ks().BADNUM,e=e0(),t=wp().clearMinTextSize;H.exports=function(i,n,s,c){var h=i._fullLayout;t("waterfall",h),e.plot(i,n,s,c,{mode:h.waterfallmode,norm:h.waterfallmode,gap:h.waterfallgap,groupgap:h.waterfallgroupgap}),r(i,n,s,c)};function r(a,i,n,s){var c=i.xaxis,h=i.yaxis;x.makeTraceGroups(s,n,"trace bars").each(function(v){var p=g.select(this),T=v[0].trace,l=x.ensureSingle(p,"g","lines");if(!T.connector||!T.connector.visible){l.remove();return}var _=T.orientation==="h",w=T.connector.mode,S=l.selectAll("g.line").data(x.identity);S.enter().append("g").classed("line",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=o(m,c,h,_),u=d[0],y=d[1],f="";u[0]!==M&&y[0]!==M&&u[1]!==M&&y[1]!==M&&(w==="spanning"&&!m.isSum&&b>0&&(_?f+="M"+u[0]+","+y[1]+"V"+y[0]:f+="M"+u[1]+","+y[0]+"H"+u[0]),w!=="between"&&(m.isSum||b<E-1)&&(_?f+="M"+u[1]+","+y[0]+"V"+y[1]:f+="M"+u[0]+","+y[1]+"H"+u[1]),u[2]!==M&&y[2]!==M&&(_?f+="M"+u[1]+","+y[1]+"V"+y[2]:f+="M"+u[1]+","+y[1]+"H"+u[2])),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,i.layerClipId,a)}})})}function o(a,i,n,s){var c=[],h=[],v=s?i:n,p=s?n:i;return c[0]=v.c2p(a.s0,!0),h[0]=p.c2p(a.p0,!0),c[1]=v.c2p(a.s1,!0),h[1]=p.c2p(a.p1,!0),c[2]=v.c2p(a.nextS0,!0),h[2]=p.c2p(a.nextP0,!0),s?[c,h]:[h,c]}}}),Q7=Ye({"src/traces/waterfall/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=Xm().DESELECTDIM,e=Nd(),t=wp().resizeText,r=e.styleTextPoints;function o(a,i,n){var s=n||g.select(a).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");t(a,s,"waterfall"),s.style("opacity",function(c){return c[0].trace.opacity}),s.each(function(c){var h=g.select(this),v=c[0].trace;h.selectAll(".point > path").each(function(p){if(!p.isBlank){var T=v[p.dir].marker;g.select(this).call(A.fill,T.color).call(A.stroke,T.line.color).call(x.dashLine,T.line.dash,T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),e4=Ye({"src/traces/waterfall/hover.js"(X,H){"use strict";var g=Co().hoverLabelText,x=Fn().opacity,A=c1().hoverOnBars,M=p1(),e={increasing:M.INCREASING.SYMBOL,decreasing:M.DECREASING.SYMBOL};H.exports=function(o,a,i,n,s){var c=A(o,a,i,n,s);if(!c)return;var h=c.cd,v=h[0].trace,p=v.orientation==="h",T=p?"x":"y",l=p?o.xa:o.ya;function _(P){return g(l,P,v[T+"hoverformat"])}var w=c.index,S=h[w],E=S.isSum?S.b+S.s:S.rawS;c.initial=S.b+S.s-E,c.delta=E,c.final=c.initial+c.delta;var m=_(Math.abs(c.delta));c.deltaLabel=E<0?"("+m+")":m,c.finalLabel=_(c.final),c.initialLabel=_(c.initial);var b=S.hi||v.hoverinfo,d=[];if(b&&b!=="none"&&b!=="skip"){var u=b==="all",y=b.split("+"),f=function(P){return u||y.indexOf(P)!==-1};S.isSum||(f("final")&&(p?!f("x"):!f("y"))&&d.push(c.finalLabel),f("delta")&&(E<0?d.push(c.deltaLabel+" "+e.decreasing):d.push(c.deltaLabel+" "+e.increasing)),f("initial")&&d.push("Initial: "+c.initialLabel))}return d.length&&(c.extraText=d.join("<br>")),c.color=t(v,S),[c]};function t(r,o){var a=r[o.dir].marker,i=a.color,n=a.line.color,s=a.line.width;if(x(i))return i;if(x(n)&&s)return n}}}),t4=Ye({"src/traces/waterfall/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"initial"in A&&(x.initial=A.initial),"delta"in A&&(x.delta=A.delta),"final"in A&&(x.final=A.final),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),r4=Ye({"src/traces/waterfall/index.js"(X,H){"use strict";H.exports={attributes:CM(),layoutAttributes:LM(),supplyDefaults:PM().supplyDefaults,crossTraceDefaults:PM().crossTraceDefaults,supplyLayoutDefaults:Y7(),calc:K7(),crossTraceCalc:J7(),plot:$7(),style:Q7().style,hoverPoints:e4(),eventData:t4(),selectPoints:f1(),moduleType:"trace",name:"waterfall",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),a4=Ye({"lib/waterfall.js"(X,H){"use strict";H.exports=r4()}}),d1=Ye({"src/traces/image/constants.js"(X,H){"use strict";H.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(g){return g.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(g){var x=g.slice(0,3);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(g){var x=g.slice(0,4);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%",""]}}}}}),IM=Ye({"src/traces/image/attributes.js"(X,H){"use strict";var g=Pl(),x=Pc().zorder,A=xs().hovertemplateAttrs,M=Oo().extendFlat,e=d1().colormodel,t=["rgb","rgba","rgba256","hsl","hsla"],r=[],o=[];for(i=0;i<t.length;i++)a=e[t[i]],r.push("For the `"+t[i]+"` colormodel, it is ["+(a.zminDflt||a.min).join(", ")+"]."),o.push("For the `"+t[i]+"` colormodel, it is ["+(a.zmaxDflt||a.max).join(", ")+"].");var a,i;H.exports=M({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:t,editType:"calc"},zsmooth:{valType:"enumerated",values:["fast",!1],dflt:!1,editType:"plot"},zmin:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},zmax:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dx:{valType:"number",dflt:1,editType:"calc"},dy:{valType:"number",dflt:1,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"data_array",editType:"plot"},hoverinfo:M({},g.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:A({},{keys:["z","color","colormodel"]}),zorder:x})}}),i4=Ye({"src/traces/image/defaults.js"(X,H){"use strict";var g=ta(),x=IM(),A=d1(),M=Xv().IMAGE_URL_PREFIX;H.exports=function(t,r){function o(n,s){return g.coerce(t,r,x,n,s)}o("source"),r.source&&!r.source.match(M)&&delete r.source,r._hasSource=!!r.source;var a=o("z");if(r._hasZ=!(a===void 0||!a.length||!a[0]||!a[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}o("x0"),o("y0"),o("dx"),o("dy");var i;r._hasZ?(o("colormodel","rgb"),i=A.colormodel[r.colormodel],o("zmin",i.zminDflt||i.min),o("zmax",i.zmaxDflt||i.max)):r._hasSource&&(r.colormodel="rgba256",i=A.colormodel[r.colormodel],r.zmin=i.zminDflt,r.zmax=i.zmaxDflt),o("zsmooth"),o("text"),o("hovertext"),o("hovertemplate"),r._length=null,o("zorder")}}}),Yv=Ye({"node_modules/inherits/inherits_browser.js"(X,H){typeof Object.create=="function"?H.exports=function(x,A){A&&(x.super_=A,x.prototype=Object.create(A.prototype,{constructor:{value:x,enumerable:!1,writable:!0,configurable:!0}}))}:H.exports=function(x,A){if(A){x.super_=A;var M=function(){};M.prototype=A.prototype,x.prototype=new M,x.prototype.constructor=x}}}}),RM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/stream-browser.js"(X,H){H.exports=Wg().EventEmitter}}),n4=Ye({"node_modules/base64-js/index.js"(X){"use strict";X.byteLength=r,X.toByteArray=a,X.fromByteArray=s;var H=[],g=[],x=typeof Uint8Array<"u"?Uint8Array:Array,A="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(M=0,e=A.length;M<e;++M)H[M]=A[M],g[A.charCodeAt(M)]=M;var M,e;g[45]=62,g[95]=63;function t(c){var h=c.length;if(h%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var v=c.indexOf("=");v===-1&&(v=h);var p=v===h?0:4-v%4;return[v,p]}function r(c){var h=t(c),v=h[0],p=h[1];return(v+p)*3/4-p}function o(c,h,v){return(h+v)*3/4-v}function a(c){var h,v=t(c),p=v[0],T=v[1],l=new x(o(c,p,T)),_=0,w=T>0?p-4:p,S;for(S=0;S<w;S+=4)h=g[c.charCodeAt(S)]<<18|g[c.charCodeAt(S+1)]<<12|g[c.charCodeAt(S+2)]<<6|g[c.charCodeAt(S+3)],l[_++]=h>>16&255,l[_++]=h>>8&255,l[_++]=h&255;return T===2&&(h=g[c.charCodeAt(S)]<<2|g[c.charCodeAt(S+1)]>>4,l[_++]=h&255),T===1&&(h=g[c.charCodeAt(S)]<<10|g[c.charCodeAt(S+1)]<<4|g[c.charCodeAt(S+2)]>>2,l[_++]=h>>8&255,l[_++]=h&255),l}function i(c){return H[c>>18&63]+H[c>>12&63]+H[c>>6&63]+H[c&63]}function n(c,h,v){for(var p,T=[],l=h;l<v;l+=3)p=(c[l]<<16&16711680)+(c[l+1]<<8&65280)+(c[l+2]&255),T.push(i(p));return T.join("")}function s(c){for(var h,v=c.length,p=v%3,T=[],l=16383,_=0,w=v-p;_<w;_+=l)T.push(n(c,_,_+l>w?w:_+l));return p===1?(h=c[v-1],T.push(H[h>>2]+H[h<<4&63]+"==")):p===2&&(h=(c[v-2]<<8)+c[v-1],T.push(H[h>>10]+H[h>>4&63]+H[h<<2&63]+"=")),T.join("")}}}),o4=Ye({"node_modules/ieee754/index.js"(X){X.read=function(H,g,x,A,M){var e,t,r=M*8-A-1,o=(1<<r)-1,a=o>>1,i=-7,n=x?M-1:0,s=x?-1:1,c=H[g+n];for(n+=s,e=c&(1<<-i)-1,c>>=-i,i+=r;i>0;e=e*256+H[g+n],n+=s,i-=8);for(t=e&(1<<-i)-1,e>>=-i,i+=A;i>0;t=t*256+H[g+n],n+=s,i-=8);if(e===0)e=1-a;else{if(e===o)return t?NaN:(c?-1:1)*(1/0);t=t+Math.pow(2,A),e=e-a}return(c?-1:1)*t*Math.pow(2,e-A)},X.write=function(H,g,x,A,M,e){var t,r,o,a=e*8-M-1,i=(1<<a)-1,n=i>>1,s=M===23?Math.pow(2,-24)-Math.pow(2,-77):0,c=A?0:e-1,h=A?1:-1,v=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(r=isNaN(g)?1:0,t=i):(t=Math.floor(Math.log(g)/Math.LN2),g*(o=Math.pow(2,-t))<1&&(t--,o*=2),t+n>=1?g+=s/o:g+=s*Math.pow(2,1-n),g*o>=2&&(t++,o/=2),t+n>=i?(r=0,t=i):t+n>=1?(r=(g*o-1)*Math.pow(2,M),t=t+n):(r=g*Math.pow(2,n-1)*Math.pow(2,M),t=0));M>=8;H[x+c]=r&255,c+=h,r/=256,M-=8);for(t=t<<M|r,a+=M;a>0;H[x+c]=t&255,c+=h,t/=256,a-=8);H[x+c-h]|=v*128}}}),t0=Ye({"node_modules/buffer/index.js"(X){"use strict";var H=n4(),g=o4(),x=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;X.Buffer=t,X.SlowBuffer=T,X.INSPECT_MAX_BYTES=50;var A=2147483647;X.kMaxLength=A,t.TYPED_ARRAY_SUPPORT=M(),!t.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function M(){try{let Me=new Uint8Array(1),ge={foo:function(){return 42}};return Object.setPrototypeOf(ge,Uint8Array.prototype),Object.setPrototypeOf(Me,ge),Me.foo()===42}catch{return!1}}Object.defineProperty(t.prototype,"parent",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.buffer}}),Object.defineProperty(t.prototype,"offset",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.byteOffset}});function e(Me){if(Me>A)throw new RangeError('The value "'+Me+'" is invalid for option "size"');let ge=new Uint8Array(Me);return Object.setPrototypeOf(ge,t.prototype),ge}function t(Me,ge,ce){if(typeof Me=="number"){if(typeof ge=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return i(Me)}return r(Me,ge,ce)}t.poolSize=8192;function r(Me,ge,ce){if(typeof Me=="string")return n(Me,ge);if(ArrayBuffer.isView(Me))return c(Me);if(Me==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me);if(Ze(Me,ArrayBuffer)||Me&&Ze(Me.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Ze(Me,SharedArrayBuffer)||Me&&Ze(Me.buffer,SharedArrayBuffer)))return h(Me,ge,ce);if(typeof Me=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let ze=Me.valueOf&&Me.valueOf();if(ze!=null&&ze!==Me)return t.from(ze,ge,ce);let tt=v(Me);if(tt)return tt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Me[Symbol.toPrimitive]=="function")return t.from(Me[Symbol.toPrimitive]("string"),ge,ce);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me)}t.from=function(Me,ge,ce){return r(Me,ge,ce)},Object.setPrototypeOf(t.prototype,Uint8Array.prototype),Object.setPrototypeOf(t,Uint8Array);function o(Me){if(typeof Me!="number")throw new TypeError('"size" argument must be of type number');if(Me<0)throw new RangeError('The value "'+Me+'" is invalid for option "size"')}function a(Me,ge,ce){return o(Me),Me<=0?e(Me):ge!==void 0?typeof ce=="string"?e(Me).fill(ge,ce):e(Me).fill(ge):e(Me)}t.alloc=function(Me,ge,ce){return a(Me,ge,ce)};function i(Me){return o(Me),e(Me<0?0:p(Me)|0)}t.allocUnsafe=function(Me){return i(Me)},t.allocUnsafeSlow=function(Me){return i(Me)};function n(Me,ge){if((typeof ge!="string"||ge==="")&&(ge="utf8"),!t.isEncoding(ge))throw new TypeError("Unknown encoding: "+ge);let ce=l(Me,ge)|0,ze=e(ce),tt=ze.write(Me,ge);return tt!==ce&&(ze=ze.slice(0,tt)),ze}function s(Me){let ge=Me.length<0?0:p(Me.length)|0,ce=e(ge);for(let ze=0;ze<ge;ze+=1)ce[ze]=Me[ze]&255;return ce}function c(Me){if(Ze(Me,Uint8Array)){let ge=new Uint8Array(Me);return h(ge.buffer,ge.byteOffset,ge.byteLength)}return s(Me)}function h(Me,ge,ce){if(ge<0||Me.byteLength<ge)throw new RangeError('"offset" is outside of buffer bounds');if(Me.byteLength<ge+(ce||0))throw new RangeError('"length" is outside of buffer bounds');let ze;return ge===void 0&&ce===void 0?ze=new Uint8Array(Me):ce===void 0?ze=new Uint8Array(Me,ge):ze=new Uint8Array(Me,ge,ce),Object.setPrototypeOf(ze,t.prototype),ze}function v(Me){if(t.isBuffer(Me)){let ge=p(Me.length)|0,ce=e(ge);return ce.length===0||Me.copy(ce,0,0,ge),ce}if(Me.length!==void 0)return typeof Me.length!="number"||at(Me.length)?e(0):s(Me);if(Me.type==="Buffer"&&Array.isArray(Me.data))return s(Me.data)}function p(Me){if(Me>=A)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+A.toString(16)+" bytes");return Me|0}function T(Me){return+Me!=Me&&(Me=0),t.alloc(+Me)}t.isBuffer=function(ge){return ge!=null&&ge._isBuffer===!0&&ge!==t.prototype},t.compare=function(ge,ce){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),Ze(ce,Uint8Array)&&(ce=t.from(ce,ce.offset,ce.byteLength)),!t.isBuffer(ge)||!t.isBuffer(ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(ge===ce)return 0;let ze=ge.length,tt=ce.length;for(let nt=0,Qe=Math.min(ze,tt);nt<Qe;++nt)if(ge[nt]!==ce[nt]){ze=ge[nt],tt=ce[nt];break}return ze<tt?-1:tt<ze?1:0},t.isEncoding=function(ge){switch(String(ge).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},t.concat=function(ge,ce){if(!Array.isArray(ge))throw new TypeError('"list" argument must be an Array of Buffers');if(ge.length===0)return t.alloc(0);let ze;if(ce===void 0)for(ce=0,ze=0;ze<ge.length;++ze)ce+=ge[ze].length;let tt=t.allocUnsafe(ce),nt=0;for(ze=0;ze<ge.length;++ze){let Qe=ge[ze];if(Ze(Qe,Uint8Array))nt+Qe.length>tt.length?(t.isBuffer(Qe)||(Qe=t.from(Qe)),Qe.copy(tt,nt)):Uint8Array.prototype.set.call(tt,Qe,nt);else if(t.isBuffer(Qe))Qe.copy(tt,nt);else throw new TypeError('"list" argument must be an Array of Buffers');nt+=Qe.length}return tt};function l(Me,ge){if(t.isBuffer(Me))return Me.length;if(ArrayBuffer.isView(Me)||Ze(Me,ArrayBuffer))return Me.byteLength;if(typeof Me!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Me);let ce=Me.length,ze=arguments.length>2&&arguments[2]===!0;if(!ze&&ce===0)return 0;let tt=!1;for(;;)switch(ge){case"ascii":case"latin1":case"binary":return ce;case"utf8":case"utf-8":return fe(Me).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ce*2;case"hex":return ce>>>1;case"base64":return Be(Me).length;default:if(tt)return ze?-1:fe(Me).length;ge=(""+ge).toLowerCase(),tt=!0}}t.byteLength=l;function _(Me,ge,ce){let ze=!1;if((ge===void 0||ge<0)&&(ge=0),ge>this.length||((ce===void 0||ce>this.length)&&(ce=this.length),ce<=0)||(ce>>>=0,ge>>>=0,ce<=ge))return"";for(Me||(Me="utf8");;)switch(Me){case"hex":return O(this,ge,ce);case"utf8":case"utf-8":return P(this,ge,ce);case"ascii":return F(this,ge,ce);case"latin1":case"binary":return B(this,ge,ce);case"base64":return f(this,ge,ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,ge,ce);default:if(ze)throw new TypeError("Unknown encoding: "+Me);Me=(Me+"").toLowerCase(),ze=!0}}t.prototype._isBuffer=!0;function w(Me,ge,ce){let ze=Me[ge];Me[ge]=Me[ce],Me[ce]=ze}t.prototype.swap16=function(){let ge=this.length;if(ge%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let ce=0;ce<ge;ce+=2)w(this,ce,ce+1);return this},t.prototype.swap32=function(){let ge=this.length;if(ge%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let ce=0;ce<ge;ce+=4)w(this,ce,ce+3),w(this,ce+1,ce+2);return this},t.prototype.swap64=function(){let ge=this.length;if(ge%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let ce=0;ce<ge;ce+=8)w(this,ce,ce+7),w(this,ce+1,ce+6),w(this,ce+2,ce+5),w(this,ce+3,ce+4);return this},t.prototype.toString=function(){let ge=this.length;return ge===0?"":arguments.length===0?P(this,0,ge):_.apply(this,arguments)},t.prototype.toLocaleString=t.prototype.toString,t.prototype.equals=function(ge){if(!t.isBuffer(ge))throw new TypeError("Argument must be a Buffer");return this===ge?!0:t.compare(this,ge)===0},t.prototype.inspect=function(){let ge="",ce=X.INSPECT_MAX_BYTES;return ge=this.toString("hex",0,ce).replace(/(.{2})/g,"$1 ").trim(),this.length>ce&&(ge+=" ... "),"<Buffer "+ge+">"},x&&(t.prototype[x]=t.prototype.inspect),t.prototype.compare=function(ge,ce,ze,tt,nt){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),!t.isBuffer(ge))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof ge);if(ce===void 0&&(ce=0),ze===void 0&&(ze=ge?ge.length:0),tt===void 0&&(tt=0),nt===void 0&&(nt=this.length),ce<0||ze>ge.length||tt<0||nt>this.length)throw new RangeError("out of range index");if(tt>=nt&&ce>=ze)return 0;if(tt>=nt)return-1;if(ce>=ze)return 1;if(ce>>>=0,ze>>>=0,tt>>>=0,nt>>>=0,this===ge)return 0;let Qe=nt-tt,Ct=ze-ce,St=Math.min(Qe,Ct),Ot=this.slice(tt,nt),jt=ge.slice(ce,ze);for(let ur=0;ur<St;++ur)if(Ot[ur]!==jt[ur]){Qe=Ot[ur],Ct=jt[ur];break}return Qe<Ct?-1:Ct<Qe?1:0};function S(Me,ge,ce,ze,tt){if(Me.length===0)return-1;if(typeof ce=="string"?(ze=ce,ce=0):ce>2147483647?ce=2147483647:ce<-2147483648&&(ce=-2147483648),ce=+ce,at(ce)&&(ce=tt?0:Me.length-1),ce<0&&(ce=Me.length+ce),ce>=Me.length){if(tt)return-1;ce=Me.length-1}else if(ce<0)if(tt)ce=0;else return-1;if(typeof ge=="string"&&(ge=t.from(ge,ze)),t.isBuffer(ge))return ge.length===0?-1:E(Me,ge,ce,ze,tt);if(typeof ge=="number")return ge=ge&255,typeof Uint8Array.prototype.indexOf=="function"?tt?Uint8Array.prototype.indexOf.call(Me,ge,ce):Uint8Array.prototype.lastIndexOf.call(Me,ge,ce):E(Me,[ge],ce,ze,tt);throw new TypeError("val must be string, number or Buffer")}function E(Me,ge,ce,ze,tt){let nt=1,Qe=Me.length,Ct=ge.length;if(ze!==void 0&&(ze=String(ze).toLowerCase(),ze==="ucs2"||ze==="ucs-2"||ze==="utf16le"||ze==="utf-16le")){if(Me.length<2||ge.length<2)return-1;nt=2,Qe/=2,Ct/=2,ce/=2}function St(jt,ur){return nt===1?jt[ur]:jt.readUInt16BE(ur*nt)}let Ot;if(tt){let jt=-1;for(Ot=ce;Ot<Qe;Ot++)if(St(Me,Ot)===St(ge,jt===-1?0:Ot-jt)){if(jt===-1&&(jt=Ot),Ot-jt+1===Ct)return jt*nt}else jt!==-1&&(Ot-=Ot-jt),jt=-1}else for(ce+Ct>Qe&&(ce=Qe-Ct),Ot=ce;Ot>=0;Ot--){let jt=!0;for(let ur=0;ur<Ct;ur++)if(St(Me,Ot+ur)!==St(ge,ur)){jt=!1;break}if(jt)return Ot}return-1}t.prototype.includes=function(ge,ce,ze){return this.indexOf(ge,ce,ze)!==-1},t.prototype.indexOf=function(ge,ce,ze){return S(this,ge,ce,ze,!0)},t.prototype.lastIndexOf=function(ge,ce,ze){return S(this,ge,ce,ze,!1)};function m(Me,ge,ce,ze){ce=Number(ce)||0;let tt=Me.length-ce;ze?(ze=Number(ze),ze>tt&&(ze=tt)):ze=tt;let nt=ge.length;ze>nt/2&&(ze=nt/2);let Qe;for(Qe=0;Qe<ze;++Qe){let Ct=parseInt(ge.substr(Qe*2,2),16);if(at(Ct))return Qe;Me[ce+Qe]=Ct}return Qe}function b(Me,ge,ce,ze){return Ie(fe(ge,Me.length-ce),Me,ce,ze)}function d(Me,ge,ce,ze){return Ie(be(ge),Me,ce,ze)}function u(Me,ge,ce,ze){return Ie(Be(ge),Me,ce,ze)}function y(Me,ge,ce,ze){return Ie(Ae(ge,Me.length-ce),Me,ce,ze)}t.prototype.write=function(ge,ce,ze,tt){if(ce===void 0)tt="utf8",ze=this.length,ce=0;else if(ze===void 0&&typeof ce=="string")tt=ce,ze=this.length,ce=0;else if(isFinite(ce))ce=ce>>>0,isFinite(ze)?(ze=ze>>>0,tt===void 0&&(tt="utf8")):(tt=ze,ze=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let nt=this.length-ce;if((ze===void 0||ze>nt)&&(ze=nt),ge.length>0&&(ze<0||ce<0)||ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");tt||(tt="utf8");let Qe=!1;for(;;)switch(tt){case"hex":return m(this,ge,ce,ze);case"utf8":case"utf-8":return b(this,ge,ce,ze);case"ascii":case"latin1":case"binary":return d(this,ge,ce,ze);case"base64":return u(this,ge,ce,ze);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,ge,ce,ze);default:if(Qe)throw new TypeError("Unknown encoding: "+tt);tt=(""+tt).toLowerCase(),Qe=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(Me,ge,ce){return ge===0&&ce===Me.length?H.fromByteArray(Me):H.fromByteArray(Me.slice(ge,ce))}function P(Me,ge,ce){ce=Math.min(Me.length,ce);let ze=[],tt=ge;for(;tt<ce;){let nt=Me[tt],Qe=null,Ct=nt>239?4:nt>223?3:nt>191?2:1;if(tt+Ct<=ce){let St,Ot,jt,ur;switch(Ct){case 1:nt<128&&(Qe=nt);break;case 2:St=Me[tt+1],(St&192)===128&&(ur=(nt&31)<<6|St&63,ur>127&&(Qe=ur));break;case 3:St=Me[tt+1],Ot=Me[tt+2],(St&192)===128&&(Ot&192)===128&&(ur=(nt&15)<<12|(St&63)<<6|Ot&63,ur>2047&&(ur<55296||ur>57343)&&(Qe=ur));break;case 4:St=Me[tt+1],Ot=Me[tt+2],jt=Me[tt+3],(St&192)===128&&(Ot&192)===128&&(jt&192)===128&&(ur=(nt&15)<<18|(St&63)<<12|(Ot&63)<<6|jt&63,ur>65535&&ur<1114112&&(Qe=ur))}}Qe===null?(Qe=65533,Ct=1):Qe>65535&&(Qe-=65536,ze.push(Qe>>>10&1023|55296),Qe=56320|Qe&1023),ze.push(Qe),tt+=Ct}return z(ze)}var L=4096;function z(Me){let ge=Me.length;if(ge<=L)return String.fromCharCode.apply(String,Me);let ce="",ze=0;for(;ze<ge;)ce+=String.fromCharCode.apply(String,Me.slice(ze,ze+=L));return ce}function F(Me,ge,ce){let ze="";ce=Math.min(Me.length,ce);for(let tt=ge;tt<ce;++tt)ze+=String.fromCharCode(Me[tt]&127);return ze}function B(Me,ge,ce){let ze="";ce=Math.min(Me.length,ce);for(let tt=ge;tt<ce;++tt)ze+=String.fromCharCode(Me[tt]);return ze}function O(Me,ge,ce){let ze=Me.length;(!ge||ge<0)&&(ge=0),(!ce||ce<0||ce>ze)&&(ce=ze);let tt="";for(let nt=ge;nt<ce;++nt)tt+=it[Me[nt]];return tt}function I(Me,ge,ce){let ze=Me.slice(ge,ce),tt="";for(let nt=0;nt<ze.length-1;nt+=2)tt+=String.fromCharCode(ze[nt]+ze[nt+1]*256);return tt}t.prototype.slice=function(ge,ce){let ze=this.length;ge=~~ge,ce=ce===void 0?ze:~~ce,ge<0?(ge+=ze,ge<0&&(ge=0)):ge>ze&&(ge=ze),ce<0?(ce+=ze,ce<0&&(ce=0)):ce>ze&&(ce=ze),ce<ge&&(ce=ge);let tt=this.subarray(ge,ce);return Object.setPrototypeOf(tt,t.prototype),tt};function N(Me,ge,ce){if(Me%1!==0||Me<0)throw new RangeError("offset is not uint");if(Me+ge>ce)throw new RangeError("Trying to access beyond buffer length")}t.prototype.readUintLE=t.prototype.readUIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe<ce&&(nt*=256);)tt+=this[ge+Qe]*nt;return tt},t.prototype.readUintBE=t.prototype.readUIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge+--ce],nt=1;for(;ce>0&&(nt*=256);)tt+=this[ge+--ce]*nt;return tt},t.prototype.readUint8=t.prototype.readUInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]},t.prototype.readUint16LE=t.prototype.readUInt16LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]|this[ge+1]<<8},t.prototype.readUint16BE=t.prototype.readUInt16BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]<<8|this[ge+1]},t.prototype.readUint32LE=t.prototype.readUInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),(this[ge]|this[ge+1]<<8|this[ge+2]<<16)+this[ge+3]*16777216},t.prototype.readUint32BE=t.prototype.readUInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]*16777216+(this[ge+1]<<16|this[ge+2]<<8|this[ge+3])},t.prototype.readBigUInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24,nt=this[++ge]+this[++ge]*2**8+this[++ge]*2**16+ze*2**24;return BigInt(tt)+(BigInt(nt)<<BigInt(32))}),t.prototype.readBigUInt64BE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce*2**24+this[++ge]*2**16+this[++ge]*2**8+this[++ge],nt=this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze;return(BigInt(tt)<<BigInt(32))+BigInt(nt)}),t.prototype.readIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe<ce&&(nt*=256);)tt+=this[ge+Qe]*nt;return nt*=128,tt>=nt&&(tt-=Math.pow(2,8*ce)),tt},t.prototype.readIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=ce,nt=1,Qe=this[ge+--tt];for(;tt>0&&(nt*=256);)Qe+=this[ge+--tt]*nt;return nt*=128,Qe>=nt&&(Qe-=Math.pow(2,8*ce)),Qe},t.prototype.readInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]&128?(255-this[ge]+1)*-1:this[ge]},t.prototype.readInt16LE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge]|this[ge+1]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt16BE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge+1]|this[ge]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]|this[ge+1]<<8|this[ge+2]<<16|this[ge+3]<<24},t.prototype.readInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]<<24|this[ge+1]<<16|this[ge+2]<<8|this[ge+3]},t.prototype.readBigInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=this[ge+4]+this[ge+5]*2**8+this[ge+6]*2**16+(ze<<24);return(BigInt(tt)<<BigInt(32))+BigInt(ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24)}),t.prototype.readBigInt64BE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=(ce<<24)+this[++ge]*2**16+this[++ge]*2**8+this[++ge];return(BigInt(tt)<<BigInt(32))+BigInt(this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze)}),t.prototype.readFloatLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!0,23,4)},t.prototype.readFloatBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!1,23,4)},t.prototype.readDoubleLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!0,52,8)},t.prototype.readDoubleBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!1,52,8)};function U(Me,ge,ce,ze,tt,nt){if(!t.isBuffer(Me))throw new TypeError('"buffer" argument must be a Buffer instance');if(ge>tt||ge<nt)throw new RangeError('"value" argument is out of bounds');if(ce+ze>Me.length)throw new RangeError("Index out of range")}t.prototype.writeUintLE=t.prototype.writeUIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=1,Qe=0;for(this[ce]=ge&255;++Qe<ze&&(nt*=256);)this[ce+Qe]=ge/nt&255;return ce+ze},t.prototype.writeUintBE=t.prototype.writeUIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=ze-1,Qe=1;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)this[ce+nt]=ge/Qe&255;return ce+ze},t.prototype.writeUint8=t.prototype.writeUInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,255,0),this[ce]=ge&255,ce+1},t.prototype.writeUint16LE=t.prototype.writeUInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeUint16BE=t.prototype.writeUInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeUint32LE=t.prototype.writeUInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce+3]=ge>>>24,this[ce+2]=ge>>>16,this[ce+1]=ge>>>8,this[ce]=ge&255,ce+4},t.prototype.writeUint32BE=t.prototype.writeUInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4};function W(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,ce}function Q(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce+7]=nt,nt=nt>>8,Me[ce+6]=nt,nt=nt>>8,Me[ce+5]=nt,nt=nt>>8,Me[ce+4]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce+3]=Qe,Qe=Qe>>8,Me[ce+2]=Qe,Qe=Qe>>8,Me[ce+1]=Qe,Qe=Qe>>8,Me[ce]=Qe,ce+8}t.prototype.writeBigUInt64LE=et(function(ge,ce=0){return W(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeBigUInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=0,Qe=1,Ct=0;for(this[ce]=ge&255;++nt<ze&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt-1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=ze-1,Qe=1,Ct=0;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt+1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,127,-128),ge<0&&(ge=255+ge+1),this[ce]=ge&255,ce+1},t.prototype.writeInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),this[ce]=ge&255,this[ce+1]=ge>>>8,this[ce+2]=ge>>>16,this[ce+3]=ge>>>24,ce+4},t.prototype.writeInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),ge<0&&(ge=4294967295+ge+1),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4},t.prototype.writeBigInt64LE=et(function(ge,ce=0){return W(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),t.prototype.writeBigInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ue(Me,ge,ce,ze,tt,nt){if(ce+ze>Me.length)throw new RangeError("Index out of range");if(ce<0)throw new RangeError("Index out of range")}function se(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,4,34028234663852886e22,-34028234663852886e22),g.write(Me,ge,ce,ze,23,4),ce+4}t.prototype.writeFloatLE=function(ge,ce,ze){return se(this,ge,ce,!0,ze)},t.prototype.writeFloatBE=function(ge,ce,ze){return se(this,ge,ce,!1,ze)};function he(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,8,17976931348623157e292,-17976931348623157e292),g.write(Me,ge,ce,ze,52,8),ce+8}t.prototype.writeDoubleLE=function(ge,ce,ze){return he(this,ge,ce,!0,ze)},t.prototype.writeDoubleBE=function(ge,ce,ze){return he(this,ge,ce,!1,ze)},t.prototype.copy=function(ge,ce,ze,tt){if(!t.isBuffer(ge))throw new TypeError("argument should be a Buffer");if(ze||(ze=0),!tt&&tt!==0&&(tt=this.length),ce>=ge.length&&(ce=ge.length),ce||(ce=0),tt>0&&tt<ze&&(tt=ze),tt===ze||ge.length===0||this.length===0)return 0;if(ce<0)throw new RangeError("targetStart out of bounds");if(ze<0||ze>=this.length)throw new RangeError("Index out of range");if(tt<0)throw new RangeError("sourceEnd out of bounds");tt>this.length&&(tt=this.length),ge.length-ce<tt-ze&&(tt=ge.length-ce+ze);let nt=tt-ze;return this===ge&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(ce,ze,tt):Uint8Array.prototype.set.call(ge,this.subarray(ze,tt),ce),nt},t.prototype.fill=function(ge,ce,ze,tt){if(typeof ge=="string"){if(typeof ce=="string"?(tt=ce,ce=0,ze=this.length):typeof ze=="string"&&(tt=ze,ze=this.length),tt!==void 0&&typeof tt!="string")throw new TypeError("encoding must be a string");if(typeof tt=="string"&&!t.isEncoding(tt))throw new TypeError("Unknown encoding: "+tt);if(ge.length===1){let Qe=ge.charCodeAt(0);(tt==="utf8"&&Qe<128||tt==="latin1")&&(ge=Qe)}}else typeof ge=="number"?ge=ge&255:typeof ge=="boolean"&&(ge=Number(ge));if(ce<0||this.length<ce||this.length<ze)throw new RangeError("Out of range index");if(ze<=ce)return this;ce=ce>>>0,ze=ze===void 0?this.length:ze>>>0,ge||(ge=0);let nt;if(typeof ge=="number")for(nt=ce;nt<ze;++nt)this[nt]=ge;else{let Qe=t.isBuffer(ge)?ge:t.from(ge,tt),Ct=Qe.length;if(Ct===0)throw new TypeError('The value "'+ge+'" is invalid for argument "value"');for(nt=0;nt<ze-ce;++nt)this[nt+ce]=Qe[nt%Ct]}return this};var G={};function $(Me,ge,ce){G[Me]=class extends ce{constructor(){super(),Object.defineProperty(this,"message",{value:ge.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${Me}]`,this.stack,delete this.name}get code(){return Me}set code(tt){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:tt,writable:!0})}toString(){return`${this.name} [${Me}]: ${this.message}`}}}$("ERR_BUFFER_OUT_OF_BOUNDS",function(Me){return Me?`${Me} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),$("ERR_INVALID_ARG_TYPE",function(Me,ge){return`The "${Me}" argument must be of type number. Received type ${typeof ge}`},TypeError),$("ERR_OUT_OF_RANGE",function(Me,ge,ce){let ze=`The value of "${Me}" is out of range.`,tt=ce;return Number.isInteger(ce)&&Math.abs(ce)>2**32?tt=J(String(ce)):typeof ce=="bigint"&&(tt=String(ce),(ce>BigInt(2)**BigInt(32)||ce<-(BigInt(2)**BigInt(32)))&&(tt=J(tt)),tt+="n"),ze+=` It must be ${ge}. Received ${tt}`,ze},RangeError);function J(Me){let ge="",ce=Me.length,ze=Me[0]==="-"?1:0;for(;ce>=ze+4;ce-=3)ge=`_${Me.slice(ce-3,ce)}${ge}`;return`${Me.slice(0,ce)}${ge}`}function Z(Me,ge,ce){ne(ge,"offset"),(Me[ge]===void 0||Me[ge+ce]===void 0)&&j(ge,Me.length-(ce+1))}function re(Me,ge,ce,ze,tt,nt){if(Me>ce||Me<ge){let Qe=typeof ge=="bigint"?"n":"",Ct;throw nt>3?ge===0||ge===BigInt(0)?Ct=`>= 0${Qe} and < 2${Qe} ** ${(nt+1)*8}${Qe}`:Ct=`>= -(2${Qe} ** ${(nt+1)*8-1}${Qe}) and < 2 ** ${(nt+1)*8-1}${Qe}`:Ct=`>= ${ge}${Qe} and <= ${ce}${Qe}`,new G.ERR_OUT_OF_RANGE("value",Ct,Me)}Z(ze,tt,nt)}function ne(Me,ge){if(typeof Me!="number")throw new G.ERR_INVALID_ARG_TYPE(ge,"number",Me)}function j(Me,ge,ce){throw Math.floor(Me)!==Me?(ne(Me,ce),new G.ERR_OUT_OF_RANGE(ce||"offset","an integer",Me)):ge<0?new G.ERR_BUFFER_OUT_OF_BOUNDS:new G.ERR_OUT_OF_RANGE(ce||"offset",`>= ${ce?1:0} and <= ${ge}`,Me)}var ee=/[^+/0-9A-Za-z-_]/g;function ie(Me){if(Me=Me.split("=")[0],Me=Me.trim().replace(ee,""),Me.length<2)return"";for(;Me.length%4!==0;)Me=Me+"=";return Me}function fe(Me,ge){ge=ge||1/0;let ce,ze=Me.length,tt=null,nt=[];for(let Qe=0;Qe<ze;++Qe){if(ce=Me.charCodeAt(Qe),ce>55295&&ce<57344){if(!tt){if(ce>56319){(ge-=3)>-1&&nt.push(239,191,189);continue}else if(Qe+1===ze){(ge-=3)>-1&&nt.push(239,191,189);continue}tt=ce;continue}if(ce<56320){(ge-=3)>-1&&nt.push(239,191,189),tt=ce;continue}ce=(tt-55296<<10|ce-56320)+65536}else tt&&(ge-=3)>-1&&nt.push(239,191,189);if(tt=null,ce<128){if((ge-=1)<0)break;nt.push(ce)}else if(ce<2048){if((ge-=2)<0)break;nt.push(ce>>6|192,ce&63|128)}else if(ce<65536){if((ge-=3)<0)break;nt.push(ce>>12|224,ce>>6&63|128,ce&63|128)}else if(ce<1114112){if((ge-=4)<0)break;nt.push(ce>>18|240,ce>>12&63|128,ce>>6&63|128,ce&63|128)}else throw new Error("Invalid code point")}return nt}function be(Me){let ge=[];for(let ce=0;ce<Me.length;++ce)ge.push(Me.charCodeAt(ce)&255);return ge}function Ae(Me,ge){let ce,ze,tt,nt=[];for(let Qe=0;Qe<Me.length&&!((ge-=2)<0);++Qe)ce=Me.charCodeAt(Qe),ze=ce>>8,tt=ce%256,nt.push(tt),nt.push(ze);return nt}function Be(Me){return H.toByteArray(ie(Me))}function Ie(Me,ge,ce,ze){let tt;for(tt=0;tt<ze&&!(tt+ce>=ge.length||tt>=Me.length);++tt)ge[tt+ce]=Me[tt];return tt}function Ze(Me,ge){return Me instanceof ge||Me!=null&&Me.constructor!=null&&Me.constructor.name!=null&&Me.constructor.name===ge.name}function at(Me){return Me!==Me}var it=function(){let Me="0123456789abcdef",ge=new Array(256);for(let ce=0;ce<16;++ce){let ze=ce*16;for(let tt=0;tt<16;++tt)ge[ze+tt]=Me[ce]+Me[tt]}return ge}();function et(Me){return typeof BigInt>"u"?lt:Me}function lt(){throw new Error("BigInt not supported")}}}),h3=Ye({"node_modules/has-symbols/shams.js"(X,H){"use strict";H.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var x={},A=Symbol("test"),M=Object(A);if(typeof A=="string"||Object.prototype.toString.call(A)!=="[object Symbol]"||Object.prototype.toString.call(M)!=="[object Symbol]")return!1;var e=42;x[A]=e;for(A in x)return!1;if(typeof Object.keys=="function"&&Object.keys(x).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(x).length!==0)return!1;var t=Object.getOwnPropertySymbols(x);if(t.length!==1||t[0]!==A||!Object.prototype.propertyIsEnumerable.call(x,A))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var r=Object.getOwnPropertyDescriptor(x,A);if(r.value!==e||r.enumerable!==!0)return!1}return!0}}}),q_=Ye({"node_modules/has-tostringtag/shams.js"(X,H){"use strict";var g=h3();H.exports=function(){return g()&&!!Symbol.toStringTag}}}),s4=Ye({"node_modules/es-errors/index.js"(X,H){"use strict";H.exports=Error}}),l4=Ye({"node_modules/es-errors/eval.js"(X,H){"use strict";H.exports=EvalError}}),u4=Ye({"node_modules/es-errors/range.js"(X,H){"use strict";H.exports=RangeError}}),c4=Ye({"node_modules/es-errors/ref.js"(X,H){"use strict";H.exports=ReferenceError}}),DM=Ye({"node_modules/es-errors/syntax.js"(X,H){"use strict";H.exports=SyntaxError}}),H_=Ye({"node_modules/es-errors/type.js"(X,H){"use strict";H.exports=TypeError}}),f4=Ye({"node_modules/es-errors/uri.js"(X,H){"use strict";H.exports=URIError}}),h4=Ye({"node_modules/has-symbols/index.js"(X,H){"use strict";var g=typeof Symbol<"u"&&Symbol,x=h3();H.exports=function(){return typeof g!="function"||typeof Symbol!="function"||typeof g("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:x()}}}),p4=Ye({"node_modules/has-proto/index.js"(X,H){"use strict";var g={foo:{}},x=Object;H.exports=function(){return{__proto__:g}.foo===g.foo&&!({__proto__:null}instanceof x)}}}),d4=Ye({"node_modules/function-bind/implementation.js"(X,H){"use strict";var g="Function.prototype.bind called on incompatible ",x=Object.prototype.toString,A=Math.max,M="[object Function]",e=function(a,i){for(var n=[],s=0;s<a.length;s+=1)n[s]=a[s];for(var c=0;c<i.length;c+=1)n[c+a.length]=i[c];return n},t=function(a,i){for(var n=[],s=i||0,c=0;s<a.length;s+=1,c+=1)n[c]=a[s];return n},r=function(o,a){for(var i="",n=0;n<o.length;n+=1)i+=o[n],n+1<o.length&&(i+=a);return i};H.exports=function(a){var i=this;if(typeof i!="function"||x.apply(i)!==M)throw new TypeError(g+i);for(var n=t(arguments,1),s,c=function(){if(this instanceof s){var l=i.apply(this,e(n,arguments));return Object(l)===l?l:this}return i.apply(a,e(n,arguments))},h=A(0,i.length-n.length),v=[],p=0;p<h;p++)v[p]="$"+p;if(s=Function("binder","return function ("+r(v,",")+"){ return binder.apply(this,arguments); }")(c),i.prototype){var T=function(){};T.prototype=i.prototype,s.prototype=new T,T.prototype=null}return s}}}),p3=Ye({"node_modules/function-bind/index.js"(X,H){"use strict";var g=d4();H.exports=Function.prototype.bind||g}}),v4=Ye({"node_modules/hasown/index.js"(X,H){"use strict";var g=Function.prototype.call,x=Object.prototype.hasOwnProperty,A=p3();H.exports=A.call(g,x)}}),v1=Ye({"node_modules/get-intrinsic/index.js"(X,H){"use strict";var g,x=s4(),A=l4(),M=u4(),e=c4(),t=DM(),r=H_(),o=f4(),a=Function,i=function(O){try{return a('"use strict"; return ('+O+").constructor;")()}catch{}},n=Object.getOwnPropertyDescriptor;if(n)try{n({},"")}catch{n=null}var s=function(){throw new r},c=n?function(){try{return arguments.callee,s}catch{try{return n(arguments,"callee").get}catch{return s}}}():s,h=h4()(),v=p4()(),p=Object.getPrototypeOf||(v?function(O){return O.__proto__}:null),T={},l=typeof Uint8Array>"u"||!p?g:p(Uint8Array),_={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?g:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?g:ArrayBuffer,"%ArrayIteratorPrototype%":h&&p?p([][Symbol.iterator]()):g,"%AsyncFromSyncIteratorPrototype%":g,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?g:Atomics,"%BigInt%":typeof BigInt>"u"?g:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?g:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?g:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?g:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":x,"%eval%":eval,"%EvalError%":A,"%Float32Array%":typeof Float32Array>"u"?g:Float32Array,"%Float64Array%":typeof Float64Array>"u"?g:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?g:FinalizationRegistry,"%Function%":a,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?g:Int8Array,"%Int16Array%":typeof Int16Array>"u"?g:Int16Array,"%Int32Array%":typeof Int32Array>"u"?g:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":h&&p?p(p([][Symbol.iterator]())):g,"%JSON%":typeof JSON=="object"?JSON:g,"%Map%":typeof Map>"u"?g:Map,"%MapIteratorPrototype%":typeof Map>"u"||!h||!p?g:p(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?g:Promise,"%Proxy%":typeof Proxy>"u"?g:Proxy,"%RangeError%":M,"%ReferenceError%":e,"%Reflect%":typeof Reflect>"u"?g:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?g:Set,"%SetIteratorPrototype%":typeof Set>"u"||!h||!p?g:p(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?g:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":h&&p?p(""[Symbol.iterator]()):g,"%Symbol%":h?Symbol:g,"%SyntaxError%":t,"%ThrowTypeError%":c,"%TypedArray%":l,"%TypeError%":r,"%Uint8Array%":typeof Uint8Array>"u"?g:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?g:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?g:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?g:Uint32Array,"%URIError%":o,"%WeakMap%":typeof WeakMap>"u"?g:WeakMap,"%WeakRef%":typeof WeakRef>"u"?g:WeakRef,"%WeakSet%":typeof WeakSet>"u"?g:WeakSet};if(p)try{null.error}catch(O){w=p(p(O)),_["%Error.prototype%"]=w}var w,S=function O(I){var N;if(I==="%AsyncFunction%")N=i("async function () {}");else if(I==="%GeneratorFunction%")N=i("function* () {}");else if(I==="%AsyncGeneratorFunction%")N=i("async function* () {}");else if(I==="%AsyncGenerator%"){var U=O("%AsyncGeneratorFunction%");U&&(N=U.prototype)}else if(I==="%AsyncIteratorPrototype%"){var W=O("%AsyncGenerator%");W&&p&&(N=p(W.prototype))}return _[I]=N,N},E={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},m=p3(),b=v4(),d=m.call(Function.call,Array.prototype.concat),u=m.call(Function.apply,Array.prototype.splice),y=m.call(Function.call,String.prototype.replace),f=m.call(Function.call,String.prototype.slice),P=m.call(Function.call,RegExp.prototype.exec),L=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,z=/\\(\\)?/g,F=function(I){var N=f(I,0,1),U=f(I,-1);if(N==="%"&&U!=="%")throw new t("invalid intrinsic syntax, expected closing `%`");if(U==="%"&&N!=="%")throw new t("invalid intrinsic syntax, expected opening `%`");var W=[];return y(I,L,function(Q,ue,se,he){W[W.length]=se?y(he,z,"$1"):ue||Q}),W},B=function(I,N){var U=I,W;if(b(E,U)&&(W=E[U],U="%"+W[0]+"%"),b(_,U)){var Q=_[U];if(Q===T&&(Q=S(U)),typeof Q>"u"&&!N)throw new r("intrinsic "+I+" exists, but is not available. Please file an issue!");return{alias:W,name:U,value:Q}}throw new t("intrinsic "+I+" does not exist!")};H.exports=function(I,N){if(typeof I!="string"||I.length===0)throw new r("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof N!="boolean")throw new r('"allowMissing" argument must be a boolean');if(P(/^%?[^%]*%?$/,I)===null)throw new t("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var U=F(I),W=U.length>0?U[0]:"",Q=B("%"+W+"%",N),ue=Q.name,se=Q.value,he=!1,G=Q.alias;G&&(W=G[0],u(U,d([0,1],G)));for(var $=1,J=!0;$<U.length;$+=1){var Z=U[$],re=f(Z,0,1),ne=f(Z,-1);if((re==='"'||re==="'"||re==="`"||ne==='"'||ne==="'"||ne==="`")&&re!==ne)throw new t("property names with quotes must have matching quotes");if((Z==="constructor"||!J)&&(he=!0),W+="."+Z,ue="%"+W+"%",b(_,ue))se=_[ue];else if(se!=null){if(!(Z in se)){if(!N)throw new r("base intrinsic for "+I+" exists, but the property is not available.");return}if(n&&$+1>=U.length){var j=n(se,Z);J=!!j,J&&"get"in j&&!("originalValue"in j.get)?se=j.get:se=se[Z]}else J=b(se,Z),se=se[Z];J&&!he&&(_[ue]=se)}}return se}}}),d3=Ye({"node_modules/es-define-property/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.defineProperty%",!0)||!1;if(x)try{x({},"a",{value:1})}catch{x=!1}H.exports=x}}),G_=Ye({"node_modules/gopd/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.getOwnPropertyDescriptor%",!0);if(x)try{x([],"length")}catch{x=null}H.exports=x}}),m4=Ye({"node_modules/define-data-property/index.js"(X,H){"use strict";var g=d3(),x=DM(),A=H_(),M=G_();H.exports=function(t,r,o){if(!t||typeof t!="object"&&typeof t!="function")throw new A("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new A("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new A("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new A("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new A("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new A("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,n=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,c=!!M&&M(t,r);if(g)g(t,r,{configurable:n===null&&c?c.configurable:!n,enumerable:a===null&&c?c.enumerable:!a,value:o,writable:i===null&&c?c.writable:!i});else if(s||!a&&!i&&!n)t[r]=o;else throw new x("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}}}),zM=Ye({"node_modules/has-property-descriptors/index.js"(X,H){"use strict";var g=d3(),x=function(){return!!g};x.hasArrayLengthDefineBug=function(){if(!g)return null;try{return g([],"length",{value:1}).length!==1}catch{return!0}},H.exports=x}}),g4=Ye({"node_modules/set-function-length/index.js"(X,H){"use strict";var g=v1(),x=m4(),A=zM()(),M=G_(),e=H_(),t=g("%Math.floor%");H.exports=function(o,a){if(typeof o!="function")throw new e("`fn` is not a function");if(typeof a!="number"||a<0||a>4294967295||t(a)!==a)throw new e("`length` must be a positive 32-bit integer");var i=arguments.length>2&&!!arguments[2],n=!0,s=!0;if("length"in o&&M){var c=M(o,"length");c&&!c.configurable&&(n=!1),c&&!c.writable&&(s=!1)}return(n||s||!i)&&(A?x(o,"length",a,!0,!0):x(o,"length",a)),o}}}),W_=Ye({"node_modules/call-bind/index.js"(X,H){"use strict";var g=p3(),x=v1(),A=g4(),M=H_(),e=x("%Function.prototype.apply%"),t=x("%Function.prototype.call%"),r=x("%Reflect.apply%",!0)||g.call(t,e),o=d3(),a=x("%Math.max%");H.exports=function(s){if(typeof s!="function")throw new M("a function is required");var c=r(g,t,arguments);return A(c,1+a(0,s.length-(arguments.length-1)),!0)};var i=function(){return r(g,e,arguments)};o?o(H.exports,"apply",{value:i}):H.exports.apply=i}}),m1=Ye({"node_modules/call-bind/callBound.js"(X,H){"use strict";var g=v1(),x=W_(),A=x(g("String.prototype.indexOf"));H.exports=function(e,t){var r=g(e,!!t);return typeof r=="function"&&A(e,".prototype.")>-1?x(r):r}}}),y4=Ye({"node_modules/is-arguments/index.js"(X,H){"use strict";var g=q_()(),x=m1(),A=x("Object.prototype.toString"),M=function(o){return g&&o&&typeof o=="object"&&Symbol.toStringTag in o?!1:A(o)==="[object Arguments]"},e=function(o){return M(o)?!0:o!==null&&typeof o=="object"&&typeof o.length=="number"&&o.length>=0&&A(o)!=="[object Array]"&&A(o.callee)==="[object Function]"},t=function(){return M(arguments)}();M.isLegacyArguments=e,H.exports=t?M:e}}),_4=Ye({"node_modules/is-generator-function/index.js"(X,H){"use strict";var g=Object.prototype.toString,x=Function.prototype.toString,A=/^\s*(?:function)?\*/,M=q_()(),e=Object.getPrototypeOf,t=function(){if(!M)return!1;try{return Function("return function*() {}")()}catch{}},r;H.exports=function(a){if(typeof a!="function")return!1;if(A.test(x.call(a)))return!0;if(!M){var i=g.call(a);return i==="[object GeneratorFunction]"}if(!e)return!1;if(typeof r>"u"){var n=t();r=n?e(n):!1}return e(a)===r}}}),x4=Ye({"node_modules/is-callable/index.js"(X,H){"use strict";var g=Function.prototype.toString,x=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,A,M;if(typeof x=="function"&&typeof Object.defineProperty=="function")try{A=Object.defineProperty({},"length",{get:function(){throw M}}),M={},x(function(){throw 42},null,A)}catch(_){_!==M&&(x=null)}else x=null;var e=/^\s*class\b/,t=function(w){try{var S=g.call(w);return e.test(S)}catch{return!1}},r=function(w){try{return t(w)?!1:(g.call(w),!0)}catch{return!1}},o=Object.prototype.toString,a="[object Object]",i="[object Function]",n="[object GeneratorFunction]",s="[object HTMLAllCollection]",c="[object HTML document.all class]",h="[object HTMLCollection]",v=typeof Symbol=="function"&&!!Symbol.toStringTag,p=!(0 in[,]),T=function(){return!1};typeof document=="object"&&(l=document.all,o.call(l)===o.call(document.all)&&(T=function(w){if((p||!w)&&(typeof w>"u"||typeof w=="object"))try{var S=o.call(w);return(S===s||S===c||S===h||S===a)&&w("")==null}catch{}return!1}));var l;H.exports=x?function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;try{x(w,null,A)}catch(S){if(S!==M)return!1}return!t(w)&&r(w)}:function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;if(v)return r(w);if(t(w))return!1;var S=o.call(w);return S!==i&&S!==n&&!/^\[object HTML/.test(S)?!1:r(w)}}}),FM=Ye({"node_modules/for-each/index.js"(X,H){"use strict";var g=x4(),x=Object.prototype.toString,A=Object.prototype.hasOwnProperty,M=function(a,i,n){for(var s=0,c=a.length;s<c;s++)A.call(a,s)&&(n==null?i(a[s],s,a):i.call(n,a[s],s,a))},e=function(a,i,n){for(var s=0,c=a.length;s<c;s++)n==null?i(a.charAt(s),s,a):i.call(n,a.charAt(s),s,a)},t=function(a,i,n){for(var s in a)A.call(a,s)&&(n==null?i(a[s],s,a):i.call(n,a[s],s,a))},r=function(a,i,n){if(!g(i))throw new TypeError("iterator must be a function");var s;arguments.length>=3&&(s=n),x.call(a)==="[object Array]"?M(a,i,s):typeof a=="string"?e(a,i,s):t(a,i,s)};H.exports=r}}),OM=Ye({"node_modules/available-typed-arrays/index.js"(X,H){"use strict";var g=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],x=typeof globalThis>"u"?window:globalThis;H.exports=function(){for(var M=[],e=0;e<g.length;e++)typeof x[g[e]]=="function"&&(M[M.length]=g[e]);return M}}}),b4=Ye({"node_modules/which-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=W_(),M=m1(),e=G_(),t=M("Object.prototype.toString"),r=q_()(),o=typeof globalThis>"u"?window:globalThis,a=x(),i=M("String.prototype.slice"),n=Object.getPrototypeOf,s=M("Array.prototype.indexOf",!0)||function(T,l){for(var _=0;_<T.length;_+=1)if(T[_]===l)return _;return-1},c={__proto__:null};r&&e&&n?g(a,function(p){var T=new o[p];if(Symbol.toStringTag in T){var l=n(T),_=e(l,Symbol.toStringTag);if(!_){var w=n(l);_=e(w,Symbol.toStringTag)}c["$"+p]=A(_.get)}}):g(a,function(p){var T=new o[p],l=T.slice||T.set;l&&(c["$"+p]=A(l))});var h=function(T){var l=!1;return g(c,function(_,w){if(!l)try{"$"+_(T)===w&&(l=i(w,1))}catch{}}),l},v=function(T){var l=!1;return g(c,function(_,w){if(!l)try{_(T),l=i(w,1)}catch{}}),l};H.exports=function(T){if(!T||typeof T!="object")return!1;if(!r){var l=i(t(T),8,-1);return s(a,l)>-1?l:l!=="Object"?!1:v(T)}return e?h(T):null}}}),w4=Ye({"node_modules/is-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=m1(),M=A("Object.prototype.toString"),e=q_()(),t=G_(),r=typeof globalThis>"u"?window:globalThis,o=x(),a=A("Array.prototype.indexOf",!0)||function(v,p){for(var T=0;T<v.length;T+=1)if(v[T]===p)return T;return-1},i=A("String.prototype.slice"),n={},s=Object.getPrototypeOf;e&&t&&s&&g(o,function(h){var v=new r[h];if(Symbol.toStringTag in v){var p=s(v),T=t(p,Symbol.toStringTag);if(!T){var l=s(p);T=t(l,Symbol.toStringTag)}n[h]=T.get}});var c=function(v){var p=!1;return g(n,function(T,l){if(!p)try{p=T.call(v)===l}catch{}}),p};H.exports=function(v){if(!v||typeof v!="object")return!1;if(!e||!(Symbol.toStringTag in v)){var p=i(M(v),8,-1);return a(o,p)>-1}return t?c(v):!1}}}),BM=Ye({"node_modules/util/support/types.js"(X){"use strict";var H=y4(),g=_4(),x=b4(),A=w4();function M(Ae){return Ae.call.bind(Ae)}var e=typeof BigInt<"u",t=typeof Symbol<"u",r=M(Object.prototype.toString),o=M(Number.prototype.valueOf),a=M(String.prototype.valueOf),i=M(Boolean.prototype.valueOf);e&&(n=M(BigInt.prototype.valueOf));var n;t&&(s=M(Symbol.prototype.valueOf));var s;function c(Ae,Be){if(typeof Ae!="object")return!1;try{return Be(Ae),!0}catch{return!1}}X.isArgumentsObject=H,X.isGeneratorFunction=g,X.isTypedArray=A;function h(Ae){return typeof Promise<"u"&&Ae instanceof Promise||Ae!==null&&typeof Ae=="object"&&typeof Ae.then=="function"&&typeof Ae.catch=="function"}X.isPromise=h;function v(Ae){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Ae):A(Ae)||W(Ae)}X.isArrayBufferView=v;function p(Ae){return x(Ae)==="Uint8Array"}X.isUint8Array=p;function T(Ae){return x(Ae)==="Uint8ClampedArray"}X.isUint8ClampedArray=T;function l(Ae){return x(Ae)==="Uint16Array"}X.isUint16Array=l;function _(Ae){return x(Ae)==="Uint32Array"}X.isUint32Array=_;function w(Ae){return x(Ae)==="Int8Array"}X.isInt8Array=w;function S(Ae){return x(Ae)==="Int16Array"}X.isInt16Array=S;function E(Ae){return x(Ae)==="Int32Array"}X.isInt32Array=E;function m(Ae){return x(Ae)==="Float32Array"}X.isFloat32Array=m;function b(Ae){return x(Ae)==="Float64Array"}X.isFloat64Array=b;function d(Ae){return x(Ae)==="BigInt64Array"}X.isBigInt64Array=d;function u(Ae){return x(Ae)==="BigUint64Array"}X.isBigUint64Array=u;function y(Ae){return r(Ae)==="[object Map]"}y.working=typeof Map<"u"&&y(new Map);function f(Ae){return typeof Map>"u"?!1:y.working?y(Ae):Ae instanceof Map}X.isMap=f;function P(Ae){return r(Ae)==="[object Set]"}P.working=typeof Set<"u"&&P(new Set);function L(Ae){return typeof Set>"u"?!1:P.working?P(Ae):Ae instanceof Set}X.isSet=L;function z(Ae){return r(Ae)==="[object WeakMap]"}z.working=typeof WeakMap<"u"&&z(new WeakMap);function F(Ae){return typeof WeakMap>"u"?!1:z.working?z(Ae):Ae instanceof WeakMap}X.isWeakMap=F;function B(Ae){return r(Ae)==="[object WeakSet]"}B.working=typeof WeakSet<"u"&&B(new WeakSet);function O(Ae){return B(Ae)}X.isWeakSet=O;function I(Ae){return r(Ae)==="[object ArrayBuffer]"}I.working=typeof ArrayBuffer<"u"&&I(new ArrayBuffer);function N(Ae){return typeof ArrayBuffer>"u"?!1:I.working?I(Ae):Ae instanceof ArrayBuffer}X.isArrayBuffer=N;function U(Ae){return r(Ae)==="[object DataView]"}U.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&U(new DataView(new ArrayBuffer(1),0,1));function W(Ae){return typeof DataView>"u"?!1:U.working?U(Ae):Ae instanceof DataView}X.isDataView=W;var Q=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function ue(Ae){return r(Ae)==="[object SharedArrayBuffer]"}function se(Ae){return typeof Q>"u"?!1:(typeof ue.working>"u"&&(ue.working=ue(new Q)),ue.working?ue(Ae):Ae instanceof Q)}X.isSharedArrayBuffer=se;function he(Ae){return r(Ae)==="[object AsyncFunction]"}X.isAsyncFunction=he;function G(Ae){return r(Ae)==="[object Map Iterator]"}X.isMapIterator=G;function $(Ae){return r(Ae)==="[object Set Iterator]"}X.isSetIterator=$;function J(Ae){return r(Ae)==="[object Generator]"}X.isGeneratorObject=J;function Z(Ae){return r(Ae)==="[object WebAssembly.Module]"}X.isWebAssemblyCompiledModule=Z;function re(Ae){return c(Ae,o)}X.isNumberObject=re;function ne(Ae){return c(Ae,a)}X.isStringObject=ne;function j(Ae){return c(Ae,i)}X.isBooleanObject=j;function ee(Ae){return e&&c(Ae,n)}X.isBigIntObject=ee;function ie(Ae){return t&&c(Ae,s)}X.isSymbolObject=ie;function fe(Ae){return re(Ae)||ne(Ae)||j(Ae)||ee(Ae)||ie(Ae)}X.isBoxedPrimitive=fe;function be(Ae){return typeof Uint8Array<"u"&&(N(Ae)||se(Ae))}X.isAnyArrayBuffer=be,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Ae){Object.defineProperty(X,Ae,{enumerable:!1,value:function(){throw new Error(Ae+" is not supported in userland")}})})}}),NM=Ye({"node_modules/util/support/isBufferBrowser.js"(X,H){H.exports=function(x){return x&&typeof x=="object"&&typeof x.copy=="function"&&typeof x.fill=="function"&&typeof x.readUInt8=="function"}}}),UM=Ye({"(disabled):node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se<Q.length;se++)ue[Q[se]]=Object.getOwnPropertyDescriptor(W,Q[se]);return ue},g=/%[sdj%]/g;X.format=function(U){if(!w(U)){for(var W=[],Q=0;Q<arguments.length;Q++)W.push(e(arguments[Q]));return W.join(" ")}for(var Q=1,ue=arguments,se=ue.length,he=String(U).replace(g,function($){if($==="%%")return"%";if(Q>=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q<se;G=ue[++Q])T(G)||!b(G)?he+=" "+G:he+=" "+e(G);return he},X.deprecate=function(U,W){if(typeof process<"u"&&process.noDeprecation===!0)return U;if(typeof process>"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(`
`)>-1&&(he?$=$.split(`
`).map(function(Z){return"  "+Z}).join(`
`).slice(2):$=`
`+$.split(`
`).map(function(Z){return"   "+Z}).join(`
`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(`
`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+`
 `)+" "+U.join(`,
  `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$<arguments.length;$++)G.push(arguments[$]);G.push(function(J,Z){J?se(J):ue(Z)});try{W.apply(this,G)}catch(J){se(J)}return he}return Object.setPrototypeOf(Q,Object.getPrototypeOf(W)),O&&Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(Q,H(W))},X.promisify.custom=O;function I(U,W){if(!U){var Q=new Error("Promise was rejected with a falsy value");Q.reason=U,U=Q}return W(U)}function N(U){if(typeof U!="function")throw new TypeError('The "original" argument must be of type Function');function W(){for(var Q=[],ue=0;ue<arguments.length;ue++)Q.push(arguments[ue]);var se=Q.pop();if(typeof se!="function")throw new TypeError("The last argument must be of type Function");var he=this,G=function(){return se.apply(he,arguments)};U.apply(this,Q).then(function($){process.nextTick(G.bind(null,null,$))},function($){process.nextTick(I.bind(null,$,G))})}return Object.setPrototypeOf(W,Object.getPrototypeOf(U)),Object.defineProperties(W,H(U)),W}X.callbackify=N}}),T4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(X,H){"use strict";function g(c,h){var v=Object.keys(c);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(c);h&&(p=p.filter(function(T){return Object.getOwnPropertyDescriptor(c,T).enumerable})),v.push.apply(v,p)}return v}function x(c){for(var h=1;h<arguments.length;h++){var v=arguments[h]!=null?arguments[h]:{};h%2?g(Object(v),!0).forEach(function(p){A(c,p,v[p])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(v)):g(Object(v)).forEach(function(p){Object.defineProperty(c,p,Object.getOwnPropertyDescriptor(v,p))})}return c}function A(c,h,v){return h in c?Object.defineProperty(c,h,{value:v,enumerable:!0,configurable:!0,writable:!0}):c[h]=v,c}function M(c,h){if(!(c instanceof h))throw new TypeError("Cannot call a class as a function")}function e(c,h){for(var v=0;v<h.length;v++){var p=h[v];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(c,p.key,p)}}function t(c,h,v){return h&&e(c.prototype,h),v&&e(c,v),c}var r=t0(),o=r.Buffer,a=UM(),i=a.inspect,n=i&&i.custom||"inspect";function s(c,h,v){o.prototype.copy.call(c,h,v)}H.exports=function(){function c(){M(this,c),this.head=null,this.tail=null,this.length=0}return t(c,[{key:"push",value:function(v){var p={data:v,next:null};this.length>0?this.tail.next=p:this.head=p,this.tail=p,++this.length}},{key:"unshift",value:function(v){var p={data:v,next:this.head};this.length===0&&(this.tail=p),this.head=p,++this.length}},{key:"shift",value:function(){if(this.length!==0){var v=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,v}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(v){if(this.length===0)return"";for(var p=this.head,T=""+p.data;p=p.next;)T+=v+p.data;return T}},{key:"concat",value:function(v){if(this.length===0)return o.alloc(0);for(var p=o.allocUnsafe(v>>>0),T=this.head,l=0;T;)s(T.data,p,l),l+=T.data.length,T=T.next;return p}},{key:"consume",value:function(v,p){var T;return v<this.head.data.length?(T=this.head.data.slice(0,v),this.head.data=this.head.data.slice(v)):v===this.head.data.length?T=this.shift():T=p?this._getString(v):this._getBuffer(v),T}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(v){var p=this.head,T=1,l=p.data;for(v-=l.length;p=p.next;){var _=p.data,w=v>_.length?_.length:v;if(w===_.length?l+=_:l+=_.slice(0,v),v-=w,v===0){w===_.length?(++T,p.next?this.head=p.next:this.head=this.tail=null):(this.head=p,p.data=_.slice(w));break}++T}return this.length-=T,l}},{key:"_getBuffer",value:function(v){var p=o.allocUnsafe(v),T=this.head,l=1;for(T.data.copy(p),v-=T.data.length;T=T.next;){var _=T.data,w=v>_.length?_.length:v;if(_.copy(p,p.length-v,0,w),v-=w,v===0){w===_.length?(++l,T.next?this.head=T.next:this.head=this.tail=null):(this.head=T,T.data=_.slice(w));break}++l}return this.length-=l,p}},{key:n,value:function(v,p){return i(this,x({},p,{depth:0,customInspect:!1}))}}]),c}()}}),jM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/destroy.js"(X,H){"use strict";function g(r,o){var a=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(e,this,r)):process.nextTick(e,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(s){!o&&s?a._writableState?a._writableState.errorEmitted?process.nextTick(A,a):(a._writableState.errorEmitted=!0,process.nextTick(x,a,s)):process.nextTick(x,a,s):o?(process.nextTick(A,a),o(s)):process.nextTick(A,a)}),this)}function x(r,o){e(r,o),A(r)}function A(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function M(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function e(r,o){r.emit("error",o)}function t(r,o){var a=r._readableState,i=r._writableState;a&&a.autoDestroy||i&&i.autoDestroy?r.destroy(o):r.emit("error",o)}H.exports={destroy:g,undestroy:M,errorOrDestroy:t}}}),r0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/errors-browser.js"(X,H){"use strict";function g(o,a){o.prototype=Object.create(a.prototype),o.prototype.constructor=o,o.__proto__=a}var x={};function A(o,a,i){i||(i=Error);function n(c,h,v){return typeof a=="string"?a:a(c,h,v)}var s=function(c){g(h,c);function h(v,p,T){return c.call(this,n(v,p,T))||this}return h}(i);s.prototype.name=i.name,s.prototype.code=o,x[o]=s}function M(o,a){if(Array.isArray(o)){var i=o.length;return o=o.map(function(n){return String(n)}),i>2?"one of ".concat(a," ").concat(o.slice(0,i-1).join(", "),", or ")+o[i-1]:i===2?"one of ".concat(a," ").concat(o[0]," or ").concat(o[1]):"of ".concat(a," ").concat(o[0])}else return"of ".concat(a," ").concat(String(o))}function e(o,a,i){return o.substr(!i||i<0?0:+i,a.length)===a}function t(o,a,i){return(i===void 0||i>o.length)&&(i=o.length),o.substring(i-a.length,i)===a}function r(o,a,i){return typeof i!="number"&&(i=0),i+a.length>o.length?!1:o.indexOf(a,i)!==-1}A("ERR_INVALID_OPT_VALUE",function(o,a){return'The value "'+a+'" is invalid for option "'+o+'"'},TypeError),A("ERR_INVALID_ARG_TYPE",function(o,a,i){var n;typeof a=="string"&&e(a,"not ")?(n="must not be",a=a.replace(/^not /,"")):n="must be";var s;if(t(o," argument"))s="The ".concat(o," ").concat(n," ").concat(M(a,"type"));else{var c=r(o,".")?"property":"argument";s='The "'.concat(o,'" ').concat(c," ").concat(n," ").concat(M(a,"type"))}return s+=". Received type ".concat(typeof i),s},TypeError),A("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),A("ERR_METHOD_NOT_IMPLEMENTED",function(o){return"The "+o+" method is not implemented"}),A("ERR_STREAM_PREMATURE_CLOSE","Premature close"),A("ERR_STREAM_DESTROYED",function(o){return"Cannot call "+o+" after a stream was destroyed"}),A("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),A("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),A("ERR_STREAM_WRITE_AFTER_END","write after end"),A("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),A("ERR_UNKNOWN_ENCODING",function(o){return"Unknown encoding: "+o},TypeError),A("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),H.exports.codes=x}}),VM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/state.js"(X,H){"use strict";var g=r0().codes.ERR_INVALID_OPT_VALUE;function x(M,e,t){return M.highWaterMark!=null?M.highWaterMark:e?M[t]:null}function A(M,e,t,r){var o=x(e,r,t);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var a=r?t:"highWaterMark";throw new g(a,o)}return Math.floor(o)}return M.objectMode?16:16*1024}H.exports={getHighWaterMark:A}}}),A4=Ye({"node_modules/util-deprecate/browser.js"(X,H){H.exports=g;function g(A,M){if(x("noDeprecation"))return A;var e=!1;function t(){if(!e){if(x("throwDeprecation"))throw new Error(M);x("traceDeprecation")?console.trace(M):console.warn(M),e=!0}return A.apply(this,arguments)}return t}function x(A){try{if(!window.localStorage)return!1}catch{return!1}var M=window.localStorage[A];return M==null?!1:String(M).toLowerCase()==="true"}}}),qM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_writable.js"(X,H){"use strict";H.exports=d;function g(G){var $=this;this.next=null,this.entry=null,this.finish=function(){he($,G)}}var x;d.WritableState=m;var A={deprecate:A4()},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(G){return e.from(G)}function o(G){return e.isBuffer(G)||G instanceof t}var a=jM(),i=VM(),n=i.getHighWaterMark,s=r0().codes,c=s.ERR_INVALID_ARG_TYPE,h=s.ERR_METHOD_NOT_IMPLEMENTED,v=s.ERR_MULTIPLE_CALLBACK,p=s.ERR_STREAM_CANNOT_PIPE,T=s.ERR_STREAM_DESTROYED,l=s.ERR_STREAM_NULL_VALUES,_=s.ERR_STREAM_WRITE_AFTER_END,w=s.ERR_UNKNOWN_ENCODING,S=a.errorOrDestroy;Yv()(d,M);function E(){}function m(G,$,J){x=x||a0(),G=G||{},typeof J!="boolean"&&(J=$ instanceof x),this.objectMode=!!G.objectMode,J&&(this.objectMode=this.objectMode||!!G.writableObjectMode),this.highWaterMark=n(this,G,"writableHighWaterMark",J),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Z=G.decodeStrings===!1;this.decodeStrings=!Z,this.defaultEncoding=G.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(re){B($,re)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=G.emitClose!==!1,this.autoDestroy=!!G.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new g(this)}m.prototype.getBuffer=function(){for(var $=this.bufferedRequest,J=[];$;)J.push($),$=$.next;return J},function(){try{Object.defineProperty(m.prototype,"buffer",{get:A.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var b;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(b=Function.prototype[Symbol.hasInstance],Object.defineProperty(d,Symbol.hasInstance,{value:function($){return b.call(this,$)?!0:this!==d?!1:$&&$._writableState instanceof m}})):b=function($){return $ instanceof this};function d(G){x=x||a0();var $=this instanceof x;if(!$&&!b.call(d,this))return new d(G);this._writableState=new m(G,this,$),this.writable=!0,G&&(typeof G.write=="function"&&(this._write=G.write),typeof G.writev=="function"&&(this._writev=G.writev),typeof G.destroy=="function"&&(this._destroy=G.destroy),typeof G.final=="function"&&(this._final=G.final)),M.call(this)}d.prototype.pipe=function(){S(this,new p)};function u(G,$){var J=new _;S(G,J),process.nextTick($,J)}function y(G,$,J,Z){var re;return J===null?re=new l:typeof J!="string"&&!$.objectMode&&(re=new c("chunk",["string","Buffer"],J)),re?(S(G,re),process.nextTick(Z,re),!1):!0}d.prototype.write=function(G,$,J){var Z=this._writableState,re=!1,ne=!Z.objectMode&&o(G);return ne&&!e.isBuffer(G)&&(G=r(G)),typeof $=="function"&&(J=$,$=null),ne?$="buffer":$||($=Z.defaultEncoding),typeof J!="function"&&(J=E),Z.ending?u(this,J):(ne||y(this,Z,G,J))&&(Z.pendingcb++,re=P(this,Z,ne,G,$,J)),re},d.prototype.cork=function(){this._writableState.corked++},d.prototype.uncork=function(){var G=this._writableState;G.corked&&(G.corked--,!G.writing&&!G.corked&&!G.bufferProcessing&&G.bufferedRequest&&N(this,G))},d.prototype.setDefaultEncoding=function($){if(typeof $=="string"&&($=$.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf(($+"").toLowerCase())>-1))throw new w($);return this._writableState.defaultEncoding=$,this},Object.defineProperty(d.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function f(G,$,J){return!G.objectMode&&G.decodeStrings!==!1&&typeof $=="string"&&($=e.from($,J)),$}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function P(G,$,J,Z,re,ne){if(!J){var j=f($,Z,re);Z!==j&&(J=!0,re="buffer",Z=j)}var ee=$.objectMode?1:Z.length;$.length+=ee;var ie=$.length<$.highWaterMark;if(ie||($.needDrain=!0),$.writing||$.corked){var fe=$.lastBufferedRequest;$.lastBufferedRequest={chunk:Z,encoding:re,isBuf:J,callback:ne,next:null},fe?fe.next=$.lastBufferedRequest:$.bufferedRequest=$.lastBufferedRequest,$.bufferedRequestCount+=1}else L(G,$,!1,ee,Z,re,ne);return ie}function L(G,$,J,Z,re,ne,j){$.writelen=Z,$.writecb=j,$.writing=!0,$.sync=!0,$.destroyed?$.onwrite(new T("write")):J?G._writev(re,$.onwrite):G._write(re,ne,$.onwrite),$.sync=!1}function z(G,$,J,Z,re){--$.pendingcb,J?(process.nextTick(re,Z),process.nextTick(ue,G,$),G._writableState.errorEmitted=!0,S(G,Z)):(re(Z),G._writableState.errorEmitted=!0,S(G,Z),ue(G,$))}function F(G){G.writing=!1,G.writecb=null,G.length-=G.writelen,G.writelen=0}function B(G,$){var J=G._writableState,Z=J.sync,re=J.writecb;if(typeof re!="function")throw new v;if(F(J),$)z(G,J,Z,$,re);else{var ne=U(J)||G.destroyed;!ne&&!J.corked&&!J.bufferProcessing&&J.bufferedRequest&&N(G,J),Z?process.nextTick(O,G,J,ne,re):O(G,J,ne,re)}}function O(G,$,J,Z){J||I(G,$),$.pendingcb--,Z(),ue(G,$)}function I(G,$){$.length===0&&$.needDrain&&($.needDrain=!1,G.emit("drain"))}function N(G,$){$.bufferProcessing=!0;var J=$.bufferedRequest;if(G._writev&&J&&J.next){var Z=$.bufferedRequestCount,re=new Array(Z),ne=$.corkedRequestsFree;ne.entry=J;for(var j=0,ee=!0;J;)re[j]=J,J.isBuf||(ee=!1),J=J.next,j+=1;re.allBuffers=ee,L(G,$,!0,$.length,re,"",ne.finish),$.pendingcb++,$.lastBufferedRequest=null,ne.next?($.corkedRequestsFree=ne.next,ne.next=null):$.corkedRequestsFree=new g($),$.bufferedRequestCount=0}else{for(;J;){var ie=J.chunk,fe=J.encoding,be=J.callback,Ae=$.objectMode?1:ie.length;if(L(G,$,!1,Ae,ie,fe,be),J=J.next,$.bufferedRequestCount--,$.writing)break}J===null&&($.lastBufferedRequest=null)}$.bufferedRequest=J,$.bufferProcessing=!1}d.prototype._write=function(G,$,J){J(new h("_write()"))},d.prototype._writev=null,d.prototype.end=function(G,$,J){var Z=this._writableState;return typeof G=="function"?(J=G,G=null,$=null):typeof $=="function"&&(J=$,$=null),G!=null&&this.write(G,$),Z.corked&&(Z.corked=1,this.uncork()),Z.ending||se(this,Z,J),this},Object.defineProperty(d.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function U(G){return G.ending&&G.length===0&&G.bufferedRequest===null&&!G.finished&&!G.writing}function W(G,$){G._final(function(J){$.pendingcb--,J&&S(G,J),$.prefinished=!0,G.emit("prefinish"),ue(G,$)})}function Q(G,$){!$.prefinished&&!$.finalCalled&&(typeof G._final=="function"&&!$.destroyed?($.pendingcb++,$.finalCalled=!0,process.nextTick(W,G,$)):($.prefinished=!0,G.emit("prefinish")))}function ue(G,$){var J=U($);if(J&&(Q(G,$),$.pendingcb===0&&($.finished=!0,G.emit("finish"),$.autoDestroy))){var Z=G._readableState;(!Z||Z.autoDestroy&&Z.endEmitted)&&G.destroy()}return J}function se(G,$,J){$.ending=!0,ue(G,$),J&&($.finished?process.nextTick(J):G.once("finish",J)),$.ended=!0,G.writable=!1}function he(G,$,J){var Z=G.entry;for(G.entry=null;Z;){var re=Z.callback;$.pendingcb--,re(J),Z=Z.next}$.corkedRequestsFree.next=G}Object.defineProperty(d.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function($){this._writableState&&(this._writableState.destroyed=$)}}),d.prototype.destroy=a.destroy,d.prototype._undestroy=a.undestroy,d.prototype._destroy=function(G,$){$(G)}}}),a0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_duplex.js"(X,H){"use strict";var g=Object.keys||function(i){var n=[];for(var s in i)n.push(s);return n};H.exports=r;var x=GM(),A=qM();for(Yv()(r,x),M=g(A.prototype),t=0;t<M.length;t++)e=M[t],r.prototype[e]||(r.prototype[e]=A.prototype[e]);var M,e,t;function r(i){if(!(this instanceof r))return new r(i);x.call(this,i),A.call(this,i),this.allowHalfOpen=!0,i&&(i.readable===!1&&(this.readable=!1),i.writable===!1&&(this.writable=!1),i.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",o)))}Object.defineProperty(r.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(r.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(r.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function o(){this._writableState.ended||process.nextTick(a,this)}function a(i){i.end()}Object.defineProperty(r.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(n){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=n,this._writableState.destroyed=n)}})}}),S4=Ye({"node_modules/safe-buffer/index.js"(X,H){var g=t0(),x=g.Buffer;function A(e,t){for(var r in e)t[r]=e[r]}x.from&&x.alloc&&x.allocUnsafe&&x.allocUnsafeSlow?H.exports=g:(A(g,X),X.Buffer=M);function M(e,t,r){return x(e,t,r)}M.prototype=Object.create(x.prototype),A(x,M),M.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return x(e,t,r)},M.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var o=x(e);return t!==void 0?typeof r=="string"?o.fill(t,r):o.fill(t):o.fill(0),o},M.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return x(e)},M.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return g.SlowBuffer(e)}}}),HM=Ye({"node_modules/stream-browserify/node_modules/string_decoder/lib/string_decoder.js"(X){"use strict";var H=S4().Buffer,g=H.isEncoding||function(T){switch(T=""+T,T&&T.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function x(T){if(!T)return"utf8";for(var l;;)switch(T){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return T;default:if(l)return;T=(""+T).toLowerCase(),l=!0}}function A(T){var l=x(T);if(typeof l!="string"&&(H.isEncoding===g||!g(T)))throw new Error("Unknown encoding: "+T);return l||T}X.StringDecoder=M;function M(T){this.encoding=A(T);var l;switch(this.encoding){case"utf16le":this.text=n,this.end=s,l=4;break;case"utf8":this.fillLast=o,l=4;break;case"base64":this.text=c,this.end=h,l=3;break;default:this.write=v,this.end=p;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=H.allocUnsafe(l)}M.prototype.write=function(T){if(T.length===0)return"";var l,_;if(this.lastNeed){if(l=this.fillLast(T),l===void 0)return"";_=this.lastNeed,this.lastNeed=0}else _=0;return _<T.length?l?l+this.text(T,_):this.text(T,_):l||""},M.prototype.end=i,M.prototype.text=a,M.prototype.fillLast=function(T){if(this.lastNeed<=T.length)return T.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,this.lastTotal-this.lastNeed,0,T.length),this.lastNeed-=T.length};function e(T){return T<=127?0:T>>5===6?2:T>>4===14?3:T>>3===30?4:T>>6===2?-1:-2}function t(T,l,_){var w=l.length-1;if(w<_)return 0;var S=e(l[w]);return S>=0?(S>0&&(T.lastNeed=S-1),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(T.lastNeed=S-2),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(S===2?S=0:T.lastNeed=S-3),S):0))}function r(T,l,_){if((l[0]&192)!==128)return T.lastNeed=0,"\uFFFD";if(T.lastNeed>1&&l.length>1){if((l[1]&192)!==128)return T.lastNeed=1,"\uFFFD";if(T.lastNeed>2&&l.length>2&&(l[2]&192)!==128)return T.lastNeed=2,"\uFFFD"}}function o(T){var l=this.lastTotal-this.lastNeed,_=r(this,T,l);if(_!==void 0)return _;if(this.lastNeed<=T.length)return T.copy(this.lastChar,l,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,l,0,T.length),this.lastNeed-=T.length}function a(T,l){var _=t(this,T,l);if(!this.lastNeed)return T.toString("utf8",l);this.lastTotal=_;var w=T.length-(_-this.lastNeed);return T.copy(this.lastChar,0,w),T.toString("utf8",l,w)}function i(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+"\uFFFD":l}function n(T,l){if((T.length-l)%2===0){var _=T.toString("utf16le",l);if(_){var w=_.charCodeAt(_.length-1);if(w>=55296&&w<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1],_.slice(0,-1)}return _}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=T[T.length-1],T.toString("utf16le",l,T.length-1)}function s(T){var l=T&&T.length?this.write(T):"";if(this.lastNeed){var _=this.lastTotal-this.lastNeed;return l+this.lastChar.toString("utf16le",0,_)}return l}function c(T,l){var _=(T.length-l)%3;return _===0?T.toString("base64",l):(this.lastNeed=3-_,this.lastTotal=3,_===1?this.lastChar[0]=T[T.length-1]:(this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1]),T.toString("base64",l,T.length-_))}function h(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+this.lastChar.toString("base64",0,3-this.lastNeed):l}function v(T){return T.toString(this.encoding)}function p(T){return T&&T.length?this.write(T):""}}}),v3=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(X,H){"use strict";var g=r0().codes.ERR_STREAM_PREMATURE_CLOSE;function x(t){var r=!1;return function(){if(!r){r=!0;for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];t.apply(this,a)}}}function A(){}function M(t){return t.setHeader&&typeof t.abort=="function"}function e(t,r,o){if(typeof r=="function")return e(t,null,r);r||(r={}),o=x(o||A);var a=r.readable||r.readable!==!1&&t.readable,i=r.writable||r.writable!==!1&&t.writable,n=function(){t.writable||c()},s=t._writableState&&t._writableState.finished,c=function(){i=!1,s=!0,a||o.call(t)},h=t._readableState&&t._readableState.endEmitted,v=function(){a=!1,h=!0,i||o.call(t)},p=function(w){o.call(t,w)},T=function(){var w;if(a&&!h)return(!t._readableState||!t._readableState.ended)&&(w=new g),o.call(t,w);if(i&&!s)return(!t._writableState||!t._writableState.ended)&&(w=new g),o.call(t,w)},l=function(){t.req.on("finish",c)};return M(t)?(t.on("complete",c),t.on("abort",T),t.req?l():t.on("request",l)):i&&!t._writableState&&(t.on("end",n),t.on("close",n)),t.on("end",v),t.on("finish",c),r.error!==!1&&t.on("error",p),t.on("close",T),function(){t.removeListener("complete",c),t.removeListener("abort",T),t.removeListener("request",l),t.req&&t.req.removeListener("finish",c),t.removeListener("end",n),t.removeListener("close",n),t.removeListener("finish",c),t.removeListener("end",v),t.removeListener("error",p),t.removeListener("close",T)}}H.exports=e}}),M4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(X,H){"use strict";var g;function x(l,_,w){return _ in l?Object.defineProperty(l,_,{value:w,enumerable:!0,configurable:!0,writable:!0}):l[_]=w,l}var A=v3(),M=Symbol("lastResolve"),e=Symbol("lastReject"),t=Symbol("error"),r=Symbol("ended"),o=Symbol("lastPromise"),a=Symbol("handlePromise"),i=Symbol("stream");function n(l,_){return{value:l,done:_}}function s(l){var _=l[M];if(_!==null){var w=l[i].read();w!==null&&(l[o]=null,l[M]=null,l[e]=null,_(n(w,!1)))}}function c(l){process.nextTick(s,l)}function h(l,_){return function(w,S){l.then(function(){if(_[r]){w(n(void 0,!0));return}_[a](w,S)},S)}}var v=Object.getPrototypeOf(function(){}),p=Object.setPrototypeOf((g={get stream(){return this[i]},next:function(){var _=this,w=this[t];if(w!==null)return Promise.reject(w);if(this[r])return Promise.resolve(n(void 0,!0));if(this[i].destroyed)return new Promise(function(b,d){process.nextTick(function(){_[t]?d(_[t]):b(n(void 0,!0))})});var S=this[o],E;if(S)E=new Promise(h(S,this));else{var m=this[i].read();if(m!==null)return Promise.resolve(n(m,!1));E=new Promise(this[a])}return this[o]=E,E}},x(g,Symbol.asyncIterator,function(){return this}),x(g,"return",function(){var _=this;return new Promise(function(w,S){_[i].destroy(null,function(E){if(E){S(E);return}w(n(void 0,!0))})})}),g),v),T=function(_){var w,S=Object.create(p,(w={},x(w,i,{value:_,writable:!0}),x(w,M,{value:null,writable:!0}),x(w,e,{value:null,writable:!0}),x(w,t,{value:null,writable:!0}),x(w,r,{value:_._readableState.endEmitted,writable:!0}),x(w,a,{value:function(m,b){var d=S[i].read();d?(S[o]=null,S[M]=null,S[e]=null,m(n(d,!1))):(S[M]=m,S[e]=b)},writable:!0}),w));return S[o]=null,A(_,function(E){if(E&&E.code!=="ERR_STREAM_PREMATURE_CLOSE"){var m=S[e];m!==null&&(S[o]=null,S[M]=null,S[e]=null,m(E)),S[t]=E;return}var b=S[M];b!==null&&(S[o]=null,S[M]=null,S[e]=null,b(n(void 0,!0))),S[r]=!0}),_.on("readable",c.bind(null,S)),S};H.exports=T}}),E4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/from-browser.js"(X,H){H.exports=function(){throw new Error("Readable.from is not available in the browser")}}}),GM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_readable.js"(X,H){"use strict";H.exports=y;var g;y.ReadableState=u;var x=Wg().EventEmitter,A=function(ee,ie){return ee.listeners(ie).length},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(j){return e.from(j)}function o(j){return e.isBuffer(j)||j instanceof t}var a=UM(),i;a&&a.debuglog?i=a.debuglog("stream"):i=function(){};var n=T4(),s=jM(),c=VM(),h=c.getHighWaterMark,v=r0().codes,p=v.ERR_INVALID_ARG_TYPE,T=v.ERR_STREAM_PUSH_AFTER_EOF,l=v.ERR_METHOD_NOT_IMPLEMENTED,_=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,w,S,E;Yv()(y,M);var m=s.errorOrDestroy,b=["error","close","destroy","pause","resume"];function d(j,ee,ie){if(typeof j.prependListener=="function")return j.prependListener(ee,ie);!j._events||!j._events[ee]?j.on(ee,ie):Array.isArray(j._events[ee])?j._events[ee].unshift(ie):j._events[ee]=[ie,j._events[ee]]}function u(j,ee,ie){g=g||a0(),j=j||{},typeof ie!="boolean"&&(ie=ee instanceof g),this.objectMode=!!j.objectMode,ie&&(this.objectMode=this.objectMode||!!j.readableObjectMode),this.highWaterMark=h(this,j,"readableHighWaterMark",ie),this.buffer=new n,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=j.emitClose!==!1,this.autoDestroy=!!j.autoDestroy,this.destroyed=!1,this.defaultEncoding=j.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,j.encoding&&(w||(w=HM().StringDecoder),this.decoder=new w(j.encoding),this.encoding=j.encoding)}function y(j){if(g=g||a0(),!(this instanceof y))return new y(j);var ee=this instanceof g;this._readableState=new u(j,this,ee),this.readable=!0,j&&(typeof j.read=="function"&&(this._read=j.read),typeof j.destroy=="function"&&(this._destroy=j.destroy)),M.call(this)}Object.defineProperty(y.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(ee){this._readableState&&(this._readableState.destroyed=ee)}}),y.prototype.destroy=s.destroy,y.prototype._undestroy=s.undestroy,y.prototype._destroy=function(j,ee){ee(j)},y.prototype.push=function(j,ee){var ie=this._readableState,fe;return ie.objectMode?fe=!0:typeof j=="string"&&(ee=ee||ie.defaultEncoding,ee!==ie.encoding&&(j=e.from(j,ee),ee=""),fe=!0),f(this,j,ee,!1,fe)},y.prototype.unshift=function(j){return f(this,j,null,!0,!1)};function f(j,ee,ie,fe,be){i("readableAddChunk",ee);var Ae=j._readableState;if(ee===null)Ae.reading=!1,O(j,Ae);else{var Be;if(be||(Be=L(Ae,ee)),Be)m(j,Be);else if(Ae.objectMode||ee&&ee.length>0)if(typeof ee!="string"&&!Ae.objectMode&&Object.getPrototypeOf(ee)!==e.prototype&&(ee=r(ee)),fe)Ae.endEmitted?m(j,new _):P(j,Ae,ee,!0);else if(Ae.ended)m(j,new T);else{if(Ae.destroyed)return!1;Ae.reading=!1,Ae.decoder&&!ie?(ee=Ae.decoder.write(ee),Ae.objectMode||ee.length!==0?P(j,Ae,ee,!1):U(j,Ae)):P(j,Ae,ee,!1)}else fe||(Ae.reading=!1,U(j,Ae))}return!Ae.ended&&(Ae.length<Ae.highWaterMark||Ae.length===0)}function P(j,ee,ie,fe){ee.flowing&&ee.length===0&&!ee.sync?(ee.awaitDrain=0,j.emit("data",ie)):(ee.length+=ee.objectMode?1:ie.length,fe?ee.buffer.unshift(ie):ee.buffer.push(ie),ee.needReadable&&I(j)),U(j,ee)}function L(j,ee){var ie;return!o(ee)&&typeof ee!="string"&&ee!==void 0&&!j.objectMode&&(ie=new p("chunk",["string","Buffer","Uint8Array"],ee)),ie}y.prototype.isPaused=function(){return this._readableState.flowing===!1},y.prototype.setEncoding=function(j){w||(w=HM().StringDecoder);var ee=new w(j);this._readableState.decoder=ee,this._readableState.encoding=this._readableState.decoder.encoding;for(var ie=this._readableState.buffer.head,fe="";ie!==null;)fe+=ee.write(ie.data),ie=ie.next;return this._readableState.buffer.clear(),fe!==""&&this._readableState.buffer.push(fe),this._readableState.length=fe.length,this};var z=1073741824;function F(j){return j>=z?j=z:(j--,j|=j>>>1,j|=j>>>2,j|=j>>>4,j|=j>>>8,j|=j>>>16,j++),j}function B(j,ee){return j<=0||ee.length===0&&ee.ended?0:ee.objectMode?1:j!==j?ee.flowing&&ee.length?ee.buffer.head.data.length:ee.length:(j>ee.highWaterMark&&(ee.highWaterMark=F(j)),j<=ee.length?j:ee.ended?ee.length:(ee.needReadable=!0,0))}y.prototype.read=function(j){i("read",j),j=parseInt(j,10);var ee=this._readableState,ie=j;if(j!==0&&(ee.emittedReadable=!1),j===0&&ee.needReadable&&((ee.highWaterMark!==0?ee.length>=ee.highWaterMark:ee.length>0)||ee.ended))return i("read: emitReadable",ee.length,ee.ended),ee.length===0&&ee.ended?Z(this):I(this),null;if(j=B(j,ee),j===0&&ee.ended)return ee.length===0&&Z(this),null;var fe=ee.needReadable;i("need readable",fe),(ee.length===0||ee.length-j<ee.highWaterMark)&&(fe=!0,i("length less than watermark",fe)),ee.ended||ee.reading?(fe=!1,i("reading or ended",fe)):fe&&(i("do read"),ee.reading=!0,ee.sync=!0,ee.length===0&&(ee.needReadable=!0),this._read(ee.highWaterMark),ee.sync=!1,ee.reading||(j=B(ie,ee)));var be;return j>0?be=J(j,ee):be=null,be===null?(ee.needReadable=ee.length<=ee.highWaterMark,j=0):(ee.length-=j,ee.awaitDrain=0),ee.length===0&&(ee.ended||(ee.needReadable=!0),ie!==j&&ee.ended&&Z(this)),be!==null&&this.emit("data",be),be};function O(j,ee){if(i("onEofChunk"),!ee.ended){if(ee.decoder){var ie=ee.decoder.end();ie&&ie.length&&(ee.buffer.push(ie),ee.length+=ee.objectMode?1:ie.length)}ee.ended=!0,ee.sync?I(j):(ee.needReadable=!1,ee.emittedReadable||(ee.emittedReadable=!0,N(j)))}}function I(j){var ee=j._readableState;i("emitReadable",ee.needReadable,ee.emittedReadable),ee.needReadable=!1,ee.emittedReadable||(i("emitReadable",ee.flowing),ee.emittedReadable=!0,process.nextTick(N,j))}function N(j){var ee=j._readableState;i("emitReadable_",ee.destroyed,ee.length,ee.ended),!ee.destroyed&&(ee.length||ee.ended)&&(j.emit("readable"),ee.emittedReadable=!1),ee.needReadable=!ee.flowing&&!ee.ended&&ee.length<=ee.highWaterMark,$(j)}function U(j,ee){ee.readingMore||(ee.readingMore=!0,process.nextTick(W,j,ee))}function W(j,ee){for(;!ee.reading&&!ee.ended&&(ee.length<ee.highWaterMark||ee.flowing&&ee.length===0);){var ie=ee.length;if(i("maybeReadMore read 0"),j.read(0),ie===ee.length)break}ee.readingMore=!1}y.prototype._read=function(j){m(this,new l("_read()"))},y.prototype.pipe=function(j,ee){var ie=this,fe=this._readableState;switch(fe.pipesCount){case 0:fe.pipes=j;break;case 1:fe.pipes=[fe.pipes,j];break;default:fe.pipes.push(j);break}fe.pipesCount+=1,i("pipe count=%d opts=%j",fe.pipesCount,ee);var be=(!ee||ee.end!==!1)&&j!==process.stdout&&j!==process.stderr,Ae=be?Ie:ce;fe.endEmitted?process.nextTick(Ae):ie.once("end",Ae),j.on("unpipe",Be);function Be(ze,tt){i("onunpipe"),ze===ie&&tt&&tt.hasUnpiped===!1&&(tt.hasUnpiped=!0,it())}function Ie(){i("onend"),j.end()}var Ze=Q(ie);j.on("drain",Ze);var at=!1;function it(){i("cleanup"),j.removeListener("close",Me),j.removeListener("finish",ge),j.removeListener("drain",Ze),j.removeListener("error",lt),j.removeListener("unpipe",Be),ie.removeListener("end",Ie),ie.removeListener("end",ce),ie.removeListener("data",et),at=!0,fe.awaitDrain&&(!j._writableState||j._writableState.needDrain)&&Ze()}ie.on("data",et);function et(ze){i("ondata");var tt=j.write(ze);i("dest.write",tt),tt===!1&&((fe.pipesCount===1&&fe.pipes===j||fe.pipesCount>1&&ne(fe.pipes,j)!==-1)&&!at&&(i("false write response, pause",fe.awaitDrain),fe.awaitDrain++),ie.pause())}function lt(ze){i("onerror",ze),ce(),j.removeListener("error",lt),A(j,"error")===0&&m(j,ze)}d(j,"error",lt);function Me(){j.removeListener("finish",ge),ce()}j.once("close",Me);function ge(){i("onfinish"),j.removeListener("close",Me),ce()}j.once("finish",ge);function ce(){i("unpipe"),ie.unpipe(j)}return j.emit("pipe",ie),fe.flowing||(i("pipe resume"),ie.resume()),j};function Q(j){return function(){var ie=j._readableState;i("pipeOnDrain",ie.awaitDrain),ie.awaitDrain&&ie.awaitDrain--,ie.awaitDrain===0&&A(j,"data")&&(ie.flowing=!0,$(j))}}y.prototype.unpipe=function(j){var ee=this._readableState,ie={hasUnpiped:!1};if(ee.pipesCount===0)return this;if(ee.pipesCount===1)return j&&j!==ee.pipes?this:(j||(j=ee.pipes),ee.pipes=null,ee.pipesCount=0,ee.flowing=!1,j&&j.emit("unpipe",this,ie),this);if(!j){var fe=ee.pipes,be=ee.pipesCount;ee.pipes=null,ee.pipesCount=0,ee.flowing=!1;for(var Ae=0;Ae<be;Ae++)fe[Ae].emit("unpipe",this,{hasUnpiped:!1});return this}var Be=ne(ee.pipes,j);return Be===-1?this:(ee.pipes.splice(Be,1),ee.pipesCount-=1,ee.pipesCount===1&&(ee.pipes=ee.pipes[0]),j.emit("unpipe",this,ie),this)},y.prototype.on=function(j,ee){var ie=M.prototype.on.call(this,j,ee),fe=this._readableState;return j==="data"?(fe.readableListening=this.listenerCount("readable")>0,fe.flowing!==!1&&this.resume()):j==="readable"&&!fe.endEmitted&&!fe.readableListening&&(fe.readableListening=fe.needReadable=!0,fe.flowing=!1,fe.emittedReadable=!1,i("on readable",fe.length,fe.reading),fe.length?I(this):fe.reading||process.nextTick(se,this)),ie},y.prototype.addListener=y.prototype.on,y.prototype.removeListener=function(j,ee){var ie=M.prototype.removeListener.call(this,j,ee);return j==="readable"&&process.nextTick(ue,this),ie},y.prototype.removeAllListeners=function(j){var ee=M.prototype.removeAllListeners.apply(this,arguments);return(j==="readable"||j===void 0)&&process.nextTick(ue,this),ee};function ue(j){var ee=j._readableState;ee.readableListening=j.listenerCount("readable")>0,ee.resumeScheduled&&!ee.paused?ee.flowing=!0:j.listenerCount("data")>0&&j.resume()}function se(j){i("readable nexttick read 0"),j.read(0)}y.prototype.resume=function(){var j=this._readableState;return j.flowing||(i("resume"),j.flowing=!j.readableListening,he(this,j)),j.paused=!1,this};function he(j,ee){ee.resumeScheduled||(ee.resumeScheduled=!0,process.nextTick(G,j,ee))}function G(j,ee){i("resume",ee.reading),ee.reading||j.read(0),ee.resumeScheduled=!1,j.emit("resume"),$(j),ee.flowing&&!ee.reading&&j.read(0)}y.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function $(j){var ee=j._readableState;for(i("flow",ee.flowing);ee.flowing&&j.read()!==null;);}y.prototype.wrap=function(j){var ee=this,ie=this._readableState,fe=!1;j.on("end",function(){if(i("wrapped end"),ie.decoder&&!ie.ended){var Be=ie.decoder.end();Be&&Be.length&&ee.push(Be)}ee.push(null)}),j.on("data",function(Be){if(i("wrapped data"),ie.decoder&&(Be=ie.decoder.write(Be)),!(ie.objectMode&&Be==null)&&!(!ie.objectMode&&(!Be||!Be.length))){var Ie=ee.push(Be);Ie||(fe=!0,j.pause())}});for(var be in j)this[be]===void 0&&typeof j[be]=="function"&&(this[be]=function(Ie){return function(){return j[Ie].apply(j,arguments)}}(be));for(var Ae=0;Ae<b.length;Ae++)j.on(b[Ae],this.emit.bind(this,b[Ae]));return this._read=function(Be){i("wrapped _read",Be),fe&&(fe=!1,j.resume())},this},typeof Symbol=="function"&&(y.prototype[Symbol.asyncIterator]=function(){return S===void 0&&(S=M4()),S(this)}),Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(y.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(y.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(ee){this._readableState&&(this._readableState.flowing=ee)}}),y._fromList=J,Object.defineProperty(y.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function J(j,ee){if(ee.length===0)return null;var ie;return ee.objectMode?ie=ee.buffer.shift():!j||j>=ee.length?(ee.decoder?ie=ee.buffer.join(""):ee.buffer.length===1?ie=ee.buffer.first():ie=ee.buffer.concat(ee.length),ee.buffer.clear()):ie=ee.buffer.consume(j,ee.decoder),ie}function Z(j){var ee=j._readableState;i("endReadable",ee.endEmitted),ee.endEmitted||(ee.ended=!0,process.nextTick(re,ee,j))}function re(j,ee){if(i("endReadableNT",j.endEmitted,j.length),!j.endEmitted&&j.length===0&&(j.endEmitted=!0,ee.readable=!1,ee.emit("end"),j.autoDestroy)){var ie=ee._writableState;(!ie||ie.autoDestroy&&ie.finished)&&ee.destroy()}}typeof Symbol=="function"&&(y.from=function(j,ee){return E===void 0&&(E=E4()),E(y,j,ee)});function ne(j,ee){for(var ie=0,fe=j.length;ie<fe;ie++)if(j[ie]===ee)return ie;return-1}}}),WM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_transform.js"(X,H){"use strict";H.exports=o;var g=r0().codes,x=g.ERR_METHOD_NOT_IMPLEMENTED,A=g.ERR_MULTIPLE_CALLBACK,M=g.ERR_TRANSFORM_ALREADY_TRANSFORMING,e=g.ERR_TRANSFORM_WITH_LENGTH_0,t=a0();Yv()(o,t);function r(n,s){var c=this._transformState;c.transforming=!1;var h=c.writecb;if(h===null)return this.emit("error",new A);c.writechunk=null,c.writecb=null,s!=null&&this.push(s),h(n);var v=this._readableState;v.reading=!1,(v.needReadable||v.length<v.highWaterMark)&&this._read(v.highWaterMark)}function o(n){if(!(this instanceof o))return new o(n);t.call(this,n),this._transformState={afterTransform:r.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,n&&(typeof n.transform=="function"&&(this._transform=n.transform),typeof n.flush=="function"&&(this._flush=n.flush)),this.on("prefinish",a)}function a(){var n=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(s,c){i(n,s,c)}):i(this,null,null)}o.prototype.push=function(n,s){return this._transformState.needTransform=!1,t.prototype.push.call(this,n,s)},o.prototype._transform=function(n,s,c){c(new x("_transform()"))},o.prototype._write=function(n,s,c){var h=this._transformState;if(h.writecb=c,h.writechunk=n,h.writeencoding=s,!h.transforming){var v=this._readableState;(h.needTransform||v.needReadable||v.length<v.highWaterMark)&&this._read(v.highWaterMark)}},o.prototype._read=function(n){var s=this._transformState;s.writechunk!==null&&!s.transforming?(s.transforming=!0,this._transform(s.writechunk,s.writeencoding,s.afterTransform)):s.needTransform=!0},o.prototype._destroy=function(n,s){t.prototype._destroy.call(this,n,function(c){s(c)})};function i(n,s,c){if(s)return n.emit("error",s);if(c!=null&&n.push(c),n._writableState.length)throw new e;if(n._transformState.transforming)throw new M;return n.push(null)}}}),k4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_passthrough.js"(X,H){"use strict";H.exports=x;var g=WM();Yv()(x,g);function x(A){if(!(this instanceof x))return new x(A);g.call(this,A)}x.prototype._transform=function(A,M,e){e(null,A)}}}),C4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/pipeline.js"(X,H){"use strict";var g;function x(c){var h=!1;return function(){h||(h=!0,c.apply(void 0,arguments))}}var A=r0().codes,M=A.ERR_MISSING_ARGS,e=A.ERR_STREAM_DESTROYED;function t(c){if(c)throw c}function r(c){return c.setHeader&&typeof c.abort=="function"}function o(c,h,v,p){p=x(p);var T=!1;c.on("close",function(){T=!0}),g===void 0&&(g=v3()),g(c,{readable:h,writable:v},function(_){if(_)return p(_);T=!0,p()});var l=!1;return function(_){if(!T&&!l){if(l=!0,r(c))return c.abort();if(typeof c.destroy=="function")return c.destroy();p(_||new e("pipe"))}}}function a(c){c()}function i(c,h){return c.pipe(h)}function n(c){return!c.length||typeof c[c.length-1]!="function"?t:c.pop()}function s(){for(var c=arguments.length,h=new Array(c),v=0;v<c;v++)h[v]=arguments[v];var p=n(h);if(Array.isArray(h[0])&&(h=h[0]),h.length<2)throw new M("streams");var T,l=h.map(function(_,w){var S=w<h.length-1,E=w>0;return o(_,S,E,function(m){T||(T=m),m&&l.forEach(a),!S&&(l.forEach(a),p(T))})});return h.reduce(i)}H.exports=s}}),L4=Ye({"node_modules/stream-browserify/index.js"(X,H){H.exports=A;var g=Wg().EventEmitter,x=Yv();x(A,g),A.Readable=GM(),A.Writable=qM(),A.Duplex=a0(),A.Transform=WM(),A.PassThrough=k4(),A.finished=v3(),A.pipeline=C4(),A.Stream=A;function A(){g.call(this)}A.prototype.pipe=function(M,e){var t=this;function r(h){M.writable&&M.write(h)===!1&&t.pause&&t.pause()}t.on("data",r);function o(){t.readable&&t.resume&&t.resume()}M.on("drain",o),!M._isStdio&&(!e||e.end!==!1)&&(t.on("end",i),t.on("close",n));var a=!1;function i(){a||(a=!0,M.end())}function n(){a||(a=!0,typeof M.destroy=="function"&&M.destroy())}function s(h){if(c(),g.listenerCount(this,"error")===0)throw h}t.on("error",s),M.on("error",s);function c(){t.removeListener("data",r),M.removeListener("drain",o),t.removeListener("end",i),t.removeListener("close",n),t.removeListener("error",s),M.removeListener("error",s),t.removeListener("end",c),t.removeListener("close",c),M.removeListener("close",c)}return t.on("end",c),t.on("close",c),M.on("close",c),M.emit("pipe",t),M}}}),g1=Ye({"node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se<Q.length;se++)ue[Q[se]]=Object.getOwnPropertyDescriptor(W,Q[se]);return ue},g=/%[sdj%]/g;X.format=function(U){if(!w(U)){for(var W=[],Q=0;Q<arguments.length;Q++)W.push(e(arguments[Q]));return W.join(" ")}for(var Q=1,ue=arguments,se=ue.length,he=String(U).replace(g,function($){if($==="%%")return"%";if(Q>=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q<se;G=ue[++Q])T(G)||!b(G)?he+=" "+G:he+=" "+e(G);return he},X.deprecate=function(U,W){if(typeof process<"u"&&process.noDeprecation===!0)return U;if(typeof process>"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(`
`)>-1&&(he?$=$.split(`
`).map(function(Z){return"  "+Z}).join(`
`).slice(2):$=`
`+$.split(`
`).map(function(Z){return"   "+Z}).join(`
`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(`
`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+`
 `)+" "+U.join(`,
  `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$<arguments.length;$++)G.push(arguments[$]);G.push(function(J,Z){J?se(J):ue(Z)});try{W.apply(this,G)}catch(J){se(J)}return he}return Object.setPrototypeOf(Q,Object.getPrototypeOf(W)),O&&Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(Q,H(W))},X.promisify.custom=O;function I(U,W){if(!U){var Q=new Error("Promise was rejected with a falsy value");Q.reason=U,U=Q}return W(U)}function N(U){if(typeof U!="function")throw new TypeError('The "original" argument must be of type Function');function W(){for(var Q=[],ue=0;ue<arguments.length;ue++)Q.push(arguments[ue]);var se=Q.pop();if(typeof se!="function")throw new TypeError("The last argument must be of type Function");var he=this,G=function(){return se.apply(he,arguments)};U.apply(this,Q).then(function($){process.nextTick(G.bind(null,null,$))},function($){process.nextTick(I.bind(null,$,G))})}return Object.setPrototypeOf(W,Object.getPrototypeOf(U)),Object.defineProperties(W,H(U)),W}X.callbackify=N}}),ZM=Ye({"node_modules/assert/build/internal/errors.js"(X,H){"use strict";function g(E){"@babel/helpers - typeof";return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},g(E)}function x(E,m){for(var b=0;b<m.length;b++){var d=m[b];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(E,M(d.key),d)}}function A(E,m,b){return m&&x(E.prototype,m),b&&x(E,b),Object.defineProperty(E,"prototype",{writable:!1}),E}function M(E){var m=e(E,"string");return g(m)==="symbol"?m:String(m)}function e(E,m){if(g(E)!=="object"||E===null)return E;var b=E[Symbol.toPrimitive];if(b!==void 0){var d=b.call(E,m||"default");if(g(d)!=="object")return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return(m==="string"?String:Number)(E)}function t(E,m){if(!(E instanceof m))throw new TypeError("Cannot call a class as a function")}function r(E,m){if(typeof m!="function"&&m!==null)throw new TypeError("Super expression must either be null or a function");E.prototype=Object.create(m&&m.prototype,{constructor:{value:E,writable:!0,configurable:!0}}),Object.defineProperty(E,"prototype",{writable:!1}),m&&o(E,m)}function o(E,m){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(d,u){return d.__proto__=u,d},o(E,m)}function a(E){var m=s();return function(){var d=c(E),u;if(m){var y=c(this).constructor;u=Reflect.construct(d,arguments,y)}else u=d.apply(this,arguments);return i(this,u)}}function i(E,m){if(m&&(g(m)==="object"||typeof m=="function"))return m;if(m!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return n(E)}function n(E){if(E===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return E}function s(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function c(E){return c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(b){return b.__proto__||Object.getPrototypeOf(b)},c(E)}var h={},v,p;function T(E,m,b){b||(b=Error);function d(y,f,P){return typeof m=="string"?m:m(y,f,P)}var u=function(y){r(P,y);var f=a(P);function P(L,z,F){var B;return t(this,P),B=f.call(this,d(L,z,F)),B.code=E,B}return A(P)}(b);h[E]=u}function l(E,m){if(Array.isArray(E)){var b=E.length;return E=E.map(function(d){return String(d)}),b>2?"one of ".concat(m," ").concat(E.slice(0,b-1).join(", "),", or ")+E[b-1]:b===2?"one of ".concat(m," ").concat(E[0]," or ").concat(E[1]):"of ".concat(m," ").concat(E[0])}else return"of ".concat(m," ").concat(String(E))}function _(E,m,b){return E.substr(!b||b<0?0:+b,m.length)===m}function w(E,m,b){return(b===void 0||b>E.length)&&(b=E.length),E.substring(b-m.length,b)===m}function S(E,m,b){return typeof b!="number"&&(b=0),b+m.length>E.length?!1:E.indexOf(m,b)!==-1}T("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),T("ERR_INVALID_ARG_TYPE",function(E,m,b){v===void 0&&(v=X_()),v(typeof E=="string","'name' must be a string");var d;typeof m=="string"&&_(m,"not ")?(d="must not be",m=m.replace(/^not /,"")):d="must be";var u;if(w(E," argument"))u="The ".concat(E," ").concat(d," ").concat(l(m,"type"));else{var y=S(E,".")?"property":"argument";u='The "'.concat(E,'" ').concat(y," ").concat(d," ").concat(l(m,"type"))}return u+=". Received type ".concat(g(b)),u},TypeError),T("ERR_INVALID_ARG_VALUE",function(E,m){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";p===void 0&&(p=g1());var d=p.inspect(m);return d.length>128&&(d="".concat(d.slice(0,128),"...")),"The argument '".concat(E,"' ").concat(b,". Received ").concat(d)},TypeError,RangeError),T("ERR_INVALID_RETURN_VALUE",function(E,m,b){var d;return b&&b.constructor&&b.constructor.name?d="instance of ".concat(b.constructor.name):d="type ".concat(g(b)),"Expected ".concat(E,' to be returned from the "').concat(m,'"')+" function but got ".concat(d,".")},TypeError),T("ERR_MISSING_ARGS",function(){for(var E=arguments.length,m=new Array(E),b=0;b<E;b++)m[b]=arguments[b];v===void 0&&(v=X_()),v(m.length>0,"At least one arg needs to be specified");var d="The ",u=m.length;switch(m=m.map(function(y){return'"'.concat(y,'"')}),u){case 1:d+="".concat(m[0]," argument");break;case 2:d+="".concat(m[0]," and ").concat(m[1]," arguments");break;default:d+=m.slice(0,u-1).join(", "),d+=", and ".concat(m[u-1]," arguments");break}return"".concat(d," must be specified")},TypeError),H.exports.codes=h}}),P4=Ye({"node_modules/assert/build/internal/assert/assertion_error.js"(X,H){"use strict";function g(N,U){var W=Object.keys(N);if(Object.getOwnPropertySymbols){var Q=Object.getOwnPropertySymbols(N);U&&(Q=Q.filter(function(ue){return Object.getOwnPropertyDescriptor(N,ue).enumerable})),W.push.apply(W,Q)}return W}function x(N){for(var U=1;U<arguments.length;U++){var W=arguments[U]!=null?arguments[U]:{};U%2?g(Object(W),!0).forEach(function(Q){A(N,Q,W[Q])}):Object.getOwnPropertyDescriptors?Object.defineProperties(N,Object.getOwnPropertyDescriptors(W)):g(Object(W)).forEach(function(Q){Object.defineProperty(N,Q,Object.getOwnPropertyDescriptor(W,Q))})}return N}function A(N,U,W){return U=r(U),U in N?Object.defineProperty(N,U,{value:W,enumerable:!0,configurable:!0,writable:!0}):N[U]=W,N}function M(N,U){if(!(N instanceof U))throw new TypeError("Cannot call a class as a function")}function e(N,U){for(var W=0;W<U.length;W++){var Q=U[W];Q.enumerable=Q.enumerable||!1,Q.configurable=!0,"value"in Q&&(Q.writable=!0),Object.defineProperty(N,r(Q.key),Q)}}function t(N,U,W){return U&&e(N.prototype,U),W&&e(N,W),Object.defineProperty(N,"prototype",{writable:!1}),N}function r(N){var U=o(N,"string");return _(U)==="symbol"?U:String(U)}function o(N,U){if(_(N)!=="object"||N===null)return N;var W=N[Symbol.toPrimitive];if(W!==void 0){var Q=W.call(N,U||"default");if(_(Q)!=="object")return Q;throw new TypeError("@@toPrimitive must return a primitive value.")}return(U==="string"?String:Number)(N)}function a(N,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");N.prototype=Object.create(U&&U.prototype,{constructor:{value:N,writable:!0,configurable:!0}}),Object.defineProperty(N,"prototype",{writable:!1}),U&&T(N,U)}function i(N){var U=v();return function(){var Q=l(N),ue;if(U){var se=l(this).constructor;ue=Reflect.construct(Q,arguments,se)}else ue=Q.apply(this,arguments);return n(this,ue)}}function n(N,U){if(U&&(_(U)==="object"||typeof U=="function"))return U;if(U!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return s(N)}function s(N){if(N===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return N}function c(N){var U=typeof Map=="function"?new Map:void 0;return c=function(Q){if(Q===null||!p(Q))return Q;if(typeof Q!="function")throw new TypeError("Super expression must either be null or a function");if(typeof U<"u"){if(U.has(Q))return U.get(Q);U.set(Q,ue)}function ue(){return h(Q,arguments,l(this).constructor)}return ue.prototype=Object.create(Q.prototype,{constructor:{value:ue,enumerable:!1,writable:!0,configurable:!0}}),T(ue,Q)},c(N)}function h(N,U,W){return v()?h=Reflect.construct.bind():h=function(ue,se,he){var G=[null];G.push.apply(G,se);var $=Function.bind.apply(ue,G),J=new $;return he&&T(J,he.prototype),J},h.apply(null,arguments)}function v(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function p(N){return Function.toString.call(N).indexOf("[native code]")!==-1}function T(N,U){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Q,ue){return Q.__proto__=ue,Q},T(N,U)}function l(N){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(W){return W.__proto__||Object.getPrototypeOf(W)},l(N)}function _(N){"@babel/helpers - typeof";return _=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(U){return typeof U}:function(U){return U&&typeof Symbol=="function"&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U},_(N)}var w=g1(),S=w.inspect,E=ZM(),m=E.codes.ERR_INVALID_ARG_TYPE;function b(N,U,W){return(W===void 0||W>N.length)&&(W=N.length),N.substring(W-U.length,W)===U}function d(N,U){if(U=Math.floor(U),N.length==0||U==0)return"";var W=N.length*U;for(U=Math.floor(Math.log(U)/Math.log(2));U;)N+=N,U--;return N+=N.substring(0,W-N.length),N}var u="",y="",f="",P="",L={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},z=10;function F(N){var U=Object.keys(N),W=Object.create(Object.getPrototypeOf(N));return U.forEach(function(Q){W[Q]=N[Q]}),Object.defineProperty(W,"message",{value:N.message}),W}function B(N){return S(N,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function O(N,U,W){var Q="",ue="",se=0,he="",G=!1,$=B(N),J=$.split(`
`),Z=B(U).split(`
`),re=0,ne="";if(W==="strictEqual"&&_(N)==="object"&&_(U)==="object"&&N!==null&&U!==null&&(W="strictEqualObject"),J.length===1&&Z.length===1&&J[0]!==Z[0]){var j=J[0].length+Z[0].length;if(j<=z){if((_(N)!=="object"||N===null)&&(_(U)!=="object"||U===null)&&(N!==0||U!==0))return"".concat(L[W],`

`)+"".concat(J[0]," !== ").concat(Z[0],`
`)}else if(W!=="strictEqualObject"){var ee=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(j<ee){for(;J[0][re]===Z[0][re];)re++;re>2&&(ne=`
  `.concat(d(" ",re),"^"),re=0)}}}for(var ie=J[J.length-1],fe=Z[Z.length-1];ie===fe&&(re++<2?he=`
  `.concat(ie).concat(he):Q=ie,J.pop(),Z.pop(),!(J.length===0||Z.length===0));)ie=J[J.length-1],fe=Z[Z.length-1];var be=Math.max(J.length,Z.length);if(be===0){var Ae=$.split(`
`);if(Ae.length>30)for(Ae[26]="".concat(u,"...").concat(P);Ae.length>27;)Ae.pop();return"".concat(L.notIdentical,`

`).concat(Ae.join(`
`),`
`)}re>3&&(he=`
`.concat(u,"...").concat(P).concat(he),G=!0),Q!==""&&(he=`
  `.concat(Q).concat(he),Q="");var Be=0,Ie=L[W]+`
`.concat(y,"+ actual").concat(P," ").concat(f,"- expected").concat(P),Ze=" ".concat(u,"...").concat(P," Lines skipped");for(re=0;re<be;re++){var at=re-se;if(J.length<re+1)at>1&&re>2&&(at>4?(ue+=`
`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
  `.concat(Z[re-2]),Be++),ue+=`
  `.concat(Z[re-1]),Be++),se=re,Q+=`
`.concat(f,"-").concat(P," ").concat(Z[re]),Be++;else if(Z.length<re+1)at>1&&re>2&&(at>4?(ue+=`
`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
  `.concat(J[re-2]),Be++),ue+=`
  `.concat(J[re-1]),Be++),se=re,ue+=`
`.concat(y,"+").concat(P," ").concat(J[re]),Be++;else{var it=Z[re],et=J[re],lt=et!==it&&(!b(et,",")||et.slice(0,-1)!==it);lt&&b(it,",")&&it.slice(0,-1)===et&&(lt=!1,et+=","),lt?(at>1&&re>2&&(at>4?(ue+=`
`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
  `.concat(J[re-2]),Be++),ue+=`
  `.concat(J[re-1]),Be++),se=re,ue+=`
`.concat(y,"+").concat(P," ").concat(et),Q+=`
`.concat(f,"-").concat(P," ").concat(it),Be+=2):(ue+=Q,Q="",(at===1||re===0)&&(ue+=`
  `.concat(et),Be++))}if(Be>20&&re<be-2)return"".concat(Ie).concat(Ze,`
`).concat(ue,`
`).concat(u,"...").concat(P).concat(Q,`
`)+"".concat(u,"...").concat(P)}return"".concat(Ie).concat(G?Ze:"",`
`).concat(ue).concat(Q).concat(he).concat(ne)}var I=function(N,U){a(Q,N);var W=i(Q);function Q(ue){var se;if(M(this,Q),_(ue)!=="object"||ue===null)throw new m("options","Object",ue);var he=ue.message,G=ue.operator,$=ue.stackStartFn,J=ue.actual,Z=ue.expected,re=Error.stackTraceLimit;if(Error.stackTraceLimit=0,he!=null)se=W.call(this,String(he));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(u="\x1B[34m",y="\x1B[32m",P="\x1B[39m",f="\x1B[31m"):(u="",y="",P="",f="")),_(J)==="object"&&J!==null&&_(Z)==="object"&&Z!==null&&"stack"in J&&J instanceof Error&&"stack"in Z&&Z instanceof Error&&(J=F(J),Z=F(Z)),G==="deepStrictEqual"||G==="strictEqual")se=W.call(this,O(J,Z,G));else if(G==="notDeepStrictEqual"||G==="notStrictEqual"){var ne=L[G],j=B(J).split(`
`);if(G==="notStrictEqual"&&_(J)==="object"&&J!==null&&(ne=L.notStrictEqualObject),j.length>30)for(j[26]="".concat(u,"...").concat(P);j.length>27;)j.pop();j.length===1?se=W.call(this,"".concat(ne," ").concat(j[0])):se=W.call(this,"".concat(ne,`

`).concat(j.join(`
`),`
`))}else{var ee=B(J),ie="",fe=L[G];G==="notDeepEqual"||G==="notEqual"?(ee="".concat(L[G],`

`).concat(ee),ee.length>1024&&(ee="".concat(ee.slice(0,1021),"..."))):(ie="".concat(B(Z)),ee.length>512&&(ee="".concat(ee.slice(0,509),"...")),ie.length>512&&(ie="".concat(ie.slice(0,509),"...")),G==="deepEqual"||G==="equal"?ee="".concat(fe,`

`).concat(ee,`

should equal

`):ie=" ".concat(G," ").concat(ie)),se=W.call(this,"".concat(ee).concat(ie))}return Error.stackTraceLimit=re,se.generatedMessage=!he,Object.defineProperty(s(se),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),se.code="ERR_ASSERTION",se.actual=J,se.expected=Z,se.operator=G,Error.captureStackTrace&&Error.captureStackTrace(s(se),$),se.stack,se.name="AssertionError",n(se)}return t(Q,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:U,value:function(se,he){return S(this,x(x({},he),{},{customInspect:!1,depth:0}))}}]),Q}(c(Error),S.custom);H.exports=I}}),XM=Ye({"node_modules/object-keys/isArguments.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(A){var M=g.call(A),e=M==="[object Arguments]";return e||(e=M!=="[object Array]"&&A!==null&&typeof A=="object"&&typeof A.length=="number"&&A.length>=0&&g.call(A.callee)==="[object Function]"),e}}}),I4=Ye({"node_modules/object-keys/implementation.js"(X,H){"use strict";var g;Object.keys||(x=Object.prototype.hasOwnProperty,A=Object.prototype.toString,M=XM(),e=Object.prototype.propertyIsEnumerable,t=!e.call({toString:null},"toString"),r=e.call(function(){},"prototype"),o=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],a=function(c){var h=c.constructor;return h&&h.prototype===c},i={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},n=function(){if(typeof window>"u")return!1;for(var c in window)try{if(!i["$"+c]&&x.call(window,c)&&window[c]!==null&&typeof window[c]=="object")try{a(window[c])}catch{return!0}}catch{return!0}return!1}(),s=function(c){if(typeof window>"u"||!n)return a(c);try{return a(c)}catch{return!1}},g=function(h){var v=h!==null&&typeof h=="object",p=A.call(h)==="[object Function]",T=M(h),l=v&&A.call(h)==="[object String]",_=[];if(!v&&!p&&!T)throw new TypeError("Object.keys called on a non-object");var w=r&&p;if(l&&h.length>0&&!x.call(h,0))for(var S=0;S<h.length;++S)_.push(String(S));if(T&&h.length>0)for(var E=0;E<h.length;++E)_.push(String(E));else for(var m in h)!(w&&m==="prototype")&&x.call(h,m)&&_.push(String(m));if(t)for(var b=s(h),d=0;d<o.length;++d)!(b&&o[d]==="constructor")&&x.call(h,o[d])&&_.push(o[d]);return _});var x,A,M,e,t,r,o,a,i,n,s;H.exports=g}}),YM=Ye({"node_modules/object-keys/index.js"(X,H){"use strict";var g=Array.prototype.slice,x=XM(),A=Object.keys,M=A?function(r){return A(r)}:I4(),e=Object.keys;M.shim=function(){if(Object.keys){var r=function(){var o=Object.keys(arguments);return o&&o.length===arguments.length}(1,2);r||(Object.keys=function(a){return x(a)?e(g.call(a)):e(a)})}else Object.keys=M;return Object.keys||M},H.exports=M}}),R4=Ye({"node_modules/object.assign/implementation.js"(X,H){"use strict";var g=YM(),x=h3()(),A=m1(),M=Object,e=A("Array.prototype.push"),t=A("Object.prototype.propertyIsEnumerable"),r=x?Object.getOwnPropertySymbols:null;H.exports=function(a,i){if(a==null)throw new TypeError("target must be an object");var n=M(a);if(arguments.length===1)return n;for(var s=1;s<arguments.length;++s){var c=M(arguments[s]),h=g(c),v=x&&(Object.getOwnPropertySymbols||r);if(v)for(var p=v(c),T=0;T<p.length;++T){var l=p[T];t(c,l)&&e(h,l)}for(var _=0;_<h.length;++_){var w=h[_];if(t(c,w)){var S=c[w];n[w]=S}}}return n}}}),D4=Ye({"node_modules/object.assign/polyfill.js"(X,H){"use strict";var g=R4(),x=function(){if(!Object.assign)return!1;for(var M="abcdefghijklmnopqrst",e=M.split(""),t={},r=0;r<e.length;++r)t[e[r]]=e[r];var o=Object.assign({},t),a="";for(var i in o)a+=i;return M!==a},A=function(){if(!Object.assign||!Object.preventExtensions)return!1;var M=Object.preventExtensions({1:2});try{Object.assign(M,"xy")}catch{return M[1]==="y"}return!1};H.exports=function(){return!Object.assign||x()||A()?g:Object.assign}}}),KM=Ye({"node_modules/object-is/implementation.js"(X,H){"use strict";var g=function(x){return x!==x};H.exports=function(A,M){return A===0&&M===0?1/A===1/M:!!(A===M||g(A)&&g(M))}}}),m3=Ye({"node_modules/object-is/polyfill.js"(X,H){"use strict";var g=KM();H.exports=function(){return typeof Object.is=="function"?Object.is:g}}}),Z_=Ye({"node_modules/define-properties/index.js"(X,H){"use strict";var g=YM(),x=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",A=Object.prototype.toString,M=Array.prototype.concat,e=Object.defineProperty,t=function(n){return typeof n=="function"&&A.call(n)==="[object Function]"},r=zM()(),o=e&&r,a=function(n,s,c,h){if(s in n){if(h===!0){if(n[s]===c)return}else if(!t(h)||!h())return}o?e(n,s,{configurable:!0,enumerable:!1,value:c,writable:!0}):n[s]=c},i=function(n,s){var c=arguments.length>2?arguments[2]:{},h=g(s);x&&(h=M.call(h,Object.getOwnPropertySymbols(s)));for(var v=0;v<h.length;v+=1)a(n,h[v],s[h[v]],c[h[v]])};i.supportsDescriptors=!!o,H.exports=i}}),z4=Ye({"node_modules/object-is/shim.js"(X,H){"use strict";var g=m3(),x=Z_();H.exports=function(){var M=g();return x(Object,{is:M},{is:function(){return Object.is!==M}}),M}}}),F4=Ye({"node_modules/object-is/index.js"(X,H){"use strict";var g=Z_(),x=W_(),A=KM(),M=m3(),e=z4(),t=x(M(),Object);g(t,{getPolyfill:M,implementation:A,shim:e}),H.exports=t}}),JM=Ye({"node_modules/is-nan/implementation.js"(X,H){"use strict";H.exports=function(x){return x!==x}}}),$M=Ye({"node_modules/is-nan/polyfill.js"(X,H){"use strict";var g=JM();H.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:g}}}),O4=Ye({"node_modules/is-nan/shim.js"(X,H){"use strict";var g=Z_(),x=$M();H.exports=function(){var M=x();return g(Number,{isNaN:M},{isNaN:function(){return Number.isNaN!==M}}),M}}}),B4=Ye({"node_modules/is-nan/index.js"(X,H){"use strict";var g=W_(),x=Z_(),A=JM(),M=$M(),e=O4(),t=g(M(),Number);x(t,{getPolyfill:M,implementation:A,shim:e}),H.exports=t}}),N4=Ye({"node_modules/assert/build/internal/util/comparisons.js"(X,H){"use strict";function g(Me,ge){return t(Me)||e(Me,ge)||A(Me,ge)||x()}function x(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function A(Me,ge){if(Me){if(typeof Me=="string")return M(Me,ge);var ce=Object.prototype.toString.call(Me).slice(8,-1);if(ce==="Object"&&Me.constructor&&(ce=Me.constructor.name),ce==="Map"||ce==="Set")return Array.from(Me);if(ce==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(ce))return M(Me,ge)}}function M(Me,ge){(ge==null||ge>Me.length)&&(ge=Me.length);for(var ce=0,ze=new Array(ge);ce<ge;ce++)ze[ce]=Me[ce];return ze}function e(Me,ge){var ce=Me==null?null:typeof Symbol<"u"&&Me[Symbol.iterator]||Me["@@iterator"];if(ce!=null){var ze,tt,nt,Qe,Ct=[],St=!0,Ot=!1;try{if(nt=(ce=ce.call(Me)).next,ge===0){if(Object(ce)!==ce)return;St=!1}else for(;!(St=(ze=nt.call(ce)).done)&&(Ct.push(ze.value),Ct.length!==ge);St=!0);}catch(jt){Ot=!0,tt=jt}finally{try{if(!St&&ce.return!=null&&(Qe=ce.return(),Object(Qe)!==Qe))return}finally{if(Ot)throw tt}}return Ct}}function t(Me){if(Array.isArray(Me))return Me}function r(Me){"@babel/helpers - typeof";return r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ge){return typeof ge}:function(ge){return ge&&typeof Symbol=="function"&&ge.constructor===Symbol&&ge!==Symbol.prototype?"symbol":typeof ge},r(Me)}var o=/a/g.flags!==void 0,a=function(ge){var ce=[];return ge.forEach(function(ze){return ce.push(ze)}),ce},i=function(ge){var ce=[];return ge.forEach(function(ze,tt){return ce.push([tt,ze])}),ce},n=Object.is?Object.is:F4(),s=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},c=Number.isNaN?Number.isNaN:B4();function h(Me){return Me.call.bind(Me)}var v=h(Object.prototype.hasOwnProperty),p=h(Object.prototype.propertyIsEnumerable),T=h(Object.prototype.toString),l=g1().types,_=l.isAnyArrayBuffer,w=l.isArrayBufferView,S=l.isDate,E=l.isMap,m=l.isRegExp,b=l.isSet,d=l.isNativeError,u=l.isBoxedPrimitive,y=l.isNumberObject,f=l.isStringObject,P=l.isBooleanObject,L=l.isBigIntObject,z=l.isSymbolObject,F=l.isFloat32Array,B=l.isFloat64Array;function O(Me){if(Me.length===0||Me.length>10)return!0;for(var ge=0;ge<Me.length;ge++){var ce=Me.charCodeAt(ge);if(ce<48||ce>57)return!0}return Me.length===10&&Me>=Math.pow(2,32)}function I(Me){return Object.keys(Me).filter(O).concat(s(Me).filter(Object.prototype.propertyIsEnumerable.bind(Me)))}function N(Me,ge){if(Me===ge)return 0;for(var ce=Me.length,ze=ge.length,tt=0,nt=Math.min(ce,ze);tt<nt;++tt)if(Me[tt]!==ge[tt]){ce=Me[tt],ze=ge[tt];break}return ce<ze?-1:ze<ce?1:0}var U=void 0,W=!0,Q=!1,ue=0,se=1,he=2,G=3;function $(Me,ge){return o?Me.source===ge.source&&Me.flags===ge.flags:RegExp.prototype.toString.call(Me)===RegExp.prototype.toString.call(ge)}function J(Me,ge){if(Me.byteLength!==ge.byteLength)return!1;for(var ce=0;ce<Me.byteLength;ce++)if(Me[ce]!==ge[ce])return!1;return!0}function Z(Me,ge){return Me.byteLength!==ge.byteLength?!1:N(new Uint8Array(Me.buffer,Me.byteOffset,Me.byteLength),new Uint8Array(ge.buffer,ge.byteOffset,ge.byteLength))===0}function re(Me,ge){return Me.byteLength===ge.byteLength&&N(new Uint8Array(Me),new Uint8Array(ge))===0}function ne(Me,ge){return y(Me)?y(ge)&&n(Number.prototype.valueOf.call(Me),Number.prototype.valueOf.call(ge)):f(Me)?f(ge)&&String.prototype.valueOf.call(Me)===String.prototype.valueOf.call(ge):P(Me)?P(ge)&&Boolean.prototype.valueOf.call(Me)===Boolean.prototype.valueOf.call(ge):L(Me)?L(ge)&&BigInt.prototype.valueOf.call(Me)===BigInt.prototype.valueOf.call(ge):z(ge)&&Symbol.prototype.valueOf.call(Me)===Symbol.prototype.valueOf.call(ge)}function j(Me,ge,ce,ze){if(Me===ge)return Me!==0?!0:ce?n(Me,ge):!0;if(ce){if(r(Me)!=="object")return typeof Me=="number"&&c(Me)&&c(ge);if(r(ge)!=="object"||Me===null||ge===null||Object.getPrototypeOf(Me)!==Object.getPrototypeOf(ge))return!1}else{if(Me===null||r(Me)!=="object")return ge===null||r(ge)!=="object"?Me==ge:!1;if(ge===null||r(ge)!=="object")return!1}var tt=T(Me),nt=T(ge);if(tt!==nt)return!1;if(Array.isArray(Me)){if(Me.length!==ge.length)return!1;var Qe=I(Me,U),Ct=I(ge,U);return Qe.length!==Ct.length?!1:ie(Me,ge,ce,ze,se,Qe)}if(tt==="[object Object]"&&(!E(Me)&&E(ge)||!b(Me)&&b(ge)))return!1;if(S(Me)){if(!S(ge)||Date.prototype.getTime.call(Me)!==Date.prototype.getTime.call(ge))return!1}else if(m(Me)){if(!m(ge)||!$(Me,ge))return!1}else if(d(Me)||Me instanceof Error){if(Me.message!==ge.message||Me.name!==ge.name)return!1}else if(w(Me)){if(!ce&&(F(Me)||B(Me))){if(!J(Me,ge))return!1}else if(!Z(Me,ge))return!1;var St=I(Me,U),Ot=I(ge,U);return St.length!==Ot.length?!1:ie(Me,ge,ce,ze,ue,St)}else{if(b(Me))return!b(ge)||Me.size!==ge.size?!1:ie(Me,ge,ce,ze,he);if(E(Me))return!E(ge)||Me.size!==ge.size?!1:ie(Me,ge,ce,ze,G);if(_(Me)){if(!re(Me,ge))return!1}else if(u(Me)&&!ne(Me,ge))return!1}return ie(Me,ge,ce,ze,ue)}function ee(Me,ge){return ge.filter(function(ce){return p(Me,ce)})}function ie(Me,ge,ce,ze,tt,nt){if(arguments.length===5){nt=Object.keys(Me);var Qe=Object.keys(ge);if(nt.length!==Qe.length)return!1}for(var Ct=0;Ct<nt.length;Ct++)if(!v(ge,nt[Ct]))return!1;if(ce&&arguments.length===5){var St=s(Me);if(St.length!==0){var Ot=0;for(Ct=0;Ct<St.length;Ct++){var jt=St[Ct];if(p(Me,jt)){if(!p(ge,jt))return!1;nt.push(jt),Ot++}else if(p(ge,jt))return!1}var ur=s(ge);if(St.length!==ur.length&&ee(ge,ur).length!==Ot)return!1}else{var ar=s(ge);if(ar.length!==0&&ee(ge,ar).length!==0)return!1}}if(nt.length===0&&(tt===ue||tt===se&&Me.length===0||Me.size===0))return!0;if(ze===void 0)ze={val1:new Map,val2:new Map,position:0};else{var Cr=ze.val1.get(Me);if(Cr!==void 0){var vr=ze.val2.get(ge);if(vr!==void 0)return Cr===vr}ze.position++}ze.val1.set(Me,ze.position),ze.val2.set(ge,ze.position);var _r=it(Me,ge,ce,nt,ze,tt);return ze.val1.delete(Me),ze.val2.delete(ge),_r}function fe(Me,ge,ce,ze){for(var tt=a(Me),nt=0;nt<tt.length;nt++){var Qe=tt[nt];if(j(ge,Qe,ce,ze))return Me.delete(Qe),!0}return!1}function be(Me){switch(r(Me)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":Me=+Me;case"number":if(c(Me))return!1}return!0}function Ae(Me,ge,ce){var ze=be(ce);return ze??(ge.has(ze)&&!Me.has(ze))}function Be(Me,ge,ce,ze,tt){var nt=be(ce);if(nt!=null)return nt;var Qe=ge.get(nt);return Qe===void 0&&!ge.has(nt)||!j(ze,Qe,!1,tt)?!1:!Me.has(nt)&&j(ze,Qe,!1,tt)}function Ie(Me,ge,ce,ze){for(var tt=null,nt=a(Me),Qe=0;Qe<nt.length;Qe++){var Ct=nt[Qe];if(r(Ct)==="object"&&Ct!==null)tt===null&&(tt=new Set),tt.add(Ct);else if(!ge.has(Ct)){if(ce||!Ae(Me,ge,Ct))return!1;tt===null&&(tt=new Set),tt.add(Ct)}}if(tt!==null){for(var St=a(ge),Ot=0;Ot<St.length;Ot++){var jt=St[Ot];if(r(jt)==="object"&&jt!==null){if(!fe(tt,jt,ce,ze))return!1}else if(!ce&&!Me.has(jt)&&!fe(tt,jt,ce,ze))return!1}return tt.size===0}return!0}function Ze(Me,ge,ce,ze,tt,nt){for(var Qe=a(Me),Ct=0;Ct<Qe.length;Ct++){var St=Qe[Ct];if(j(ce,St,tt,nt)&&j(ze,ge.get(St),tt,nt))return Me.delete(St),!0}return!1}function at(Me,ge,ce,ze){for(var tt=null,nt=i(Me),Qe=0;Qe<nt.length;Qe++){var Ct=g(nt[Qe],2),St=Ct[0],Ot=Ct[1];if(r(St)==="object"&&St!==null)tt===null&&(tt=new Set),tt.add(St);else{var jt=ge.get(St);if(jt===void 0&&!ge.has(St)||!j(Ot,jt,ce,ze)){if(ce||!Be(Me,ge,St,Ot,ze))return!1;tt===null&&(tt=new Set),tt.add(St)}}}if(tt!==null){for(var ur=i(ge),ar=0;ar<ur.length;ar++){var Cr=g(ur[ar],2),vr=Cr[0],_r=Cr[1];if(r(vr)==="object"&&vr!==null){if(!Ze(tt,Me,vr,_r,ce,ze))return!1}else if(!ce&&(!Me.has(vr)||!j(Me.get(vr),_r,!1,ze))&&!Ze(tt,Me,vr,_r,!1,ze))return!1}return tt.size===0}return!0}function it(Me,ge,ce,ze,tt,nt){var Qe=0;if(nt===he){if(!Ie(Me,ge,ce,tt))return!1}else if(nt===G){if(!at(Me,ge,ce,tt))return!1}else if(nt===se)for(;Qe<Me.length;Qe++)if(v(Me,Qe)){if(!v(ge,Qe)||!j(Me[Qe],ge[Qe],ce,tt))return!1}else{if(v(ge,Qe))return!1;for(var Ct=Object.keys(Me);Qe<Ct.length;Qe++){var St=Ct[Qe];if(!v(ge,St)||!j(Me[St],ge[St],ce,tt))return!1}return Ct.length===Object.keys(ge).length}for(Qe=0;Qe<ze.length;Qe++){var Ot=ze[Qe];if(!j(Me[Ot],ge[Ot],ce,tt))return!1}return!0}function et(Me,ge){return j(Me,ge,Q)}function lt(Me,ge){return j(Me,ge,W)}H.exports={isDeepEqual:et,isDeepStrictEqual:lt}}}),X_=Ye({"node_modules/assert/build/assert.js"(X,H){"use strict";function g($){"@babel/helpers - typeof";return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(J){return typeof J}:function(J){return J&&typeof Symbol=="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J},g($)}function x($,J){for(var Z=0;Z<J.length;Z++){var re=J[Z];re.enumerable=re.enumerable||!1,re.configurable=!0,"value"in re&&(re.writable=!0),Object.defineProperty($,M(re.key),re)}}function A($,J,Z){return J&&x($.prototype,J),Z&&x($,Z),Object.defineProperty($,"prototype",{writable:!1}),$}function M($){var J=e($,"string");return g(J)==="symbol"?J:String(J)}function e($,J){if(g($)!=="object"||$===null)return $;var Z=$[Symbol.toPrimitive];if(Z!==void 0){var re=Z.call($,J||"default");if(g(re)!=="object")return re;throw new TypeError("@@toPrimitive must return a primitive value.")}return(J==="string"?String:Number)($)}function t($,J){if(!($ instanceof J))throw new TypeError("Cannot call a class as a function")}var r=ZM(),o=r.codes,a=o.ERR_AMBIGUOUS_ARGUMENT,i=o.ERR_INVALID_ARG_TYPE,n=o.ERR_INVALID_ARG_VALUE,s=o.ERR_INVALID_RETURN_VALUE,c=o.ERR_MISSING_ARGS,h=P4(),v=g1(),p=v.inspect,T=g1().types,l=T.isPromise,_=T.isRegExp,w=D4()(),S=m3()(),E=m1()("RegExp.prototype.test"),m,b;function d(){var $=N4();m=$.isDeepEqual,b=$.isDeepStrictEqual}var u=!1,y=H.exports=F,f={};function P($){throw $.message instanceof Error?$.message:new h($)}function L($,J,Z,re,ne){var j=arguments.length,ee;if(j===0)ee="Failed";else if(j===1)Z=$,$=void 0;else{if(u===!1){u=!0;var ie=process.emitWarning?process.emitWarning:console.warn.bind(console);ie("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")}j===2&&(re="!=")}if(Z instanceof Error)throw Z;var fe={actual:$,expected:J,operator:re===void 0?"fail":re,stackStartFn:ne||L};Z!==void 0&&(fe.message=Z);var be=new h(fe);throw ee&&(be.message=ee,be.generatedMessage=!0),be}y.fail=L,y.AssertionError=h;function z($,J,Z,re){if(!Z){var ne=!1;if(J===0)ne=!0,re="No value argument passed to `assert.ok()`";else if(re instanceof Error)throw re;var j=new h({actual:Z,expected:!0,message:re,operator:"==",stackStartFn:$});throw j.generatedMessage=ne,j}}function F(){for(var $=arguments.length,J=new Array($),Z=0;Z<$;Z++)J[Z]=arguments[Z];z.apply(void 0,[F,J.length].concat(J))}y.ok=F,y.equal=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");J!=Z&&P({actual:J,expected:Z,message:re,operator:"==",stackStartFn:$})},y.notEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");J==Z&&P({actual:J,expected:Z,message:re,operator:"!=",stackStartFn:$})},y.deepEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),m(J,Z)||P({actual:J,expected:Z,message:re,operator:"deepEqual",stackStartFn:$})},y.notDeepEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),m(J,Z)&&P({actual:J,expected:Z,message:re,operator:"notDeepEqual",stackStartFn:$})},y.deepStrictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),b(J,Z)||P({actual:J,expected:Z,message:re,operator:"deepStrictEqual",stackStartFn:$})},y.notDeepStrictEqual=B;function B($,J,Z){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),b($,J)&&P({actual:$,expected:J,message:Z,operator:"notDeepStrictEqual",stackStartFn:B})}y.strictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");S(J,Z)||P({actual:J,expected:Z,message:re,operator:"strictEqual",stackStartFn:$})},y.notStrictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");S(J,Z)&&P({actual:J,expected:Z,message:re,operator:"notStrictEqual",stackStartFn:$})};var O=A(function $(J,Z,re){var ne=this;t(this,$),Z.forEach(function(j){j in J&&(re!==void 0&&typeof re[j]=="string"&&_(J[j])&&E(J[j],re[j])?ne[j]=re[j]:ne[j]=J[j])})});function I($,J,Z,re,ne,j){if(!(Z in $)||!b($[Z],J[Z])){if(!re){var ee=new O($,ne),ie=new O(J,ne,$),fe=new h({actual:ee,expected:ie,operator:"deepStrictEqual",stackStartFn:j});throw fe.actual=$,fe.expected=J,fe.operator=j.name,fe}P({actual:$,expected:J,message:re,operator:j.name,stackStartFn:j})}}function N($,J,Z,re){if(typeof J!="function"){if(_(J))return E(J,$);if(arguments.length===2)throw new i("expected",["Function","RegExp"],J);if(g($)!=="object"||$===null){var ne=new h({actual:$,expected:J,message:Z,operator:"deepStrictEqual",stackStartFn:re});throw ne.operator=re.name,ne}var j=Object.keys(J);if(J instanceof Error)j.push("name","message");else if(j.length===0)throw new n("error",J,"may not be an empty object");return m===void 0&&d(),j.forEach(function(ee){typeof $[ee]=="string"&&_(J[ee])&&E(J[ee],$[ee])||I($,J,ee,Z,j,re)}),!0}return J.prototype!==void 0&&$ instanceof J?!0:Error.isPrototypeOf(J)?!1:J.call({},$)===!0}function U($){if(typeof $!="function")throw new i("fn","Function",$);try{$()}catch(J){return J}return f}function W($){return l($)||$!==null&&g($)==="object"&&typeof $.then=="function"&&typeof $.catch=="function"}function Q($){return Promise.resolve().then(function(){var J;if(typeof $=="function"){if(J=$(),!W(J))throw new s("instance of Promise","promiseFn",J)}else if(W($))J=$;else throw new i("promiseFn",["Function","Promise"],$);return Promise.resolve().then(function(){return J}).then(function(){return f}).catch(function(Z){return Z})})}function ue($,J,Z,re){if(typeof Z=="string"){if(arguments.length===4)throw new i("error",["Object","Error","Function","RegExp"],Z);if(g(J)==="object"&&J!==null){if(J.message===Z)throw new a("error/message",'The error message "'.concat(J.message,'" is identical to the message.'))}else if(J===Z)throw new a("error/message",'The error "'.concat(J,'" is identical to the message.'));re=Z,Z=void 0}else if(Z!=null&&g(Z)!=="object"&&typeof Z!="function")throw new i("error",["Object","Error","Function","RegExp"],Z);if(J===f){var ne="";Z&&Z.name&&(ne+=" (".concat(Z.name,")")),ne+=re?": ".concat(re):".";var j=$.name==="rejects"?"rejection":"exception";P({actual:void 0,expected:Z,operator:$.name,message:"Missing expected ".concat(j).concat(ne),stackStartFn:$})}if(Z&&!N(J,Z,re,$))throw J}function se($,J,Z,re){if(J!==f){if(typeof Z=="string"&&(re=Z,Z=void 0),!Z||N(J,Z)){var ne=re?": ".concat(re):".",j=$.name==="doesNotReject"?"rejection":"exception";P({actual:J,expected:Z,operator:$.name,message:"Got unwanted ".concat(j).concat(ne,`
`)+'Actual message: "'.concat(J&&J.message,'"'),stackStartFn:$})}throw J}}y.throws=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];ue.apply(void 0,[$,U(J)].concat(re))},y.rejects=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];return Q(J).then(function(j){return ue.apply(void 0,[$,j].concat(re))})},y.doesNotThrow=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];se.apply(void 0,[$,U(J)].concat(re))},y.doesNotReject=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];return Q(J).then(function(j){return se.apply(void 0,[$,j].concat(re))})},y.ifError=function $(J){if(J!=null){var Z="ifError got unwanted exception: ";g(J)==="object"&&typeof J.message=="string"?J.message.length===0&&J.constructor?Z+=J.constructor.name:Z+=J.message:Z+=p(J);var re=new h({actual:J,expected:null,operator:"ifError",message:Z,stackStartFn:$}),ne=J.stack;if(typeof ne=="string"){var j=ne.split(`
`);j.shift();for(var ee=re.stack.split(`
`),ie=0;ie<j.length;ie++){var fe=ee.indexOf(j[ie]);if(fe!==-1){ee=ee.slice(0,fe);break}}re.stack="".concat(ee.join(`
`),`
`).concat(j.join(`
`))}throw re}};function he($,J,Z,re,ne){if(!_(J))throw new i("regexp","RegExp",J);var j=ne==="match";if(typeof $!="string"||E(J,$)!==j){if(Z instanceof Error)throw Z;var ee=!Z;Z=Z||(typeof $!="string"?'The "string" argument must be of type string. Received type '+"".concat(g($)," (").concat(p($),")"):(j?"The input did not match the regular expression ":"The input was expected to not match the regular expression ")+"".concat(p(J),`. Input:

`).concat(p($),`
`));var ie=new h({actual:$,expected:J,message:Z,operator:ne,stackStartFn:re});throw ie.generatedMessage=ee,ie}}y.match=function $(J,Z,re){he(J,Z,re,$,"match")},y.doesNotMatch=function $(J,Z,re){he(J,Z,re,$,"doesNotMatch")};function G(){for(var $=arguments.length,J=new Array($),Z=0;Z<$;Z++)J[Z]=arguments[Z];z.apply(void 0,[G,J.length].concat(J))}y.strict=w(G,y,{equal:y.strictEqual,deepEqual:y.deepStrictEqual,notEqual:y.notStrictEqual,notDeepEqual:y.notDeepStrictEqual}),y.strict.strict=y.strict}}),U4=Ye({"node_modules/stream-parser/node_modules/ms/index.js"(X,H){var g=1e3,x=g*60,A=x*60,M=A*24,e=M*365.25;H.exports=function(i,n){n=n||{};var s=typeof i;if(s==="string"&&i.length>0)return t(i);if(s==="number"&&isNaN(i)===!1)return n.long?o(i):r(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))};function t(i){if(i=String(i),!(i.length>100)){var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(i);if(n){var s=parseFloat(n[1]),c=(n[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*e;case"days":case"day":case"d":return s*M;case"hours":case"hour":case"hrs":case"hr":case"h":return s*A;case"minutes":case"minute":case"mins":case"min":case"m":return s*x;case"seconds":case"second":case"secs":case"sec":case"s":return s*g;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function r(i){return i>=M?Math.round(i/M)+"d":i>=A?Math.round(i/A)+"h":i>=x?Math.round(i/x)+"m":i>=g?Math.round(i/g)+"s":i+"ms"}function o(i){return a(i,M,"day")||a(i,A,"hour")||a(i,x,"minute")||a(i,g,"second")||i+" ms"}function a(i,n,s){if(!(i<n))return i<n*1.5?Math.floor(i/n)+" "+s:Math.ceil(i/n)+" "+s+"s"}}}),j4=Ye({"node_modules/stream-parser/node_modules/debug/src/debug.js"(X,H){X=H.exports=A.debug=A.default=A,X.coerce=r,X.disable=e,X.enable=M,X.enabled=t,X.humanize=U4(),X.names=[],X.skips=[],X.formatters={};var g;function x(o){var a=0,i;for(i in o)a=(a<<5)-a+o.charCodeAt(i),a|=0;return X.colors[Math.abs(a)%X.colors.length]}function A(o){function a(){if(a.enabled){var i=a,n=+new Date,s=n-(g||n);i.diff=s,i.prev=g,i.curr=n,g=n;for(var c=new Array(arguments.length),h=0;h<c.length;h++)c[h]=arguments[h];c[0]=X.coerce(c[0]),typeof c[0]!="string"&&c.unshift("%O");var v=0;c[0]=c[0].replace(/%([a-zA-Z%])/g,function(T,l){if(T==="%%")return T;v++;var _=X.formatters[l];if(typeof _=="function"){var w=c[v];T=_.call(i,w),c.splice(v,1),v--}return T}),X.formatArgs.call(i,c);var p=a.log||X.log||console.log.bind(console);p.apply(i,c)}}return a.namespace=o,a.enabled=X.enabled(o),a.useColors=X.useColors(),a.color=x(o),typeof X.init=="function"&&X.init(a),a}function M(o){X.save(o),X.names=[],X.skips=[];for(var a=(typeof o=="string"?o:"").split(/[\s,]+/),i=a.length,n=0;n<i;n++)a[n]&&(o=a[n].replace(/\*/g,".*?"),o[0]==="-"?X.skips.push(new RegExp("^"+o.substr(1)+"$")):X.names.push(new RegExp("^"+o+"$")))}function e(){X.enable("")}function t(o){var a,i;for(a=0,i=X.skips.length;a<i;a++)if(X.skips[a].test(o))return!1;for(a=0,i=X.names.length;a<i;a++)if(X.names[a].test(o))return!0;return!1}function r(o){return o instanceof Error?o.stack||o.message:o}}}),V4=Ye({"node_modules/stream-parser/node_modules/debug/src/browser.js"(X,H){X=H.exports=j4(),X.log=A,X.formatArgs=x,X.save=M,X.load=e,X.useColors=g,X.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:t(),X.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function g(){return typeof window<"u"&&window.process&&window.process.type==="renderer"?!0:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}X.formatters.j=function(r){try{return JSON.stringify(r)}catch(o){return"[UnexpectedJSONParseError]: "+o.message}};function x(r){var o=this.useColors;if(r[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+r[0]+(o?"%c ":" ")+"+"+X.humanize(this.diff),!!o){var a="color: "+this.color;r.splice(1,0,a,"color: inherit");var i=0,n=0;r[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(i++,s==="%c"&&(n=i))}),r.splice(n,0,a)}}function A(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function M(r){try{r==null?X.storage.removeItem("debug"):X.storage.debug=r}catch{}}function e(){var r;try{r=X.storage.debug}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}X.enable(e());function t(){try{return window.localStorage}catch{}}}}),q4=Ye({"node_modules/stream-parser/index.js"(X,H){var g=X_(),x=V4()("stream-parser");H.exports=r;var A=-1,M=0,e=1,t=2;function r(l){var _=l&&typeof l._transform=="function",w=l&&typeof l._write=="function";if(!_&&!w)throw new Error("must pass a Writable or Transform stream in");x("extending Parser into stream"),l._bytes=a,l._skipBytes=i,_&&(l._passthrough=n),_?l._transform=c:l._write=s}function o(l){x("initializing parser stream"),l._parserBytesLeft=0,l._parserBuffers=[],l._parserBuffered=0,l._parserState=A,l._parserCallback=null,typeof l.push=="function"&&(l._parserOutput=l.push.bind(l)),l._parserInit=!0}function a(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(isFinite(l)&&l>0,'can only buffer a finite number of bytes > 0, got "'+l+'"'),this._parserInit||o(this),x("buffering %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=M}function i(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(l>0,'can only skip > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("skipping %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=e}function n(l,_){g(!this._parserCallback,'There is already a "callback" set!'),g(l>0,'can only pass through > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("passing through %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=t}function s(l,_,w){this._parserInit||o(this),x("write(%o bytes)",l.length),typeof _=="function"&&(w=_),p(this,l,null,w)}function c(l,_,w){this._parserInit||o(this),x("transform(%o bytes)",l.length),typeof _!="function"&&(_=this._parserOutput),p(this,l,_,w)}function h(l,_,w,S){return l._parserBytesLeft<=0?S(new Error("got data but not currently parsing anything")):_.length<=l._parserBytesLeft?function(){return v(l,_,w,S)}:function(){var E=_.slice(0,l._parserBytesLeft);return v(l,E,w,function(m){if(m)return S(m);if(_.length>E.length)return function(){return h(l,_.slice(E.length),w,S)}})}}function v(l,_,w,S){if(l._parserBytesLeft-=_.length,x("%o bytes left for stream piece",l._parserBytesLeft),l._parserState===M?(l._parserBuffers.push(_),l._parserBuffered+=_.length):l._parserState===t&&w(_),l._parserBytesLeft===0){var E=l._parserCallback;if(E&&l._parserState===M&&l._parserBuffers.length>1&&(_=Buffer.concat(l._parserBuffers,l._parserBuffered)),l._parserState!==M&&(_=null),l._parserCallback=null,l._parserBuffered=0,l._parserState=A,l._parserBuffers.splice(0),E){var m=[];_&&m.push(_),w&&m.push(w);var b=E.length>m.length;b&&m.push(T(S));var d=E.apply(l,m);if(!b||S===d)return S}}else return S}var p=T(h);function T(l){return function(){for(var _=l.apply(this,arguments);typeof _=="function";)_=_();return _}}}}),Mu=Ye({"node_modules/probe-image-size/lib/common.js"(X){"use strict";var H=L4().Transform,g=q4();function x(){H.call(this,{readableObjectMode:!0})}x.prototype=Object.create(H.prototype),x.prototype.constructor=x,g(x.prototype),X.ParserStream=x,X.sliceEq=function(M,e,t){for(var r=e,o=0;o<t.length;)if(M[r++]!==t[o++])return!1;return!0},X.str2arr=function(M,e){var t=[],r=0;if(e&&e==="hex")for(;r<M.length;)t.push(parseInt(M.slice(r,r+2),16)),r+=2;else for(;r<M.length;r++)t.push(M.charCodeAt(r)&255);return t},X.readUInt16LE=function(M,e){return M[e]|M[e+1]<<8},X.readUInt16BE=function(M,e){return M[e+1]|M[e]<<8},X.readUInt32LE=function(M,e){return M[e]|M[e+1]<<8|M[e+2]<<16|M[e+3]*16777216},X.readUInt32BE=function(M,e){return M[e+3]|M[e+2]<<8|M[e+1]<<16|M[e]*16777216};function A(M,e,t){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||"",this.name=this.constructor.name,this.message=M,e&&(this.code=e),t&&(this.statusCode=t)}A.prototype=Object.create(Error.prototype),A.prototype.constructor=A,X.ProbeError=A}}),H4=Ye({"node_modules/probe-image-size/lib/miaf_utils.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().readUInt32BE;function A(n,s){if(n.length<4+s)return null;var c=x(n,s);return n.length<c+s||c<8?null:{boxtype:String.fromCharCode.apply(null,n.slice(s+4,s+8)),data:n.slice(s+8,s+c),end:s+c}}H.exports.unbox=A;function M(n,s){for(var c=0;;){var h=A(n,c);if(!h)break;switch(h.boxtype){case"ispe":s.sizes.push({width:x(h.data,4),height:x(h.data,8)});break;case"irot":s.transforms.push({type:"irot",value:h.data[0]&3});break;case"imir":s.transforms.push({type:"imir",value:h.data[0]&1});break}c=h.end}}function e(n,s,c){for(var h=0,v=0;v<c;v++)h=h*256+(n[s+v]||0);return h}function t(n,s){for(var c=n[4]>>4&15,h=n[4]&15,v=n[5]>>4&15,p=g(n,6),T=8,l=0;l<p;l++){var _=g(n,T);T+=2;var w=g(n,T);T+=2;var S=e(n,T,v);T+=v;var E=g(n,T);if(T+=2,w===0&&E===1){var m=e(n,T,c),b=e(n,T+c,h);s.item_loc[_]={length:b,offset:m+S}}T+=E*(c+h)}}function r(n,s){for(var c=g(n,4),h=6,v=0;v<c;v++){var p=A(n,h);if(!p)break;if(p.boxtype==="infe"){for(var T=g(p.data,4),l="",_=8;_<p.data.length&&p.data[_];_++)l+=String.fromCharCode(p.data[_]);s.item_inf[l]=T}h=p.end}}function o(n,s){for(var c=0;;){var h=A(n,c);if(!h)break;h.boxtype==="ipco"&&M(h.data,s),c=h.end}}function a(n,s){for(var c=4;;){var h=A(n,c);if(!h)break;h.boxtype==="iprp"&&o(h.data,s),h.boxtype==="iloc"&&t(h.data,s),h.boxtype==="iinf"&&r(h.data,s),c=h.end}}function i(n){var s=n.reduce(function(v,p){return v.width>p.width||v.width===p.width&&v.height>p.height?v:p}),c=n.reduce(function(v,p){return v.height>p.height||v.height===p.height&&v.width>p.width?v:p}),h;return s.width>c.height||s.width===c.height&&s.height>c.width?h=s:h=c,h}H.exports.readSizeFromMeta=function(n){var s={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(a(n,s),!!s.sizes.length){var c=i(s.sizes),h=1;s.transforms.forEach(function(p){var T={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(p.type==="imir"&&(p.value===0?h=l[h]:(h=l[h],h=T[h],h=T[h])),p.type==="irot")for(var _=0;_<p.value;_++)h=T[h]});var v=null;return s.item_inf.Exif&&(v=s.item_loc[s.item_inf.Exif]),{width:c.width,height:c.height,orientation:s.transforms.length?h:null,variants:s.sizes,exif_location:v}}},H.exports.getMimeType=function(n){var s=String.fromCharCode.apply(null,n.slice(0,4)),c={};c[s]=!0;for(var h=8;h<n.length;h+=4)c[String.fromCharCode.apply(null,n.slice(h,h+4))]=!0;if(!(!c.mif1&&!c.msf1&&!c.miaf))return s==="avif"||s==="avis"||s==="avio"?{type:"avif",mime:"image/avif"}:s==="heic"||s==="heix"?{type:"heic",mime:"image/heic"}:s==="hevc"||s==="hevx"?{type:"heic",mime:"image/heic-sequence"}:c.avif||c.avis?{type:"avif",mime:"image/avif"}:c.heic||c.heix||c.hevc||c.hevx||c.heis?c.msf1?{type:"heif",mime:"image/heif-sequence"}:{type:"heif",mime:"image/heif"}:{type:"avif",mime:"image/avif"}}}}),g3=Ye({"node_modules/probe-image-size/lib/exif_utils.js"(X,H){"use strict";function g(M,e){var t=new Error(M);return t.code=e,t}function x(M){try{return decodeURIComponent(escape(M))}catch{return M}}function A(M,e,t){this.input=M.subarray(e,t),this.start=e;var r=String.fromCharCode.apply(null,this.input.subarray(0,4));if(r!=="II*\0"&&r!=="MM\0*")throw g("invalid TIFF signature","EBADDATA");this.big_endian=r[0]==="M"}A.prototype.each=function(M){this.aborted=!1;var e=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:e}];this.ifds_to_read.length>0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,M)}},A.prototype.read_uint16=function(M){var e=this.input;if(M+2>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*256+e[M+1]:e[M]+e[M+1]*256},A.prototype.read_uint32=function(M){var e=this.input;if(M+4>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*16777216+e[M+1]*65536+e[M+2]*256+e[M+3]:e[M]+e[M+1]*256+e[M+2]*65536+e[M+3]*16777216},A.prototype.is_subifd_link=function(M,e){return M===0&&e===34665||M===0&&e===34853||M===34665&&e===40965},A.prototype.exif_format_length=function(M){switch(M){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},A.prototype.exif_format_read=function(M,e){var t;switch(M){case 1:case 2:return t=this.input[e],t;case 6:return t=this.input[e],t|(t&128)*33554430;case 3:return t=this.read_uint16(e),t;case 8:return t=this.read_uint16(e),t|(t&32768)*131070;case 4:return t=this.read_uint32(e),t;case 9:return t=this.read_uint32(e),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},A.prototype.scan_ifd=function(M,e,t){var r=this.read_uint16(e);e+=2;for(var o=0;o<r;o++){var a=this.read_uint16(e),i=this.read_uint16(e+2),n=this.read_uint32(e+4),s=this.exif_format_length(i),c=n*s,h=c<=4?e+8:this.read_uint32(e+8),v=!1;if(h+c>this.input.length)throw g("unexpected EOF","EBADDATA");for(var p=[],T=h,l=0;l<n;l++,T+=s){var _=this.exif_format_read(i,T);if(_===null){p=null;break}p.push(_)}Array.isArray(p)&&i===2&&(p=x(String.fromCharCode.apply(null,p)),p&&p[p.length-1]==="\0"&&(p=p.slice(0,-1))),this.is_subifd_link(M,a)&&Array.isArray(p)&&Number.isInteger(p[0])&&p[0]>0&&(this.ifds_to_read.push({id:a,offset:p[0]}),v=!0);var w={is_big_endian:this.big_endian,ifd:M,tag:a,format:i,count:n,entry_offset:e+this.start,data_length:c,data_offset:h+this.start,value:p,is_subifd_link:v};if(t(w)===!1){this.aborted=!0;return}e+=12}M===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(e)})},H.exports.ExifParser=A,H.exports.get_orientation=function(M){var e=0;try{return new A(M,0,M.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return e=t.value[0],!1}),e}catch{return-1}}}}),G4=Ye({"node_modules/probe-image-size/lib/parse_sync/avif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=H4(),e=g3(),t=g("ftyp");H.exports=function(r){if(x(r,4,t)){var o=M.unbox(r,0);if(o){var a=M.getMimeType(o.data);if(a){for(var i,n=o.end;;){var s=M.unbox(r,n);if(!s)break;if(n=s.end,s.boxtype==="mdat")return;if(s.boxtype==="meta"){i=s.data;break}}if(i){var c=M.readSizeFromMeta(i);if(c){var h={width:c.width,height:c.height,type:a.type,mime:a.mime,wUnits:"px",hUnits:"px"};if(c.variants.length>1&&(h.variants=c.variants),c.orientation&&(h.orientation=c.orientation),c.exif_location&&c.exif_location.offset+c.exif_location.length<=r.length){var v=A(r,c.exif_location.offset),p=r.slice(c.exif_location.offset+v+4,c.exif_location.offset+c.exif_location.length),T=e.get_orientation(p);T>0&&(h.orientation=T)}return h}}}}}}}}),W4=Ye({"node_modules/probe-image-size/lib/parse_sync/bmp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("BM");H.exports=function(e){if(!(e.length<26)&&x(e,0,M))return{width:A(e,18),height:A(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}}}),Z4=Ye({"node_modules/probe-image-size/lib/parse_sync/gif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("GIF87a"),e=g("GIF89a");H.exports=function(t){if(!(t.length<10)&&!(!x(t,0,M)&&!x(t,0,e)))return{width:A(t,6),height:A(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}}}),X4=Ye({"node_modules/probe-image-size/lib/parse_sync/ico.js"(X,H){"use strict";var g=Mu().readUInt16LE,x=0,A=1,M=16;H.exports=function(e){var t=g(e,0),r=g(e,2),o=g(e,4);if(!(t!==x||r!==A||!o)){for(var a=[],i={width:0,height:0},n=0;n<o;n++){var s=e[6+M*n]||256,c=e[6+M*n+1]||256,h={width:s,height:c};a.push(h),(s>i.width||c>i.height)&&(i=h)}return{width:i.width,height:i.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}}}),Y4=Ye({"node_modules/probe-image-size/lib/parse_sync/jpeg.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().str2arr,A=Mu().sliceEq,M=g3(),e=x("Exif\0\0");H.exports=function(t){if(!(t.length<2)&&!(t[0]!==255||t[1]!==216||t[2]!==255))for(var r=2;;){for(;;){if(t.length-r<2)return;if(t[r++]===255)break}for(var o=t[r++],a;o===255;)o=t[r++];if(208<=o&&o<=217||o===1)a=0;else if(192<=o&&o<=254){if(t.length-r<2)return;a=g(t,r)-2,r+=2}else return;if(o===217||o===218)return;var i;if(o===225&&a>=10&&A(t,r,e)&&(i=M.get_orientation(t.slice(r+6,r+a))),a>=5&&192<=o&&o<=207&&o!==196&&o!==200&&o!==204){if(t.length-r<a)return;var n={width:g(t,r+3),height:g(t,r+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return i>0&&(n.orientation=i),n}r+=a}}}}),K4=Ye({"node_modules/probe-image-size/lib/parse_sync/png.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g(`\x89PNG\r

`),e=g("IHDR");H.exports=function(t){if(!(t.length<24)&&x(t,0,M)&&x(t,12,e))return{width:A(t,16),height:A(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}}}),J4=Ye({"node_modules/probe-image-size/lib/parse_sync/psd.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g("8BPS\0");H.exports=function(e){if(!(e.length<22)&&x(e,0,M))return{width:A(e,18),height:A(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}}}),$4=Ye({"node_modules/probe-image-size/lib/parse_sync/svg.js"(X,H){"use strict";function g(s){return s===32||s===9||s===13||s===10}function x(s){return typeof s=="number"&&isFinite(s)&&s>0}function A(s){var c=0,h=s.length;for(s[0]===239&&s[1]===187&&s[2]===191&&(c=3);c<h&&g(s[c]);)c++;return c===h?!1:s[c]===60}var M=/<[-_.:a-zA-Z0-9][^>]*>/,e=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,t=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,r=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,a=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function i(s){var c=s.match(t),h=s.match(r),v=s.match(o);return{width:c&&(c[1]||c[2]),height:h&&(h[1]||h[2]),viewbox:v&&(v[1]||v[2])}}function n(s){return a.test(s)?s.match(a)[0]:"px"}H.exports=function(s){if(A(s)){for(var c="",h=0;h<s.length;h++)c+=String.fromCharCode(s[h]);var v=(c.match(M)||[""])[0];if(e.test(v)){var p=i(v),T=parseFloat(p.width),l=parseFloat(p.height);if(p.width&&p.height)return!x(T)||!x(l)?void 0:{width:T,height:l,type:"svg",mime:"image/svg+xml",wUnits:n(p.width),hUnits:n(p.height)};var _=(p.viewbox||"").split(" "),w={width:_[2],height:_[3]},S=parseFloat(w.width),E=parseFloat(w.height);if(!(!x(S)||!x(E))&&n(w.width)===n(w.height)){var m=S/E;return p.width?x(T)?{width:T,height:T/m,type:"svg",mime:"image/svg+xml",wUnits:n(p.width),hUnits:n(p.width)}:void 0:p.height?x(l)?{width:l*m,height:l,type:"svg",mime:"image/svg+xml",wUnits:n(p.height),hUnits:n(p.height)}:void 0:{width:S,height:E,type:"svg",mime:"image/svg+xml",wUnits:n(w.width),hUnits:n(w.height)}}}}}}}),Q4=Ye({"node_modules/probe-image-size/lib/parse_sync/tiff.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=Mu().readUInt16BE,e=Mu().readUInt32LE,t=Mu().readUInt32BE,r=g("II*\0"),o=g("MM\0*");function a(s,c,h){return h?M(s,c):A(s,c)}function i(s,c,h){return h?t(s,c):e(s,c)}function n(s,c,h){var v=a(s,c+2,h),p=i(s,c+4,h);return p!==1||v!==3&&v!==4?null:v===3?a(s,c+8,h):i(s,c+8,h)}H.exports=function(s){if(!(s.length<8)&&!(!x(s,0,r)&&!x(s,0,o))){var c=s[0]===77,h=i(s,4,c)-8;if(!(h<0)){var v=h+8;if(!(s.length-v<2)){var p=a(s,v+0,c)*12;if(!(p<=0)&&(v+=2,!(s.length-v<p))){var T,l,_,w;for(T=0;T<p;T+=12)w=a(s,v+T,c),w===256?l=n(s,v+T,c):w===257&&(_=n(s,v+T,c));if(l&&_)return{width:l,height:_,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}}}}}}}}),e9=Ye({"node_modules/probe-image-size/lib/parse_sync/webp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=Mu().readUInt32LE,e=g3(),t=g("RIFF"),r=g("WEBP");function o(n,s){if(!(n[s+3]!==157||n[s+4]!==1||n[s+5]!==42))return{width:A(n,s+6)&16383,height:A(n,s+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function a(n,s){if(n[s]===47){var c=M(n,s+1);return{width:(c&16383)+1,height:(c>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function i(n,s){return{width:(n[s+6]<<16|n[s+5]<<8|n[s+4])+1,height:(n[s+9]<<s|n[s+8]<<8|n[s+7])+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}H.exports=function(n){if(!(n.length<16)&&!(!x(n,0,t)&&!x(n,8,r))){var s=12,c=null,h=0,v=M(n,4)+8;if(!(v>n.length)){for(;s+8<v;){if(n[s]===0){s++;continue}var p=String.fromCharCode.apply(null,n.slice(s,s+4)),T=M(n,s+4);p==="VP8 "&&T>=10?c=c||o(n,s+8):p==="VP8L"&&T>=9?c=c||a(n,s+8):p==="VP8X"&&T>=10?c=c||i(n,s+8):p==="EXIF"&&(h=e.get_orientation(n.slice(s+8,s+8+T)),s=1/0),s+=8+T}if(c)return h>0&&(c.orientation=h),c}}}}}),t9=Ye({"node_modules/probe-image-size/lib/parsers_sync.js"(X,H){"use strict";H.exports={avif:G4(),bmp:W4(),gif:Z4(),ico:X4(),jpeg:Y4(),png:K4(),psd:J4(),svg:$4(),tiff:Q4(),webp:e9()}}}),r9=Ye({"node_modules/probe-image-size/sync.js"(X,H){"use strict";var g=t9();function x(A){for(var M=Object.keys(g),e=0;e<M.length;e++){var t=g[M[e]](A);if(t)return t}return null}H.exports=function(M){return x(M)},H.exports.parsers=g}}),a9=Ye({"src/traces/image/helpers.js"(X){"use strict";var H=r9(),g=Xv().IMAGE_URL_PREFIX,x=t0().Buffer;X.getImageSize=function(A){var M=A.replace(g,""),e=new x(M,"base64");return H(e)}}}),i9=Ye({"src/traces/image/calc.js"(X,H){"use strict";var g=ta(),x=d1(),A=jo(),M=Co(),e=ta().maxRowLength,t=a9().getImageSize;H.exports=function(n,s){var c,h;if(s._hasZ)c=s.z.length,h=e(s.z);else if(s._hasSource){var v=t(s.source);c=v.height,h=v.width}var p=M.getFromId(n,s.xaxis||"x"),T=M.getFromId(n,s.yaxis||"y"),l=p.d2c(s.x0)-s.dx/2,_=T.d2c(s.y0)-s.dy/2,w,S=[l,l+h*s.dx],E=[_,_+c*s.dy];if(p&&p.type==="log")for(w=0;w<h;w++)S.push(l+w*s.dx);if(T&&T.type==="log")for(w=0;w<c;w++)E.push(_+w*s.dy);s._extremes[p._id]=M.findExtremes(p,S),s._extremes[T._id]=M.findExtremes(T,E),s._scaler=a(s);var m={x0:l,y0:_,z:s.z,w:h,h:c};return[m]};function r(i,n,s,c){return function(h){return g.constrain((h-i)*n,s,c)}}function o(i,n){return function(s){return g.constrain(s,i,n)}}function a(i){var n=x.colormodel[i.colormodel],s=n.colormodel||i.colormodel,c=s.length;i._sArray=[];for(var h=0;h<c;h++)n.min[h]!==i.zmin[h]||n.max[h]!==i.zmax[h]?i._sArray.push(r(i.zmin[h],(n.max[h]-n.min[h])/(i.zmax[h]-i.zmin[h]),n.min[h],n.max[h])):i._sArray.push(o(n.min[h],n.max[h]));return function(v){for(var p=v.slice(0,c),T=0;T<c;T++){var l=p[T];if(!A(l))return!1;p[T]=i._sArray[T](l)}return p}}}}),n9=Ye({"src/traces/image/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.strTranslate,M=vd(),e=d1(),t=oM(),r=$2().STYLE;H.exports=function(a,i,n,s){var c=i.xaxis,h=i.yaxis,v=!a._context._exportedPlot&&t();x.makeTraceGroups(s,n,"im").each(function(p){var T=g.select(this),l=p[0],_=l.trace,w=(_.zsmooth==="fast"||_.zsmooth===!1&&v)&&!_._hasZ&&_._hasSource&&c.type==="linear"&&h.type==="linear";_._realImage=w;var S=l.z,E=l.x0,m=l.y0,b=l.w,d=l.h,u=_.dx,y=_.dy,f,P,L,z,F,B;for(B=0;f===void 0&&B<b;)f=c.c2p(E+B*u),B++;for(B=b;P===void 0&&B>0;)P=c.c2p(E+B*u),B--;for(B=0;z===void 0&&B<d;)z=h.c2p(m+B*y),B++;for(B=d;F===void 0&&B>0;)F=h.c2p(m+B*y),B--;if(P<f&&(L=P,P=f,f=L),F<z&&(L=z,z=F,F=L),!w){var O=.5;f=Math.max(-O*c._length,f),P=Math.min((1+O)*c._length,P),z=Math.max(-O*h._length,z),F=Math.min((1+O)*h._length,F)}var I=Math.round(P-f),N=Math.round(F-z),U=I<=0||N<=0;if(U){var W=T.selectAll("image").data([]);W.exit().remove();return}function Q(j){var ee=document.createElement("canvas");ee.width=I,ee.height=N;var ie=ee.getContext("2d",{willReadFrequently:!0}),fe=function(ge){return x.constrain(Math.round(c.c2p(E+ge*u)-f),0,I)},be=function(ge){return x.constrain(Math.round(h.c2p(m+ge*y)-z),0,N)},Ae=e.colormodel[_.colormodel],Be=Ae.colormodel||_.colormodel,Ie=Ae.fmt,Ze;for(B=0;B<l.w;B++){var at=fe(B),it=fe(B+1);if(!(it===at||isNaN(it)||isNaN(at)))for(var et=0;et<l.h;et++){var lt=be(et),Me=be(et+1);Me===lt||isNaN(Me)||isNaN(lt)||!j(B,et)||(Ze=_._scaler(j(B,et)),Ze?ie.fillStyle=Be+"("+Ie(Ze).join(",")+")":ie.fillStyle="rgba(0,0,0,0)",ie.fillRect(at,lt,it-at,Me-lt))}}return ee}var ue=T.selectAll("image").data([p]);ue.enter().append("svg:image").attr({xmlns:M.svg,preserveAspectRatio:"none"}),ue.exit().remove();var se=_.zsmooth===!1?r:"";if(w){var he=x.simpleMap(c.range,c.r2l),G=x.simpleMap(h.range,h.r2l),$=he[1]<he[0],J=G[1]>G[0];if($||J){var Z=f+I/2,re=z+N/2;se+="transform:"+A(Z+"px",re+"px")+"scale("+($?-1:1)+","+(J?-1:1)+")"+A(-Z+"px",-re+"px")+";"}}ue.attr("style",se);var ne=new Promise(function(j){if(_._hasZ)j();else if(_._hasSource)if(_._canvas&&_._canvas.el.width===b&&_._canvas.el.height===d&&_._canvas.source===_.source)j();else{var ee=document.createElement("canvas");ee.width=b,ee.height=d;var ie=ee.getContext("2d",{willReadFrequently:!0});_._image=_._image||new Image;var fe=_._image;fe.onload=function(){ie.drawImage(fe,0,0),_._canvas={el:ee,source:_.source},j()},fe.setAttribute("src",_.source)}}).then(function(){var j,ee;if(_._hasZ)ee=Q(function(be,Ae){var Be=S[Ae][be];return x.isTypedArray(Be)&&(Be=Array.from(Be)),Be}),j=ee.toDataURL("image/png");else if(_._hasSource)if(w)j=_.source;else{var ie=_._canvas.el.getContext("2d",{willReadFrequently:!0}),fe=ie.getImageData(0,0,b,d).data;ee=Q(function(be,Ae){var Be=4*(Ae*b+be);return[fe[Be],fe[Be+1],fe[Be+2],fe[Be+3]]}),j=ee.toDataURL("image/png")}ue.attr({"xlink:href":j,height:N,width:I,x:f,y:z})});a._promises.push(ne)})}}}),o9=Ye({"src/traces/image/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".im image").style("opacity",function(M){return M[0].trace.opacity})}}}),s9=Ye({"src/traces/image/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=d1();H.exports=function(t,r,o){var a=t.cd[0],i=a.trace,n=t.xa,s=t.ya;if(!(g.inbox(r-a.x0,r-(a.x0+a.w*i.dx),0)>0||g.inbox(o-a.y0,o-(a.y0+a.h*i.dy),0)>0)){var c=Math.floor((r-a.x0)/i.dx),h=Math.floor(Math.abs(o-a.y0)/i.dy),v;if(i._hasZ?v=a.z[h][c]:i._hasSource&&(v=i._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(c,h,1,1).data),!!v){var p=a.hi||i.hoverinfo,T;if(p){var l=p.split("+");l.indexOf("all")!==-1&&(l=["color"]),l.indexOf("color")!==-1&&(T=!0)}var _=M.colormodel[i.colormodel],w=_.colormodel||i.colormodel,S=w.length,E=i._scaler(v),m=_.suffix,b=[];(i.hovertemplate||T)&&(b.push("["+[E[0]+m[0],E[1]+m[1],E[2]+m[2]].join(", ")),S===4&&b.push(", "+E[3]+m[3]),b.push("]"),b=b.join(""),t.extraText=w.toUpperCase()+": "+b);var d;A(i.hovertext)&&A(i.hovertext[h])?d=i.hovertext[h][c]:A(i.text)&&A(i.text[h])&&(d=i.text[h][c]);var u=s.c2p(a.y0+(h+.5)*i.dy),y=a.x0+(c+.5)*i.dx,f=a.y0+(h+.5)*i.dy,P="["+v.slice(0,i.colormodel.length).join(", ")+"]";return[x.extendFlat(t,{index:[h,c],x0:n.c2p(a.x0+c*i.dx),x1:n.c2p(a.x0+(c+1)*i.dx),y0:u,y1:u,color:E,xVal:y,xLabelVal:y,yVal:f,yLabelVal:f,zLabelVal:P,text:d,hovertemplateLabels:{zLabel:P,colorLabel:b,"color[0]Label":E[0]+m[0],"color[1]Label":E[1]+m[1],"color[2]Label":E[2]+m[2],"color[3]Label":E[3]+m[3]}})]}}}}}),l9=Ye({"src/traces/image/event_data.js"(X,H){"use strict";H.exports=function(x,A){return"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x.color=A.color,x.colormodel=A.trace.colormodel,x.z||(x.z=A.color),x}}}),u9=Ye({"src/traces/image/index.js"(X,H){"use strict";H.exports={attributes:IM(),supplyDefaults:i4(),calc:i9(),plot:n9(),style:o9(),hoverPoints:s9(),eventData:l9(),moduleType:"trace",name:"image",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}}}),c9=Ye({"lib/image.js"(X,H){"use strict";H.exports=u9()}}),i0=Ye({"src/traces/pie/attributes.js"(X,H){"use strict";var g=Pl(),x=Wu().attributes,A=Au(),M=Gf(),e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Oo().extendFlat,o=Uh().pattern,a=A({editType:"plot",arrayOk:!0,colorEditType:"plot"});H.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:M.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:o,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:r({},g.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:e({},{keys:["label","color","value","percent","text"]}),texttemplate:t({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:r({},a,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:r({},a,{}),outsidetextfont:r({},a,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:r({},a,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:x({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}}}),n0=Ye({"src/traces/pie/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=i0(),M=Wu().defaults,e=gd().handleText,t=ta().coercePattern;function r(i,n){var s=x.isArrayOrTypedArray(i),c=x.isArrayOrTypedArray(n),h=Math.min(s?i.length:1/0,c?n.length:1/0);if(isFinite(h)||(h=0),h&&c){for(var v,p=0;p<h;p++){var T=n[p];if(g(T)&&T>0){v=!0;break}}v||(h=0)}return{hasLabels:s,hasValues:c,len:h}}function o(i,n,s,c,h){var v=c("marker.line.width");v&&c("marker.line.color",h?void 0:s.paper_bgcolor);var p=c("marker.colors");t(c,"marker.pattern",p),i.marker&&!n.marker.pattern.fgcolor&&(n.marker.pattern.fgcolor=i.marker.colors),n.marker.pattern.bgcolor||(n.marker.pattern.bgcolor=s.paper_bgcolor)}function a(i,n,s,c){function h(f,P){return x.coerce(i,n,A,f,P)}var v=h("labels"),p=h("values"),T=r(v,p),l=T.len;if(n._hasLabels=T.hasLabels,n._hasValues=T.hasValues,!n._hasLabels&&n._hasValues&&(h("label0"),h("dlabel")),!l){n.visible=!1;return}n._length=l,o(i,n,c,h,!0),h("scalegroup");var _=h("text"),w=h("texttemplate"),S;if(w||(S=h("textinfo",x.isArrayOrTypedArray(_)?"text+percent":"percent")),h("hovertext"),h("hovertemplate"),w||S&&S!=="none"){var E=h("textposition");e(i,n,c,h,E,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var m=Array.isArray(E)||E==="auto",b=m||E==="outside";b&&h("automargin"),(E==="inside"||E==="auto"||Array.isArray(E))&&h("insidetextorientation")}else S==="none"&&h("textposition","none");M(n,c,h);var d=h("hole"),u=h("title.text");if(u){var y=h("title.position",d?"middle center":"top center");!d&&y==="middle center"&&(n.title.position="top center"),x.coerceFont(h,"title.font",c.font)}h("sort"),h("direction"),h("rotation"),h("pull")}H.exports={handleLabelsAndValues:r,handleMarkerDefaults:o,supplyDefaults:a}}}),y3=Ye({"src/traces/pie/layout_attributes.js"(X,H){"use strict";H.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),f9=Ye({"src/traces/pie/layout_defaults.js"(X,H){"use strict";var g=ta(),x=y3();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("piecolorway",e.colorway),t("extendpiecolors")}}}),y1=Ye({"src/traces/pie/calc.js"(X,H){"use strict";var g=jo(),x=bh(),A=Fn(),M={};function e(a,i){var n=[],s=a._fullLayout,c=s.hiddenlabels||[],h=i.labels,v=i.marker.colors||[],p=i.values,T=i._length,l=i._hasValues&&T,_,w;if(i.dlabel)for(h=new Array(T),_=0;_<T;_++)h[_]=String(i.label0+_*i.dlabel);var S={},E=t(s["_"+i.type+"colormap"]),m=0,b=!1;for(_=0;_<T;_++){var d,u,y;if(l){if(d=p[_],!g(d))continue;d=+d}else d=1;u=h[_],(u===void 0||u==="")&&(u=_),u=String(u);var f=S[u];f===void 0?(S[u]=n.length,y=c.indexOf(u)!==-1,y||(m+=d),n.push({v:d,label:u,color:E(v[_],u),i:_,pts:[_],hidden:y})):(b=!0,w=n[f],w.v+=d,w.pts.push(_),w.hidden||(m+=d),w.color===!1&&v[_]&&(w.color=E(v[_],u)))}n=n.filter(function(L){return L.v>=0});var P=i.type==="funnelarea"?b:i.sort;return P&&n.sort(function(L,z){return z.v-L.v}),n[0]&&(n[0].vTotal=m),n}function t(a){return function(n,s){return!n||(n=x(n),!n.isValid())?!1:(n=A.addOpacity(n,n.getAlpha()),a[s]||(a[s]=n),n)}}function r(a,i){var n=(i||{}).type;n||(n="pie");var s=a._fullLayout,c=a.calcdata,h=s[n+"colorway"],v=s["_"+n+"colormap"];s["extend"+n+"colors"]&&(h=o(h,M));for(var p=0,T=0;T<c.length;T++){var l=c[T],_=l[0].trace.type;if(_===n)for(var w=0;w<l.length;w++){var S=l[w];S.color===!1&&(v[S.label]?S.color=v[S.label]:(v[S.label]=S.color=h[p%h.length],p++))}}}function o(a,i){var n,s=JSON.stringify(a),c=i[s];if(!c){for(c=a.slice(),n=0;n<a.length;n++)c.push(x(a[n]).lighten(20).toHexString());for(n=0;n<a.length;n++)c.push(x(a[n]).darken(20).toHexString());i[s]=c}return c}H.exports={calc:e,crossTraceCalc:r,makePullColorFn:t,generateExtendedColors:o}}}),h9=Ye({"src/traces/pie/event_data.js"(X,H){"use strict";var g=Qp().appendArrayMultiPointValues;H.exports=function(A,M){var e={curveNumber:M.index,pointNumbers:A.pts,data:M._input,fullData:M,label:A.label,color:A.color,value:A.v,percent:A.percent,text:A.text,bbox:A.bbox,v:A.v};return A.pts.length===1&&(e.pointNumber=e.i=A.pts[0]),g(e,M,A.pts),M.type==="funnelarea"&&(delete e.v,delete e.i),e}}}),_3=Ye({"src/traces/pie/plot.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Lc(),M=Fn(),e=Bo(),t=ta(),r=t.strScale,o=t.strTranslate,a=jl(),i=wp(),n=i.recordMinTextSize,s=i.clearMinTextSize,c=Qg().TEXTPAD,h=eg(),v=h9(),p=ta().isValidTextValue;function T($,J){var Z=$._context.staticPlot,re=$._fullLayout,ne=re._size;s("pie",re),E(J,$),W(J,ne);var j=t.makeTraceGroups(re._pielayer,J,"trace").each(function(ee){var ie=g.select(this),fe=ee[0],be=fe.trace;ue(ee),ie.attr("stroke-linejoin","round"),ie.each(function(){var Ae=g.select(this).selectAll("g.slice").data(ee);Ae.enter().append("g").classed("slice",!0),Ae.exit().remove();var Be=[[[],[]],[[],[]]],Ie=!1;Ae.each(function(ce,ze){if(ce.hidden){g.select(this).selectAll("path,g").remove();return}ce.pointNumber=ce.i,ce.curveNumber=be.index,Be[ce.pxmid[1]<0?0:1][ce.pxmid[0]<0?0:1].push(ce);var tt=fe.cx,nt=fe.cy,Qe=g.select(this),Ct=Qe.selectAll("path.surface").data([ce]);if(Ct.enter().append("path").classed("surface",!0).style({"pointer-events":Z?"none":"all"}),Qe.call(_,$,ee),be.pull){var St=+h.castOption(be.pull,ce.pts)||0;St>0&&(tt+=St*ce.pxmid[0],nt+=St*ce.pxmid[1])}ce.cxFinal=tt,ce.cyFinal=nt;function Ot(yt,Fe,Ke,Ne){var Ee=Ne*(Fe[0]-yt[0]),Ve=Ne*(Fe[1]-yt[1]);return"a"+Ne*fe.r+","+Ne*fe.r+" 0 "+ce.largeArc+(Ke?" 1 ":" 0 ")+Ee+","+Ve}var jt=be.hole;if(ce.v===fe.vTotal){var ur="M"+(tt+ce.px0[0])+","+(nt+ce.px0[1])+Ot(ce.px0,ce.pxmid,!0,1)+Ot(ce.pxmid,ce.px0,!0,1)+"Z";jt?Ct.attr("d","M"+(tt+jt*ce.px0[0])+","+(nt+jt*ce.px0[1])+Ot(ce.px0,ce.pxmid,!1,jt)+Ot(ce.pxmid,ce.px0,!1,jt)+"Z"+ur):Ct.attr("d",ur)}else{var ar=Ot(ce.px0,ce.px1,!0,1);if(jt){var Cr=1-jt;Ct.attr("d","M"+(tt+jt*ce.px1[0])+","+(nt+jt*ce.px1[1])+Ot(ce.px1,ce.px0,!1,jt)+"l"+Cr*ce.px0[0]+","+Cr*ce.px0[1]+ar+"Z")}else Ct.attr("d","M"+tt+","+nt+"l"+ce.px0[0]+","+ce.px0[1]+ar+"Z")}he($,ce,fe);var vr=h.castOption(be.textposition,ce.pts),_r=Qe.selectAll("g.slicetext").data(ce.text&&vr!=="none"?[0]:[]);_r.enter().append("g").classed("slicetext",!0),_r.exit().remove(),_r.each(function(){var yt=t.ensureSingle(g.select(this),"text","",function(Le){Le.attr("data-notex",1)}),Fe=t.ensureUniformFontSize($,vr==="outside"?w(be,ce,re.font):S(be,ce,re.font));yt.text(ce.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(e.font,Fe).call(a.convertToTspans,$);var Ke=e.bBox(yt.node()),Ne;if(vr==="outside")Ne=z(Ke,ce);else if(Ne=m(Ke,ce,fe),vr==="auto"&&Ne.scale<1){var Ee=t.ensureUniformFontSize($,be.outsidetextfont);yt.call(e.font,Ee),Ke=e.bBox(yt.node()),Ne=z(Ke,ce)}var Ve=Ne.textPosAngle,ke=Ve===void 0?ce.pxmid:se(fe.r,Ve);if(Ne.targetX=tt+ke[0]*Ne.rCenter+(Ne.x||0),Ne.targetY=nt+ke[1]*Ne.rCenter+(Ne.y||0),G(Ne,Ke),Ne.outside){var Te=Ne.targetY;ce.yLabelMin=Te-Ke.height/2,ce.yLabelMid=Te,ce.yLabelMax=Te+Ke.height/2,ce.labelExtraX=0,ce.labelExtraY=0,Ie=!0}Ne.fontSize=Fe.size,n(be.type,Ne,re),ee[ze].transform=Ne,t.setTransormAndDisplay(yt,Ne)})});var Ze=g.select(this).selectAll("g.titletext").data(be.title.text?[0]:[]);if(Ze.enter().append("g").classed("titletext",!0),Ze.exit().remove(),Ze.each(function(){var ce=t.ensureSingle(g.select(this),"text","",function(nt){nt.attr("data-notex",1)}),ze=be.title.text;be._meta&&(ze=t.templateString(ze,be._meta)),ce.text(ze).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(e.font,be.title.font).call(a.convertToTspans,$);var tt;be.title.position==="middle center"?tt=F(fe):tt=B(fe,ne),ce.attr("transform",o(tt.x,tt.y)+r(Math.min(1,tt.scale))+o(tt.tx,tt.ty))}),Ie&&U(Be,be),l(Ae,be),Ie&&be.automargin){var at=e.bBox(ie.node()),it=be.domain,et=ne.w*(it.x[1]-it.x[0]),lt=ne.h*(it.y[1]-it.y[0]),Me=(.5*et-fe.r)/ne.w,ge=(.5*lt-fe.r)/ne.h;x.autoMargin($,"pie."+be.uid+".automargin",{xl:it.x[0]-Me,xr:it.x[1]+Me,yb:it.y[0]-ge,yt:it.y[1]+ge,l:Math.max(fe.cx-fe.r-at.left,0),r:Math.max(at.right-(fe.cx+fe.r),0),b:Math.max(at.bottom-(fe.cy+fe.r),0),t:Math.max(fe.cy-fe.r-at.top,0),pad:5})}})});setTimeout(function(){j.selectAll("tspan").each(function(){var ee=g.select(this);ee.attr("dy")&&ee.attr("dy",ee.attr("dy"))})},0)}function l($,J){$.each(function(Z){var re=g.select(this);if(!Z.labelExtraX&&!Z.labelExtraY){re.select("path.textline").remove();return}var ne=re.select("g.slicetext text");Z.transform.targetX+=Z.labelExtraX,Z.transform.targetY+=Z.labelExtraY,t.setTransormAndDisplay(ne,Z.transform);var j=Z.cxFinal+Z.pxmid[0],ee=Z.cyFinal+Z.pxmid[1],ie="M"+j+","+ee,fe=(Z.yLabelMax-Z.yLabelMin)*(Z.pxmid[0]<0?-1:1)/4;if(Z.labelExtraX){var be=Z.labelExtraX*Z.pxmid[1]/Z.pxmid[0],Ae=Z.yLabelMid+Z.labelExtraY-(Z.cyFinal+Z.pxmid[1]);Math.abs(be)>Math.abs(Ae)?ie+="l"+Ae*Z.pxmid[0]/Z.pxmid[1]+","+Ae+"H"+(j+Z.labelExtraX+fe):ie+="l"+Z.labelExtraX+","+be+"v"+(Ae-be)+"h"+fe}else ie+="V"+(Z.yLabelMid+Z.labelExtraY)+"h"+fe;t.ensureSingle(re,"path","textline").call(M.stroke,J.outsidetextfont.color).attr({"stroke-width":Math.min(2,J.outsidetextfont.size/8),d:ie,fill:"none"})})}function _($,J,Z){var re=Z[0],ne=re.cx,j=re.cy,ee=re.trace,ie=ee.type==="funnelarea";"_hasHoverLabel"in ee||(ee._hasHoverLabel=!1),"_hasHoverEvent"in ee||(ee._hasHoverEvent=!1),$.on("mouseover",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];if(!(J._dragging||be.hovermode===!1)){var Be=Ae.hoverinfo;if(Array.isArray(Be)&&(Be=A.castHoverinfo({hoverinfo:[h.castOption(Be,fe.pts)],_module:ee._module},be,0)),Be==="all"&&(Be="label+text+value+percent+name"),Ae.hovertemplate||Be!=="none"&&Be!=="skip"&&Be){var Ie=fe.rInscribed||0,Ze=ne+fe.pxmid[0]*(1-Ie),at=j+fe.pxmid[1]*(1-Ie),it=be.separators,et=[];if(Be&&Be.indexOf("label")!==-1&&et.push(fe.label),fe.text=h.castOption(Ae.hovertext||Ae.text,fe.pts),Be&&Be.indexOf("text")!==-1){var lt=fe.text;t.isValidTextValue(lt)&&et.push(lt)}fe.value=fe.v,fe.valueLabel=h.formatPieValue(fe.v,it),Be&&Be.indexOf("value")!==-1&&et.push(fe.valueLabel),fe.percent=fe.v/re.vTotal,fe.percentLabel=h.formatPiePercent(fe.percent,it),Be&&Be.indexOf("percent")!==-1&&et.push(fe.percentLabel);var Me=Ae.hoverlabel,ge=Me.font,ce=[];A.loneHover({trace:ee,x0:Ze-Ie*re.r,x1:Ze+Ie*re.r,y:at,_x0:ie?ne+fe.TL[0]:Ze-Ie*re.r,_x1:ie?ne+fe.TR[0]:Ze+Ie*re.r,_y0:ie?j+fe.TL[1]:at-Ie*re.r,_y1:ie?j+fe.BL[1]:at+Ie*re.r,text:et.join("<br>"),name:Ae.hovertemplate||Be.indexOf("name")!==-1?Ae.name:void 0,idealAlign:fe.pxmid[0]<0?"left":"right",color:h.castOption(Me.bgcolor,fe.pts)||fe.color,borderColor:h.castOption(Me.bordercolor,fe.pts),fontFamily:h.castOption(ge.family,fe.pts),fontSize:h.castOption(ge.size,fe.pts),fontColor:h.castOption(ge.color,fe.pts),nameLength:h.castOption(Me.namelength,fe.pts),textAlign:h.castOption(Me.align,fe.pts),hovertemplate:h.castOption(Ae.hovertemplate,fe.pts),hovertemplateLabels:fe,eventData:[v(fe,Ae)]},{container:be._hoverlayer.node(),outerContainer:be._paper.node(),gd:J,inOut_bbox:ce}),fe.bbox=ce[0],ee._hasHoverLabel=!0}ee._hasHoverEvent=!0,J.emit("plotly_hover",{points:[v(fe,Ae)],event:g.event})}}),$.on("mouseout",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index],Be=g.select(this).datum();ee._hasHoverEvent&&(fe.originalEvent=g.event,J.emit("plotly_unhover",{points:[v(Be,Ae)],event:g.event}),ee._hasHoverEvent=!1),ee._hasHoverLabel&&(A.loneUnhover(be._hoverlayer.node()),ee._hasHoverLabel=!1)}),$.on("click",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];J._dragging||be.hovermode===!1||(J._hoverdata=[v(fe,Ae)],A.click(J,g.event))})}function w($,J,Z){var re=h.castOption($.outsidetextfont.color,J.pts)||h.castOption($.textfont.color,J.pts)||Z.color,ne=h.castOption($.outsidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.outsidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.outsidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.outsidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.outsidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.outsidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.outsidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.outsidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re,family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function S($,J,Z){var re=h.castOption($.insidetextfont.color,J.pts);!re&&$._input.textfont&&(re=h.castOption($._input.textfont.color,J.pts));var ne=h.castOption($.insidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.insidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.insidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.insidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.insidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.insidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.insidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.insidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re||M.contrast(J.color),family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function E($,J){for(var Z,re,ne=0;ne<$.length;ne++)if(Z=$[ne][0],re=Z.trace,re.title.text){var j=re.title.text;re._meta&&(j=t.templateString(j,re._meta));var ee=e.tester.append("text").attr("data-notex",1).text(j).call(e.font,re.title.font).call(a.convertToTspans,J),ie=e.bBox(ee.node(),!0);Z.titleBox={width:ie.width,height:ie.height},ee.remove()}}function m($,J,Z){var re=Z.r||J.rpx1,ne=J.rInscribed,j=J.startangle===J.stopangle;if(j)return{rCenter:1-ne,scale:0,rotate:0,textPosAngle:0};var ee=J.ring,ie=ee===1&&Math.abs(J.startangle-J.stopangle)===Math.PI*2,fe=J.halfangle,be=J.midangle,Ae=Z.trace.insidetextorientation,Be=Ae==="horizontal",Ie=Ae==="tangential",Ze=Ae==="radial",at=Ae==="auto",it=[],et;if(!at){var lt=function(Qe,Ct){if(b(J,Qe)){var St=Math.abs(Qe-J.startangle),Ot=Math.abs(Qe-J.stopangle),jt=St<Ot?St:Ot;Ct==="tan"?et=u($,re,ee,jt,0):et=d($,re,ee,jt,Math.PI/2),et.textPosAngle=Qe,it.push(et)}},Me;if(Be||Ie){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*Me,"tan");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1),"tan")}if(Be||Ze){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1.5),"rad");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+.5),"rad")}}if(ie||at||Be){var ge=Math.sqrt($.width*$.width+$.height*$.height);if(et={scale:ne*re*2/ge,rCenter:1-ne,rotate:0},et.textPosAngle=(J.startangle+J.stopangle)/2,et.scale>=1)return et;it.push(et)}(at||Ze)&&(et=d($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et)),(at||Ie)&&(et=u($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et));for(var ce=0,ze=0,tt=0;tt<it.length;tt++){var nt=it[tt].scale;if(ze<nt&&(ze=nt,ce=tt),!at&&ze>=1)break}return it[ce]}function b($,J){var Z=$.startangle,re=$.stopangle;return Z>J&&J>re||Z<J&&J<re}function d($,J,Z,re,ne){J=Math.max(0,J-2*c);var j=$.width/$.height,ee=P(j,re,J,Z);return{scale:ee*2/$.height,rCenter:y(j,ee/J),rotate:f(ne)}}function u($,J,Z,re,ne){J=Math.max(0,J-2*c);var j=$.height/$.width,ee=P(j,re,J,Z);return{scale:ee*2/$.width,rCenter:y(j,ee/J),rotate:f(ne+Math.PI/2)}}function y($,J){return Math.cos(J)-$*J}function f($){return(180/Math.PI*$+720)%180-90}function P($,J,Z,re){var ne=$+1/(2*Math.tan(J));return Z*Math.min(1/(Math.sqrt(ne*ne+.5)+ne),re/(Math.sqrt($*$+re/2)+$))}function L($,J){return $.v===J.vTotal&&!J.trace.hole?1:Math.min(1/(1+1/Math.sin($.halfangle)),$.ring/2)}function z($,J){var Z=J.pxmid[0],re=J.pxmid[1],ne=$.width/2,j=$.height/2;return Z<0&&(ne*=-1),re<0&&(j*=-1),{scale:1,rCenter:1,rotate:0,x:ne+Math.abs(j)*(ne>0?1:-1)/2,y:j/(1+Z*Z/(re*re)),outside:!0}}function F($){var J=Math.sqrt($.titleBox.width*$.titleBox.width+$.titleBox.height*$.titleBox.height);return{x:$.cx,y:$.cy,scale:$.trace.hole*$.r*2/J,tx:0,ty:-$.titleBox.height/2+$.trace.title.font.size}}function B($,J){var Z=1,re=1,ne,j=$.trace,ee={x:$.cx,y:$.cy},ie={tx:0,ty:0};ie.ty+=j.title.font.size,ne=N(j),j.title.position.indexOf("top")!==-1?(ee.y-=(1+ne)*$.r,ie.ty-=$.titleBox.height):j.title.position.indexOf("bottom")!==-1&&(ee.y+=(1+ne)*$.r);var fe=O($.r,$.trace.aspectratio),be=J.w*(j.domain.x[1]-j.domain.x[0])/2;return j.title.position.indexOf("left")!==-1?(be=be+fe,ee.x-=(1+ne)*fe,ie.tx+=$.titleBox.width/2):j.title.position.indexOf("center")!==-1?be*=2:j.title.position.indexOf("right")!==-1&&(be=be+fe,ee.x+=(1+ne)*fe,ie.tx-=$.titleBox.width/2),Z=be/$.titleBox.width,re=I($,J)/$.titleBox.height,{x:ee.x,y:ee.y,scale:Math.min(Z,re),tx:ie.tx,ty:ie.ty}}function O($,J){return $/(J===void 0?1:J)}function I($,J){var Z=$.trace,re=J.h*(Z.domain.y[1]-Z.domain.y[0]);return Math.min($.titleBox.height,re/2)}function N($){var J=$.pull;if(!J)return 0;var Z;if(t.isArrayOrTypedArray(J))for(J=0,Z=0;Z<$.pull.length;Z++)$.pull[Z]>J&&(J=$.pull[Z]);return J}function U($,J){var Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at;function it(ge,ce){return ge.pxmid[1]-ce.pxmid[1]}function et(ge,ce){return ce.pxmid[1]-ge.pxmid[1]}function lt(ge,ce){ce||(ce={});var ze=ce.labelExtraY+(re?ce.yLabelMax:ce.yLabelMin),tt=re?ge.yLabelMin:ge.yLabelMax,nt=re?ge.yLabelMax:ge.yLabelMin,Qe=ge.cyFinal+ee(ge.px0[1],ge.px1[1]),Ct=ze-tt,St,Ot,jt,ur,ar,Cr;if(Ct*fe>0&&(ge.labelExtraY=Ct),!!t.isArrayOrTypedArray(J.pull))for(Ot=0;Ot<Be.length;Ot++)jt=Be[Ot],!(jt===ge||(h.castOption(J.pull,ge.pts)||0)>=(h.castOption(J.pull,jt.pts)||0))&&((ge.pxmid[1]-jt.pxmid[1])*fe>0?(ur=jt.cyFinal+ee(jt.px0[1],jt.px1[1]),Ct=ur-tt-ge.labelExtraY,Ct*fe>0&&(ge.labelExtraY+=Ct)):(nt+ge.labelExtraY-Qe)*fe>0&&(St=3*ie*Math.abs(Ot-Be.indexOf(ge)),ar=jt.cxFinal+j(jt.px0[0],jt.px1[0]),Cr=ar+St-(ge.cxFinal+ge.pxmid[0])-ge.labelExtraX,Cr*ie>0&&(ge.labelExtraX+=Cr)))}for(re=0;re<2;re++)for(ne=re?it:et,ee=re?Math.max:Math.min,fe=re?1:-1,Z=0;Z<2;Z++){for(j=Z?Math.max:Math.min,ie=Z?1:-1,be=$[re][Z],be.sort(ne),Ae=$[1-re][Z],Be=Ae.concat(be),Ze=[],Ie=0;Ie<be.length;Ie++)be[Ie].yLabelMid!==void 0&&Ze.push(be[Ie]);for(at=!1,Ie=0;re&&Ie<Ae.length;Ie++)if(Ae[Ie].yLabelMid!==void 0){at=Ae[Ie];break}for(Ie=0;Ie<Ze.length;Ie++){var Me=Ie&&Ze[Ie-1];at&&!Ie&&(Me=at),lt(Ze[Ie],Me)}}}function W($,J){for(var Z=[],re=0;re<$.length;re++){var ne=$[re][0],j=ne.trace,ee=j.domain,ie=J.w*(ee.x[1]-ee.x[0]),fe=J.h*(ee.y[1]-ee.y[0]);j.title.text&&j.title.position!=="middle center"&&(fe-=I(ne,J));var be=ie/2,Ae=fe/2;j.type==="funnelarea"&&!j.scalegroup&&(Ae/=j.aspectratio),ne.r=Math.min(be,Ae)/(1+N(j)),ne.cx=J.l+J.w*(j.domain.x[1]+j.domain.x[0])/2,ne.cy=J.t+J.h*(1-j.domain.y[0])-fe/2,j.title.text&&j.title.position.indexOf("bottom")!==-1&&(ne.cy-=I(ne,J)),j.scalegroup&&Z.indexOf(j.scalegroup)===-1&&Z.push(j.scalegroup)}Q($,Z)}function Q($,J){for(var Z,re,ne,j=0;j<J.length;j++){var ee=1/0,ie=J[j];for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var fe;if(ne.type==="pie")fe=Z.r*Z.r;else if(ne.type==="funnelarea"){var be,Ae;ne.aspectratio>1?(be=Z.r,Ae=be/ne.aspectratio):(Ae=Z.r,be=Ae*ne.aspectratio),be*=(1+ne.baseratio)/2,fe=be*Ae}ee=Math.min(ee,fe/Z.vTotal)}for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var Be=ee*Z.vTotal;ne.type==="funnelarea"&&(Be/=(1+ne.baseratio)/2,Be/=ne.aspectratio),Z.r=Math.sqrt(Be)}}}function ue($){var J=$[0],Z=J.r,re=J.trace,ne=h.getRotationAngle(re.rotation),j=2*Math.PI/J.vTotal,ee="px0",ie="px1",fe,be,Ae;if(re.direction==="counterclockwise"){for(fe=0;fe<$.length&&$[fe].hidden;fe++);if(fe===$.length)return;ne+=j*$[fe].v,j*=-1,ee="px1",ie="px0"}for(Ae=se(Z,ne),fe=0;fe<$.length;fe++)be=$[fe],!be.hidden&&(be[ee]=Ae,be.startangle=ne,ne+=j*be.v/2,be.pxmid=se(Z,ne),be.midangle=ne,ne+=j*be.v/2,Ae=se(Z,ne),be.stopangle=ne,be[ie]=Ae,be.largeArc=be.v>J.vTotal/2?1:0,be.halfangle=Math.PI*Math.min(be.v/J.vTotal,.5),be.ring=1-re.hole,be.rInscribed=L(be,J))}function se($,J){return[$*Math.sin(J),-$*Math.cos(J)]}function he($,J,Z){var re=$._fullLayout,ne=Z.trace,j=ne.texttemplate,ee=ne.textinfo;if(!j&&ee&&ee!=="none"){var ie=ee.split("+"),fe=function(ce){return ie.indexOf(ce)!==-1},be=fe("label"),Ae=fe("text"),Be=fe("value"),Ie=fe("percent"),Ze=re.separators,at;if(at=be?[J.label]:[],Ae){var it=h.getFirstFilled(ne.text,J.pts);p(it)&&at.push(it)}Be&&at.push(h.formatPieValue(J.v,Ze)),Ie&&at.push(h.formatPiePercent(J.v/Z.vTotal,Ze)),J.text=at.join("<br>")}function et(ce){return{label:ce.label,value:ce.v,valueLabel:h.formatPieValue(ce.v,re.separators),percent:ce.v/Z.vTotal,percentLabel:h.formatPiePercent(ce.v/Z.vTotal,re.separators),color:ce.color,text:ce.text,customdata:t.castOption(ne,ce.i,"customdata")}}if(j){var lt=t.castOption(ne,J.i,"texttemplate");if(!lt)J.text="";else{var Me=et(J),ge=h.getFirstFilled(ne.text,J.pts);(p(ge)||ge==="")&&(Me.text=ge),J.text=t.texttemplateString(lt,Me,$._fullLayout._d3locale,Me,ne._meta||{})}}}function G($,J){var Z=$.rotate*Math.PI/180,re=Math.cos(Z),ne=Math.sin(Z),j=(J.left+J.right)/2,ee=(J.top+J.bottom)/2;$.textX=j*re-ee*ne,$.textY=j*ne+ee*re,$.noCenter=!0}H.exports={plot:T,formatSliceLabel:he,transformInsideText:m,determineInsideTextFont:S,positionTitleOutside:B,prerenderTitles:E,layoutAreas:W,attachFxHandlers:_,computeTransform:G}}}),p9=Ye({"src/traces/pie/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");A(e,t,"pie"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),d9=Ye({"src/traces/pie/base_plot.js"(X){"use strict";var H=Gu();X.name="pie",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),v9=Ye({"src/traces/pie/index.js"(X,H){"use strict";H.exports={attributes:i0(),supplyDefaults:n0().supplyDefaults,supplyLayoutDefaults:f9(),layoutAttributes:y3(),calc:y1().calc,crossTraceCalc:y1().crossTraceCalc,plot:_3().plot,style:p9(),styleOne:a1(),moduleType:"trace",name:"pie",basePlotModule:d9(),categories:["pie-like","pie","showLegend"],meta:{}}}}),m9=Ye({"lib/pie.js"(X,H){"use strict";H.exports=v9()}}),g9=Ye({"src/traces/sunburst/base_plot.js"(X){"use strict";var H=Gu();X.name="sunburst",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),QM=Ye({"src/traces/sunburst/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}}}),Y_=Ye({"src/traces/sunburst/attributes.js"(X,H){"use strict";var g=Pl(),x=xs().hovertemplateAttrs,A=xs().texttemplateAttrs,M=tu(),e=Wu().attributes,t=i0(),r=QM(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:o({colors:{valType:"data_array",editType:"calc"},line:{color:o({},t.marker.line.color,{dflt:null}),width:o({},t.marker.line.width,{dflt:1}),editType:"calc"},pattern:a,editType:"calc"},M("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:t.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:A({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:t.hovertext,hoverinfo:o({},g.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:x({},{keys:r.eventDataKeys}),textfont:t.textfont,insidetextorientation:t.insidetextorientation,insidetextfont:t.insidetextfont,outsidetextfont:o({},t.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:t.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:e({name:"sunburst",trace:!0,editType:"calc"})}}}),eE=Ye({"src/traces/sunburst/layout_attributes.js"(X,H){"use strict";H.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),y9=Ye({"src/traces/sunburst/defaults.js"(X,H){"use strict";var g=ta(),x=Y_(),A=Wu().defaults,M=gd().handleText,e=n0().handleMarkerDefaults,t=Su(),r=t.hasColorscale,o=t.handleDefaults;H.exports=function(i,n,s,c){function h(S,E){return g.coerce(i,n,x,S,E)}var v=h("labels"),p=h("parents");if(!v||!v.length||!p||!p.length){n.visible=!1;return}var T=h("values");T&&T.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),e(i,n,c,h);var l=n._hasColorscale=r(i,"marker","colors")||(i.marker||{}).coloraxis;l&&o(i,n,c,h,{prefix:"marker.",cLetter:"c"}),h("leaf.opacity",l?1:.7);var _=h("text");h("texttemplate"),n.texttemplate||h("textinfo",g.isArrayOrTypedArray(_)?"text+label":"label"),h("hovertext"),h("hovertemplate");var w="auto";M(i,n,c,h,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("insidetextorientation"),h("sort"),h("rotation"),h("root.color"),A(n,c,h),n._length=null}}}),_9=Ye({"src/traces/sunburst/layout_defaults.js"(X,H){"use strict";var g=ta(),x=eE();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("sunburstcolorway",e.colorway),t("extendsunburstcolors")}}}),K_=Ye({"node_modules/d3-hierarchy/dist/d3-hierarchy.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(Ne,Ee){return Ne.parent===Ee.parent?1:2}function A(Ne){return Ne.reduce(M,0)/Ne.length}function M(Ne,Ee){return Ne+Ee.x}function e(Ne){return 1+Ne.reduce(t,0)}function t(Ne,Ee){return Math.max(Ne,Ee.y)}function r(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[0];return Ne}function o(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[Ee.length-1];return Ne}function a(){var Ne=x,Ee=1,Ve=1,ke=!1;function Te(Le){var rt,dt=0;Le.eachAfter(function(Kt){var sr=Kt.children;sr?(Kt.x=A(sr),Kt.y=e(sr)):(Kt.x=rt?dt+=Ne(Kt,rt):0,Kt.y=0,rt=Kt)});var xt=r(Le),It=o(Le),Bt=xt.x-Ne(xt,It)/2,Gt=It.x+Ne(It,xt)/2;return Le.eachAfter(ke?function(Kt){Kt.x=(Kt.x-Le.x)*Ee,Kt.y=(Le.y-Kt.y)*Ve}:function(Kt){Kt.x=(Kt.x-Bt)/(Gt-Bt)*Ee,Kt.y=(1-(Le.y?Kt.y/Le.y:1))*Ve})}return Te.separation=function(Le){return arguments.length?(Ne=Le,Te):Ne},Te.size=function(Le){return arguments.length?(ke=!1,Ee=+Le[0],Ve=+Le[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(Le){return arguments.length?(ke=!0,Ee=+Le[0],Ve=+Le[1],Te):ke?[Ee,Ve]:null},Te}function i(Ne){var Ee=0,Ve=Ne.children,ke=Ve&&Ve.length;if(!ke)Ee=1;else for(;--ke>=0;)Ee+=Ve[ke].value;Ne.value=Ee}function n(){return this.eachAfter(i)}function s(Ne){var Ee=this,Ve,ke=[Ee],Te,Le,rt;do for(Ve=ke.reverse(),ke=[];Ee=Ve.pop();)if(Ne(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le<rt;++Le)ke.push(Te[Le]);while(ke.length);return this}function c(Ne){for(var Ee=this,Ve=[Ee],ke,Te;Ee=Ve.pop();)if(Ne(Ee),ke=Ee.children,ke)for(Te=ke.length-1;Te>=0;--Te)Ve.push(ke[Te]);return this}function h(Ne){for(var Ee=this,Ve=[Ee],ke=[],Te,Le,rt;Ee=Ve.pop();)if(ke.push(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le<rt;++Le)Ve.push(Te[Le]);for(;Ee=ke.pop();)Ne(Ee);return this}function v(Ne){return this.eachAfter(function(Ee){for(var Ve=+Ne(Ee.data)||0,ke=Ee.children,Te=ke&&ke.length;--Te>=0;)Ve+=ke[Te].value;Ee.value=Ve})}function p(Ne){return this.eachBefore(function(Ee){Ee.children&&Ee.children.sort(Ne)})}function T(Ne){for(var Ee=this,Ve=l(Ee,Ne),ke=[Ee];Ee!==Ve;)Ee=Ee.parent,ke.push(Ee);for(var Te=ke.length;Ne!==Ve;)ke.splice(Te,0,Ne),Ne=Ne.parent;return ke}function l(Ne,Ee){if(Ne===Ee)return Ne;var Ve=Ne.ancestors(),ke=Ee.ancestors(),Te=null;for(Ne=Ve.pop(),Ee=ke.pop();Ne===Ee;)Te=Ne,Ne=Ve.pop(),Ee=ke.pop();return Te}function _(){for(var Ne=this,Ee=[Ne];Ne=Ne.parent;)Ee.push(Ne);return Ee}function w(){var Ne=[];return this.each(function(Ee){Ne.push(Ee)}),Ne}function S(){var Ne=[];return this.eachBefore(function(Ee){Ee.children||Ne.push(Ee)}),Ne}function E(){var Ne=this,Ee=[];return Ne.each(function(Ve){Ve!==Ne&&Ee.push({source:Ve.parent,target:Ve})}),Ee}function m(Ne,Ee){var Ve=new f(Ne),ke=+Ne.value&&(Ve.value=Ne.value),Te,Le=[Ve],rt,dt,xt,It;for(Ee==null&&(Ee=d);Te=Le.pop();)if(ke&&(Te.value=+Te.data.value),(dt=Ee(Te.data))&&(It=dt.length))for(Te.children=new Array(It),xt=It-1;xt>=0;--xt)Le.push(rt=Te.children[xt]=new f(dt[xt])),rt.parent=Te,rt.depth=Te.depth+1;return Ve.eachBefore(y)}function b(){return m(this).eachBefore(u)}function d(Ne){return Ne.children}function u(Ne){Ne.data=Ne.data.data}function y(Ne){var Ee=0;do Ne.height=Ee;while((Ne=Ne.parent)&&Ne.height<++Ee)}function f(Ne){this.data=Ne,this.depth=this.height=0,this.parent=null}f.prototype=m.prototype={constructor:f,count:n,each:s,eachAfter:h,eachBefore:c,sum:v,sort:p,path:T,ancestors:_,descendants:w,leaves:S,links:E,copy:b};var P=Array.prototype.slice;function L(Ne){for(var Ee=Ne.length,Ve,ke;Ee;)ke=Math.random()*Ee--|0,Ve=Ne[Ee],Ne[Ee]=Ne[ke],Ne[ke]=Ve;return Ne}function z(Ne){for(var Ee=0,Ve=(Ne=L(P.call(Ne))).length,ke=[],Te,Le;Ee<Ve;)Te=Ne[Ee],Le&&O(Le,Te)?++Ee:(Le=N(ke=F(ke,Te)),Ee=0);return Le}function F(Ne,Ee){var Ve,ke;if(I(Ee,Ne))return[Ee];for(Ve=0;Ve<Ne.length;++Ve)if(B(Ee,Ne[Ve])&&I(W(Ne[Ve],Ee),Ne))return[Ne[Ve],Ee];for(Ve=0;Ve<Ne.length-1;++Ve)for(ke=Ve+1;ke<Ne.length;++ke)if(B(W(Ne[Ve],Ne[ke]),Ee)&&B(W(Ne[Ve],Ee),Ne[ke])&&B(W(Ne[ke],Ee),Ne[Ve])&&I(Q(Ne[Ve],Ne[ke],Ee),Ne))return[Ne[Ve],Ne[ke],Ee];throw new Error}function B(Ne,Ee){var Ve=Ne.r-Ee.r,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve<0||Ve*Ve<ke*ke+Te*Te}function O(Ne,Ee){var Ve=Ne.r-Ee.r+1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function I(Ne,Ee){for(var Ve=0;Ve<Ee.length;++Ve)if(!O(Ne,Ee[Ve]))return!1;return!0}function N(Ne){switch(Ne.length){case 1:return U(Ne[0]);case 2:return W(Ne[0],Ne[1]);case 3:return Q(Ne[0],Ne[1],Ne[2])}}function U(Ne){return{x:Ne.x,y:Ne.y,r:Ne.r}}function W(Ne,Ee){var Ve=Ne.x,ke=Ne.y,Te=Ne.r,Le=Ee.x,rt=Ee.y,dt=Ee.r,xt=Le-Ve,It=rt-ke,Bt=dt-Te,Gt=Math.sqrt(xt*xt+It*It);return{x:(Ve+Le+xt/Gt*Bt)/2,y:(ke+rt+It/Gt*Bt)/2,r:(Gt+Te+dt)/2}}function Q(Ne,Ee,Ve){var ke=Ne.x,Te=Ne.y,Le=Ne.r,rt=Ee.x,dt=Ee.y,xt=Ee.r,It=Ve.x,Bt=Ve.y,Gt=Ve.r,Kt=ke-rt,sr=ke-It,sa=Te-dt,Aa=Te-Bt,La=xt-Le,ka=Gt-Le,Ga=ke*ke+Te*Te-Le*Le,Ma=Ga-rt*rt-dt*dt+xt*xt,Ua=Ga-It*It-Bt*Bt+Gt*Gt,ni=sr*sa-Kt*Aa,Wt=(sa*Ua-Aa*Ma)/(ni*2)-ke,zt=(Aa*La-sa*ka)/ni,Vt=(sr*Ma-Kt*Ua)/(ni*2)-Te,Ut=(Kt*ka-sr*La)/ni,xr=zt*zt+Ut*Ut-1,Zr=2*(Le+Wt*zt+Vt*Ut),pa=Wt*Wt+Vt*Vt-Le*Le,Xr=-(xr?(Zr+Math.sqrt(Zr*Zr-4*xr*pa))/(2*xr):pa/Zr);return{x:ke+Wt+zt*Xr,y:Te+Vt+Ut*Xr,r:Xr}}function ue(Ne,Ee,Ve){var ke=Ne.x-Ee.x,Te,Le,rt=Ne.y-Ee.y,dt,xt,It=ke*ke+rt*rt;It?(Le=Ee.r+Ve.r,Le*=Le,xt=Ne.r+Ve.r,xt*=xt,Le>xt?(Te=(It+xt-Le)/(2*It),dt=Math.sqrt(Math.max(0,xt/It-Te*Te)),Ve.x=Ne.x-Te*ke-dt*rt,Ve.y=Ne.y-Te*rt+dt*ke):(Te=(It+Le-xt)/(2*It),dt=Math.sqrt(Math.max(0,Le/It-Te*Te)),Ve.x=Ee.x+Te*ke-dt*rt,Ve.y=Ee.y+Te*rt+dt*ke)):(Ve.x=Ee.x+Ve.r,Ve.y=Ee.y)}function se(Ne,Ee){var Ve=Ne.r+Ee.r-1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function he(Ne){var Ee=Ne._,Ve=Ne.next._,ke=Ee.r+Ve.r,Te=(Ee.x*Ve.r+Ve.x*Ee.r)/ke,Le=(Ee.y*Ve.r+Ve.y*Ee.r)/ke;return Te*Te+Le*Le}function G(Ne){this._=Ne,this.next=null,this.previous=null}function $(Ne){if(!(Te=Ne.length))return 0;var Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt;if(Ee=Ne[0],Ee.x=0,Ee.y=0,!(Te>1))return Ee.r;if(Ve=Ne[1],Ee.x=-Ve.r,Ve.x=Ee.r,Ve.y=0,!(Te>2))return Ee.r+Ve.r;ue(Ve,Ee,ke=Ne[2]),Ee=new G(Ee),Ve=new G(Ve),ke=new G(ke),Ee.next=ke.previous=Ve,Ve.next=Ee.previous=ke,ke.next=Ve.previous=Ee;e:for(dt=3;dt<Te;++dt){ue(Ee._,Ve._,ke=Ne[dt]),ke=new G(ke),xt=Ve.next,It=Ee.previous,Bt=Ve._.r,Gt=Ee._.r;do if(Bt<=Gt){if(se(xt._,ke._)){Ve=xt,Ee.next=Ve,Ve.previous=Ee,--dt;continue e}Bt+=xt._.r,xt=xt.next}else{if(se(It._,ke._)){Ee=It,Ee.next=Ve,Ve.previous=Ee,--dt;continue e}Gt+=It._.r,It=It.previous}while(xt!==It.next);for(ke.previous=Ee,ke.next=Ve,Ee.next=Ve.previous=Ve=ke,Le=he(Ee);(ke=ke.next)!==Ve;)(rt=he(ke))<Le&&(Ee=ke,Le=rt);Ve=Ee.next}for(Ee=[Ve._],ke=Ve;(ke=ke.next)!==Ve;)Ee.push(ke._);for(ke=z(Ee),dt=0;dt<Te;++dt)Ee=Ne[dt],Ee.x-=ke.x,Ee.y-=ke.y;return ke.r}function J(Ne){return $(Ne),Ne}function Z(Ne){return Ne==null?null:re(Ne)}function re(Ne){if(typeof Ne!="function")throw new Error;return Ne}function ne(){return 0}function j(Ne){return function(){return Ne}}function ee(Ne){return Math.sqrt(Ne.value)}function ie(){var Ne=null,Ee=1,Ve=1,ke=ne;function Te(Le){return Le.x=Ee/2,Le.y=Ve/2,Ne?Le.eachBefore(fe(Ne)).eachAfter(be(ke,.5)).eachBefore(Ae(1)):Le.eachBefore(fe(ee)).eachAfter(be(ne,1)).eachAfter(be(ke,Le.r/Math.min(Ee,Ve))).eachBefore(Ae(Math.min(Ee,Ve)/(2*Le.r))),Le}return Te.radius=function(Le){return arguments.length?(Ne=Z(Le),Te):Ne},Te.size=function(Le){return arguments.length?(Ee=+Le[0],Ve=+Le[1],Te):[Ee,Ve]},Te.padding=function(Le){return arguments.length?(ke=typeof Le=="function"?Le:j(+Le),Te):ke},Te}function fe(Ne){return function(Ee){Ee.children||(Ee.r=Math.max(0,+Ne(Ee)||0))}}function be(Ne,Ee){return function(Ve){if(ke=Ve.children){var ke,Te,Le=ke.length,rt=Ne(Ve)*Ee||0,dt;if(rt)for(Te=0;Te<Le;++Te)ke[Te].r+=rt;if(dt=$(ke),rt)for(Te=0;Te<Le;++Te)ke[Te].r-=rt;Ve.r=dt+rt}}}function Ae(Ne){return function(Ee){var Ve=Ee.parent;Ee.r*=Ne,Ve&&(Ee.x=Ve.x+Ne*Ee.x,Ee.y=Ve.y+Ne*Ee.y)}}function Be(Ne){Ne.x0=Math.round(Ne.x0),Ne.y0=Math.round(Ne.y0),Ne.x1=Math.round(Ne.x1),Ne.y1=Math.round(Ne.y1)}function Ie(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(ke-Ee)/Ne.value;++dt<xt;)rt=Le[dt],rt.y0=Ve,rt.y1=Te,rt.x0=Ee,rt.x1=Ee+=rt.value*It}function Ze(){var Ne=1,Ee=1,Ve=0,ke=!1;function Te(rt){var dt=rt.height+1;return rt.x0=rt.y0=Ve,rt.x1=Ne,rt.y1=Ee/dt,rt.eachBefore(Le(Ee,dt)),ke&&rt.eachBefore(Be),rt}function Le(rt,dt){return function(xt){xt.children&&Ie(xt,xt.x0,rt*(xt.depth+1)/dt,xt.x1,rt*(xt.depth+2)/dt);var It=xt.x0,Bt=xt.y0,Gt=xt.x1-Ve,Kt=xt.y1-Ve;Gt<It&&(It=Gt=(It+Gt)/2),Kt<Bt&&(Bt=Kt=(Bt+Kt)/2),xt.x0=It,xt.y0=Bt,xt.x1=Gt,xt.y1=Kt}}return Te.round=function(rt){return arguments.length?(ke=!!rt,Te):ke},Te.size=function(rt){return arguments.length?(Ne=+rt[0],Ee=+rt[1],Te):[Ne,Ee]},Te.padding=function(rt){return arguments.length?(Ve=+rt,Te):Ve},Te}var at="$",it={depth:-1},et={};function lt(Ne){return Ne.id}function Me(Ne){return Ne.parentId}function ge(){var Ne=lt,Ee=Me;function Ve(ke){var Te,Le,rt=ke.length,dt,xt,It,Bt=new Array(rt),Gt,Kt,sr={};for(Le=0;Le<rt;++Le)Te=ke[Le],It=Bt[Le]=new f(Te),(Gt=Ne(Te,Le,ke))!=null&&(Gt+="")&&(Kt=at+(It.id=Gt),sr[Kt]=Kt in sr?et:It);for(Le=0;Le<rt;++Le)if(It=Bt[Le],Gt=Ee(ke[Le],Le,ke),Gt==null||!(Gt+="")){if(dt)throw new Error("multiple roots");dt=It}else{if(xt=sr[at+Gt],!xt)throw new Error("missing: "+Gt);if(xt===et)throw new Error("ambiguous: "+Gt);xt.children?xt.children.push(It):xt.children=[It],It.parent=xt}if(!dt)throw new Error("no root");if(dt.parent=it,dt.eachBefore(function(sa){sa.depth=sa.parent.depth+1,--rt}).eachBefore(y),dt.parent=null,rt>0)throw new Error("cycle");return dt}return Ve.id=function(ke){return arguments.length?(Ne=re(ke),Ve):Ne},Ve.parentId=function(ke){return arguments.length?(Ee=re(ke),Ve):Ee},Ve}function ce(Ne,Ee){return Ne.parent===Ee.parent?1:2}function ze(Ne){var Ee=Ne.children;return Ee?Ee[0]:Ne.t}function tt(Ne){var Ee=Ne.children;return Ee?Ee[Ee.length-1]:Ne.t}function nt(Ne,Ee,Ve){var ke=Ve/(Ee.i-Ne.i);Ee.c-=ke,Ee.s+=Ve,Ne.c+=ke,Ee.z+=Ve,Ee.m+=Ve}function Qe(Ne){for(var Ee=0,Ve=0,ke=Ne.children,Te=ke.length,Le;--Te>=0;)Le=ke[Te],Le.z+=Ee,Le.m+=Ee,Ee+=Le.s+(Ve+=Le.c)}function Ct(Ne,Ee,Ve){return Ne.a.parent===Ee.parent?Ne.a:Ve}function St(Ne,Ee){this._=Ne,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Ee}St.prototype=Object.create(f.prototype);function Ot(Ne){for(var Ee=new St(Ne,0),Ve,ke=[Ee],Te,Le,rt,dt;Ve=ke.pop();)if(Le=Ve._.children)for(Ve.children=new Array(dt=Le.length),rt=dt-1;rt>=0;--rt)ke.push(Te=Ve.children[rt]=new St(Le[rt],rt)),Te.parent=Ve;return(Ee.parent=new St(null,0)).children=[Ee],Ee}function jt(){var Ne=ce,Ee=1,Ve=1,ke=null;function Te(It){var Bt=Ot(It);if(Bt.eachAfter(Le),Bt.parent.m=-Bt.z,Bt.eachBefore(rt),ke)It.eachBefore(xt);else{var Gt=It,Kt=It,sr=It;It.eachBefore(function(Ga){Ga.x<Gt.x&&(Gt=Ga),Ga.x>Kt.x&&(Kt=Ga),Ga.depth>sr.depth&&(sr=Ga)});var sa=Gt===Kt?1:Ne(Gt,Kt)/2,Aa=sa-Gt.x,La=Ee/(Kt.x+sa+Aa),ka=Ve/(sr.depth||1);It.eachBefore(function(Ga){Ga.x=(Ga.x+Aa)*La,Ga.y=Ga.depth*ka})}return It}function Le(It){var Bt=It.children,Gt=It.parent.children,Kt=It.i?Gt[It.i-1]:null;if(Bt){Qe(It);var sr=(Bt[0].z+Bt[Bt.length-1].z)/2;Kt?(It.z=Kt.z+Ne(It._,Kt._),It.m=It.z-sr):It.z=sr}else Kt&&(It.z=Kt.z+Ne(It._,Kt._));It.parent.A=dt(It,Kt,It.parent.A||Gt[0])}function rt(It){It._.x=It.z+It.parent.m,It.m+=It.parent.m}function dt(It,Bt,Gt){if(Bt){for(var Kt=It,sr=It,sa=Bt,Aa=Kt.parent.children[0],La=Kt.m,ka=sr.m,Ga=sa.m,Ma=Aa.m,Ua;sa=tt(sa),Kt=ze(Kt),sa&&Kt;)Aa=ze(Aa),sr=tt(sr),sr.a=It,Ua=sa.z+Ga-Kt.z-La+Ne(sa._,Kt._),Ua>0&&(nt(Ct(sa,It,Gt),It,Ua),La+=Ua,ka+=Ua),Ga+=sa.m,La+=Kt.m,Ma+=Aa.m,ka+=sr.m;sa&&!tt(sr)&&(sr.t=sa,sr.m+=Ga-ka),Kt&&!ze(Aa)&&(Aa.t=Kt,Aa.m+=La-Ma,Gt=It)}return Gt}function xt(It){It.x*=Ee,It.y=It.depth*Ve}return Te.separation=function(It){return arguments.length?(Ne=It,Te):Ne},Te.size=function(It){return arguments.length?(ke=!1,Ee=+It[0],Ve=+It[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(It){return arguments.length?(ke=!0,Ee=+It[0],Ve=+It[1],Te):ke?[Ee,Ve]:null},Te}function ur(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(Te-Ve)/Ne.value;++dt<xt;)rt=Le[dt],rt.x0=Ee,rt.x1=ke,rt.y0=Ve,rt.y1=Ve+=rt.value*It}var ar=(1+Math.sqrt(5))/2;function Cr(Ne,Ee,Ve,ke,Te,Le){for(var rt=[],dt=Ee.children,xt,It,Bt=0,Gt=0,Kt=dt.length,sr,sa,Aa=Ee.value,La,ka,Ga,Ma,Ua,ni,Wt;Bt<Kt;){sr=Te-Ve,sa=Le-ke;do La=dt[Gt++].value;while(!La&&Gt<Kt);for(ka=Ga=La,ni=Math.max(sa/sr,sr/sa)/(Aa*Ne),Wt=La*La*ni,Ua=Math.max(Ga/Wt,Wt/ka);Gt<Kt;++Gt){if(La+=It=dt[Gt].value,It<ka&&(ka=It),It>Ga&&(Ga=It),Wt=La*La*ni,Ma=Math.max(Ga/Wt,Wt/ka),Ma>Ua){La-=It;break}Ua=Ma}rt.push(xt={value:La,dice:sr<sa,children:dt.slice(Bt,Gt)}),xt.dice?Ie(xt,Ve,ke,Te,Aa?ke+=sa*La/Aa:Le):ur(xt,Ve,ke,Aa?Ve+=sr*La/Aa:Te,Le),Aa-=La,Bt=Gt}return rt}var vr=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){Cr(Ee,ke,Te,Le,rt,dt)}return Ve.ratio=function(ke){return Ne((ke=+ke)>1?ke:1)},Ve}(ar);function _r(){var Ne=vr,Ee=!1,Ve=1,ke=1,Te=[0],Le=ne,rt=ne,dt=ne,xt=ne,It=ne;function Bt(Kt){return Kt.x0=Kt.y0=0,Kt.x1=Ve,Kt.y1=ke,Kt.eachBefore(Gt),Te=[0],Ee&&Kt.eachBefore(Be),Kt}function Gt(Kt){var sr=Te[Kt.depth],sa=Kt.x0+sr,Aa=Kt.y0+sr,La=Kt.x1-sr,ka=Kt.y1-sr;La<sa&&(sa=La=(sa+La)/2),ka<Aa&&(Aa=ka=(Aa+ka)/2),Kt.x0=sa,Kt.y0=Aa,Kt.x1=La,Kt.y1=ka,Kt.children&&(sr=Te[Kt.depth+1]=Le(Kt)/2,sa+=It(Kt)-sr,Aa+=rt(Kt)-sr,La-=dt(Kt)-sr,ka-=xt(Kt)-sr,La<sa&&(sa=La=(sa+La)/2),ka<Aa&&(Aa=ka=(Aa+ka)/2),Ne(Kt,sa,Aa,La,ka))}return Bt.round=function(Kt){return arguments.length?(Ee=!!Kt,Bt):Ee},Bt.size=function(Kt){return arguments.length?(Ve=+Kt[0],ke=+Kt[1],Bt):[Ve,ke]},Bt.tile=function(Kt){return arguments.length?(Ne=re(Kt),Bt):Ne},Bt.padding=function(Kt){return arguments.length?Bt.paddingInner(Kt).paddingOuter(Kt):Bt.paddingInner()},Bt.paddingInner=function(Kt){return arguments.length?(Le=typeof Kt=="function"?Kt:j(+Kt),Bt):Le},Bt.paddingOuter=function(Kt){return arguments.length?Bt.paddingTop(Kt).paddingRight(Kt).paddingBottom(Kt).paddingLeft(Kt):Bt.paddingTop()},Bt.paddingTop=function(Kt){return arguments.length?(rt=typeof Kt=="function"?Kt:j(+Kt),Bt):rt},Bt.paddingRight=function(Kt){return arguments.length?(dt=typeof Kt=="function"?Kt:j(+Kt),Bt):dt},Bt.paddingBottom=function(Kt){return arguments.length?(xt=typeof Kt=="function"?Kt:j(+Kt),Bt):xt},Bt.paddingLeft=function(Kt){return arguments.length?(It=typeof Kt=="function"?Kt:j(+Kt),Bt):It},Bt}function yt(Ne,Ee,Ve,ke,Te){var Le=Ne.children,rt,dt=Le.length,xt,It=new Array(dt+1);for(It[0]=xt=rt=0;rt<dt;++rt)It[rt+1]=xt+=Le[rt].value;Bt(0,dt,Ne.value,Ee,Ve,ke,Te);function Bt(Gt,Kt,sr,sa,Aa,La,ka){if(Gt>=Kt-1){var Ga=Le[Gt];Ga.x0=sa,Ga.y0=Aa,Ga.x1=La,Ga.y1=ka;return}for(var Ma=It[Gt],Ua=sr/2+Ma,ni=Gt+1,Wt=Kt-1;ni<Wt;){var zt=ni+Wt>>>1;It[zt]<Ua?ni=zt+1:Wt=zt}Ua-It[ni-1]<It[ni]-Ua&&Gt+1<ni&&--ni;var Vt=It[ni]-Ma,Ut=sr-Vt;if(La-sa>ka-Aa){var xr=(sa*Ut+La*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,xr,ka),Bt(ni,Kt,Ut,xr,Aa,La,ka)}else{var Zr=(Aa*Ut+ka*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,La,Zr),Bt(ni,Kt,Ut,sa,Zr,La,ka)}}}function Fe(Ne,Ee,Ve,ke,Te){(Ne.depth&1?ur:Ie)(Ne,Ee,Ve,ke,Te)}var Ke=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){if((xt=ke._squarify)&&xt.ratio===Ee)for(var xt,It,Bt,Gt,Kt=-1,sr,sa=xt.length,Aa=ke.value;++Kt<sa;){for(It=xt[Kt],Bt=It.children,Gt=It.value=0,sr=Bt.length;Gt<sr;++Gt)It.value+=Bt[Gt].value;It.dice?Ie(It,Te,Le,rt,Le+=(dt-Le)*It.value/Aa):ur(It,Te,Le,Te+=(rt-Te)*It.value/Aa,dt),Aa-=It.value}else ke._squarify=xt=Cr(Ee,ke,Te,Le,rt,dt),xt.ratio=Ee}return Ve.ratio=function(ke){return Ne((ke=+ke)>1?ke:1)},Ve}(ar);g.cluster=a,g.hierarchy=m,g.pack=ie,g.packEnclose=z,g.packSiblings=J,g.partition=Ze,g.stratify=ge,g.tree=jt,g.treemap=_r,g.treemapBinary=yt,g.treemapDice=Ie,g.treemapResquarify=Ke,g.treemapSlice=ur,g.treemapSliceDice=Fe,g.treemapSquarify=vr,Object.defineProperty(g,"__esModule",{value:!0})})}}),J_=Ye({"src/traces/sunburst/calc.js"(X){"use strict";var H=K_(),g=jo(),x=ta(),A=Su().makeColorScaleFuncFromTrace,M=y1().makePullColorFn,e=y1().generateExtendedColors,t=Su().calc,r=ks().ALMOST_EQUAL,o={},a={},i={};X.calc=function(s,c){var h=s._fullLayout,v=c.ids,p=x.isArrayOrTypedArray(v),T=c.labels,l=c.parents,_=c.values,w=x.isArrayOrTypedArray(_),S=[],E={},m={},b=function(J,Z){E[J]?E[J].push(Z):E[J]=[Z],m[Z]=1},d=function(J){return J||typeof J=="number"},u=function(J){return!w||g(_[J])&&_[J]>=0},y,f,P;p?(y=Math.min(v.length,l.length),f=function(J){return d(v[J])&&u(J)},P=function(J){return String(v[J])}):(y=Math.min(T.length,l.length),f=function(J){return d(T[J])&&u(J)},P=function(J){return String(T[J])}),w&&(y=Math.min(y,_.length));for(var L=0;L<y;L++)if(f(L)){var z=P(L),F=d(l[L])?String(l[L]):"",B={i:L,id:z,pid:F,label:d(T[L])?String(T[L]):""};w&&(B.v=+_[L]),S.push(B),b(F,z)}if(E[""]){if(E[""].length>1){for(var N=x.randstr(),U=0;U<S.length;U++)S[U].pid===""&&(S[U].pid=N);S.unshift({hasMultipleRoots:!0,id:N,pid:"",label:""})}}else{var O=[],I;for(I in E)m[I]||O.push(I);if(O.length===1)I=O[0],S.unshift({hasImpliedRoot:!0,id:I,pid:"",label:I});else return x.warn(["Multiple implied roots, cannot build",c.type,"hierarchy of",c.name+".","These roots include:",O.join(", ")].join(" "))}var W;try{W=H.stratify().id(function(J){return J.id}).parentId(function(J){return J.pid})(S)}catch(J){return x.warn(["Failed to build",c.type,"hierarchy of",c.name+".","Error:",J.message].join(" "))}var Q=H.hierarchy(W),ue=!1;if(w)switch(c.branchvalues){case"remainder":Q.sum(function(J){return J.data.v});break;case"total":Q.each(function(J){var Z=J.data.data,re=Z.v;if(J.children){var ne=J.children.reduce(function(j,ee){return j+ee.data.data.v},0);if((Z.hasImpliedRoot||Z.hasMultipleRoots)&&(re=ne),re<ne*r)return ue=!0,x.warn(["Total value for node",J.data.data.id,"of",c.name,"is smaller than the sum of its children.",`
parent value =`,re,`
children sum =`,ne].join(" "))}J.value=re});break}else n(Q,c,{branches:c.count.indexOf("branches")!==-1,leaves:c.count.indexOf("leaves")!==-1});if(!ue){c.sort&&Q.sort(function(J,Z){return Z.value-J.value});var se,he,G=c.marker.colors||[],$=!!G.length;return c._hasColorscale?($||(G=w?c.values:c._values),t(s,c,{vals:G,containerStr:"marker",cLetter:"c"}),he=A(c.marker)):se=M(h["_"+c.type+"colormap"]),Q.each(function(J){var Z=J.data.data;Z.color=c._hasColorscale?he(G[Z.i]):se(G[Z.i],Z.id)}),S[0].hierarchy=Q,S}},X._runCrossTraceCalc=function(s,c){var h=c._fullLayout,v=c.calcdata,p=h[s+"colorway"],T=h["_"+s+"colormap"];h["extend"+s+"colors"]&&(p=e(p,s==="icicle"?i:s==="treemap"?a:o));var l=0,_;function w(b){var d=b.data.data,u=d.id;d.color===!1&&(T[u]?d.color=T[u]:b.parent?b.parent.parent?d.color=b.parent.data.data.color:(T[u]=d.color=p[l%p.length],l++):d.color=_)}for(var S=0;S<v.length;S++){var E=v[S],m=E[0];m.trace.type===s&&m.hierarchy&&(_=m.trace.root.color,m.hierarchy.each(w))}},X.crossTraceCalc=function(s){return X._runCrossTraceCalc("sunburst",s)};function n(s,c,h){var v=0,p=s.children;if(p){for(var T=p.length,l=0;l<T;l++)v+=n(p[l],c,h);h.branches&&v++}else h.leaves&&v++;return s.value=s.data.data.value=v,c._values||(c._values=[]),c._values[s.data.data.i]=v,v}}});function o0(X,H,g){X.prototype=H.prototype=g,g.constructor=X}function _1(X,H){var g=Object.create(X.prototype);for(var x in H)g[x]=H[x];return g}var x3=Qn({"node_modules/d3-color/src/define.js"(){}});function Kv(){}function tE(){return this.rgb().formatHex()}function x9(){return this.rgb().formatHex8()}function b9(){return sE(this).formatHsl()}function rE(){return this.rgb().formatRgb()}function x1(X){var H,g;return X=(X+"").trim().toLowerCase(),(H=uE.exec(X))?(g=H[1].length,H=parseInt(H[1],16),g===6?aE(H):g===3?new qh(H>>8&15|H>>4&240,H>>4&15|H&240,(H&15)<<4|H&15,1):g===8?$_(H>>24&255,H>>16&255,H>>8&255,(H&255)/255):g===4?$_(H>>12&15|H>>8&240,H>>8&15|H>>4&240,H>>4&15|H&240,((H&15)<<4|H&15)/255):null):(H=cE.exec(X))?new qh(H[1],H[2],H[3],1):(H=fE.exec(X))?new qh(H[1]*255/100,H[2]*255/100,H[3]*255/100,1):(H=hE.exec(X))?$_(H[1],H[2],H[3],H[4]):(H=pE.exec(X))?$_(H[1]*255/100,H[2]*255/100,H[3]*255/100,H[4]):(H=dE.exec(X))?oE(H[1],H[2]/100,H[3]/100,1):(H=vE.exec(X))?oE(H[1],H[2]/100,H[3]/100,H[4]):A3.hasOwnProperty(X)?aE(A3[X]):X==="transparent"?new qh(NaN,NaN,NaN,0):null}function aE(X){return new qh(X>>16&255,X>>8&255,X&255,1)}function $_(X,H,g,x){return x<=0&&(X=H=g=NaN),new qh(X,H,g,x)}function b3(X){return X instanceof Kv||(X=x1(X)),X?(X=X.rgb(),new qh(X.r,X.g,X.b,X.opacity)):new qh}function Q_(X,H,g,x){return arguments.length===1?b3(X):new qh(X,H,g,x??1)}function qh(X,H,g,x){this.r=+X,this.g=+H,this.b=+g,this.opacity=+x}function iE(){return`#${og(this.r)}${og(this.g)}${og(this.b)}`}function w9(){return`#${og(this.r)}${og(this.g)}${og(this.b)}${og((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){let X=ex(this.opacity);return`${X===1?"rgb(":"rgba("}${ng(this.r)}, ${ng(this.g)}, ${ng(this.b)}${X===1?")":`, ${X})`}`}function ex(X){return isNaN(X)?1:Math.max(0,Math.min(1,X))}function ng(X){return Math.max(0,Math.min(255,Math.round(X)||0))}function og(X){return X=ng(X),(X<16?"0":"")+X.toString(16)}function oE(X,H,g,x){return x<=0?X=H=g=NaN:g<=0||g>=1?X=H=NaN:H<=0&&(X=NaN),new Ud(X,H,g,x)}function sE(X){if(X instanceof Ud)return new Ud(X.h,X.s,X.l,X.opacity);if(X instanceof Kv||(X=x1(X)),!X)return new Ud;if(X instanceof Ud)return X;X=X.rgb();var H=X.r/255,g=X.g/255,x=X.b/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=NaN,t=M-A,r=(M+A)/2;return t?(H===M?e=(g-x)/t+(g<x)*6:g===M?e=(x-H)/t+2:e=(H-g)/t+4,t/=r<.5?M+A:2-M-A,e*=60):t=r>0&&r<1?0:e,new Ud(e,t,r,X.opacity)}function w3(X,H,g,x){return arguments.length===1?sE(X):new Ud(X,H,g,x??1)}function Ud(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}function lE(X){return X=(X||0)%360,X<0?X+360:X}function tx(X){return Math.max(0,Math.min(1,X||0))}function T3(X,H,g){return(X<60?H+(g-H)*X/60:X<180?g:X<240?H+(g-H)*(240-X)/60:H)*255}var Jv,sg,lg,s0,jd,uE,cE,fE,hE,pE,dE,vE,A3,S3=Qn({"node_modules/d3-color/src/color.js"(){x3(),Jv=.7,sg=1/Jv,lg="\\s*([+-]?\\d+)\\s*",s0="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",jd="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",uE=/^#([0-9a-f]{3,8})$/,cE=new RegExp(`^rgb\\(${lg},${lg},${lg}\\)$`),fE=new RegExp(`^rgb\\(${jd},${jd},${jd}\\)$`),hE=new RegExp(`^rgba\\(${lg},${lg},${lg},${s0}\\)$`),pE=new RegExp(`^rgba\\(${jd},${jd},${jd},${s0}\\)$`),dE=new RegExp(`^hsl\\(${s0},${jd},${jd}\\)$`),vE=new RegExp(`^hsla\\(${s0},${jd},${jd},${s0}\\)$`),A3={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},o0(Kv,x1,{copy(X){return Object.assign(new this.constructor,this,X)},displayable(){return this.rgb().displayable()},hex:tE,formatHex:tE,formatHex8:x9,formatHsl:b9,formatRgb:rE,toString:rE}),o0(qh,Q_,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},rgb(){return this},clamp(){return new qh(ng(this.r),ng(this.g),ng(this.b),ex(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:iE,formatHex:iE,formatHex8:w9,formatRgb:nE,toString:nE})),o0(Ud,w3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new Ud(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new Ud(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=this.h%360+(this.h<0)*360,H=isNaN(X)||isNaN(this.s)?0:this.s,g=this.l,x=g+(g<.5?g:1-g)*H,A=2*g-x;return new qh(T3(X>=240?X-240:X+120,A,x),T3(X,A,x),T3(X<120?X+240:X-120,A,x),this.opacity)},clamp(){return new Ud(lE(this.h),tx(this.s),tx(this.l),ex(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let X=ex(this.opacity);return`${X===1?"hsl(":"hsla("}${lE(this.h)}, ${tx(this.s)*100}%, ${tx(this.l)*100}%${X===1?")":`, ${X})`}`}}))}}),M3,E3,mE=Qn({"node_modules/d3-color/src/math.js"(){M3=Math.PI/180,E3=180/Math.PI}});function gE(X){if(X instanceof rv)return new rv(X.l,X.a,X.b,X.opacity);if(X instanceof Mv)return yE(X);X instanceof qh||(X=b3(X));var H=I3(X.r),g=I3(X.g),x=I3(X.b),A=C3((.2225045*H+.7168786*g+.0606169*x)/z3),M,e;return H===g&&g===x?M=e=A:(M=C3((.4360747*H+.3850649*g+.1430804*x)/D3),e=C3((.0139322*H+.0971045*g+.7141733*x)/F3)),new rv(116*A-16,500*(M-A),200*(A-e),X.opacity)}function k3(X,H,g,x){return arguments.length===1?gE(X):new rv(X,H,g,x??1)}function rv(X,H,g,x){this.l=+X,this.a=+H,this.b=+g,this.opacity=+x}function C3(X){return X>_E?Math.pow(X,.3333333333333333):X/B3+O3}function L3(X){return X>ug?X*X*X:B3*(X-O3)}function P3(X){return 255*(X<=.0031308?12.92*X:1.055*Math.pow(X,.4166666666666667)-.055)}function I3(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function T9(X){if(X instanceof Mv)return new Mv(X.h,X.c,X.l,X.opacity);if(X instanceof rv||(X=gE(X)),X.a===0&&X.b===0)return new Mv(NaN,0<X.l&&X.l<100?0:NaN,X.l,X.opacity);var H=Math.atan2(X.b,X.a)*E3;return new Mv(H<0?H+360:H,Math.sqrt(X.a*X.a+X.b*X.b),X.l,X.opacity)}function R3(X,H,g,x){return arguments.length===1?T9(X):new Mv(X,H,g,x??1)}function Mv(X,H,g,x){this.h=+X,this.c=+H,this.l=+g,this.opacity=+x}function yE(X){if(isNaN(X.h))return new rv(X.l,0,0,X.opacity);var H=X.h*M3;return new rv(X.l,Math.cos(H)*X.c,Math.sin(H)*X.c,X.opacity)}var b1,D3,z3,F3,O3,ug,B3,_E,A9=Qn({"node_modules/d3-color/src/lab.js"(){x3(),S3(),mE(),b1=18,D3=.96422,z3=1,F3=.82521,O3=4/29,ug=6/29,B3=3*ug*ug,_E=ug*ug*ug,o0(rv,k3,_1(Kv,{brighter(X){return new rv(this.l+b1*(X??1),this.a,this.b,this.opacity)},darker(X){return new rv(this.l-b1*(X??1),this.a,this.b,this.opacity)},rgb(){var X=(this.l+16)/116,H=isNaN(this.a)?X:X+this.a/500,g=isNaN(this.b)?X:X-this.b/200;return H=D3*L3(H),X=z3*L3(X),g=F3*L3(g),new qh(P3(3.1338561*H-1.6168667*X-.4906146*g),P3(-.9787684*H+1.9161415*X+.033454*g),P3(.0719453*H-.2289914*X+1.4052427*g),this.opacity)}})),o0(Mv,R3,_1(Kv,{brighter(X){return new Mv(this.h,this.c,this.l+b1*(X??1),this.opacity)},darker(X){return new Mv(this.h,this.c,this.l-b1*(X??1),this.opacity)},rgb(){return yE(this).rgb()}}))}});function S9(X){if(X instanceof cg)return new cg(X.h,X.s,X.l,X.opacity);X instanceof qh||(X=b3(X));var H=X.r/255,g=X.g/255,x=X.b/255,A=(q3*x+j3*H-V3*g)/(q3+j3-V3),M=x-A,e=(l0*(g-A)-ax*M)/w1,t=Math.sqrt(e*e+M*M)/(l0*A*(1-A)),r=t?Math.atan2(e,M)*E3-120:NaN;return new cg(r<0?r+360:r,t,A,X.opacity)}function N3(X,H,g,x){return arguments.length===1?S9(X):new cg(X,H,g,x??1)}function cg(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}var U3,rx,ax,w1,l0,j3,V3,q3,M9=Qn({"node_modules/d3-color/src/cubehelix.js"(){x3(),S3(),mE(),U3=-.14861,rx=1.78277,ax=-.29227,w1=-.90649,l0=1.97294,j3=l0*w1,V3=l0*rx,q3=rx*ax-w1*U3,o0(cg,N3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new cg(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new cg(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=isNaN(this.h)?0:(this.h+120)*M3,H=+this.l,g=isNaN(this.s)?0:this.s*H*(1-H),x=Math.cos(X),A=Math.sin(X);return new qh(255*(H+g*(U3*x+rx*A)),255*(H+g*(ax*x+w1*A)),255*(H+g*(l0*x)),this.opacity)}}))}}),u0=Qn({"node_modules/d3-color/src/index.js"(){S3(),A9(),M9()}});function xE(X,H,g,x,A){var M=X*X,e=M*X;return((1-3*X+3*M-e)*H+(4-6*M+3*e)*g+(1+3*X+3*M-3*e)*x+e*A)/6}function bE(X){var H=X.length-1;return function(g){var x=g<=0?g=0:g>=1?(g=1,H-1):Math.floor(g*H),A=X[x],M=X[x+1],e=x>0?X[x-1]:2*A-M,t=x<H-1?X[x+2]:2*M-A;return xE((g-x/H)*H,e,A,M,t)}}var H3=Qn({"node_modules/d3-interpolate/src/basis.js"(){}});function wE(X){var H=X.length;return function(g){var x=Math.floor(((g%=1)<0?++g:g)*H),A=X[(x+H-1)%H],M=X[x%H],e=X[(x+1)%H],t=X[(x+2)%H];return xE((g-x/H)*H,A,M,e,t)}}var TE=Qn({"node_modules/d3-interpolate/src/basisClosed.js"(){H3()}}),T1,AE=Qn({"node_modules/d3-interpolate/src/constant.js"(){T1=X=>()=>X}});function SE(X,H){return function(g){return X+g*H}}function E9(X,H,g){return X=Math.pow(X,g),H=Math.pow(H,g)-X,g=1/g,function(x){return Math.pow(X+x*H,g)}}function ix(X,H){var g=H-X;return g?SE(X,g>180||g<-180?g-360*Math.round(g/360):g):T1(isNaN(X)?H:X)}function k9(X){return(X=+X)==1?Hh:function(H,g){return g-H?E9(H,g,X):T1(isNaN(H)?g:H)}}function Hh(X,H){var g=H-X;return g?SE(X,g):T1(isNaN(X)?H:X)}var c0=Qn({"node_modules/d3-interpolate/src/color.js"(){AE()}});function ME(X){return function(H){var g=H.length,x=new Array(g),A=new Array(g),M=new Array(g),e,t;for(e=0;e<g;++e)t=Q_(H[e]),x[e]=t.r||0,A[e]=t.g||0,M[e]=t.b||0;return x=X(x),A=X(A),M=X(M),t.opacity=1,function(r){return t.r=x(r),t.g=A(r),t.b=M(r),t+""}}}var nx,EE,kE,CE=Qn({"node_modules/d3-interpolate/src/rgb.js"(){u0(),H3(),TE(),c0(),nx=function X(H){var g=k9(H);function x(A,M){var e=g((A=Q_(A)).r,(M=Q_(M)).r),t=g(A.g,M.g),r=g(A.b,M.b),o=Hh(A.opacity,M.opacity);return function(a){return A.r=e(a),A.g=t(a),A.b=r(a),A.opacity=o(a),A+""}}return x.gamma=X,x}(1),EE=ME(bE),kE=ME(wE)}});function G3(X,H){H||(H=[]);var g=X?Math.min(H.length,X.length):0,x=H.slice(),A;return function(M){for(A=0;A<g;++A)x[A]=X[A]*(1-M)+H[A]*M;return x}}function LE(X){return ArrayBuffer.isView(X)&&!(X instanceof DataView)}var W3=Qn({"node_modules/d3-interpolate/src/numberArray.js"(){}});function C9(X,H){return(LE(H)?G3:PE)(X,H)}function PE(X,H){var g=H?H.length:0,x=X?Math.min(g,X.length):0,A=new Array(x),M=new Array(g),e;for(e=0;e<x;++e)A[e]=ux(X[e],H[e]);for(;e<g;++e)M[e]=H[e];return function(t){for(e=0;e<x;++e)M[e]=A[e](t);return M}}var IE=Qn({"node_modules/d3-interpolate/src/array.js"(){cx(),W3()}});function RE(X,H){var g=new Date;return X=+X,H=+H,function(x){return g.setTime(X*(1-x)+H*x),g}}var DE=Qn({"node_modules/d3-interpolate/src/date.js"(){}});function av(X,H){return X=+X,H=+H,function(g){return X*(1-g)+H*g}}var ox=Qn({"node_modules/d3-interpolate/src/number.js"(){}});function zE(X,H){var g={},x={},A;(X===null||typeof X!="object")&&(X={}),(H===null||typeof H!="object")&&(H={});for(A in H)A in X?g[A]=ux(X[A],H[A]):x[A]=H[A];return function(M){for(A in g)x[A]=g[A](M);return x}}var FE=Qn({"node_modules/d3-interpolate/src/object.js"(){cx()}});function L9(X){return function(){return X}}function P9(X){return function(H){return X(H)+""}}function OE(X,H){var g=sx.lastIndex=lx.lastIndex=0,x,A,M,e=-1,t=[],r=[];for(X=X+"",H=H+"";(x=sx.exec(X))&&(A=lx.exec(H));)(M=A.index)>g&&(M=H.slice(g,M),t[e]?t[e]+=M:t[++e]=M),(x=x[0])===(A=A[0])?t[e]?t[e]+=A:t[++e]=A:(t[++e]=null,r.push({i:e,x:av(x,A)})),g=lx.lastIndex;return g<H.length&&(M=H.slice(g),t[e]?t[e]+=M:t[++e]=M),t.length<2?r[0]?P9(r[0].x):L9(H):(H=r.length,function(o){for(var a=0,i;a<H;++a)t[(i=r[a]).i]=i.x(o);return t.join("")})}var sx,lx,BE=Qn({"node_modules/d3-interpolate/src/string.js"(){ox(),sx=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,lx=new RegExp(sx.source,"g")}});function ux(X,H){var g=typeof H,x;return H==null||g==="boolean"?T1(H):(g==="number"?av:g==="string"?(x=x1(H))?(H=x,nx):OE:H instanceof x1?nx:H instanceof Date?RE:LE(H)?G3:Array.isArray(H)?PE:typeof H.valueOf!="function"&&typeof H.toString!="function"||isNaN(H)?zE:av)(X,H)}var cx=Qn({"node_modules/d3-interpolate/src/value.js"(){u0(),CE(),IE(),DE(),ox(),FE(),BE(),AE(),W3()}});function I9(X){var H=X.length;return function(g){return X[Math.max(0,Math.min(H-1,Math.floor(g*H)))]}}var R9=Qn({"node_modules/d3-interpolate/src/discrete.js"(){}});function D9(X,H){var g=ix(+X,+H);return function(x){var A=g(x);return A-360*Math.floor(A/360)}}var z9=Qn({"node_modules/d3-interpolate/src/hue.js"(){c0()}});function F9(X,H){return X=+X,H=+H,function(g){return Math.round(X*(1-g)+H*g)}}var O9=Qn({"node_modules/d3-interpolate/src/round.js"(){}});function NE(X,H,g,x,A,M){var e,t,r;return(e=Math.sqrt(X*X+H*H))&&(X/=e,H/=e),(r=X*g+H*x)&&(g-=X*r,x-=H*r),(t=Math.sqrt(g*g+x*x))&&(g/=t,x/=t,r/=t),X*x<H*g&&(X=-X,H=-H,r=-r,e=-e),{translateX:A,translateY:M,rotate:Math.atan2(H,X)*Z3,skewX:Math.atan(r)*Z3,scaleX:e,scaleY:t}}var Z3,fx,B9=Qn({"node_modules/d3-interpolate/src/transform/decompose.js"(){Z3=180/Math.PI,fx={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}}});function N9(X){let H=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(X+"");return H.isIdentity?fx:NE(H.a,H.b,H.c,H.d,H.e,H.f)}function U9(X){return X==null||(hx||(hx=document.createElementNS("http://www.w3.org/2000/svg","g")),hx.setAttribute("transform",X),!(X=hx.transform.baseVal.consolidate()))?fx:(X=X.matrix,NE(X.a,X.b,X.c,X.d,X.e,X.f))}var hx,j9=Qn({"node_modules/d3-interpolate/src/transform/parse.js"(){B9()}});function UE(X,H,g,x){function A(o){return o.length?o.pop()+" ":""}function M(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push("translate(",null,H,null,g);c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i||n)&&s.push("translate("+i+H+n+g)}function e(o,a,i,n){o!==a?(o-a>180?a+=360:a-o>180&&(o+=360),n.push({i:i.push(A(i)+"rotate(",null,x)-2,x:av(o,a)})):a&&i.push(A(i)+"rotate("+a+x)}function t(o,a,i,n){o!==a?n.push({i:i.push(A(i)+"skewX(",null,x)-2,x:av(o,a)}):a&&i.push(A(i)+"skewX("+a+x)}function r(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push(A(s)+"scale(",null,",",null,")");c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i!==1||n!==1)&&s.push(A(s)+"scale("+i+","+n+")")}return function(o,a){var i=[],n=[];return o=X(o),a=X(a),M(o.translateX,o.translateY,a.translateX,a.translateY,i,n),e(o.rotate,a.rotate,i,n),t(o.skewX,a.skewX,i,n),r(o.scaleX,o.scaleY,a.scaleX,a.scaleY,i,n),o=a=null,function(s){for(var c=-1,h=n.length,v;++c<h;)i[(v=n[c]).i]=v.x(s);return i.join("")}}}var jE,VE,V9=Qn({"node_modules/d3-interpolate/src/transform/index.js"(){ox(),j9(),jE=UE(N9,"px, ","px)","deg)"),VE=UE(U9,", ",")",")")}});function qE(X){return((X=Math.exp(X))+1/X)/2}function q9(X){return((X=Math.exp(X))-1/X)/2}function H9(X){return((X=Math.exp(2*X))-1)/(X+1)}var HE,GE,G9=Qn({"node_modules/d3-interpolate/src/zoom.js"(){HE=1e-12,GE=function X(H,g,x){function A(M,e){var t=M[0],r=M[1],o=M[2],a=e[0],i=e[1],n=e[2],s=a-t,c=i-r,h=s*s+c*c,v,p;if(h<HE)p=Math.log(n/o)/H,v=function(E){return[t+E*s,r+E*c,o*Math.exp(H*E*p)]};else{var T=Math.sqrt(h),l=(n*n-o*o+x*h)/(2*o*g*T),_=(n*n-o*o-x*h)/(2*n*g*T),w=Math.log(Math.sqrt(l*l+1)-l),S=Math.log(Math.sqrt(_*_+1)-_);p=(S-w)/H,v=function(E){var m=E*p,b=qE(w),d=o/(g*T)*(b*H9(H*m+w)-q9(w));return[t+d*s,r+d*c,o*b/qE(H*m+w)]}}return v.duration=p*1e3*H/Math.SQRT2,v}return A.rho=function(M){var e=Math.max(.001,+M),t=e*e,r=t*t;return X(e,t,r)},A}(Math.SQRT2,2,4)}});function WE(X){return function(H,g){var x=X((H=w3(H)).h,(g=w3(g)).h),A=Hh(H.s,g.s),M=Hh(H.l,g.l),e=Hh(H.opacity,g.opacity);return function(t){return H.h=x(t),H.s=A(t),H.l=M(t),H.opacity=e(t),H+""}}}var ZE,XE,W9=Qn({"node_modules/d3-interpolate/src/hsl.js"(){u0(),c0(),ZE=WE(ix),XE=WE(Hh)}});function Z9(X,H){var g=Hh((X=k3(X)).l,(H=k3(H)).l),x=Hh(X.a,H.a),A=Hh(X.b,H.b),M=Hh(X.opacity,H.opacity);return function(e){return X.l=g(e),X.a=x(e),X.b=A(e),X.opacity=M(e),X+""}}var X9=Qn({"node_modules/d3-interpolate/src/lab.js"(){u0(),c0()}});function YE(X){return function(H,g){var x=X((H=R3(H)).h,(g=R3(g)).h),A=Hh(H.c,g.c),M=Hh(H.l,g.l),e=Hh(H.opacity,g.opacity);return function(t){return H.h=x(t),H.c=A(t),H.l=M(t),H.opacity=e(t),H+""}}}var KE,JE,Y9=Qn({"node_modules/d3-interpolate/src/hcl.js"(){u0(),c0(),KE=YE(ix),JE=YE(Hh)}});function $E(X){return function H(g){g=+g;function x(A,M){var e=X((A=N3(A)).h,(M=N3(M)).h),t=Hh(A.s,M.s),r=Hh(A.l,M.l),o=Hh(A.opacity,M.opacity);return function(a){return A.h=e(a),A.s=t(a),A.l=r(Math.pow(a,g)),A.opacity=o(a),A+""}}return x.gamma=H,x}(1)}var QE,e5,K9=Qn({"node_modules/d3-interpolate/src/cubehelix.js"(){u0(),c0(),QE=$E(ix),e5=$E(Hh)}});function J9(X,H){H===void 0&&(H=X,X=ux);for(var g=0,x=H.length-1,A=H[0],M=new Array(x<0?0:x);g<x;)M[g]=X(A,A=H[++g]);return function(e){var t=Math.max(0,Math.min(x-1,Math.floor(e*=x)));return M[t](e-t)}}var $9=Qn({"node_modules/d3-interpolate/src/piecewise.js"(){cx()}});function Q9(X,H){for(var g=new Array(H),x=0;x<H;++x)g[x]=X(x/(H-1));return g}var eN=Qn({"node_modules/d3-interpolate/src/quantize.js"(){}}),fg={};Ps(fg,{interpolate:()=>ux,interpolateArray:()=>C9,interpolateBasis:()=>bE,interpolateBasisClosed:()=>wE,interpolateCubehelix:()=>QE,interpolateCubehelixLong:()=>e5,interpolateDate:()=>RE,interpolateDiscrete:()=>I9,interpolateHcl:()=>KE,interpolateHclLong:()=>JE,interpolateHsl:()=>ZE,interpolateHslLong:()=>XE,interpolateHue:()=>D9,interpolateLab:()=>Z9,interpolateNumber:()=>av,interpolateNumberArray:()=>G3,interpolateObject:()=>zE,interpolateRgb:()=>nx,interpolateRgbBasis:()=>EE,interpolateRgbBasisClosed:()=>kE,interpolateRound:()=>F9,interpolateString:()=>OE,interpolateTransformCss:()=>jE,interpolateTransformSvg:()=>VE,interpolateZoom:()=>GE,piecewise:()=>J9,quantize:()=>Q9});var f0=Qn({"node_modules/d3-interpolate/src/index.js"(){cx(),IE(),H3(),TE(),DE(),R9(),z9(),ox(),W3(),FE(),O9(),BE(),V9(),G9(),CE(),W9(),X9(),Y9(),K9(),$9(),eN()}}),X3=Ye({"src/traces/sunburst/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r,o){var a=e.data.data,i=a.i,n=o||a.color;if(i>=0){e.i=a.i;var s=t.marker;s.pattern?(!s.colors||!s.pattern.shape)&&(s.color=n,e.color=n):(s.color=n,e.color=n),g.pointStyle(M,t,r,e)}else x.fill(M,n)}}}),t5=Ye({"src/traces/sunburst/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._sunburstlayer.selectAll(".trace");M(o,a,"sunburst"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),$v=Ye({"src/traces/sunburst/helpers.js"(X){"use strict";var H=ta(),g=Fn(),x=Kd(),A=eg();X.findEntryWithLevel=function(r,o){var a;return o&&r.eachAfter(function(i){if(X.getPtId(i)===o)return a=i.copy()}),a||r},X.findEntryWithChild=function(r,o){var a;return r.eachAfter(function(i){for(var n=i.children||[],s=0;s<n.length;s++){var c=n[s];if(X.getPtId(c)===o)return a=i.copy()}}),a||r},X.isEntry=function(r){return!r.parent},X.isLeaf=function(r){return!r.children},X.getPtId=function(r){return r.data.data.id},X.getPtLabel=function(r){return r.data.data.label},X.getValue=function(r){return r.value},X.isHierarchyRoot=function(r){return t(r)===""},X.setSliceCursor=function(r,o,a){var i=a.isTransitioning;if(!i){var n=r.datum();i=a.hideOnRoot&&X.isHierarchyRoot(n)||a.hideOnLeaves&&X.isLeaf(n)}x(r,i?null:"pointer")};function M(r,o,a){return{color:X.getOutsideTextFontKey("color",r,o,a),family:X.getOutsideTextFontKey("family",r,o,a),size:X.getOutsideTextFontKey("size",r,o,a),weight:X.getOutsideTextFontKey("weight",r,o,a),style:X.getOutsideTextFontKey("style",r,o,a),variant:X.getOutsideTextFontKey("variant",r,o,a),textcase:X.getOutsideTextFontKey("textcase",r,o,a),lineposition:X.getOutsideTextFontKey("lineposition",r,o,a),shadow:X.getOutsideTextFontKey("shadow",r,o,a)}}function e(r,o,a,i){var n=(i||{}).onPathbar,s=o.data.data,c=s.i,h=H.castOption(r,c,(n?"pathbar.textfont":"insidetextfont")+".color");return!h&&r._input.textfont&&(h=H.castOption(r._input,c,"textfont.color")),{color:h||g.contrast(s.color),family:X.getInsideTextFontKey("family",r,o,a,i),size:X.getInsideTextFontKey("size",r,o,a,i),weight:X.getInsideTextFontKey("weight",r,o,a,i),style:X.getInsideTextFontKey("style",r,o,a,i),variant:X.getInsideTextFontKey("variant",r,o,a,i),textcase:X.getInsideTextFontKey("textcase",r,o,a,i),lineposition:X.getInsideTextFontKey("lineposition",r,o,a,i),shadow:X.getInsideTextFontKey("shadow",r,o,a,i)}}X.getInsideTextFontKey=function(r,o,a,i,n){var s=(n||{}).onPathbar,c=s?"pathbar.textfont":"insidetextfont",h=a.data.data.i;return H.castOption(o,h,c+"."+r)||H.castOption(o,h,"textfont."+r)||i.size},X.getOutsideTextFontKey=function(r,o,a,i){var n=a.data.data.i;return H.castOption(o,n,"outsidetextfont."+r)||H.castOption(o,n,"textfont."+r)||i.size},X.isOutsideText=function(r,o){return!r._hasColorscale&&X.isHierarchyRoot(o)},X.determineTextFont=function(r,o,a,i){return X.isOutsideText(r,o)?M(r,o,a):e(r,o,a,i)},X.hasTransition=function(r){return!!(r&&r.duration>0)},X.getMaxDepth=function(r){return r.maxdepth>=0?r.maxdepth:1/0},X.isHeader=function(r,o){return!(X.isLeaf(r)||r.depth===o._maxDepth-1)};function t(r){return r.data.data.pid}X.getParent=function(r,o){return X.findEntryWithLevel(r,t(o))},X.listPath=function(r,o){var a=r.parent;if(!a)return[];var i=o?[a.data[o]]:[a];return X.listPath(a,o).concat(i)},X.getPath=function(r){return X.listPath(r,"label").join("/")+"/"},X.formatValue=A.formatPieValue,X.formatPercent=function(r,o){var a=H.formatPercent(r,0);return a==="0%"&&(a=A.formatPiePercent(r,o)),a}}}),px=Ye({"src/traces/sunburst/fx.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Qp().appendArrayPointValue,M=Lc(),e=ta(),t=$y(),r=$v(),o=eg(),a=o.formatPieValue;H.exports=function(s,c,h,v,p){var T=v[0],l=T.trace,_=T.hierarchy,w=l.type==="sunburst",S=l.type==="treemap"||l.type==="icicle";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1);var E=function(d){var u=h._fullLayout;if(!(h._dragging||u.hovermode===!1)){var y=h._fullData[l.index],f=d.data.data,P=f.i,L=r.isHierarchyRoot(d),z=r.getParent(_,d),F=r.getValue(d),B=function(ee){return e.castOption(y,P,ee)},O=B("hovertemplate"),I=M.castHoverinfo(y,u,P),N=u.separators,U;if(O||I&&I!=="none"&&I!=="skip"){var W,Q;w&&(W=T.cx+d.pxmid[0]*(1-d.rInscribed),Q=T.cy+d.pxmid[1]*(1-d.rInscribed)),S&&(W=d._hoverX,Q=d._hoverY);var ue={},se=[],he=[],G=function(ee){return se.indexOf(ee)!==-1};I&&(se=I==="all"?y._module.attributes.hoverinfo.flags:I.split("+")),ue.label=f.label,G("label")&&ue.label&&he.push(ue.label),f.hasOwnProperty("v")&&(ue.value=f.v,ue.valueLabel=a(ue.value,N),G("value")&&he.push(ue.valueLabel)),ue.currentPath=d.currentPath=r.getPath(d.data),G("current path")&&!L&&he.push(ue.currentPath);var $,J=[],Z=function(){J.indexOf($)===-1&&(he.push($),J.push($))};ue.percentParent=d.percentParent=F/r.getValue(z),ue.parent=d.parentString=r.getPtLabel(z),G("percent parent")&&($=r.formatPercent(ue.percentParent,N)+" of "+ue.parent,Z()),ue.percentEntry=d.percentEntry=F/r.getValue(c),ue.entry=d.entry=r.getPtLabel(c),G("percent entry")&&!L&&!d.onPathbar&&($=r.formatPercent(ue.percentEntry,N)+" of "+ue.entry,Z()),ue.percentRoot=d.percentRoot=F/r.getValue(_),ue.root=d.root=r.getPtLabel(_),G("percent root")&&!L&&($=r.formatPercent(ue.percentRoot,N)+" of "+ue.root,Z()),ue.text=B("hovertext")||B("text"),G("text")&&($=ue.text,e.isValidTextValue($)&&he.push($)),U=[i(d,y,p.eventDataKeys)];var re={trace:y,y:Q,_x0:d._x0,_x1:d._x1,_y0:d._y0,_y1:d._y1,text:he.join("<br>"),name:O||G("name")?y.name:void 0,color:B("hoverlabel.bgcolor")||f.color,borderColor:B("hoverlabel.bordercolor"),fontFamily:B("hoverlabel.font.family"),fontSize:B("hoverlabel.font.size"),fontColor:B("hoverlabel.font.color"),fontWeight:B("hoverlabel.font.weight"),fontStyle:B("hoverlabel.font.style"),fontVariant:B("hoverlabel.font.variant"),nameLength:B("hoverlabel.namelength"),textAlign:B("hoverlabel.align"),hovertemplate:O,hovertemplateLabels:ue,eventData:U};w&&(re.x0=W-d.rInscribed*d.rpx1,re.x1=W+d.rInscribed*d.rpx1,re.idealAlign=d.pxmid[0]<0?"left":"right"),S&&(re.x=W,re.idealAlign=W<0?"left":"right");var ne=[];M.loneHover(re,{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:h,inOut_bbox:ne}),U[0].bbox=ne[0],l._hasHoverLabel=!0}if(S){var j=s.select("path.surface");p.styleOne(j,d,y,h,{hovered:!0})}l._hasHoverEvent=!0,h.emit("plotly_hover",{points:U||[i(d,y,p.eventDataKeys)],event:g.event})}},m=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=g.select(this).datum();if(l._hasHoverEvent&&(d.originalEvent=g.event,h.emit("plotly_unhover",{points:[i(f,y,p.eventDataKeys)],event:g.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(M.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1),S){var P=s.select("path.surface");p.styleOne(P,f,y,h,{hovered:!1})}},b=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=w&&(r.isHierarchyRoot(d)||r.isLeaf(d)),P=r.getPtId(d),L=r.isEntry(d)?r.findEntryWithChild(_,P):r.findEntryWithLevel(_,P),z=r.getPtId(L),F={points:[i(d,y,p.eventDataKeys)],event:g.event};f||(F.nextLevel=z);var B=t.triggerHandler(h,"plotly_"+l.type+"click",F);if(B!==!1&&u.hovermode&&(h._hoverdata=[i(d,y,p.eventDataKeys)],M.click(h,g.event)),!f&&B!==!1&&!h._dragging&&!h._transitioning){x.call("_storeDirectGUIEdit",y,u._tracePreGUI[y.uid],{level:y.level});var O={data:[{level:z}],traces:[l.index]},I={frame:{redraw:!1,duration:p.transitionTime},transition:{duration:p.transitionTime,easing:p.transitionEasing},mode:"immediate",fromcurrent:!0};M.loneUnhover(u._hoverlayer.node()),x.call("animate",h,O,I)}};s.on("mouseover",E),s.on("mouseout",m),s.on("click",b)};function i(n,s,c){for(var h=n.data.data,v={curveNumber:s.index,pointNumber:h.i,data:s._input,fullData:s},p=0;p<c.length;p++){var T=c[p];T in n&&(v[T]=n[T])}return"parentString"in n&&!r.isHierarchyRoot(n)&&(v.parent=n.parentString),A(v,s,h.i),v}}}),Y3=Ye({"src/traces/sunburst/plot.js"(X){"use strict";var H=_n(),g=K_(),x=(f0(),Hf(fg)).interpolate,A=Bo(),M=ta(),e=jl(),t=wp(),r=t.recordMinTextSize,o=t.clearMinTextSize,a=_3(),i=eg().getRotationAngle,n=a.computeTransform,s=a.transformInsideText,c=t5().styleOne,h=Nd().resizeText,v=px(),p=QM(),T=$v();X.plot=function(m,b,d,u){var y=m._fullLayout,f=y._sunburstlayer,P,L,z=!d,F=!y.uniformtext.mode&&T.hasTransition(d);if(o("sunburst",y),P=f.selectAll("g.trace.sunburst").data(b,function(O){return O[0].trace.uid}),P.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),P.order(),F){u&&(L=u());var B=H.transition().duration(d.duration).ease(d.easing).each("end",function(){L&&L()}).each("interrupt",function(){L&&L()});B.each(function(){f.selectAll("g.trace").each(function(O){l(m,O,this,d)})})}else P.each(function(O){l(m,O,this,d)}),y.uniformtext.mode&&h(m,y._sunburstlayer.selectAll(".trace"),"sunburst");z&&P.exit().remove()};function l(m,b,d,u){var y=m._context.staticPlot,f=m._fullLayout,P=!f.uniformtext.mode&&T.hasTransition(u),L=H.select(d),z=L.selectAll("g.slice"),F=b[0],B=F.trace,O=F.hierarchy,I=T.findEntryWithLevel(O,B.level),N=T.getMaxDepth(B),U=f._size,W=B.domain,Q=U.w*(W.x[1]-W.x[0]),ue=U.h*(W.y[1]-W.y[0]),se=.5*Math.min(Q,ue),he=F.cx=U.l+U.w*(W.x[1]+W.x[0])/2,G=F.cy=U.t+U.h*(1-W.y[0])-ue/2;if(!I)return z.remove();var $=null,J={};P&&z.each(function(ce){J[T.getPtId(ce)]={rpx0:ce.rpx0,rpx1:ce.rpx1,x0:ce.x0,x1:ce.x1,transform:ce.transform},!$&&T.isEntry(ce)&&($=ce)});var Z=_(I).descendants(),re=I.height+1,ne=0,j=N;F.hasMultipleRoots&&T.isHierarchyRoot(I)&&(Z=Z.slice(1),re-=1,ne=1,j+=1),Z=Z.filter(function(ce){return ce.y1<=j});var ee=i(B.rotation);ee&&Z.forEach(function(ce){ce.x0+=ee,ce.x1+=ee});var ie=Math.min(re,N),fe=function(ce){return(ce-ne)/ie*se},be=function(ce,ze){return[ce*Math.cos(ze),-ce*Math.sin(ze)]},Ae=function(ce){return M.pathAnnulus(ce.rpx0,ce.rpx1,ce.x0,ce.x1,he,G)},Be=function(ce){return he+S(ce)[0]*(ce.transform.rCenter||0)+(ce.transform.x||0)},Ie=function(ce){return G+S(ce)[1]*(ce.transform.rCenter||0)+(ce.transform.y||0)};z=z.data(Z,T.getPtId),z.enter().append("g").classed("slice",!0),P?z.exit().transition().each(function(){var ce=H.select(this),ze=ce.select("path.surface");ze.transition().attrTween("d",function(nt){var Qe=et(nt);return function(Ct){return Ae(Qe(Ct))}});var tt=ce.select("g.slicetext");tt.attr("opacity",0)}).remove():z.exit().remove(),z.order();var Ze=null;if(P&&$){var at=T.getPtId($);z.each(function(ce){Ze===null&&T.getPtId(ce)===at&&(Ze=ce.x1)})}var it=z;P&&(it=it.transition().each("end",function(){var ce=H.select(this);T.setSliceCursor(ce,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),it.each(function(ce){var ze=H.select(this),tt=M.ensureSingle(ze,"path","surface",function(jt){jt.style("pointer-events",y?"none":"all")});ce.rpx0=fe(ce.y0),ce.rpx1=fe(ce.y1),ce.xmid=(ce.x0+ce.x1)/2,ce.pxmid=be(ce.rpx1,ce.xmid),ce.midangle=-(ce.xmid-Math.PI/2),ce.startangle=-(ce.x0-Math.PI/2),ce.stopangle=-(ce.x1-Math.PI/2),ce.halfangle=.5*Math.min(M.angleDelta(ce.x0,ce.x1)||Math.PI,Math.PI),ce.ring=1-ce.rpx0/ce.rpx1,ce.rInscribed=w(ce,B),P?tt.transition().attrTween("d",function(jt){var ur=lt(jt);return function(ar){return Ae(ur(ar))}}):tt.attr("d",Ae),ze.call(v,I,m,b,{eventDataKeys:p.eventDataKeys,transitionTime:p.CLICK_TRANSITION_TIME,transitionEasing:p.CLICK_TRANSITION_EASING}).call(T.setSliceCursor,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:m._transitioning}),tt.call(c,ce,B,m);var nt=M.ensureSingle(ze,"g","slicetext"),Qe=M.ensureSingle(nt,"text","",function(jt){jt.attr("data-notex",1)}),Ct=M.ensureUniformFontSize(m,T.determineTextFont(B,ce,f.font));Qe.text(X.formatSliceLabel(ce,I,B,b,f)).classed("slicetext",!0).attr("text-anchor","middle").call(A.font,Ct).call(e.convertToTspans,m);var St=A.bBox(Qe.node());ce.transform=s(St,ce,F),ce.transform.targetX=Be(ce),ce.transform.targetY=Ie(ce);var Ot=function(jt,ur){var ar=jt.transform;return n(ar,ur),ar.fontSize=Ct.size,r(B.type,ar,f),M.getTextTransform(ar)};P?Qe.transition().attrTween("transform",function(jt){var ur=Me(jt);return function(ar){return Ot(ur(ar),St)}}):Qe.attr("transform",Ot(ce,St))});function et(ce){var ze=T.getPtId(ce),tt=J[ze],nt=J[T.getPtId(I)],Qe;if(nt){var Ct=(ce.x1>nt.x1?2*Math.PI:0)+ee;Qe=ce.rpx1<nt.rpx1?{x0:ce.x0,x1:ce.x1,rpx0:0,rpx1:0}:{x0:Ct,x1:Ct,rpx0:ce.rpx0,rpx1:ce.rpx1}}else{var St,Ot=T.getPtId(ce.parent);z.each(function(vr){if(T.getPtId(vr)===Ot)return St=vr});var jt=St.children,ur;jt.forEach(function(vr,_r){if(T.getPtId(vr)===ze)return ur=_r});var ar=jt.length,Cr=x(St.x0,St.x1);Qe={rpx0:se,rpx1:se,x0:Cr(ur/ar),x1:Cr((ur+1)/ar)}}return x(tt,Qe)}function lt(ce){var ze=J[T.getPtId(ce)],tt,nt={x0:ce.x0,x1:ce.x1,rpx0:ce.rpx0,rpx1:ce.rpx1};if(ze)tt=ze;else if($)if(ce.parent)if(Ze){var Qe=(ce.x1>Ze?2*Math.PI:0)+ee;tt={x0:Qe,x1:Qe}}else tt={rpx0:se,rpx1:se},M.extendFlat(tt,ge(ce));else tt={rpx0:0,rpx1:0};else tt={x0:ee,x1:ee};return x(tt,nt)}function Me(ce){var ze=J[T.getPtId(ce)],tt,nt=ce.transform;if(ze)tt=ze;else if(tt={rpx1:ce.rpx1,transform:{textPosAngle:nt.textPosAngle,scale:0,rotate:nt.rotate,rCenter:nt.rCenter,x:nt.x,y:nt.y}},$)if(ce.parent)if(Ze){var Qe=ce.x1>Ze?2*Math.PI:0;tt.x0=tt.x1=Qe}else M.extendFlat(tt,ge(ce));else tt.x0=tt.x1=ee;else tt.x0=tt.x1=ee;var Ct=x(tt.transform.textPosAngle,ce.transform.textPosAngle),St=x(tt.rpx1,ce.rpx1),Ot=x(tt.x0,ce.x0),jt=x(tt.x1,ce.x1),ur=x(tt.transform.scale,nt.scale),ar=x(tt.transform.rotate,nt.rotate),Cr=nt.rCenter===0?3:tt.transform.rCenter===0?1/3:1,vr=x(tt.transform.rCenter,nt.rCenter),_r=function(yt){return vr(Math.pow(yt,Cr))};return function(yt){var Fe=St(yt),Ke=Ot(yt),Ne=jt(yt),Ee=_r(yt),Ve=be(Fe,(Ke+Ne)/2),ke=Ct(yt),Te={pxmid:Ve,rpx1:Fe,transform:{textPosAngle:ke,rCenter:Ee,x:nt.x,y:nt.y}};return r(B.type,nt,f),{transform:{targetX:Be(Te),targetY:Ie(Te),scale:ur(yt),rotate:ar(yt),rCenter:Ee}}}}function ge(ce){var ze=ce.parent,tt=J[T.getPtId(ze)],nt={};if(tt){var Qe=ze.children,Ct=Qe.indexOf(ce),St=Qe.length,Ot=x(tt.x0,tt.x1);nt.x0=Ot(Ct/St),nt.x1=Ot(Ct/St)}else nt.x0=nt.x1=0;return nt}}function _(m){return g.partition().size([2*Math.PI,m.height+1])(m)}X.formatSliceLabel=function(m,b,d,u,y){var f=d.texttemplate,P=d.textinfo;if(!f&&(!P||P==="none"))return"";var L=y.separators,z=u[0],F=m.data.data,B=z.hierarchy,O=T.isHierarchyRoot(m),I=T.getParent(B,m),N=T.getValue(m);if(!f){var U=P.split("+"),W=function(ne){return U.indexOf(ne)!==-1},Q=[],ue;if(W("label")&&F.label&&Q.push(F.label),F.hasOwnProperty("v")&&W("value")&&Q.push(T.formatValue(F.v,L)),!O){W("current path")&&Q.push(T.getPath(m.data));var se=0;W("percent parent")&&se++,W("percent entry")&&se++,W("percent root")&&se++;var he=se>1;if(se){var G,$=function(ne){ue=T.formatPercent(G,L),he&&(ue+=" of "+ne),Q.push(ue)};W("percent parent")&&!O&&(G=N/T.getValue(I),$("parent")),W("percent entry")&&(G=N/T.getValue(b),$("entry")),W("percent root")&&(G=N/T.getValue(B),$("root"))}}return W("text")&&(ue=M.castOption(d,F.i,"text"),M.isValidTextValue(ue)&&Q.push(ue)),Q.join("<br>")}var J=M.castOption(d,F.i,"texttemplate");if(!J)return"";var Z={};F.label&&(Z.label=F.label),F.hasOwnProperty("v")&&(Z.value=F.v,Z.valueLabel=T.formatValue(F.v,L)),Z.currentPath=T.getPath(m.data),O||(Z.percentParent=N/T.getValue(I),Z.percentParentLabel=T.formatPercent(Z.percentParent,L),Z.parent=T.getPtLabel(I)),Z.percentEntry=N/T.getValue(b),Z.percentEntryLabel=T.formatPercent(Z.percentEntry,L),Z.entry=T.getPtLabel(b),Z.percentRoot=N/T.getValue(B),Z.percentRootLabel=T.formatPercent(Z.percentRoot,L),Z.root=T.getPtLabel(B),F.hasOwnProperty("color")&&(Z.color=F.color);var re=M.castOption(d,F.i,"text");return(M.isValidTextValue(re)||re==="")&&(Z.text=re),Z.customdata=M.castOption(d,F.i,"customdata"),M.texttemplateString(J,Z,y._d3locale,Z,d._meta||{})};function w(m){return m.rpx0===0&&M.isFullCircle([m.x0,m.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(m.halfangle)),m.ring/2))}function S(m){return E(m.rpx1,m.transform.textPosAngle)}function E(m,b){return[m*Math.sin(b),-m*Math.cos(b)]}}}),tN=Ye({"src/traces/sunburst/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"sunburst",basePlotModule:g9(),categories:[],animatable:!0,attributes:Y_(),layoutAttributes:eE(),supplyDefaults:y9(),supplyLayoutDefaults:_9(),calc:J_().calc,crossTraceCalc:J_().crossTraceCalc,plot:Y3().plot,style:t5().style,colorbar:cp(),meta:{}}}}),rN=Ye({"lib/sunburst.js"(X,H){"use strict";H.exports=tN()}}),aN=Ye({"src/traces/treemap/base_plot.js"(X){"use strict";var H=Gu();X.name="treemap",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),h0=Ye({"src/traces/treemap/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}}}),K3=Ye({"src/traces/treemap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=h0(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:o({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:t.marker.colors,pattern:a,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:t.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:o({},e.textfont,{}),editType:"calc"},text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:r.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:o({},e.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:e.sort,root:t.root,domain:M({name:"treemap",trace:!0,editType:"calc"})}}}),r5=Ye({"src/traces/treemap/layout_attributes.js"(X,H){"use strict";H.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),iN=Ye({"src/traces/treemap/defaults.js"(X,H){"use strict";var g=ta(),x=K3(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(y,f){return g.coerce(s,c,x,y,f)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth");var w=p("tiling.packing");w==="squarify"&&p("tiling.squarifyratio"),p("tiling.flip"),p("tiling.pad");var S=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(S)?"text+label":"label"),p("hovertext"),p("hovertemplate");var E=p("pathbar.visible"),m="auto";e(s,c,v,p,m,{hasPathbar:E,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition");var b=c.textposition.indexOf("bottom")!==-1;r(s,c,v,p);var d=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;d?i(s,c,v,p,{prefix:"marker.",cLetter:"c"}):p("marker.depthfade",!(c.marker.colors||[]).length);var u=c.textfont.size*2;p("marker.pad.t",b?u/4:u),p("marker.pad.l",u/4),p("marker.pad.r",u/4),p("marker.pad.b",b?u:u/4),p("marker.cornerradius"),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},E&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),nN=Ye({"src/traces/treemap/layout_defaults.js"(X,H){"use strict";var g=ta(),x=r5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("treemapcolorway",e.colorway),t("extendtreemapcolors")}}}),a5=Ye({"src/traces/treemap/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("treemap",g)}}}),i5=Ye({"src/traces/treemap/flip_tree.js"(X,H){"use strict";H.exports=function g(x,A,M){var e;M.swapXY&&(e=x.x0,x.x0=x.y0,x.y0=e,e=x.x1,x.x1=x.y1,x.y1=e),M.flipX&&(e=x.x0,x.x0=A[0]-x.x1,x.x1=A[0]-e),M.flipY&&(e=x.y0,x.y0=A[1]-x.y1,x.y1=A[1]-e);var t=x.children;if(t)for(var r=0;r<t.length;r++)g(t[r],A,M)}}}),n5=Ye({"src/traces/treemap/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(e,t,r){var o=r.flipX,a=r.flipY,i=r.packing==="dice-slice",n=r.pad[a?"bottom":"top"],s=r.pad[o?"right":"left"],c=r.pad[o?"left":"right"],h=r.pad[a?"top":"bottom"],v;i&&(v=s,s=n,n=v,v=c,c=h,h=v);var p=g.treemap().tile(A(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(s).paddingRight(c).paddingTop(n).paddingBottom(h).size(i?[t[1],t[0]]:t)(e);return(i||o||a)&&x(p,t,{swapXY:i,flipX:o,flipY:a}),p};function A(M,e){switch(M){case"squarify":return g.treemapSquarify.ratio(e);case"binary":return g.treemapBinary;case"dice":return g.treemapDice;case"slice":return g.treemapSlice;default:return g.treemapSliceDice}}}}),J3=Ye({"src/traces/treemap/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=$v(),e=wp().resizeText,t=X3();function r(a){var i=a._fullLayout._treemaplayer.selectAll(".trace");e(a,i,"treemap"),i.each(function(n){var s=g.select(this),c=n[0],h=c.trace;s.style("opacity",h.opacity),s.selectAll("path.surface").each(function(v){g.select(this).call(o,v,h,a,{hovered:!1})})})}function o(a,i,n,s,c){var h=(c||{}).hovered,v=i.data.data,p=v.i,T,l,_=v.color,w=M.isHierarchyRoot(i),S=1;if(h)T=n._hovered.marker.line.color,l=n._hovered.marker.line.width;else if(w&&_===n.root.color)S=100,T="rgba(0,0,0,0)",l=0;else if(T=A.castOption(n,p,"marker.line.color")||x.defaultLine,l=A.castOption(n,p,"marker.line.width")||0,!n._hasColorscale&&!i.onPathbar){var E=n.marker.depthfade;if(E){var m=x.combine(x.addOpacity(n._backgroundColor,.75),_),b;if(E===!0){var d=M.getMaxDepth(n);isFinite(d)?M.isLeaf(i)?b=0:b=n._maxVisibleLayers-(i.data.depth-n._entryDepth):b=i.data.height+1}else b=i.data.depth-n._entryDepth,n._atRootLevel||b++;if(b>0)for(var u=0;u<b;u++){var y=.5*u/b;_=x.combine(x.addOpacity(m,y),_)}}}a.call(t,i,n,s,_).style("stroke-width",l).call(x.stroke,T).style("opacity",S)}H.exports={style:r,styleOne:o}}}),oN=Ye({"src/traces/treemap/draw_ancestors.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=n5(),t=J3().styleOne,r=h0(),o=$v(),a=px(),i=!0;H.exports=function(s,c,h,v,p){var T=p.barDifY,l=p.width,_=p.height,w=p.viewX,S=p.viewY,E=p.pathSlice,m=p.toMoveInsideSlice,b=p.strTransform,d=p.hasTransition,u=p.handleSlicesExit,y=p.makeUpdateSliceInterpolator,f=p.makeUpdateTextInterpolator,P={},L=s._context.staticPlot,z=s._fullLayout,F=c[0],B=F.trace,O=F.hierarchy,I=l/B._entryDepth,N=o.listPath(h.data,"id"),U=e(O.copy(),[l,_],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();U=U.filter(function(Q){var ue=N.indexOf(Q.data.id);return ue===-1?!1:(Q.x0=I*ue,Q.x1=I*(ue+1),Q.y0=T,Q.y1=T+_,Q.onPathbar=!0,!0)}),U.reverse(),v=v.data(U,o.getPtId),v.enter().append("g").classed("pathbar",!0),u(v,i,P,[l,_],E),v.order();var W=v;d&&(W=W.transition().each("end",function(){var Q=g.select(this);o.setSliceCursor(Q,s,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),W.each(function(Q){Q._x0=w(Q.x0),Q._x1=w(Q.x1),Q._y0=S(Q.y0),Q._y1=S(Q.y1),Q._hoverX=w(Q.x1-Math.min(l,_)/2),Q._hoverY=S(Q.y1-_/2);var ue=g.select(this),se=x.ensureSingle(ue,"path","surface",function(J){J.style("pointer-events",L?"none":"all")});d?se.transition().attrTween("d",function(J){var Z=y(J,i,P,[l,_]);return function(re){return E(Z(re))}}):se.attr("d",E),ue.call(a,h,s,c,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,s,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:s._transitioning}),se.call(t,Q,B,s,{hovered:!1}),Q._text=(o.getPtLabel(Q)||"").split("<br>").join(" ")||"";var he=x.ensureSingle(ue,"g","slicetext"),G=x.ensureSingle(he,"text","",function(J){J.attr("data-notex",1)}),$=x.ensureUniformFontSize(s,o.determineTextFont(B,Q,z.font,{onPathbar:!0}));G.text(Q._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(A.font,$).call(M.convertToTspans,s),Q.textBB=A.bBox(G.node()),Q.transform=m(Q,{fontSize:$.size,onPathbar:!0}),Q.transform.fontSize=$.size,d?G.transition().attrTween("transform",function(J){var Z=f(J,i,P,[l,_]);return function(re){return b(Z(re))}}):G.attr("transform",b(Q))})}}}),sN=Ye({"src/traces/treemap/plot_one.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=$v(),M=ta(),e=Qg().TEXTPAD,t=e0(),r=t.toMoveInsideBar,o=wp(),a=o.recordMinTextSize,i=h0(),n=oN();function s(c){return A.isHierarchyRoot(c)?"":A.getPtId(c)}H.exports=function(h,v,p,T,l){var _=h._fullLayout,w=v[0],S=w.trace,E=S.type,m=E==="icicle",b=w.hierarchy,d=A.findEntryWithLevel(b,S.level),u=g.select(p),y=u.selectAll("g.pathbar"),f=u.selectAll("g.slice");if(!d){y.remove(),f.remove();return}var P=A.isHierarchyRoot(d),L=!_.uniformtext.mode&&A.hasTransition(T),z=A.getMaxDepth(S),F=function(vr){return vr.data.depth-d.data.depth<z},B=_._size,O=S.domain,I=B.w*(O.x[1]-O.x[0]),N=B.h*(O.y[1]-O.y[0]),U=I,W=S.pathbar.thickness,Q=S.marker.line.width+i.gapWithPathbar,ue=S.pathbar.visible?S.pathbar.side.indexOf("bottom")>-1?N+Q:-(W+Q):0,se={x0:U,x1:U,y0:ue,y1:ue+W},he=function(vr,_r,yt){var Fe=S.tiling.pad,Ke=function(ke){return ke-Fe<=_r.x0},Ne=function(ke){return ke+Fe>=_r.x1},Ee=function(ke){return ke-Fe<=_r.y0},Ve=function(ke){return ke+Fe>=_r.y1};return vr.x0===_r.x0&&vr.x1===_r.x1&&vr.y0===_r.y0&&vr.y1===_r.y1?{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1}:{x0:Ke(vr.x0-Fe)?0:Ne(vr.x0-Fe)?yt[0]:vr.x0,x1:Ke(vr.x1+Fe)?0:Ne(vr.x1+Fe)?yt[0]:vr.x1,y0:Ee(vr.y0-Fe)?0:Ve(vr.y0-Fe)?yt[1]:vr.y0,y1:Ee(vr.y1+Fe)?0:Ve(vr.y1+Fe)?yt[1]:vr.y1}},G=null,$={},J={},Z=null,re=function(vr,_r){return _r?$[s(vr)]:J[s(vr)]},ne=function(vr,_r,yt,Fe){if(_r)return $[s(b)]||se;var Ke=J[S.level]||yt;return F(vr)?he(vr,Ke,Fe):{}};w.hasMultipleRoots&&P&&z++,S._maxDepth=z,S._backgroundColor=_.paper_bgcolor,S._entryDepth=d.data.depth,S._atRootLevel=P;var j=-I/2+B.l+B.w*(O.x[1]+O.x[0])/2,ee=-N/2+B.t+B.h*(1-(O.y[1]+O.y[0])/2),ie=function(vr){return j+vr},fe=function(vr){return ee+vr},be=fe(0),Ae=ie(0),Be=function(vr){return Ae+vr},Ie=function(vr){return be+vr};function Ze(vr,_r){return vr+","+_r}var at=Be(0),it=function(vr){vr.x=Math.max(at,vr.x)},et=S.pathbar.edgeshape,lt=function(vr){var _r=Be(Math.max(Math.min(vr.x0,vr.x0),0)),yt=Be(Math.min(Math.max(vr.x1,vr.x1),U)),Fe=Ie(vr.y0),Ke=Ie(vr.y1),Ne=W/2,Ee={},Ve={};Ee.x=_r,Ve.x=yt,Ee.y=Ve.y=(Fe+Ke)/2;var ke={x:_r,y:Fe},Te={x:yt,y:Fe},Le={x:yt,y:Ke},rt={x:_r,y:Ke};return et===">"?(ke.x-=Ne,Te.x-=Ne,Le.x-=Ne,rt.x-=Ne):et==="/"?(Le.x-=Ne,rt.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="\\"?(ke.x-=Ne,Te.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="<"&&(Ee.x-=Ne,Ve.x-=Ne),it(ke),it(rt),it(Ee),it(Te),it(Le),it(Ve),"M"+Ze(ke.x,ke.y)+"L"+Ze(Te.x,Te.y)+"L"+Ze(Ve.x,Ve.y)+"L"+Ze(Le.x,Le.y)+"L"+Ze(rt.x,rt.y)+"L"+Ze(Ee.x,Ee.y)+"Z"},Me=S[m?"tiling":"marker"].pad,ge=function(vr){return S.textposition.indexOf(vr)!==-1},ce=ge("top"),ze=ge("left"),tt=ge("right"),nt=ge("bottom"),Qe=function(vr){var _r=ie(vr.x0),yt=ie(vr.x1),Fe=fe(vr.y0),Ke=fe(vr.y1),Ne=yt-_r,Ee=Ke-Fe;if(!Ne||!Ee)return"";var Ve=S.marker.cornerradius||0,ke=Math.min(Ve,Ne/2,Ee/2);ke&&vr.data&&vr.data.data&&vr.data.data.label&&(ce&&(ke=Math.min(ke,Me.t)),ze&&(ke=Math.min(ke,Me.l)),tt&&(ke=Math.min(ke,Me.r)),nt&&(ke=Math.min(ke,Me.b)));var Te=function(Le,rt){return ke?"a"+Ze(ke,ke)+" 0 0 1 "+Ze(Le,rt):""};return"M"+Ze(_r,Fe+ke)+Te(ke,-ke)+"L"+Ze(yt-ke,Fe)+Te(ke,ke)+"L"+Ze(yt,Ke-ke)+Te(-ke,ke)+"L"+Ze(_r+ke,Ke)+Te(-ke,-ke)+"Z"},Ct=function(vr,_r){var yt=vr.x0,Fe=vr.x1,Ke=vr.y0,Ne=vr.y1,Ee=vr.textBB,Ve=ce||_r.isHeader&&!nt,ke=Ve?"start":nt?"end":"middle",Te=ge("right"),Le=ge("left")||_r.onPathbar,rt=Le?-1:Te?1:0;if(_r.isHeader){if(yt+=(m?Me:Me.l)-e,Fe-=(m?Me:Me.r)-e,yt>=Fe){var dt=(yt+Fe)/2;yt=dt,Fe=dt}var xt;nt?(xt=Ne-(m?Me:Me.b),Ke<xt&&xt<Ne&&(Ke=xt)):(xt=Ke+(m?Me:Me.t),Ke<xt&&xt<Ne&&(Ne=xt))}var It=r(yt,Fe,Ke,Ne,Ee,{isHorizontal:!1,constrained:!0,angle:0,anchor:ke,leftToRight:rt});return It.fontSize=_r.fontSize,It.targetX=ie(It.targetX),It.targetY=fe(It.targetY),isNaN(It.targetX)||isNaN(It.targetY)?{}:(yt!==Fe&&Ke!==Ne&&a(S.type,It,_),{scale:It.scale,rotate:It.rotate,textX:It.textX,textY:It.textY,anchorX:It.anchorX,anchorY:It.anchorY,targetX:It.targetX,targetY:It.targetY})},St=function(vr,_r){for(var yt,Fe=0,Ke=vr;!yt&&Fe<z;)Fe++,Ke=Ke.parent,Ke?yt=re(Ke,_r):Fe=z;return yt||{}},Ot=function(vr,_r,yt,Fe){var Ke=re(vr,_r),Ne;if(_r)Ne=se;else{var Ee=re(d,_r);Ee?Ne=he(vr,Ee,Fe):Ne={}}return x(Ke,Ne)},jt=function(vr,_r,yt,Fe,Ke){var Ne=re(vr,_r),Ee;if(Ne)Ee=Ne;else if(_r)Ee=se;else if(G)if(vr.parent){var Ve=Z||yt;Ve&&!_r?Ee=he(vr,Ve,Fe):(Ee={},M.extendFlat(Ee,St(vr,_r)))}else Ee=M.extendFlat({},vr),m&&(Ke.orientation==="h"?Ke.flipX?Ee.x0=vr.x1:Ee.x1=0:Ke.flipY?Ee.y0=vr.y1:Ee.y1=0);else Ee={};return x(Ee,{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1})},ur=function(vr,_r,yt,Fe){var Ke=re(vr,_r),Ne={},Ee=ne(vr,_r,yt,Fe);M.extendFlat(Ne,{transform:Ct({x0:Ee.x0,x1:Ee.x1,y0:Ee.y0,y1:Ee.y1,textBB:vr.textBB,_text:vr._text},{isHeader:A.isHeader(vr,S)})}),Ke?Ne=Ke:vr.parent&&M.extendFlat(Ne,St(vr,_r));var Ve=vr.transform;return vr.x0!==vr.x1&&vr.y0!==vr.y1&&a(S.type,Ve,_),x(Ne,{transform:{scale:Ve.scale,rotate:Ve.rotate,textX:Ve.textX,textY:Ve.textY,anchorX:Ve.anchorX,anchorY:Ve.anchorY,targetX:Ve.targetX,targetY:Ve.targetY}})},ar=function(vr,_r,yt,Fe,Ke){var Ne=Fe[0],Ee=Fe[1];L?vr.exit().transition().each(function(){var Ve=g.select(this),ke=Ve.select("path.surface");ke.transition().attrTween("d",function(Le){var rt=Ot(Le,_r,yt,[Ne,Ee]);return function(dt){return Ke(rt(dt))}});var Te=Ve.select("g.slicetext");Te.attr("opacity",0)}).remove():vr.exit().remove()},Cr=function(vr){var _r=vr.transform;return vr.x0!==vr.x1&&vr.y0!==vr.y1&&a(S.type,_r,_),M.getTextTransform({textX:_r.textX,textY:_r.textY,anchorX:_r.anchorX,anchorY:_r.anchorY,targetX:_r.targetX,targetY:_r.targetY,scale:_r.scale,rotate:_r.rotate})};L&&(y.each(function(vr){$[s(vr)]={x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1},vr.transform&&($[s(vr)].transform={textX:vr.transform.textX,textY:vr.transform.textY,anchorX:vr.transform.anchorX,anchorY:vr.transform.anchorY,targetX:vr.transform.targetX,targetY:vr.transform.targetY,scale:vr.transform.scale,rotate:vr.transform.rotate})}),f.each(function(vr){J[s(vr)]={x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1},vr.transform&&(J[s(vr)].transform={textX:vr.transform.textX,textY:vr.transform.textY,anchorX:vr.transform.anchorX,anchorY:vr.transform.anchorY,targetX:vr.transform.targetX,targetY:vr.transform.targetY,scale:vr.transform.scale,rotate:vr.transform.rotate}),!G&&A.isEntry(vr)&&(G=vr)})),Z=l(h,v,d,f,{width:I,height:N,viewX:ie,viewY:fe,pathSlice:Qe,toMoveInsideSlice:Ct,prevEntry:G,makeUpdateSliceInterpolator:jt,makeUpdateTextInterpolator:ur,handleSlicesExit:ar,hasTransition:L,strTransform:Cr}),S.pathbar.visible?n(h,v,d,y,{barDifY:ue,width:U,height:W,viewX:Be,viewY:Ie,pathSlice:lt,toMoveInsideSlice:Ct,makeUpdateSliceInterpolator:jt,makeUpdateTextInterpolator:ur,handleSlicesExit:ar,hasTransition:L,strTransform:Cr}):y.remove()}}}),o5=Ye({"src/traces/treemap/draw.js"(X,H){"use strict";var g=_n(),x=$v(),A=wp(),M=A.clearMinTextSize,e=Nd().resizeText,t=sN();H.exports=function(o,a,i,n,s){var c=s.type,h=s.drawDescendants,v=o._fullLayout,p=v["_"+c+"layer"],T,l,_=!i;if(M(c,v),T=p.selectAll("g.trace."+c).data(a,function(S){return S[0].trace.uid}),T.enter().append("g").classed("trace",!0).classed(c,!0),T.order(),!v.uniformtext.mode&&x.hasTransition(i)){n&&(l=n());var w=g.transition().duration(i.duration).ease(i.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});w.each(function(){p.selectAll("g.trace").each(function(S){t(o,S,this,i,h)})})}else T.each(function(S){t(o,S,this,i,h)}),v.uniformtext.mode&&e(o,p.selectAll(".trace"),c);_&&T.exit().remove()}}}),lN=Ye({"src/traces/treemap/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=n5(),t=J3().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=!U&&!O.marker.pad.t||U&&!O.marker.pad.b,Q=e(v,[l,_],{packing:O.tiling.packing,squarifyratio:O.tiling.squarifyratio,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,pad:{inner:O.tiling.pad,top:O.marker.pad.t,left:O.marker.pad.l,right:O.marker.pad.r,bottom:O.marker.pad.b}}),ue=Q.descendants(),se=1/0,he=-1/0;ue.forEach(function(re){var ne=re.depth;ne>=O._maxDepth?(re.x0=re.x1=(re.x0+re.x1)/2,re.y0=re.y1=(re.y0+re.y1)/2):(se=Math.min(se,ne),he=Math.max(he,ne))}),p=p.data(ue,o.getPtId),O._maxVisibleLayers=isFinite(he)?he-se+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var G=null;if(d&&P){var $=o.getPtId(P);p.each(function(re){G===null&&o.getPtId(re)===$&&(G={x0:re.x0,x1:re.x1,y0:re.y0,y1:re.y1})})}var J=function(){return G||{x0:0,x1:l,y0:0,y1:_}},Z=p;return d&&(Z=Z.transition().each("end",function(){var re=g.select(this);o.setSliceCursor(re,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),Z.each(function(re){var ne=o.isHeader(re,O);re._x0=w(re.x0),re._x1=w(re.x1),re._y0=S(re.y0),re._y1=S(re.y1),re._hoverX=w(re.x1-O.marker.pad.r),re._hoverY=S(U?re.y1-O.marker.pad.b/2:re.y0+O.marker.pad.t/2);var j=g.select(this),ee=x.ensureSingle(j,"path","surface",function(Ie){Ie.style("pointer-events",z?"none":"all")});d?ee.transition().attrTween("d",function(Ie){var Ze=y(Ie,n,J(),[l,_]);return function(at){return E(Ze(at))}}):ee.attr("d",E),j.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ee.call(t,re,O,c,{hovered:!1}),re.x0===re.x1||re.y0===re.y1?re._text="":ne?re._text=W?"":o.getPtLabel(re)||"":re._text=i(re,v,O,h,F)||"";var ie=x.ensureSingle(j,"g","slicetext"),fe=x.ensureSingle(ie,"text","",function(Ie){Ie.attr("data-notex",1)}),be=x.ensureUniformFontSize(c,o.determineTextFont(O,re,F.font)),Ae=re._text||" ",Be=ne&&Ae.indexOf("<br>")===-1;fe.text(Ae).classed("slicetext",!0).attr("text-anchor",N?"end":I||Be?"start":"middle").call(A.font,be).call(M.convertToTspans,c),re.textBB=A.bBox(fe.node()),re.transform=m(re,{fontSize:be.size,isHeader:ne}),re.transform.fontSize=be.size,d?fe.transition().attrTween("transform",function(Ie){var Ze=f(Ie,n,J(),[l,_]);return function(at){return b(Ze(at))}}):fe.attr("transform",b(re))}),G}}}),uN=Ye({"src/traces/treemap/plot.js"(X,H){"use strict";var g=o5(),x=lN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"treemap",drawDescendants:x})}}}),cN=Ye({"src/traces/treemap/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"treemap",basePlotModule:aN(),categories:[],animatable:!0,attributes:K3(),layoutAttributes:r5(),supplyDefaults:iN(),supplyLayoutDefaults:nN(),calc:a5().calc,crossTraceCalc:a5().crossTraceCalc,plot:uN(),style:J3().style,colorbar:cp(),meta:{}}}}),fN=Ye({"lib/treemap.js"(X,H){"use strict";H.exports=cN()}}),hN=Ye({"src/traces/icicle/base_plot.js"(X){"use strict";var H=Gu();X.name="icicle",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),s5=Ye({"src/traces/icicle/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=K3(),o=h0(),a=Oo().extendFlat,i=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:r.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:a({colors:t.marker.colors,line:t.marker.line,pattern:i,editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),leaf:t.leaf,pathbar:r.pathbar,text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:o.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:o.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:r.outsidetextfont,textposition:r.textposition,sort:e.sort,root:t.root,domain:M({name:"icicle",trace:!0,editType:"calc"})}}}),l5=Ye({"src/traces/icicle/layout_attributes.js"(X,H){"use strict";H.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),pN=Ye({"src/traces/icicle/defaults.js"(X,H){"use strict";var g=ta(),x=s5(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(b,d){return g.coerce(s,c,x,b,d)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth"),p("tiling.orientation"),p("tiling.flip"),p("tiling.pad");var w=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(w)?"text+label":"label"),p("hovertext"),p("hovertemplate");var S=p("pathbar.visible"),E="auto";e(s,c,v,p,E,{hasPathbar:S,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition"),r(s,c,v,p);var m=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;m&&i(s,c,v,p,{prefix:"marker.",cLetter:"c"}),p("leaf.opacity",m?1:.7),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},S&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),dN=Ye({"src/traces/icicle/layout_defaults.js"(X,H){"use strict";var g=ta(),x=l5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("iciclecolorway",e.colorway),t("extendiciclecolors")}}}),u5=Ye({"src/traces/icicle/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("icicle",g)}}}),vN=Ye({"src/traces/icicle/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(M,e,t){var r=t.flipX,o=t.flipY,a=t.orientation==="h",i=t.maxDepth,n=e[0],s=e[1];i&&(n=(M.height+1)*e[0]/Math.min(M.height+1,i),s=(M.height+1)*e[1]/Math.min(M.height+1,i));var c=g.partition().padding(t.pad.inner).size(a?[e[1],n]:[e[0],s])(M);return(a||r||o)&&x(c,e,{swapXY:a,flipX:r,flipY:o}),c}}}),c5=Ye({"src/traces/icicle/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._iciclelayer.selectAll(".trace");M(o,a,"icicle"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),mN=Ye({"src/traces/icicle/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=vN(),t=c5().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=e(v,[l,_],{flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,orientation:O.tiling.orientation,pad:{inner:O.tiling.pad},maxDepth:O._maxDepth}),Q=W.descendants(),ue=1/0,se=-1/0;Q.forEach(function(Z){var re=Z.depth;re>=O._maxDepth?(Z.x0=Z.x1=(Z.x0+Z.x1)/2,Z.y0=Z.y1=(Z.y0+Z.y1)/2):(ue=Math.min(ue,re),se=Math.max(se,re))}),p=p.data(Q,o.getPtId),O._maxVisibleLayers=isFinite(se)?se-ue+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var he=null;if(d&&P){var G=o.getPtId(P);p.each(function(Z){he===null&&o.getPtId(Z)===G&&(he={x0:Z.x0,x1:Z.x1,y0:Z.y0,y1:Z.y1})})}var $=function(){return he||{x0:0,x1:l,y0:0,y1:_}},J=p;return d&&(J=J.transition().each("end",function(){var Z=g.select(this);o.setSliceCursor(Z,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),J.each(function(Z){Z._x0=w(Z.x0),Z._x1=w(Z.x1),Z._y0=S(Z.y0),Z._y1=S(Z.y1),Z._hoverX=w(Z.x1-O.tiling.pad),Z._hoverY=S(U?Z.y1-O.tiling.pad/2:Z.y0+O.tiling.pad/2);var re=g.select(this),ne=x.ensureSingle(re,"path","surface",function(fe){fe.style("pointer-events",z?"none":"all")});d?ne.transition().attrTween("d",function(fe){var be=y(fe,n,$(),[l,_],{orientation:O.tiling.orientation,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1});return function(Ae){return E(be(Ae))}}):ne.attr("d",E),re.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ne.call(t,Z,O,c,{hovered:!1}),Z.x0===Z.x1||Z.y0===Z.y1?Z._text="":Z._text=i(Z,v,O,h,F)||"";var j=x.ensureSingle(re,"g","slicetext"),ee=x.ensureSingle(j,"text","",function(fe){fe.attr("data-notex",1)}),ie=x.ensureUniformFontSize(c,o.determineTextFont(O,Z,F.font));ee.text(Z._text||" ").classed("slicetext",!0).attr("text-anchor",N?"end":I?"start":"middle").call(A.font,ie).call(M.convertToTspans,c),Z.textBB=A.bBox(ee.node()),Z.transform=m(Z,{fontSize:ie.size}),Z.transform.fontSize=ie.size,d?ee.transition().attrTween("transform",function(fe){var be=f(fe,n,$(),[l,_]);return function(Ae){return b(be(Ae))}}):ee.attr("transform",b(Z))}),he}}}),gN=Ye({"src/traces/icicle/plot.js"(X,H){"use strict";var g=o5(),x=mN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"icicle",drawDescendants:x})}}}),yN=Ye({"src/traces/icicle/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"icicle",basePlotModule:hN(),categories:[],animatable:!0,attributes:s5(),layoutAttributes:l5(),supplyDefaults:pN(),supplyLayoutDefaults:dN(),calc:u5().calc,crossTraceCalc:u5().crossTraceCalc,plot:gN(),style:c5().style,colorbar:cp(),meta:{}}}}),_N=Ye({"lib/icicle.js"(X,H){"use strict";H.exports=yN()}}),xN=Ye({"src/traces/funnelarea/base_plot.js"(X){"use strict";var H=Gu();X.name="funnelarea",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),f5=Ye({"src/traces/funnelarea/attributes.js"(X,H){"use strict";var g=i0(),x=Pl(),A=Wu().attributes,M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=Oo().extendFlat;H.exports={labels:g.labels,label0:g.label0,dlabel:g.dlabel,values:g.values,marker:{colors:g.marker.colors,line:{color:t({},g.marker.line.color,{dflt:null}),width:t({},g.marker.line.width,{dflt:1}),editType:"calc"},pattern:g.marker.pattern,editType:"calc"},text:g.text,hovertext:g.hovertext,scalegroup:t({},g.scalegroup,{}),textinfo:t({},g.textinfo,{flags:["label","text","value","percent"]}),texttemplate:e({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:t({},x.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:M({},{keys:["label","color","value","text","percent"]}),textposition:t({},g.textposition,{values:["inside","none"],dflt:"inside"}),textfont:g.textfont,insidetextfont:g.insidetextfont,title:{text:g.title.text,font:g.title.font,position:t({},g.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:A({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}}}),h5=Ye({"src/traces/funnelarea/layout_attributes.js"(X,H){"use strict";var g=y3().hiddenlabels;H.exports={hiddenlabels:g,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),bN=Ye({"src/traces/funnelarea/defaults.js"(X,H){"use strict";var g=ta(),x=f5(),A=Wu().defaults,M=gd().handleText,e=n0().handleLabelsAndValues,t=n0().handleMarkerDefaults;H.exports=function(o,a,i,n){function s(E,m){return g.coerce(o,a,x,E,m)}var c=s("labels"),h=s("values"),v=e(c,h),p=v.len;if(a._hasLabels=v.hasLabels,a._hasValues=v.hasValues,!a._hasLabels&&a._hasValues&&(s("label0"),s("dlabel")),!p){a.visible=!1;return}a._length=p,t(o,a,n,s),s("scalegroup");var T=s("text"),l=s("texttemplate"),_;if(l||(_=s("textinfo",Array.isArray(T)?"text+percent":"percent")),s("hovertext"),s("hovertemplate"),l||_&&_!=="none"){var w=s("textposition");M(o,a,n,s,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else _==="none"&&s("textposition","none");A(a,n,s);var S=s("title.text");S&&(s("title.position"),g.coerceFont(s,"title.font",n.font)),s("aspectratio"),s("baseratio")}}}),wN=Ye({"src/traces/funnelarea/layout_defaults.js"(X,H){"use strict";var g=ta(),x=h5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("funnelareacolorway",e.colorway),t("extendfunnelareacolors")}}}),p5=Ye({"src/traces/funnelarea/calc.js"(X,H){"use strict";var g=y1();function x(M,e){return g.calc(M,e)}function A(M){g.crossTraceCalc(M,{type:"funnelarea"})}H.exports={calc:x,crossTraceCalc:A}}}),TN=Ye({"src/traces/funnelarea/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=ta(),M=A.strScale,e=A.strTranslate,t=jl(),r=e0(),o=r.toMoveInsideBar,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=eg(),c=_3(),h=c.attachFxHandlers,v=c.determineInsideTextFont,p=c.layoutAreas,T=c.prerenderTitles,l=c.positionTitleOutside,_=c.formatSliceLabel;H.exports=function(b,d){var u=b._context.staticPlot,y=b._fullLayout;n("funnelarea",y),T(d,b),p(d,y._size),A.makeTraceGroups(y._funnelarealayer,d,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace;E(f),P.each(function(){var F=g.select(this).selectAll("g.slice").data(f);F.enter().append("g").classed("slice",!0),F.exit().remove(),F.each(function(O,I){if(O.hidden){g.select(this).selectAll("path,g").remove();return}O.pointNumber=O.i,O.curveNumber=z.index;var N=L.cx,U=L.cy,W=g.select(this),Q=W.selectAll("path.surface").data([O]);Q.enter().append("path").classed("surface",!0).style({"pointer-events":u?"none":"all"}),W.call(h,b,f);var ue="M"+(N+O.TR[0])+","+(U+O.TR[1])+w(O.TR,O.BR)+w(O.BR,O.BL)+w(O.BL,O.TL)+"Z";Q.attr("d",ue),_(b,O,L);var se=s.castOption(z.textposition,O.pts),he=W.selectAll("g.slicetext").data(O.text&&se!=="none"?[0]:[]);he.enter().append("g").classed("slicetext",!0),he.exit().remove(),he.each(function(){var G=A.ensureSingle(g.select(this),"text","",function(ie){ie.attr("data-notex",1)}),$=A.ensureUniformFontSize(b,v(z,O,y.font));G.text(O.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(x.font,$).call(t.convertToTspans,b);var J=x.bBox(G.node()),Z,re,ne,j=Math.min(O.BL[1],O.BR[1])+U,ee=Math.max(O.TL[1],O.TR[1])+U;re=Math.max(O.TL[0],O.BL[0])+N,ne=Math.min(O.TR[0],O.BR[0])+N,Z=o(re,ne,j,ee,J,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),Z.fontSize=$.size,i(z.type,Z,y),f[I].transform=Z,A.setTransormAndDisplay(G,Z)})});var B=g.select(this).selectAll("g.titletext").data(z.title.text?[0]:[]);B.enter().append("g").classed("titletext",!0),B.exit().remove(),B.each(function(){var O=A.ensureSingle(g.select(this),"text","",function(U){U.attr("data-notex",1)}),I=z.title.text;z._meta&&(I=A.templateString(I,z._meta)),O.text(I).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(x.font,z.title.font).call(t.convertToTspans,b);var N=l(L,y._size);O.attr("transform",e(N.x,N.y)+M(Math.min(1,N.scale))+e(N.tx,N.ty))})})})};function w(m,b){var d=b[0]-m[0],u=b[1]-m[1];return"l"+d+","+u}function S(m,b){return[.5*(m[0]+b[0]),.5*(m[1]+b[1])]}function E(m){if(!m.length)return;var b=m[0],d=b.trace,u=d.aspectratio,y=d.baseratio;y>.999&&(y=.999);var f=Math.pow(y,2),P=b.vTotal,L=P*f/(1-f),z=P,F=L/P;function B(){var fe=Math.sqrt(F);return{x:fe,y:-fe}}function O(){var fe=B();return[fe.x,fe.y]}var I,N=[];N.push(O());var U,W;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){var Q=W.v/z;F+=Q,N.push(O())}var ue=1/0,se=-1/0;for(U=0;U<N.length;U++)I=N[U],ue=Math.min(ue,I[1]),se=Math.max(se,I[1]);for(U=0;U<N.length;U++)N[U][1]-=(se+ue)/2;var he=N[N.length-1][0],G=b.r,$=(se-ue)/2,J=G/he,Z=G/$*u;for(b.r=Z*$,U=0;U<N.length;U++)N[U][0]*=J,N[U][1]*=Z;I=N[0];var re=[-I[0],I[1]],ne=[I[0],I[1]],j=0;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){j+=1;var ee=N[j][0],ie=N[j][1];W.TL=[-ee,ie],W.TR=[ee,ie],W.BL=re,W.BR=ne,W.pxmid=S(W.TR,W.BR),re=W.TL,ne=W.TR}}}}),AN=Ye({"src/traces/funnelarea/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");A(e,t,"funnelarea"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),SN=Ye({"src/traces/funnelarea/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"funnelarea",basePlotModule:xN(),categories:["pie-like","funnelarea","showLegend"],attributes:f5(),layoutAttributes:h5(),supplyDefaults:bN(),supplyLayoutDefaults:wN(),calc:p5().calc,crossTraceCalc:p5().crossTraceCalc,plot:TN(),style:AN(),styleOne:a1(),meta:{}}}}),MN=Ye({"lib/funnelarea.js"(X,H){"use strict";H.exports=SN()}}),Gh=Ye({"stackgl_modules/index.js"(X,H){(function(){var g={1964:function(e,t,r){e.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot3d:r(4100),gl_scatter3d:r(8418),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(e,t,r){"use strict";var o;function a(ke,Te){if(!(ke instanceof Te))throw new TypeError("Cannot call a class as a function")}function i(ke,Te){for(var Le=0;Le<Te.length;Le++){var rt=Te[Le];rt.enumerable=rt.enumerable||!1,rt.configurable=!0,"value"in rt&&(rt.writable=!0),Object.defineProperty(ke,s(rt.key),rt)}}function n(ke,Te,Le){return Te&&i(ke.prototype,Te),Le&&i(ke,Le),Object.defineProperty(ke,"prototype",{writable:!1}),ke}function s(ke){var Te=c(ke,"string");return S(Te)=="symbol"?Te:Te+""}function c(ke,Te){if(S(ke)!="object"||!ke)return ke;var Le=ke[Symbol.toPrimitive];if(Le!==void 0){var rt=Le.call(ke,Te||"default");if(S(rt)!="object")return rt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Te==="string"?String:Number)(ke)}function h(ke,Te,Le){return Te=l(Te),v(ke,T()?Reflect.construct(Te,Le||[],l(ke).constructor):Te.apply(ke,Le))}function v(ke,Te){if(Te&&(S(Te)=="object"||typeof Te=="function"))return Te;if(Te!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return p(ke)}function p(ke){if(ke===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ke}function T(){try{var ke=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(T=function(){return!!ke})()}function l(ke){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Te){return Te.__proto__||Object.getPrototypeOf(Te)},l(ke)}function _(ke,Te){if(typeof Te!="function"&&Te!==null)throw new TypeError("Super expression must either be null or a function");ke.prototype=Object.create(Te&&Te.prototype,{constructor:{value:ke,writable:!0,configurable:!0}}),Object.defineProperty(ke,"prototype",{writable:!1}),Te&&w(ke,Te)}function w(ke,Te){return w=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Le,rt){return Le.__proto__=rt,Le},w(ke,Te)}function S(ke){"@babel/helpers - typeof";return S=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Te){return typeof Te}:function(Te){return Te&&typeof Symbol=="function"&&Te.constructor===Symbol&&Te!==Symbol.prototype?"symbol":typeof Te},S(ke)}var E=r(7507),m=r(3778),b=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.hp=f,o=Q,t.IS=50;var d=2147483647;o=d,f.TYPED_ARRAY_SUPPORT=u(),!f.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function u(){try{var ke=new Uint8Array(1),Te={foo:function(){return 42}};return Object.setPrototypeOf(Te,Uint8Array.prototype),Object.setPrototypeOf(ke,Te),ke.foo()===42}catch{return!1}}Object.defineProperty(f.prototype,"parent",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.buffer}}),Object.defineProperty(f.prototype,"offset",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.byteOffset}});function y(ke){if(ke>d)throw new RangeError('The value "'+ke+'" is invalid for option "size"');var Te=new Uint8Array(ke);return Object.setPrototypeOf(Te,f.prototype),Te}function f(ke,Te,Le){if(typeof ke=="number"){if(typeof Te=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return F(ke)}return P(ke,Te,Le)}f.poolSize=8192;function P(ke,Te,Le){if(typeof ke=="string")return B(ke,Te);if(ArrayBuffer.isView(ke))return I(ke);if(ke==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke));if(Fe(ke,ArrayBuffer)||ke&&Fe(ke.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Fe(ke,SharedArrayBuffer)||ke&&Fe(ke.buffer,SharedArrayBuffer)))return N(ke,Te,Le);if(typeof ke=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var rt=ke.valueOf&&ke.valueOf();if(rt!=null&&rt!==ke)return f.from(rt,Te,Le);var dt=U(ke);if(dt)return dt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof ke[Symbol.toPrimitive]=="function")return f.from(ke[Symbol.toPrimitive]("string"),Te,Le);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke))}f.from=function(ke,Te,Le){return P(ke,Te,Le)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array);function L(ke){if(typeof ke!="number")throw new TypeError('"size" argument must be of type number');if(ke<0)throw new RangeError('The value "'+ke+'" is invalid for option "size"')}function z(ke,Te,Le){return L(ke),ke<=0?y(ke):Te!==void 0?typeof Le=="string"?y(ke).fill(Te,Le):y(ke).fill(Te):y(ke)}f.alloc=function(ke,Te,Le){return z(ke,Te,Le)};function F(ke){return L(ke),y(ke<0?0:W(ke)|0)}f.allocUnsafe=function(ke){return F(ke)},f.allocUnsafeSlow=function(ke){return F(ke)};function B(ke,Te){if((typeof Te!="string"||Te==="")&&(Te="utf8"),!f.isEncoding(Te))throw new TypeError("Unknown encoding: "+Te);var Le=ue(ke,Te)|0,rt=y(Le),dt=rt.write(ke,Te);return dt!==Le&&(rt=rt.slice(0,dt)),rt}function O(ke){for(var Te=ke.length<0?0:W(ke.length)|0,Le=y(Te),rt=0;rt<Te;rt+=1)Le[rt]=ke[rt]&255;return Le}function I(ke){if(Fe(ke,Uint8Array)){var Te=new Uint8Array(ke);return N(Te.buffer,Te.byteOffset,Te.byteLength)}return O(ke)}function N(ke,Te,Le){if(Te<0||ke.byteLength<Te)throw new RangeError('"offset" is outside of buffer bounds');if(ke.byteLength<Te+(Le||0))throw new RangeError('"length" is outside of buffer bounds');var rt;return Te===void 0&&Le===void 0?rt=new Uint8Array(ke):Le===void 0?rt=new Uint8Array(ke,Te):rt=new Uint8Array(ke,Te,Le),Object.setPrototypeOf(rt,f.prototype),rt}function U(ke){if(f.isBuffer(ke)){var Te=W(ke.length)|0,Le=y(Te);return Le.length===0||ke.copy(Le,0,0,Te),Le}if(ke.length!==void 0)return typeof ke.length!="number"||Ke(ke.length)?y(0):O(ke);if(ke.type==="Buffer"&&Array.isArray(ke.data))return O(ke.data)}function W(ke){if(ke>=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return ke|0}function Q(ke){return+ke!=ke&&(ke=0),f.alloc(+ke)}f.isBuffer=function(Te){return Te!=null&&Te._isBuffer===!0&&Te!==f.prototype},f.compare=function(Te,Le){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),Fe(Le,Uint8Array)&&(Le=f.from(Le,Le.offset,Le.byteLength)),!f.isBuffer(Te)||!f.isBuffer(Le))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(Te===Le)return 0;for(var rt=Te.length,dt=Le.length,xt=0,It=Math.min(rt,dt);xt<It;++xt)if(Te[xt]!==Le[xt]){rt=Te[xt],dt=Le[xt];break}return rt<dt?-1:dt<rt?1:0},f.isEncoding=function(Te){switch(String(Te).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},f.concat=function(Te,Le){if(!Array.isArray(Te))throw new TypeError('"list" argument must be an Array of Buffers');if(Te.length===0)return f.alloc(0);var rt;if(Le===void 0)for(Le=0,rt=0;rt<Te.length;++rt)Le+=Te[rt].length;var dt=f.allocUnsafe(Le),xt=0;for(rt=0;rt<Te.length;++rt){var It=Te[rt];if(Fe(It,Uint8Array))xt+It.length>dt.length?(f.isBuffer(It)||(It=f.from(It)),It.copy(dt,xt)):Uint8Array.prototype.set.call(dt,It,xt);else if(f.isBuffer(It))It.copy(dt,xt);else throw new TypeError('"list" argument must be an Array of Buffers');xt+=It.length}return dt};function ue(ke,Te){if(f.isBuffer(ke))return ke.length;if(ArrayBuffer.isView(ke)||Fe(ke,ArrayBuffer))return ke.byteLength;if(typeof ke!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(ke));var Le=ke.length,rt=arguments.length>2&&arguments[2]===!0;if(!rt&&Le===0)return 0;for(var dt=!1;;)switch(Te){case"ascii":case"latin1":case"binary":return Le;case"utf8":case"utf-8":return ar(ke).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Le*2;case"hex":return Le>>>1;case"base64":return _r(ke).length;default:if(dt)return rt?-1:ar(ke).length;Te=(""+Te).toLowerCase(),dt=!0}}f.byteLength=ue;function se(ke,Te,Le){var rt=!1;if((Te===void 0||Te<0)&&(Te=0),Te>this.length||((Le===void 0||Le>this.length)&&(Le=this.length),Le<=0)||(Le>>>=0,Te>>>=0,Le<=Te))return"";for(ke||(ke="utf8");;)switch(ke){case"hex":return Ie(this,Te,Le);case"utf8":case"utf-8":return ie(this,Te,Le);case"ascii":return Ae(this,Te,Le);case"latin1":case"binary":return Be(this,Te,Le);case"base64":return ee(this,Te,Le);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ze(this,Te,Le);default:if(rt)throw new TypeError("Unknown encoding: "+ke);ke=(ke+"").toLowerCase(),rt=!0}}f.prototype._isBuffer=!0;function he(ke,Te,Le){var rt=ke[Te];ke[Te]=ke[Le],ke[Le]=rt}f.prototype.swap16=function(){var Te=this.length;if(Te%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Le=0;Le<Te;Le+=2)he(this,Le,Le+1);return this},f.prototype.swap32=function(){var Te=this.length;if(Te%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var Le=0;Le<Te;Le+=4)he(this,Le,Le+3),he(this,Le+1,Le+2);return this},f.prototype.swap64=function(){var Te=this.length;if(Te%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var Le=0;Le<Te;Le+=8)he(this,Le,Le+7),he(this,Le+1,Le+6),he(this,Le+2,Le+5),he(this,Le+3,Le+4);return this},f.prototype.toString=function(){var Te=this.length;return Te===0?"":arguments.length===0?ie(this,0,Te):se.apply(this,arguments)},f.prototype.toLocaleString=f.prototype.toString,f.prototype.equals=function(Te){if(!f.isBuffer(Te))throw new TypeError("Argument must be a Buffer");return this===Te?!0:f.compare(this,Te)===0},f.prototype.inspect=function(){var Te="",Le=t.IS;return Te=this.toString("hex",0,Le).replace(/(.{2})/g,"$1 ").trim(),this.length>Le&&(Te+=" ... "),"<Buffer "+Te+">"},b&&(f.prototype[b]=f.prototype.inspect),f.prototype.compare=function(Te,Le,rt,dt,xt){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),!f.isBuffer(Te))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(Te));if(Le===void 0&&(Le=0),rt===void 0&&(rt=Te?Te.length:0),dt===void 0&&(dt=0),xt===void 0&&(xt=this.length),Le<0||rt>Te.length||dt<0||xt>this.length)throw new RangeError("out of range index");if(dt>=xt&&Le>=rt)return 0;if(dt>=xt)return-1;if(Le>=rt)return 1;if(Le>>>=0,rt>>>=0,dt>>>=0,xt>>>=0,this===Te)return 0;for(var It=xt-dt,Bt=rt-Le,Gt=Math.min(It,Bt),Kt=this.slice(dt,xt),sr=Te.slice(Le,rt),sa=0;sa<Gt;++sa)if(Kt[sa]!==sr[sa]){It=Kt[sa],Bt=sr[sa];break}return It<Bt?-1:Bt<It?1:0};function G(ke,Te,Le,rt,dt){if(ke.length===0)return-1;if(typeof Le=="string"?(rt=Le,Le=0):Le>2147483647?Le=2147483647:Le<-2147483648&&(Le=-2147483648),Le=+Le,Ke(Le)&&(Le=dt?0:ke.length-1),Le<0&&(Le=ke.length+Le),Le>=ke.length){if(dt)return-1;Le=ke.length-1}else if(Le<0)if(dt)Le=0;else return-1;if(typeof Te=="string"&&(Te=f.from(Te,rt)),f.isBuffer(Te))return Te.length===0?-1:$(ke,Te,Le,rt,dt);if(typeof Te=="number")return Te=Te&255,typeof Uint8Array.prototype.indexOf=="function"?dt?Uint8Array.prototype.indexOf.call(ke,Te,Le):Uint8Array.prototype.lastIndexOf.call(ke,Te,Le):$(ke,[Te],Le,rt,dt);throw new TypeError("val must be string, number or Buffer")}function $(ke,Te,Le,rt,dt){var xt=1,It=ke.length,Bt=Te.length;if(rt!==void 0&&(rt=String(rt).toLowerCase(),rt==="ucs2"||rt==="ucs-2"||rt==="utf16le"||rt==="utf-16le")){if(ke.length<2||Te.length<2)return-1;xt=2,It/=2,Bt/=2,Le/=2}function Gt(La,ka){return xt===1?La[ka]:La.readUInt16BE(ka*xt)}var Kt;if(dt){var sr=-1;for(Kt=Le;Kt<It;Kt++)if(Gt(ke,Kt)===Gt(Te,sr===-1?0:Kt-sr)){if(sr===-1&&(sr=Kt),Kt-sr+1===Bt)return sr*xt}else sr!==-1&&(Kt-=Kt-sr),sr=-1}else for(Le+Bt>It&&(Le=It-Bt),Kt=Le;Kt>=0;Kt--){for(var sa=!0,Aa=0;Aa<Bt;Aa++)if(Gt(ke,Kt+Aa)!==Gt(Te,Aa)){sa=!1;break}if(sa)return Kt}return-1}f.prototype.includes=function(Te,Le,rt){return this.indexOf(Te,Le,rt)!==-1},f.prototype.indexOf=function(Te,Le,rt){return G(this,Te,Le,rt,!0)},f.prototype.lastIndexOf=function(Te,Le,rt){return G(this,Te,Le,rt,!1)};function J(ke,Te,Le,rt){Le=Number(Le)||0;var dt=ke.length-Le;rt?(rt=Number(rt),rt>dt&&(rt=dt)):rt=dt;var xt=Te.length;rt>xt/2&&(rt=xt/2);var It;for(It=0;It<rt;++It){var Bt=parseInt(Te.substr(It*2,2),16);if(Ke(Bt))return It;ke[Le+It]=Bt}return It}function Z(ke,Te,Le,rt){return yt(ar(Te,ke.length-Le),ke,Le,rt)}function re(ke,Te,Le,rt){return yt(Cr(Te),ke,Le,rt)}function ne(ke,Te,Le,rt){return yt(_r(Te),ke,Le,rt)}function j(ke,Te,Le,rt){return yt(vr(Te,ke.length-Le),ke,Le,rt)}f.prototype.write=function(Te,Le,rt,dt){if(Le===void 0)dt="utf8",rt=this.length,Le=0;else if(rt===void 0&&typeof Le=="string")dt=Le,rt=this.length,Le=0;else if(isFinite(Le))Le=Le>>>0,isFinite(rt)?(rt=rt>>>0,dt===void 0&&(dt="utf8")):(dt=rt,rt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var xt=this.length-Le;if((rt===void 0||rt>xt)&&(rt=xt),Te.length>0&&(rt<0||Le<0)||Le>this.length)throw new RangeError("Attempt to write outside buffer bounds");dt||(dt="utf8");for(var It=!1;;)switch(dt){case"hex":return J(this,Te,Le,rt);case"utf8":case"utf-8":return Z(this,Te,Le,rt);case"ascii":case"latin1":case"binary":return re(this,Te,Le,rt);case"base64":return ne(this,Te,Le,rt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,Te,Le,rt);default:if(It)throw new TypeError("Unknown encoding: "+dt);dt=(""+dt).toLowerCase(),It=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(ke,Te,Le){return Te===0&&Le===ke.length?E.fromByteArray(ke):E.fromByteArray(ke.slice(Te,Le))}function ie(ke,Te,Le){Le=Math.min(ke.length,Le);for(var rt=[],dt=Te;dt<Le;){var xt=ke[dt],It=null,Bt=xt>239?4:xt>223?3:xt>191?2:1;if(dt+Bt<=Le){var Gt=void 0,Kt=void 0,sr=void 0,sa=void 0;switch(Bt){case 1:xt<128&&(It=xt);break;case 2:Gt=ke[dt+1],(Gt&192)===128&&(sa=(xt&31)<<6|Gt&63,sa>127&&(It=sa));break;case 3:Gt=ke[dt+1],Kt=ke[dt+2],(Gt&192)===128&&(Kt&192)===128&&(sa=(xt&15)<<12|(Gt&63)<<6|Kt&63,sa>2047&&(sa<55296||sa>57343)&&(It=sa));break;case 4:Gt=ke[dt+1],Kt=ke[dt+2],sr=ke[dt+3],(Gt&192)===128&&(Kt&192)===128&&(sr&192)===128&&(sa=(xt&15)<<18|(Gt&63)<<12|(Kt&63)<<6|sr&63,sa>65535&&sa<1114112&&(It=sa))}}It===null?(It=65533,Bt=1):It>65535&&(It-=65536,rt.push(It>>>10&1023|55296),It=56320|It&1023),rt.push(It),dt+=Bt}return be(rt)}var fe=4096;function be(ke){var Te=ke.length;if(Te<=fe)return String.fromCharCode.apply(String,ke);for(var Le="",rt=0;rt<Te;)Le+=String.fromCharCode.apply(String,ke.slice(rt,rt+=fe));return Le}function Ae(ke,Te,Le){var rt="";Le=Math.min(ke.length,Le);for(var dt=Te;dt<Le;++dt)rt+=String.fromCharCode(ke[dt]&127);return rt}function Be(ke,Te,Le){var rt="";Le=Math.min(ke.length,Le);for(var dt=Te;dt<Le;++dt)rt+=String.fromCharCode(ke[dt]);return rt}function Ie(ke,Te,Le){var rt=ke.length;(!Te||Te<0)&&(Te=0),(!Le||Le<0||Le>rt)&&(Le=rt);for(var dt="",xt=Te;xt<Le;++xt)dt+=Ne[ke[xt]];return dt}function Ze(ke,Te,Le){for(var rt=ke.slice(Te,Le),dt="",xt=0;xt<rt.length-1;xt+=2)dt+=String.fromCharCode(rt[xt]+rt[xt+1]*256);return dt}f.prototype.slice=function(Te,Le){var rt=this.length;Te=~~Te,Le=Le===void 0?rt:~~Le,Te<0?(Te+=rt,Te<0&&(Te=0)):Te>rt&&(Te=rt),Le<0?(Le+=rt,Le<0&&(Le=0)):Le>rt&&(Le=rt),Le<Te&&(Le=Te);var dt=this.subarray(Te,Le);return Object.setPrototypeOf(dt,f.prototype),dt};function at(ke,Te,Le){if(ke%1!==0||ke<0)throw new RangeError("offset is not uint");if(ke+Te>Le)throw new RangeError("Trying to access beyond buffer length")}f.prototype.readUintLE=f.prototype.readUIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It<Le&&(xt*=256);)dt+=this[Te+It]*xt;return dt},f.prototype.readUintBE=f.prototype.readUIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te+--Le],xt=1;Le>0&&(xt*=256);)dt+=this[Te+--Le]*xt;return dt},f.prototype.readUint8=f.prototype.readUInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]|this[Te+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]<<8|this[Te+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),(this[Te]|this[Te+1]<<8|this[Te+2]<<16)+this[Te+3]*16777216},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]*16777216+(this[Te+1]<<16|this[Te+2]<<8|this[Te+3])},f.prototype.readBigUInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24),xt=this[++Te]+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+rt*Math.pow(2,24);return BigInt(dt)+(BigInt(xt)<<BigInt(32))}),f.prototype.readBigUInt64BE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te],xt=this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt;return(BigInt(dt)<<BigInt(32))+BigInt(xt)}),f.prototype.readIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It<Le&&(xt*=256);)dt+=this[Te+It]*xt;return xt*=128,dt>=xt&&(dt-=Math.pow(2,8*Le)),dt},f.prototype.readIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=Le,xt=1,It=this[Te+--dt];dt>0&&(xt*=256);)It+=this[Te+--dt]*xt;return xt*=128,It>=xt&&(It-=Math.pow(2,8*Le)),It},f.prototype.readInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]&128?(255-this[Te]+1)*-1:this[Te]},f.prototype.readInt16LE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te]|this[Te+1]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt16BE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te+1]|this[Te]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]|this[Te+1]<<8|this[Te+2]<<16|this[Te+3]<<24},f.prototype.readInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]<<24|this[Te+1]<<16|this[Te+2]<<8|this[Te+3]},f.prototype.readBigInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=this[Te+4]+this[Te+5]*Math.pow(2,8)+this[Te+6]*Math.pow(2,16)+(rt<<24);return(BigInt(dt)<<BigInt(32))+BigInt(Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24))}),f.prototype.readBigInt64BE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=(Le<<24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te];return(BigInt(dt)<<BigInt(32))+BigInt(this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt)}),f.prototype.readFloatLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!0,23,4)},f.prototype.readFloatBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!1,23,4)},f.prototype.readDoubleLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!0,52,8)},f.prototype.readDoubleBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!1,52,8)};function it(ke,Te,Le,rt,dt,xt){if(!f.isBuffer(ke))throw new TypeError('"buffer" argument must be a Buffer instance');if(Te>dt||Te<xt)throw new RangeError('"value" argument is out of bounds');if(Le+rt>ke.length)throw new RangeError("Index out of range")}f.prototype.writeUintLE=f.prototype.writeUIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=1,Bt=0;for(this[Le]=Te&255;++Bt<rt&&(It*=256);)this[Le+Bt]=Te/It&255;return Le+rt},f.prototype.writeUintBE=f.prototype.writeUIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=rt-1,Bt=1;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)this[Le+It]=Te/Bt&255;return Le+rt},f.prototype.writeUint8=f.prototype.writeUInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,255,0),this[Le]=Te&255,Le+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le+3]=Te>>>24,this[Le+2]=Te>>>16,this[Le+1]=Te>>>8,this[Le]=Te&255,Le+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4};function et(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,Le}function lt(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le+7]=xt,xt=xt>>8,ke[Le+6]=xt,xt=xt>>8,ke[Le+5]=xt,xt=xt>>8,ke[Le+4]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le+3]=It,It=It>>8,ke[Le+2]=It,It=It>>8,ke[Le+1]=It,It=It>>8,ke[Le]=It,Le+8}f.prototype.writeBigUInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeBigUInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=0,Bt=1,Gt=0;for(this[Le]=Te&255;++It<rt&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It-1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=rt-1,Bt=1,Gt=0;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It+1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,127,-128),Te<0&&(Te=255+Te+1),this[Le]=Te&255,Le+1},f.prototype.writeInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),this[Le]=Te&255,this[Le+1]=Te>>>8,this[Le+2]=Te>>>16,this[Le+3]=Te>>>24,Le+4},f.prototype.writeInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),Te<0&&(Te=4294967295+Te+1),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4},f.prototype.writeBigInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeBigInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Me(ke,Te,Le,rt,dt,xt){if(Le+rt>ke.length)throw new RangeError("Index out of range");if(Le<0)throw new RangeError("Index out of range")}function ge(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,4,34028234663852886e22,-34028234663852886e22),m.write(ke,Te,Le,rt,23,4),Le+4}f.prototype.writeFloatLE=function(Te,Le,rt){return ge(this,Te,Le,!0,rt)},f.prototype.writeFloatBE=function(Te,Le,rt){return ge(this,Te,Le,!1,rt)};function ce(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,8,17976931348623157e292,-17976931348623157e292),m.write(ke,Te,Le,rt,52,8),Le+8}f.prototype.writeDoubleLE=function(Te,Le,rt){return ce(this,Te,Le,!0,rt)},f.prototype.writeDoubleBE=function(Te,Le,rt){return ce(this,Te,Le,!1,rt)},f.prototype.copy=function(Te,Le,rt,dt){if(!f.isBuffer(Te))throw new TypeError("argument should be a Buffer");if(rt||(rt=0),!dt&&dt!==0&&(dt=this.length),Le>=Te.length&&(Le=Te.length),Le||(Le=0),dt>0&&dt<rt&&(dt=rt),dt===rt||Te.length===0||this.length===0)return 0;if(Le<0)throw new RangeError("targetStart out of bounds");if(rt<0||rt>=this.length)throw new RangeError("Index out of range");if(dt<0)throw new RangeError("sourceEnd out of bounds");dt>this.length&&(dt=this.length),Te.length-Le<dt-rt&&(dt=Te.length-Le+rt);var xt=dt-rt;return this===Te&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(Le,rt,dt):Uint8Array.prototype.set.call(Te,this.subarray(rt,dt),Le),xt},f.prototype.fill=function(Te,Le,rt,dt){if(typeof Te=="string"){if(typeof Le=="string"?(dt=Le,Le=0,rt=this.length):typeof rt=="string"&&(dt=rt,rt=this.length),dt!==void 0&&typeof dt!="string")throw new TypeError("encoding must be a string");if(typeof dt=="string"&&!f.isEncoding(dt))throw new TypeError("Unknown encoding: "+dt);if(Te.length===1){var xt=Te.charCodeAt(0);(dt==="utf8"&&xt<128||dt==="latin1")&&(Te=xt)}}else typeof Te=="number"?Te=Te&255:typeof Te=="boolean"&&(Te=Number(Te));if(Le<0||this.length<Le||this.length<rt)throw new RangeError("Out of range index");if(rt<=Le)return this;Le=Le>>>0,rt=rt===void 0?this.length:rt>>>0,Te||(Te=0);var It;if(typeof Te=="number")for(It=Le;It<rt;++It)this[It]=Te;else{var Bt=f.isBuffer(Te)?Te:f.from(Te,dt),Gt=Bt.length;if(Gt===0)throw new TypeError('The value "'+Te+'" is invalid for argument "value"');for(It=0;It<rt-Le;++It)this[It+Le]=Bt[It%Gt]}return this};var ze={};function tt(ke,Te,Le){ze[ke]=function(rt){function dt(){var xt;return a(this,dt),xt=h(this,dt),Object.defineProperty(xt,"message",{value:Te.apply(xt,arguments),writable:!0,configurable:!0}),xt.name="".concat(xt.name," [").concat(ke,"]"),xt.stack,delete xt.name,xt}return _(dt,rt),n(dt,[{key:"code",get:function(){return ke},set:function(It){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:It,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(ke,"]: ").concat(this.message)}}])}(Le)}tt("ERR_BUFFER_OUT_OF_BOUNDS",function(ke){return ke?"".concat(ke," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),tt("ERR_INVALID_ARG_TYPE",function(ke,Te){return'The "'.concat(ke,'" argument must be of type number. Received type ').concat(S(Te))},TypeError),tt("ERR_OUT_OF_RANGE",function(ke,Te,Le){var rt='The value of "'.concat(ke,'" is out of range.'),dt=Le;return Number.isInteger(Le)&&Math.abs(Le)>Math.pow(2,32)?dt=nt(String(Le)):typeof Le=="bigint"&&(dt=String(Le),(Le>Math.pow(BigInt(2),BigInt(32))||Le<-Math.pow(BigInt(2),BigInt(32)))&&(dt=nt(dt)),dt+="n"),rt+=" It must be ".concat(Te,". Received ").concat(dt),rt},RangeError);function nt(ke){for(var Te="",Le=ke.length,rt=ke[0]==="-"?1:0;Le>=rt+4;Le-=3)Te="_".concat(ke.slice(Le-3,Le)).concat(Te);return"".concat(ke.slice(0,Le)).concat(Te)}function Qe(ke,Te,Le){St(Te,"offset"),(ke[Te]===void 0||ke[Te+Le]===void 0)&&Ot(Te,ke.length-(Le+1))}function Ct(ke,Te,Le,rt,dt,xt){if(ke>Le||ke<Te){var It=typeof Te=="bigint"?"n":"",Bt;throw xt>3?Te===0||Te===BigInt(0)?Bt=">= 0".concat(It," and < 2").concat(It," ** ").concat((xt+1)*8).concat(It):Bt=">= -(2".concat(It," ** ").concat((xt+1)*8-1).concat(It,") and < 2 ** ")+"".concat((xt+1)*8-1).concat(It):Bt=">= ".concat(Te).concat(It," and <= ").concat(Le).concat(It),new ze.ERR_OUT_OF_RANGE("value",Bt,ke)}Qe(rt,dt,xt)}function St(ke,Te){if(typeof ke!="number")throw new ze.ERR_INVALID_ARG_TYPE(Te,"number",ke)}function Ot(ke,Te,Le){throw Math.floor(ke)!==ke?(St(ke,Le),new ze.ERR_OUT_OF_RANGE(Le||"offset","an integer",ke)):Te<0?new ze.ERR_BUFFER_OUT_OF_BOUNDS:new ze.ERR_OUT_OF_RANGE(Le||"offset",">= ".concat(Le?1:0," and <= ").concat(Te),ke)}var jt=/[^+/0-9A-Za-z-_]/g;function ur(ke){if(ke=ke.split("=")[0],ke=ke.trim().replace(jt,""),ke.length<2)return"";for(;ke.length%4!==0;)ke=ke+"=";return ke}function ar(ke,Te){Te=Te||1/0;for(var Le,rt=ke.length,dt=null,xt=[],It=0;It<rt;++It){if(Le=ke.charCodeAt(It),Le>55295&&Le<57344){if(!dt){if(Le>56319){(Te-=3)>-1&&xt.push(239,191,189);continue}else if(It+1===rt){(Te-=3)>-1&&xt.push(239,191,189);continue}dt=Le;continue}if(Le<56320){(Te-=3)>-1&&xt.push(239,191,189),dt=Le;continue}Le=(dt-55296<<10|Le-56320)+65536}else dt&&(Te-=3)>-1&&xt.push(239,191,189);if(dt=null,Le<128){if((Te-=1)<0)break;xt.push(Le)}else if(Le<2048){if((Te-=2)<0)break;xt.push(Le>>6|192,Le&63|128)}else if(Le<65536){if((Te-=3)<0)break;xt.push(Le>>12|224,Le>>6&63|128,Le&63|128)}else if(Le<1114112){if((Te-=4)<0)break;xt.push(Le>>18|240,Le>>12&63|128,Le>>6&63|128,Le&63|128)}else throw new Error("Invalid code point")}return xt}function Cr(ke){for(var Te=[],Le=0;Le<ke.length;++Le)Te.push(ke.charCodeAt(Le)&255);return Te}function vr(ke,Te){for(var Le,rt,dt,xt=[],It=0;It<ke.length&&!((Te-=2)<0);++It)Le=ke.charCodeAt(It),rt=Le>>8,dt=Le%256,xt.push(dt),xt.push(rt);return xt}function _r(ke){return E.toByteArray(ur(ke))}function yt(ke,Te,Le,rt){var dt;for(dt=0;dt<rt&&!(dt+Le>=Te.length||dt>=ke.length);++dt)Te[dt+Le]=ke[dt];return dt}function Fe(ke,Te){return ke instanceof Te||ke!=null&&ke.constructor!=null&&ke.constructor.name!=null&&ke.constructor.name===Te.name}function Ke(ke){return ke!==ke}var Ne=function(){for(var ke="0123456789abcdef",Te=new Array(256),Le=0;Le<16;++Le)for(var rt=Le*16,dt=0;dt<16;++dt)Te[rt+dt]=ke[Le]+ke[dt];return Te}();function Ee(ke){return typeof BigInt>"u"?Ve:ke}function Ve(){throw new Error("BigInt not supported")}},9216:function(e){"use strict";e.exports=a,e.exports.isMobile=a,e.exports.default=a;var t=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,o=/android|ipad|playbook|silk/i;function a(i){i||(i={});var n=i.ua;if(!n&&typeof navigator<"u"&&(n=navigator.userAgent),n&&n.headers&&typeof n.headers["user-agent"]=="string"&&(n=n.headers["user-agent"]),typeof n!="string")return!1;var s=t.test(n)&&!r.test(n)||!!i.tablet&&o.test(n);return!s&&i.tablet&&i.featureDetect&&navigator&&navigator.maxTouchPoints>1&&n.indexOf("Macintosh")!==-1&&n.indexOf("Safari")!==-1&&(s=!0),s}},6296:function(e,t,r){"use strict";e.exports=c;var o=r(7261),a=r(9977),i=r(1811);function n(h,v){this._controllerNames=Object.keys(h),this._controllerList=this._controllerNames.map(function(p){return h[p]}),this._mode=v,this._active=h[v],this._active||(this._mode="turntable",this._active=h.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=n.prototype;s.flush=function(h){for(var v=this._controllerList,p=0;p<v.length;++p)v[p].flush(h)},s.idle=function(h){for(var v=this._controllerList,p=0;p<v.length;++p)v[p].idle(h)},s.lookAt=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].lookAt(h,v,p,T)},s.rotate=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].rotate(h,v,p,T)},s.pan=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].pan(h,v,p,T)},s.translate=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].translate(h,v,p,T)},s.setMatrix=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setMatrix(h,v)},s.setDistanceLimits=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setDistanceLimits(h,v)},s.setDistance=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setDistance(h,v)},s.recalcMatrix=function(h){this._active.recalcMatrix(h)},s.getDistance=function(h){return this._active.getDistance(h)},s.getDistanceLimits=function(h){return this._active.getDistanceLimits(h)},s.lastT=function(){return this._active.lastT()},s.setMode=function(h){if(h!==this._mode){var v=this._controllerNames.indexOf(h);if(!(v<0)){var p=this._active,T=this._controllerList[v],l=Math.max(p.lastT(),T.lastT());p.recalcMatrix(l),T.setMatrix(l,p.computedMatrix),this._active=T,this._mode=h,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}}},s.getMode=function(){return this._mode};function c(h){h=h||{};var v=h.eye||[0,0,1],p=h.center||[0,0,0],T=h.up||[0,1,0],l=h.distanceLimits||[0,1/0],_=h.mode||"turntable",w=o(),S=a(),E=i();return w.setDistanceLimits(l[0],l[1]),w.lookAt(0,v,p,T),S.setDistanceLimits(l[0],l[1]),S.lookAt(0,v,p,T),E.setDistanceLimits(l[0],l[1]),E.lookAt(0,v,p,T),new n({turntable:w,orbit:S,matrix:E},_)}},7169:function(e,t,r){"use strict";var o=typeof WeakMap>"u"?r(1538):WeakMap,a=r(2762),i=r(8116),n=new o;function s(c){var h=n.get(c),v=h&&(h._triangleBuffer.handle||h._triangleBuffer.buffer);if(!v||!c.isBuffer(v)){var p=a(c,new Float32Array([-1,-1,-1,4,4,-1]));h=i(c,[{buffer:p,type:c.FLOAT,size:2}]),h._triangleBuffer=p,n.set(c,h)}h.bind(),c.drawArrays(c.TRIANGLES,0,3),h.unbind()}e.exports=s},1085:function(e,t,r){var o=r(1371);e.exports=a;function a(i,n,s){n=typeof n=="number"?n:1,s=s||": ";var c=i.split(/\r?\n/),h=String(c.length+n-1).length;return c.map(function(v,p){var T=p+n,l=String(T).length,_=o(T,h-l);return _+s+v}).join(`
`)}},3952:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){for(var c=new Array(s+1),h=0;h<n.length;++h)c[h]=n[h];for(var h=0;h<=n.length;++h){for(var v=n.length;v<=s;++v){for(var p=new Array(s),T=0;T<s;++T)p[T]=Math.pow(v+1-h,T);c[v]=p}var l=o.apply(void 0,c);if(l)return!0}return!1}function i(n){var s=n.length;if(s===0)return[];if(s===1)return[0];for(var c=n[0].length,h=[n[0]],v=[0],p=1;p<s;++p){if(h.push(n[p]),!a(h,c)){h.pop();continue}if(v.push(p),v.length===c+1)return v}return v}},5995:function(e,t,r){"use strict";e.exports=i;var o=r(7642),a=r(6037);function i(n,s){return o(s).filter(function(c){for(var h=new Array(c.length),v=0;v<c.length;++v)h[v]=s[c[v]];return a(h)*n<1})}},3502:function(e,t,r){e.exports=i;var o=r(5995),a=r(9127);function i(n,s){return a(o(n,s))}},6468:function(e){e.exports=function(r){return atob(r)}},2642:function(e,t,r){"use strict";e.exports=i;var o=r(727);function a(n){for(var s=0,c=0;c<n.length;++c)s+=n[c];return s}function i(n,s){for(var c=s.length,h=new Array(c+1),v=0;v<c;++v){for(var p=new Array(c+1),T=0;T<=c;++T)p[T]=n[T][v];h[v]=p}h[c]=new Array(c+1);for(var v=0;v<=c;++v)h[c][v]=1;for(var l=new Array(c+1),v=0;v<c;++v)l[v]=s[v];l[c]=1;var _=o(h,l),w=a(_[c+1]);w===0&&(w=1);for(var S=new Array(c+1),v=0;v<=c;++v)S[v]=a(_[v])/w;return S}},7507:function(e,t){"use strict";t.byteLength=h,t.toByteArray=p,t.fromByteArray=_;for(var r=[],o=[],a=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,s=i.length;n<s;++n)r[n]=i[n],o[i.charCodeAt(n)]=n;o[45]=62,o[95]=63;function c(w){var S=w.length;if(S%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var E=w.indexOf("=");E===-1&&(E=S);var m=E===S?0:4-E%4;return[E,m]}function h(w){var S=c(w),E=S[0],m=S[1];return(E+m)*3/4-m}function v(w,S,E){return(S+E)*3/4-E}function p(w){var S,E=c(w),m=E[0],b=E[1],d=new a(v(w,m,b)),u=0,y=b>0?m-4:m,f;for(f=0;f<y;f+=4)S=o[w.charCodeAt(f)]<<18|o[w.charCodeAt(f+1)]<<12|o[w.charCodeAt(f+2)]<<6|o[w.charCodeAt(f+3)],d[u++]=S>>16&255,d[u++]=S>>8&255,d[u++]=S&255;return b===2&&(S=o[w.charCodeAt(f)]<<2|o[w.charCodeAt(f+1)]>>4,d[u++]=S&255),b===1&&(S=o[w.charCodeAt(f)]<<10|o[w.charCodeAt(f+1)]<<4|o[w.charCodeAt(f+2)]>>2,d[u++]=S>>8&255,d[u++]=S&255),d}function T(w){return r[w>>18&63]+r[w>>12&63]+r[w>>6&63]+r[w&63]}function l(w,S,E){for(var m,b=[],d=S;d<E;d+=3)m=(w[d]<<16&16711680)+(w[d+1]<<8&65280)+(w[d+2]&255),b.push(T(m));return b.join("")}function _(w){for(var S,E=w.length,m=E%3,b=[],d=16383,u=0,y=E-m;u<y;u+=d)b.push(l(w,u,u+d>y?y:u+d));return m===1?(S=w[E-1],b.push(r[S>>2]+r[S<<4&63]+"==")):m===2&&(S=(w[E-2]<<8)+w[E-1],b.push(r[S>>10]+r[S>>4&63]+r[S<<2&63]+"=")),b.join("")}},3865:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).add(n[0].mul(i[1])),i[1].mul(n[1]))}},1318:function(e){"use strict";e.exports=t;function t(r,o){return r[0].mul(o[1]).cmp(o[0].mul(r[1]))}},8697:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]),i[1].mul(n[0]))}},7842:function(e,t,r){"use strict";var o=r(6330),a=r(1533),i=r(2651),n=r(6768),s=r(869),c=r(8697);e.exports=h;function h(v,p){if(o(v))return p?c(v,h(p)):[v[0].clone(),v[1].clone()];var T=0,l,_;if(a(v))l=v.clone();else if(typeof v=="string")l=n(v);else{if(v===0)return[i(0),i(1)];if(v===Math.floor(v))l=i(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),T-=256;l=i(v)}}if(o(p))l.mul(p[1]),_=p[0].clone();else if(a(p))_=p.clone();else if(typeof p=="string")_=n(p);else if(!p)_=i(1);else if(p===Math.floor(p))_=i(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),T+=256;_=i(p)}return T>0?l=l.ushln(T):T<0&&(_=_.ushln(-T)),s(l,_)}},6330:function(e,t,r){"use strict";var o=r(1533);e.exports=a;function a(i){return Array.isArray(i)&&i.length===2&&o(i[0])&&o(i[1])}},5716:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i.cmp(new o(0))}},1369:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){var n=i.length,s=i.words,c=0;if(n===1)c=s[0];else if(n===2)c=s[0]+s[1]*67108864;else for(var h=0;h<n;h++){var v=s[h];c+=v*Math.pow(67108864,h)}return o(i)*c}},4025:function(e,t,r){"use strict";var o=r(2361),a=r(8828).countTrailingZeros;e.exports=i;function i(n){var s=a(o.lo(n));if(s<32)return s;var c=a(o.hi(n));return c>20?52:c+32}},1533:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i&&typeof i=="object"&&!!i.words}},2651:function(e,t,r){"use strict";var o=r(6859),a=r(2361);e.exports=i;function i(n){var s=a.exponent(n);return s<52?new o(n):new o(n*Math.pow(2,52-s)).ushln(s-52)}},869:function(e,t,r){"use strict";var o=r(2651),a=r(5716);e.exports=i;function i(n,s){var c=a(n),h=a(s);if(c===0)return[o(0),o(1)];if(h===0)return[o(0),o(0)];h<0&&(n=n.neg(),s=s.neg());var v=n.gcd(s);return v.cmpn(1)?[n.div(v),s.div(v)]:[n,s]}},6768:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return new o(i)}},6504:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[0]),i[1].mul(n[1]))}},7721:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){return o(i[0])*o(i[1])}},5572:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).sub(i[1].mul(n[0])),i[1].mul(n[1]))}},946:function(e,t,r){"use strict";var o=r(1369),a=r(4025);e.exports=i;function i(n){var s=n[0],c=n[1];if(s.cmpn(0)===0)return 0;var h=s.abs().divmod(c.abs()),v=h.div,p=o(v),T=h.mod,l=s.negative!==c.negative?-1:1;if(T.cmpn(0)===0)return l*p;if(p){var _=a(p)+4,w=o(T.ushln(_).divRound(c));return l*(p+w*Math.pow(2,-_))}else{var S=c.bitLength()-T.bitLength()+53,w=o(T.ushln(S).divRound(c));return S<1023?l*w*Math.pow(2,-S):(w*=Math.pow(2,-1023),l*w*Math.pow(2,1023-S))}}},2478:function(e){"use strict";function t(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>=0?(T=l,p=l-1):v=l+1}return T}function r(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>0?(T=l,p=l-1):v=l+1}return T}function o(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<0?(T=l,v=l+1):p=l-1}return T}function a(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<=0?(T=l,v=l+1):p=l-1}return T}function i(s,c,h,v,p){for(;v<=p;){var T=v+p>>>1,l=s[T],_=h!==void 0?h(l,c):l-c;if(_===0)return T;_<=0?v=T+1:p=T-1}return-1}function n(s,c,h,v,p,T){return typeof h=="function"?T(s,c,h,v===void 0?0:v|0,p===void 0?s.length-1:p|0):T(s,c,void 0,h===void 0?0:h|0,v===void 0?s.length-1:v|0)}e.exports={ge:function(s,c,h,v,p){return n(s,c,h,v,p,t)},gt:function(s,c,h,v,p){return n(s,c,h,v,p,r)},lt:function(s,c,h,v,p){return n(s,c,h,v,p,o)},le:function(s,c,h,v,p){return n(s,c,h,v,p,a)},eq:function(s,c,h,v,p){return n(s,c,h,v,p,i)}}},8828:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<<r-1,t.sign=function(i){return(i>0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i<n)},t.max=function(i,n){return i^(i^n)&-(i<n)},t.isPow2=function(i){return!(i&i-1)&&!!i},t.log2=function(i){var n,s;return n=(i>65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<<h&255}})(a),t.reverse=function(i){return a[i&255]<<24|a[i>>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},6859:function(e,t,r){e=r.nmd(e),function(o,a){"use strict";function i(O,I){if(!O)throw new Error(I||"Assertion failed")}function n(O,I){O.super_=I;var N=function(){};N.prototype=I.prototype,O.prototype=new N,O.prototype.constructor=O}function s(O,I,N){if(s.isBN(O))return O;this.negative=0,this.words=null,this.length=0,this.red=null,O!==null&&((I==="le"||I==="be")&&(N=I,I=10),this._init(O||0,I||10,N||"be"))}typeof o=="object"?o.exports=s:a.BN=s,s.BN=s,s.wordSize=26;var c;try{typeof window<"u"&&typeof window.Buffer<"u"?c=window.Buffer:c=r(7790).Buffer}catch{}s.isBN=function(I){return I instanceof s?!0:I!==null&&typeof I=="object"&&I.constructor.wordSize===s.wordSize&&Array.isArray(I.words)},s.max=function(I,N){return I.cmp(N)>0?I:N},s.min=function(I,N){return I.cmp(N)<0?I:N},s.prototype._init=function(I,N,U){if(typeof I=="number")return this._initNumber(I,N,U);if(typeof I=="object")return this._initArray(I,N,U);N==="hex"&&(N=16),i(N===(N|0)&&N>=2&&N<=36),I=I.toString().replace(/\s+/g,"");var W=0;I[0]==="-"&&(W++,this.negative=1),W<I.length&&(N===16?this._parseHex(I,W,U):(this._parseBase(I,N,W),U==="le"&&this._initArray(this.toArray(),N,U)))},s.prototype._initNumber=function(I,N,U){I<0&&(this.negative=1,I=-I),I<67108864?(this.words=[I&67108863],this.length=1):I<4503599627370496?(this.words=[I&67108863,I/67108864&67108863],this.length=2):(i(I<9007199254740992),this.words=[I&67108863,I/67108864&67108863,1],this.length=3),U==="le"&&this._initArray(this.toArray(),N,U)},s.prototype._initArray=function(I,N,U){if(i(typeof I.length=="number"),I.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(I.length/3),this.words=new Array(this.length);for(var W=0;W<this.length;W++)this.words[W]=0;var Q,ue,se=0;if(U==="be")for(W=I.length-1,Q=0;W>=0;W-=3)ue=I[W]|I[W-1]<<8|I[W-2]<<16,this.words[Q]|=ue<<se&67108863,this.words[Q+1]=ue>>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);else if(U==="le")for(W=0,Q=0;W<I.length;W+=3)ue=I[W]|I[W+1]<<8|I[W+2]<<16,this.words[Q]|=ue<<se&67108863,this.words[Q+1]=ue>>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);return this.strip()};function h(O,I){var N=O.charCodeAt(I);return N>=65&&N<=70?N-55:N>=97&&N<=102?N-87:N-48&15}function v(O,I,N){var U=h(O,N);return N-1>=I&&(U|=h(O,N-1)<<4),U}s.prototype._parseHex=function(I,N,U){this.length=Math.ceil((I.length-N)/6),this.words=new Array(this.length);for(var W=0;W<this.length;W++)this.words[W]=0;var Q=0,ue=0,se;if(U==="be")for(W=I.length-1;W>=N;W-=2)se=v(I,N,W)<<Q,this.words[ue]|=se&67108863,Q>=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8;else{var he=I.length-N;for(W=he%2===0?N+1:N;W<I.length;W+=2)se=v(I,N,W)<<Q,this.words[ue]|=se&67108863,Q>=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8}this.strip()};function p(O,I,N,U){for(var W=0,Q=Math.min(O.length,N),ue=I;ue<Q;ue++){var se=O.charCodeAt(ue)-48;W*=U,se>=49?W+=se-49+10:se>=17?W+=se-17+10:W+=se}return W}s.prototype._parseBase=function(I,N,U){this.words=[0],this.length=1;for(var W=0,Q=1;Q<=67108863;Q*=N)W++;W--,Q=Q/N|0;for(var ue=I.length-U,se=ue%W,he=Math.min(ue,ue-se)+U,G=0,$=U;$<he;$+=W)G=p(I,$,$+W,N),this.imuln(Q),this.words[0]+G<67108864?this.words[0]+=G:this._iaddn(G);if(se!==0){var J=1;for(G=p(I,$,I.length,N),$=0;$<se;$++)J*=N;this.imuln(J),this.words[0]+G<67108864?this.words[0]+=G:this._iaddn(G)}this.strip()},s.prototype.copy=function(I){I.words=new Array(this.length);for(var N=0;N<this.length;N++)I.words[N]=this.words[N];I.length=this.length,I.negative=this.negative,I.red=this.red},s.prototype.clone=function(){var I=new s(null);return this.copy(I),I},s.prototype._expand=function(I){for(;this.length<I;)this.words[this.length++]=0;return this},s.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},s.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},s.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],_=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];s.prototype.toString=function(I,N){I=I||10,N=N|0||1;var U;if(I===16||I==="hex"){U="";for(var W=0,Q=0,ue=0;ue<this.length;ue++){var se=this.words[ue],he=((se<<W|Q)&16777215).toString(16);Q=se>>>24-W&16777215,Q!==0||ue!==this.length-1?U=T[6-he.length]+he+U:U=he+U,W+=2,W>=26&&(W-=26,ue--)}for(Q!==0&&(U=Q.toString(16)+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}if(I===(I|0)&&I>=2&&I<=36){var G=l[I],$=_[I];U="";var J=this.clone();for(J.negative=0;!J.isZero();){var Z=J.modn($).toString(I);J=J.idivn($),J.isZero()?U=Z+U:U=T[G-Z.length]+Z+U}for(this.isZero()&&(U="0"+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}i(!1,"Base should be between 2 and 36")},s.prototype.toNumber=function(){var I=this.words[0];return this.length===2?I+=this.words[1]*67108864:this.length===3&&this.words[2]===1?I+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-I:I},s.prototype.toJSON=function(){return this.toString(16)},s.prototype.toBuffer=function(I,N){return i(typeof c<"u"),this.toArrayLike(c,I,N)},s.prototype.toArray=function(I,N){return this.toArrayLike(Array,I,N)},s.prototype.toArrayLike=function(I,N,U){var W=this.byteLength(),Q=U||Math.max(1,W);i(W<=Q,"byte array longer than desired length"),i(Q>0,"Requested array length <= 0"),this.strip();var ue=N==="le",se=new I(Q),he,G,$=this.clone();if(ue){for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[G]=he;for(;G<Q;G++)se[G]=0}else{for(G=0;G<Q-W;G++)se[G]=0;for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[Q-G-1]=he}return se},Math.clz32?s.prototype._countBits=function(I){return 32-Math.clz32(I)}:s.prototype._countBits=function(I){var N=I,U=0;return N>=4096&&(U+=13,N>>>=13),N>=64&&(U+=7,N>>>=7),N>=8&&(U+=4,N>>>=4),N>=2&&(U+=2,N>>>=2),U+N},s.prototype._zeroBits=function(I){if(I===0)return 26;var N=I,U=0;return N&8191||(U+=13,N>>>=13),N&127||(U+=7,N>>>=7),N&15||(U+=4,N>>>=4),N&3||(U+=2,N>>>=2),N&1||U++,U},s.prototype.bitLength=function(){var I=this.words[this.length-1],N=this._countBits(I);return(this.length-1)*26+N};function w(O){for(var I=new Array(O.bitLength()),N=0;N<I.length;N++){var U=N/26|0,W=N%26;I[N]=(O.words[U]&1<<W)>>>W}return I}s.prototype.zeroBits=function(){if(this.isZero())return 0;for(var I=0,N=0;N<this.length;N++){var U=this._zeroBits(this.words[N]);if(I+=U,U!==26)break}return I},s.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},s.prototype.toTwos=function(I){return this.negative!==0?this.abs().inotn(I).iaddn(1):this.clone()},s.prototype.fromTwos=function(I){return this.testn(I-1)?this.notn(I).iaddn(1).ineg():this.clone()},s.prototype.isNeg=function(){return this.negative!==0},s.prototype.neg=function(){return this.clone().ineg()},s.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},s.prototype.iuor=function(I){for(;this.length<I.length;)this.words[this.length++]=0;for(var N=0;N<I.length;N++)this.words[N]=this.words[N]|I.words[N];return this.strip()},s.prototype.ior=function(I){return i((this.negative|I.negative)===0),this.iuor(I)},s.prototype.or=function(I){return this.length>I.length?this.clone().ior(I):I.clone().ior(this)},s.prototype.uor=function(I){return this.length>I.length?this.clone().iuor(I):I.clone().iuor(this)},s.prototype.iuand=function(I){var N;this.length>I.length?N=I:N=this;for(var U=0;U<N.length;U++)this.words[U]=this.words[U]&I.words[U];return this.length=N.length,this.strip()},s.prototype.iand=function(I){return i((this.negative|I.negative)===0),this.iuand(I)},s.prototype.and=function(I){return this.length>I.length?this.clone().iand(I):I.clone().iand(this)},s.prototype.uand=function(I){return this.length>I.length?this.clone().iuand(I):I.clone().iuand(this)},s.prototype.iuxor=function(I){var N,U;this.length>I.length?(N=this,U=I):(N=I,U=this);for(var W=0;W<U.length;W++)this.words[W]=N.words[W]^U.words[W];if(this!==N)for(;W<N.length;W++)this.words[W]=N.words[W];return this.length=N.length,this.strip()},s.prototype.ixor=function(I){return i((this.negative|I.negative)===0),this.iuxor(I)},s.prototype.xor=function(I){return this.length>I.length?this.clone().ixor(I):I.clone().ixor(this)},s.prototype.uxor=function(I){return this.length>I.length?this.clone().iuxor(I):I.clone().iuxor(this)},s.prototype.inotn=function(I){i(typeof I=="number"&&I>=0);var N=Math.ceil(I/26)|0,U=I%26;this._expand(N),U>0&&N--;for(var W=0;W<N;W++)this.words[W]=~this.words[W]&67108863;return U>0&&(this.words[W]=~this.words[W]&67108863>>26-U),this.strip()},s.prototype.notn=function(I){return this.clone().inotn(I)},s.prototype.setn=function(I,N){i(typeof I=="number"&&I>=0);var U=I/26|0,W=I%26;return this._expand(U+1),N?this.words[U]=this.words[U]|1<<W:this.words[U]=this.words[U]&~(1<<W),this.strip()},s.prototype.iadd=function(I){var N;if(this.negative!==0&&I.negative===0)return this.negative=0,N=this.isub(I),this.negative^=1,this._normSign();if(this.negative===0&&I.negative!==0)return I.negative=0,N=this.isub(I),I.negative=1,N._normSign();var U,W;this.length>I.length?(U=this,W=I):(U=I,W=this);for(var Q=0,ue=0;ue<W.length;ue++)N=(U.words[ue]|0)+(W.words[ue]|0)+Q,this.words[ue]=N&67108863,Q=N>>>26;for(;Q!==0&&ue<U.length;ue++)N=(U.words[ue]|0)+Q,this.words[ue]=N&67108863,Q=N>>>26;if(this.length=U.length,Q!==0)this.words[this.length]=Q,this.length++;else if(U!==this)for(;ue<U.length;ue++)this.words[ue]=U.words[ue];return this},s.prototype.add=function(I){var N;return I.negative!==0&&this.negative===0?(I.negative=0,N=this.sub(I),I.negative^=1,N):I.negative===0&&this.negative!==0?(this.negative=0,N=I.sub(this),this.negative=1,N):this.length>I.length?this.clone().iadd(I):I.clone().iadd(this)},s.prototype.isub=function(I){if(I.negative!==0){I.negative=0;var N=this.iadd(I);return I.negative=1,N._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(I),this.negative=1,this._normSign();var U=this.cmp(I);if(U===0)return this.negative=0,this.length=1,this.words[0]=0,this;var W,Q;U>0?(W=this,Q=I):(W=I,Q=this);for(var ue=0,se=0;se<Q.length;se++)N=(W.words[se]|0)-(Q.words[se]|0)+ue,ue=N>>26,this.words[se]=N&67108863;for(;ue!==0&&se<W.length;se++)N=(W.words[se]|0)+ue,ue=N>>26,this.words[se]=N&67108863;if(ue===0&&se<W.length&&W!==this)for(;se<W.length;se++)this.words[se]=W.words[se];return this.length=Math.max(this.length,se),W!==this&&(this.negative=1),this.strip()},s.prototype.sub=function(I){return this.clone().isub(I)};function S(O,I,N){N.negative=I.negative^O.negative;var U=O.length+I.length|0;N.length=U,U=U-1|0;var W=O.words[0]|0,Q=I.words[0]|0,ue=W*Q,se=ue&67108863,he=ue/67108864|0;N.words[0]=se;for(var G=1;G<U;G++){for(var $=he>>>26,J=he&67108863,Z=Math.min(G,I.length-1),re=Math.max(0,G-O.length+1);re<=Z;re++){var ne=G-re|0;W=O.words[ne]|0,Q=I.words[re]|0,ue=W*Q+J,$+=ue/67108864|0,J=ue&67108863}N.words[G]=J|0,he=$|0}return he!==0?N.words[G]=he|0:N.length--,N.strip()}var E=function(I,N,U){var W=I.words,Q=N.words,ue=U.words,se=0,he,G,$,J=W[0]|0,Z=J&8191,re=J>>>13,ne=W[1]|0,j=ne&8191,ee=ne>>>13,ie=W[2]|0,fe=ie&8191,be=ie>>>13,Ae=W[3]|0,Be=Ae&8191,Ie=Ae>>>13,Ze=W[4]|0,at=Ze&8191,it=Ze>>>13,et=W[5]|0,lt=et&8191,Me=et>>>13,ge=W[6]|0,ce=ge&8191,ze=ge>>>13,tt=W[7]|0,nt=tt&8191,Qe=tt>>>13,Ct=W[8]|0,St=Ct&8191,Ot=Ct>>>13,jt=W[9]|0,ur=jt&8191,ar=jt>>>13,Cr=Q[0]|0,vr=Cr&8191,_r=Cr>>>13,yt=Q[1]|0,Fe=yt&8191,Ke=yt>>>13,Ne=Q[2]|0,Ee=Ne&8191,Ve=Ne>>>13,ke=Q[3]|0,Te=ke&8191,Le=ke>>>13,rt=Q[4]|0,dt=rt&8191,xt=rt>>>13,It=Q[5]|0,Bt=It&8191,Gt=It>>>13,Kt=Q[6]|0,sr=Kt&8191,sa=Kt>>>13,Aa=Q[7]|0,La=Aa&8191,ka=Aa>>>13,Ga=Q[8]|0,Ma=Ga&8191,Ua=Ga>>>13,ni=Q[9]|0,Wt=ni&8191,zt=ni>>>13;U.negative=I.negative^N.negative,U.length=19,he=Math.imul(Z,vr),G=Math.imul(Z,_r),G=G+Math.imul(re,vr)|0,$=Math.imul(re,_r);var Vt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,he=Math.imul(j,vr),G=Math.imul(j,_r),G=G+Math.imul(ee,vr)|0,$=Math.imul(ee,_r),he=he+Math.imul(Z,Fe)|0,G=G+Math.imul(Z,Ke)|0,G=G+Math.imul(re,Fe)|0,$=$+Math.imul(re,Ke)|0;var Ut=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ut>>>26)|0,Ut&=67108863,he=Math.imul(fe,vr),G=Math.imul(fe,_r),G=G+Math.imul(be,vr)|0,$=Math.imul(be,_r),he=he+Math.imul(j,Fe)|0,G=G+Math.imul(j,Ke)|0,G=G+Math.imul(ee,Fe)|0,$=$+Math.imul(ee,Ke)|0,he=he+Math.imul(Z,Ee)|0,G=G+Math.imul(Z,Ve)|0,G=G+Math.imul(re,Ee)|0,$=$+Math.imul(re,Ve)|0;var xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(xr>>>26)|0,xr&=67108863,he=Math.imul(Be,vr),G=Math.imul(Be,_r),G=G+Math.imul(Ie,vr)|0,$=Math.imul(Ie,_r),he=he+Math.imul(fe,Fe)|0,G=G+Math.imul(fe,Ke)|0,G=G+Math.imul(be,Fe)|0,$=$+Math.imul(be,Ke)|0,he=he+Math.imul(j,Ee)|0,G=G+Math.imul(j,Ve)|0,G=G+Math.imul(ee,Ee)|0,$=$+Math.imul(ee,Ve)|0,he=he+Math.imul(Z,Te)|0,G=G+Math.imul(Z,Le)|0,G=G+Math.imul(re,Te)|0,$=$+Math.imul(re,Le)|0;var Zr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,he=Math.imul(at,vr),G=Math.imul(at,_r),G=G+Math.imul(it,vr)|0,$=Math.imul(it,_r),he=he+Math.imul(Be,Fe)|0,G=G+Math.imul(Be,Ke)|0,G=G+Math.imul(Ie,Fe)|0,$=$+Math.imul(Ie,Ke)|0,he=he+Math.imul(fe,Ee)|0,G=G+Math.imul(fe,Ve)|0,G=G+Math.imul(be,Ee)|0,$=$+Math.imul(be,Ve)|0,he=he+Math.imul(j,Te)|0,G=G+Math.imul(j,Le)|0,G=G+Math.imul(ee,Te)|0,$=$+Math.imul(ee,Le)|0,he=he+Math.imul(Z,dt)|0,G=G+Math.imul(Z,xt)|0,G=G+Math.imul(re,dt)|0,$=$+Math.imul(re,xt)|0;var pa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(pa>>>26)|0,pa&=67108863,he=Math.imul(lt,vr),G=Math.imul(lt,_r),G=G+Math.imul(Me,vr)|0,$=Math.imul(Me,_r),he=he+Math.imul(at,Fe)|0,G=G+Math.imul(at,Ke)|0,G=G+Math.imul(it,Fe)|0,$=$+Math.imul(it,Ke)|0,he=he+Math.imul(Be,Ee)|0,G=G+Math.imul(Be,Ve)|0,G=G+Math.imul(Ie,Ee)|0,$=$+Math.imul(Ie,Ve)|0,he=he+Math.imul(fe,Te)|0,G=G+Math.imul(fe,Le)|0,G=G+Math.imul(be,Te)|0,$=$+Math.imul(be,Le)|0,he=he+Math.imul(j,dt)|0,G=G+Math.imul(j,xt)|0,G=G+Math.imul(ee,dt)|0,$=$+Math.imul(ee,xt)|0,he=he+Math.imul(Z,Bt)|0,G=G+Math.imul(Z,Gt)|0,G=G+Math.imul(re,Bt)|0,$=$+Math.imul(re,Gt)|0;var Xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,he=Math.imul(ce,vr),G=Math.imul(ce,_r),G=G+Math.imul(ze,vr)|0,$=Math.imul(ze,_r),he=he+Math.imul(lt,Fe)|0,G=G+Math.imul(lt,Ke)|0,G=G+Math.imul(Me,Fe)|0,$=$+Math.imul(Me,Ke)|0,he=he+Math.imul(at,Ee)|0,G=G+Math.imul(at,Ve)|0,G=G+Math.imul(it,Ee)|0,$=$+Math.imul(it,Ve)|0,he=he+Math.imul(Be,Te)|0,G=G+Math.imul(Be,Le)|0,G=G+Math.imul(Ie,Te)|0,$=$+Math.imul(Ie,Le)|0,he=he+Math.imul(fe,dt)|0,G=G+Math.imul(fe,xt)|0,G=G+Math.imul(be,dt)|0,$=$+Math.imul(be,xt)|0,he=he+Math.imul(j,Bt)|0,G=G+Math.imul(j,Gt)|0,G=G+Math.imul(ee,Bt)|0,$=$+Math.imul(ee,Gt)|0,he=he+Math.imul(Z,sr)|0,G=G+Math.imul(Z,sa)|0,G=G+Math.imul(re,sr)|0,$=$+Math.imul(re,sa)|0;var Ea=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ea>>>26)|0,Ea&=67108863,he=Math.imul(nt,vr),G=Math.imul(nt,_r),G=G+Math.imul(Qe,vr)|0,$=Math.imul(Qe,_r),he=he+Math.imul(ce,Fe)|0,G=G+Math.imul(ce,Ke)|0,G=G+Math.imul(ze,Fe)|0,$=$+Math.imul(ze,Ke)|0,he=he+Math.imul(lt,Ee)|0,G=G+Math.imul(lt,Ve)|0,G=G+Math.imul(Me,Ee)|0,$=$+Math.imul(Me,Ve)|0,he=he+Math.imul(at,Te)|0,G=G+Math.imul(at,Le)|0,G=G+Math.imul(it,Te)|0,$=$+Math.imul(it,Le)|0,he=he+Math.imul(Be,dt)|0,G=G+Math.imul(Be,xt)|0,G=G+Math.imul(Ie,dt)|0,$=$+Math.imul(Ie,xt)|0,he=he+Math.imul(fe,Bt)|0,G=G+Math.imul(fe,Gt)|0,G=G+Math.imul(be,Bt)|0,$=$+Math.imul(be,Gt)|0,he=he+Math.imul(j,sr)|0,G=G+Math.imul(j,sa)|0,G=G+Math.imul(ee,sr)|0,$=$+Math.imul(ee,sa)|0,he=he+Math.imul(Z,La)|0,G=G+Math.imul(Z,ka)|0,G=G+Math.imul(re,La)|0,$=$+Math.imul(re,ka)|0;var Fa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,he=Math.imul(St,vr),G=Math.imul(St,_r),G=G+Math.imul(Ot,vr)|0,$=Math.imul(Ot,_r),he=he+Math.imul(nt,Fe)|0,G=G+Math.imul(nt,Ke)|0,G=G+Math.imul(Qe,Fe)|0,$=$+Math.imul(Qe,Ke)|0,he=he+Math.imul(ce,Ee)|0,G=G+Math.imul(ce,Ve)|0,G=G+Math.imul(ze,Ee)|0,$=$+Math.imul(ze,Ve)|0,he=he+Math.imul(lt,Te)|0,G=G+Math.imul(lt,Le)|0,G=G+Math.imul(Me,Te)|0,$=$+Math.imul(Me,Le)|0,he=he+Math.imul(at,dt)|0,G=G+Math.imul(at,xt)|0,G=G+Math.imul(it,dt)|0,$=$+Math.imul(it,xt)|0,he=he+Math.imul(Be,Bt)|0,G=G+Math.imul(Be,Gt)|0,G=G+Math.imul(Ie,Bt)|0,$=$+Math.imul(Ie,Gt)|0,he=he+Math.imul(fe,sr)|0,G=G+Math.imul(fe,sa)|0,G=G+Math.imul(be,sr)|0,$=$+Math.imul(be,sa)|0,he=he+Math.imul(j,La)|0,G=G+Math.imul(j,ka)|0,G=G+Math.imul(ee,La)|0,$=$+Math.imul(ee,ka)|0,he=he+Math.imul(Z,Ma)|0,G=G+Math.imul(Z,Ua)|0,G=G+Math.imul(re,Ma)|0,$=$+Math.imul(re,Ua)|0;var qa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(qa>>>26)|0,qa&=67108863,he=Math.imul(ur,vr),G=Math.imul(ur,_r),G=G+Math.imul(ar,vr)|0,$=Math.imul(ar,_r),he=he+Math.imul(St,Fe)|0,G=G+Math.imul(St,Ke)|0,G=G+Math.imul(Ot,Fe)|0,$=$+Math.imul(Ot,Ke)|0,he=he+Math.imul(nt,Ee)|0,G=G+Math.imul(nt,Ve)|0,G=G+Math.imul(Qe,Ee)|0,$=$+Math.imul(Qe,Ve)|0,he=he+Math.imul(ce,Te)|0,G=G+Math.imul(ce,Le)|0,G=G+Math.imul(ze,Te)|0,$=$+Math.imul(ze,Le)|0,he=he+Math.imul(lt,dt)|0,G=G+Math.imul(lt,xt)|0,G=G+Math.imul(Me,dt)|0,$=$+Math.imul(Me,xt)|0,he=he+Math.imul(at,Bt)|0,G=G+Math.imul(at,Gt)|0,G=G+Math.imul(it,Bt)|0,$=$+Math.imul(it,Gt)|0,he=he+Math.imul(Be,sr)|0,G=G+Math.imul(Be,sa)|0,G=G+Math.imul(Ie,sr)|0,$=$+Math.imul(Ie,sa)|0,he=he+Math.imul(fe,La)|0,G=G+Math.imul(fe,ka)|0,G=G+Math.imul(be,La)|0,$=$+Math.imul(be,ka)|0,he=he+Math.imul(j,Ma)|0,G=G+Math.imul(j,Ua)|0,G=G+Math.imul(ee,Ma)|0,$=$+Math.imul(ee,Ua)|0,he=he+Math.imul(Z,Wt)|0,G=G+Math.imul(Z,zt)|0,G=G+Math.imul(re,Wt)|0,$=$+Math.imul(re,zt)|0;var ya=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(ya>>>26)|0,ya&=67108863,he=Math.imul(ur,Fe),G=Math.imul(ur,Ke),G=G+Math.imul(ar,Fe)|0,$=Math.imul(ar,Ke),he=he+Math.imul(St,Ee)|0,G=G+Math.imul(St,Ve)|0,G=G+Math.imul(Ot,Ee)|0,$=$+Math.imul(Ot,Ve)|0,he=he+Math.imul(nt,Te)|0,G=G+Math.imul(nt,Le)|0,G=G+Math.imul(Qe,Te)|0,$=$+Math.imul(Qe,Le)|0,he=he+Math.imul(ce,dt)|0,G=G+Math.imul(ce,xt)|0,G=G+Math.imul(ze,dt)|0,$=$+Math.imul(ze,xt)|0,he=he+Math.imul(lt,Bt)|0,G=G+Math.imul(lt,Gt)|0,G=G+Math.imul(Me,Bt)|0,$=$+Math.imul(Me,Gt)|0,he=he+Math.imul(at,sr)|0,G=G+Math.imul(at,sa)|0,G=G+Math.imul(it,sr)|0,$=$+Math.imul(it,sa)|0,he=he+Math.imul(Be,La)|0,G=G+Math.imul(Be,ka)|0,G=G+Math.imul(Ie,La)|0,$=$+Math.imul(Ie,ka)|0,he=he+Math.imul(fe,Ma)|0,G=G+Math.imul(fe,Ua)|0,G=G+Math.imul(be,Ma)|0,$=$+Math.imul(be,Ua)|0,he=he+Math.imul(j,Wt)|0,G=G+Math.imul(j,zt)|0,G=G+Math.imul(ee,Wt)|0,$=$+Math.imul(ee,zt)|0;var $a=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+($a>>>26)|0,$a&=67108863,he=Math.imul(ur,Ee),G=Math.imul(ur,Ve),G=G+Math.imul(ar,Ee)|0,$=Math.imul(ar,Ve),he=he+Math.imul(St,Te)|0,G=G+Math.imul(St,Le)|0,G=G+Math.imul(Ot,Te)|0,$=$+Math.imul(Ot,Le)|0,he=he+Math.imul(nt,dt)|0,G=G+Math.imul(nt,xt)|0,G=G+Math.imul(Qe,dt)|0,$=$+Math.imul(Qe,xt)|0,he=he+Math.imul(ce,Bt)|0,G=G+Math.imul(ce,Gt)|0,G=G+Math.imul(ze,Bt)|0,$=$+Math.imul(ze,Gt)|0,he=he+Math.imul(lt,sr)|0,G=G+Math.imul(lt,sa)|0,G=G+Math.imul(Me,sr)|0,$=$+Math.imul(Me,sa)|0,he=he+Math.imul(at,La)|0,G=G+Math.imul(at,ka)|0,G=G+Math.imul(it,La)|0,$=$+Math.imul(it,ka)|0,he=he+Math.imul(Be,Ma)|0,G=G+Math.imul(Be,Ua)|0,G=G+Math.imul(Ie,Ma)|0,$=$+Math.imul(Ie,Ua)|0,he=he+Math.imul(fe,Wt)|0,G=G+Math.imul(fe,zt)|0,G=G+Math.imul(be,Wt)|0,$=$+Math.imul(be,zt)|0;var mt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(mt>>>26)|0,mt&=67108863,he=Math.imul(ur,Te),G=Math.imul(ur,Le),G=G+Math.imul(ar,Te)|0,$=Math.imul(ar,Le),he=he+Math.imul(St,dt)|0,G=G+Math.imul(St,xt)|0,G=G+Math.imul(Ot,dt)|0,$=$+Math.imul(Ot,xt)|0,he=he+Math.imul(nt,Bt)|0,G=G+Math.imul(nt,Gt)|0,G=G+Math.imul(Qe,Bt)|0,$=$+Math.imul(Qe,Gt)|0,he=he+Math.imul(ce,sr)|0,G=G+Math.imul(ce,sa)|0,G=G+Math.imul(ze,sr)|0,$=$+Math.imul(ze,sa)|0,he=he+Math.imul(lt,La)|0,G=G+Math.imul(lt,ka)|0,G=G+Math.imul(Me,La)|0,$=$+Math.imul(Me,ka)|0,he=he+Math.imul(at,Ma)|0,G=G+Math.imul(at,Ua)|0,G=G+Math.imul(it,Ma)|0,$=$+Math.imul(it,Ua)|0,he=he+Math.imul(Be,Wt)|0,G=G+Math.imul(Be,zt)|0,G=G+Math.imul(Ie,Wt)|0,$=$+Math.imul(Ie,zt)|0;var gt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(gt>>>26)|0,gt&=67108863,he=Math.imul(ur,dt),G=Math.imul(ur,xt),G=G+Math.imul(ar,dt)|0,$=Math.imul(ar,xt),he=he+Math.imul(St,Bt)|0,G=G+Math.imul(St,Gt)|0,G=G+Math.imul(Ot,Bt)|0,$=$+Math.imul(Ot,Gt)|0,he=he+Math.imul(nt,sr)|0,G=G+Math.imul(nt,sa)|0,G=G+Math.imul(Qe,sr)|0,$=$+Math.imul(Qe,sa)|0,he=he+Math.imul(ce,La)|0,G=G+Math.imul(ce,ka)|0,G=G+Math.imul(ze,La)|0,$=$+Math.imul(ze,ka)|0,he=he+Math.imul(lt,Ma)|0,G=G+Math.imul(lt,Ua)|0,G=G+Math.imul(Me,Ma)|0,$=$+Math.imul(Me,Ua)|0,he=he+Math.imul(at,Wt)|0,G=G+Math.imul(at,zt)|0,G=G+Math.imul(it,Wt)|0,$=$+Math.imul(it,zt)|0;var Er=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Er>>>26)|0,Er&=67108863,he=Math.imul(ur,Bt),G=Math.imul(ur,Gt),G=G+Math.imul(ar,Bt)|0,$=Math.imul(ar,Gt),he=he+Math.imul(St,sr)|0,G=G+Math.imul(St,sa)|0,G=G+Math.imul(Ot,sr)|0,$=$+Math.imul(Ot,sa)|0,he=he+Math.imul(nt,La)|0,G=G+Math.imul(nt,ka)|0,G=G+Math.imul(Qe,La)|0,$=$+Math.imul(Qe,ka)|0,he=he+Math.imul(ce,Ma)|0,G=G+Math.imul(ce,Ua)|0,G=G+Math.imul(ze,Ma)|0,$=$+Math.imul(ze,Ua)|0,he=he+Math.imul(lt,Wt)|0,G=G+Math.imul(lt,zt)|0,G=G+Math.imul(Me,Wt)|0,$=$+Math.imul(Me,zt)|0;var kr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(kr>>>26)|0,kr&=67108863,he=Math.imul(ur,sr),G=Math.imul(ur,sa),G=G+Math.imul(ar,sr)|0,$=Math.imul(ar,sa),he=he+Math.imul(St,La)|0,G=G+Math.imul(St,ka)|0,G=G+Math.imul(Ot,La)|0,$=$+Math.imul(Ot,ka)|0,he=he+Math.imul(nt,Ma)|0,G=G+Math.imul(nt,Ua)|0,G=G+Math.imul(Qe,Ma)|0,$=$+Math.imul(Qe,Ua)|0,he=he+Math.imul(ce,Wt)|0,G=G+Math.imul(ce,zt)|0,G=G+Math.imul(ze,Wt)|0,$=$+Math.imul(ze,zt)|0;var br=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(br>>>26)|0,br&=67108863,he=Math.imul(ur,La),G=Math.imul(ur,ka),G=G+Math.imul(ar,La)|0,$=Math.imul(ar,ka),he=he+Math.imul(St,Ma)|0,G=G+Math.imul(St,Ua)|0,G=G+Math.imul(Ot,Ma)|0,$=$+Math.imul(Ot,Ua)|0,he=he+Math.imul(nt,Wt)|0,G=G+Math.imul(nt,zt)|0,G=G+Math.imul(Qe,Wt)|0,$=$+Math.imul(Qe,zt)|0;var Tr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Tr>>>26)|0,Tr&=67108863,he=Math.imul(ur,Ma),G=Math.imul(ur,Ua),G=G+Math.imul(ar,Ma)|0,$=Math.imul(ar,Ua),he=he+Math.imul(St,Wt)|0,G=G+Math.imul(St,zt)|0,G=G+Math.imul(Ot,Wt)|0,$=$+Math.imul(Ot,zt)|0;var Mr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,he=Math.imul(ur,Wt),G=Math.imul(ur,zt),G=G+Math.imul(ar,Wt)|0,$=Math.imul(ar,zt);var Fr=(se+he|0)+((G&8191)<<13)|0;return se=($+(G>>>13)|0)+(Fr>>>26)|0,Fr&=67108863,ue[0]=Vt,ue[1]=Ut,ue[2]=xr,ue[3]=Zr,ue[4]=pa,ue[5]=Xr,ue[6]=Ea,ue[7]=Fa,ue[8]=qa,ue[9]=ya,ue[10]=$a,ue[11]=mt,ue[12]=gt,ue[13]=Er,ue[14]=kr,ue[15]=br,ue[16]=Tr,ue[17]=Mr,ue[18]=Fr,se!==0&&(ue[19]=se,U.length++),U};Math.imul||(E=S);function m(O,I,N){N.negative=I.negative^O.negative,N.length=O.length+I.length;for(var U=0,W=0,Q=0;Q<N.length-1;Q++){var ue=W;W=0;for(var se=U&67108863,he=Math.min(Q,I.length-1),G=Math.max(0,Q-O.length+1);G<=he;G++){var $=Q-G,J=O.words[$]|0,Z=I.words[G]|0,re=J*Z,ne=re&67108863;ue=ue+(re/67108864|0)|0,ne=ne+se|0,se=ne&67108863,ue=ue+(ne>>>26)|0,W+=ue>>>26,ue&=67108863}N.words[Q]=se,U=ue,ue=W}return U!==0?N.words[Q]=U:N.length--,N.strip()}function b(O,I,N){var U=new d;return U.mulp(O,I,N)}s.prototype.mulTo=function(I,N){var U,W=this.length+I.length;return this.length===10&&I.length===10?U=E(this,I,N):W<63?U=S(this,I,N):W<1024?U=m(this,I,N):U=b(this,I,N),U};function d(O,I){this.x=O,this.y=I}d.prototype.makeRBT=function(I){for(var N=new Array(I),U=s.prototype._countBits(I)-1,W=0;W<I;W++)N[W]=this.revBin(W,U,I);return N},d.prototype.revBin=function(I,N,U){if(I===0||I===U-1)return I;for(var W=0,Q=0;Q<N;Q++)W|=(I&1)<<N-Q-1,I>>=1;return W},d.prototype.permute=function(I,N,U,W,Q,ue){for(var se=0;se<ue;se++)W[se]=N[I[se]],Q[se]=U[I[se]]},d.prototype.transform=function(I,N,U,W,Q,ue){this.permute(ue,I,N,U,W,Q);for(var se=1;se<Q;se<<=1)for(var he=se<<1,G=Math.cos(2*Math.PI/he),$=Math.sin(2*Math.PI/he),J=0;J<Q;J+=he)for(var Z=G,re=$,ne=0;ne<se;ne++){var j=U[J+ne],ee=W[J+ne],ie=U[J+ne+se],fe=W[J+ne+se],be=Z*ie-re*fe;fe=Z*fe+re*ie,ie=be,U[J+ne]=j+ie,W[J+ne]=ee+fe,U[J+ne+se]=j-ie,W[J+ne+se]=ee-fe,ne!==he&&(be=G*Z-$*re,re=G*re+$*Z,Z=be)}},d.prototype.guessLen13b=function(I,N){var U=Math.max(N,I)|1,W=U&1,Q=0;for(U=U/2|0;U;U=U>>>1)Q++;return 1<<Q+1+W},d.prototype.conjugate=function(I,N,U){if(!(U<=1))for(var W=0;W<U/2;W++){var Q=I[W];I[W]=I[U-W-1],I[U-W-1]=Q,Q=N[W],N[W]=-N[U-W-1],N[U-W-1]=-Q}},d.prototype.normalize13b=function(I,N){for(var U=0,W=0;W<N/2;W++){var Q=Math.round(I[2*W+1]/N)*8192+Math.round(I[2*W]/N)+U;I[W]=Q&67108863,Q<67108864?U=0:U=Q/67108864|0}return I},d.prototype.convert13b=function(I,N,U,W){for(var Q=0,ue=0;ue<N;ue++)Q=Q+(I[ue]|0),U[2*ue]=Q&8191,Q=Q>>>13,U[2*ue+1]=Q&8191,Q=Q>>>13;for(ue=2*N;ue<W;++ue)U[ue]=0;i(Q===0),i((Q&-8192)===0)},d.prototype.stub=function(I){for(var N=new Array(I),U=0;U<I;U++)N[U]=0;return N},d.prototype.mulp=function(I,N,U){var W=2*this.guessLen13b(I.length,N.length),Q=this.makeRBT(W),ue=this.stub(W),se=new Array(W),he=new Array(W),G=new Array(W),$=new Array(W),J=new Array(W),Z=new Array(W),re=U.words;re.length=W,this.convert13b(I.words,I.length,se,W),this.convert13b(N.words,N.length,$,W),this.transform(se,ue,he,G,W,Q),this.transform($,ue,J,Z,W,Q);for(var ne=0;ne<W;ne++){var j=he[ne]*J[ne]-G[ne]*Z[ne];G[ne]=he[ne]*Z[ne]+G[ne]*J[ne],he[ne]=j}return this.conjugate(he,G,W),this.transform(he,G,re,ue,W,Q),this.conjugate(re,ue,W),this.normalize13b(re,W),U.negative=I.negative^N.negative,U.length=I.length+N.length,U.strip()},s.prototype.mul=function(I){var N=new s(null);return N.words=new Array(this.length+I.length),this.mulTo(I,N)},s.prototype.mulf=function(I){var N=new s(null);return N.words=new Array(this.length+I.length),b(this,I,N)},s.prototype.imul=function(I){return this.clone().mulTo(I,this)},s.prototype.imuln=function(I){i(typeof I=="number"),i(I<67108864);for(var N=0,U=0;U<this.length;U++){var W=(this.words[U]|0)*I,Q=(W&67108863)+(N&67108863);N>>=26,N+=W/67108864|0,N+=Q>>>26,this.words[U]=Q&67108863}return N!==0&&(this.words[U]=N,this.length++),this},s.prototype.muln=function(I){return this.clone().imuln(I)},s.prototype.sqr=function(){return this.mul(this)},s.prototype.isqr=function(){return this.imul(this.clone())},s.prototype.pow=function(I){var N=w(I);if(N.length===0)return new s(1);for(var U=this,W=0;W<N.length&&N[W]===0;W++,U=U.sqr());if(++W<N.length)for(var Q=U.sqr();W<N.length;W++,Q=Q.sqr())N[W]!==0&&(U=U.mul(Q));return U},s.prototype.iushln=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=67108863>>>26-N<<26-N,Q;if(N!==0){var ue=0;for(Q=0;Q<this.length;Q++){var se=this.words[Q]&W,he=(this.words[Q]|0)-se<<N;this.words[Q]=he|ue,ue=se>>>26-N}ue&&(this.words[Q]=ue,this.length++)}if(U!==0){for(Q=this.length-1;Q>=0;Q--)this.words[Q+U]=this.words[Q];for(Q=0;Q<U;Q++)this.words[Q]=0;this.length+=U}return this.strip()},s.prototype.ishln=function(I){return i(this.negative===0),this.iushln(I)},s.prototype.iushrn=function(I,N,U){i(typeof I=="number"&&I>=0);var W;N?W=(N-N%26)/26:W=0;var Q=I%26,ue=Math.min((I-Q)/26,this.length),se=67108863^67108863>>>Q<<Q,he=U;if(W-=ue,W=Math.max(0,W),he){for(var G=0;G<ue;G++)he.words[G]=this.words[G];he.length=ue}if(ue!==0)if(this.length>ue)for(this.length-=ue,G=0;G<this.length;G++)this.words[G]=this.words[G+ue];else this.words[0]=0,this.length=1;var $=0;for(G=this.length-1;G>=0&&($!==0||G>=W);G--){var J=this.words[G]|0;this.words[G]=$<<26-Q|J>>>Q,$=J&se}return he&&$!==0&&(he.words[he.length++]=$),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},s.prototype.ishrn=function(I,N,U){return i(this.negative===0),this.iushrn(I,N,U)},s.prototype.shln=function(I){return this.clone().ishln(I)},s.prototype.ushln=function(I){return this.clone().iushln(I)},s.prototype.shrn=function(I){return this.clone().ishrn(I)},s.prototype.ushrn=function(I){return this.clone().iushrn(I)},s.prototype.testn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=1<<N;if(this.length<=U)return!1;var Q=this.words[U];return!!(Q&W)},s.prototype.imaskn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=U)return this;if(N!==0&&U++,this.length=Math.min(U,this.length),N!==0){var W=67108863^67108863>>>N<<N;this.words[this.length-1]&=W}return this.strip()},s.prototype.maskn=function(I){return this.clone().imaskn(I)},s.prototype.iaddn=function(I){return i(typeof I=="number"),i(I<67108864),I<0?this.isubn(-I):this.negative!==0?this.length===1&&(this.words[0]|0)<I?(this.words[0]=I-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(I),this.negative=1,this):this._iaddn(I)},s.prototype._iaddn=function(I){this.words[0]+=I;for(var N=0;N<this.length&&this.words[N]>=67108864;N++)this.words[N]-=67108864,N===this.length-1?this.words[N+1]=1:this.words[N+1]++;return this.length=Math.max(this.length,N+1),this},s.prototype.isubn=function(I){if(i(typeof I=="number"),i(I<67108864),I<0)return this.iaddn(-I);if(this.negative!==0)return this.negative=0,this.iaddn(I),this.negative=1,this;if(this.words[0]-=I,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var N=0;N<this.length&&this.words[N]<0;N++)this.words[N]+=67108864,this.words[N+1]-=1;return this.strip()},s.prototype.addn=function(I){return this.clone().iaddn(I)},s.prototype.subn=function(I){return this.clone().isubn(I)},s.prototype.iabs=function(){return this.negative=0,this},s.prototype.abs=function(){return this.clone().iabs()},s.prototype._ishlnsubmul=function(I,N,U){var W=I.length+U,Q;this._expand(W);var ue,se=0;for(Q=0;Q<I.length;Q++){ue=(this.words[Q+U]|0)+se;var he=(I.words[Q]|0)*N;ue-=he&67108863,se=(ue>>26)-(he/67108864|0),this.words[Q+U]=ue&67108863}for(;Q<this.length-U;Q++)ue=(this.words[Q+U]|0)+se,se=ue>>26,this.words[Q+U]=ue&67108863;if(se===0)return this.strip();for(i(se===-1),se=0,Q=0;Q<this.length;Q++)ue=-(this.words[Q]|0)+se,se=ue>>26,this.words[Q]=ue&67108863;return this.negative=1,this.strip()},s.prototype._wordDiv=function(I,N){var U=this.length-I.length,W=this.clone(),Q=I,ue=Q.words[Q.length-1]|0,se=this._countBits(ue);U=26-se,U!==0&&(Q=Q.ushln(U),W.iushln(U),ue=Q.words[Q.length-1]|0);var he=W.length-Q.length,G;if(N!=="mod"){G=new s(null),G.length=he+1,G.words=new Array(G.length);for(var $=0;$<G.length;$++)G.words[$]=0}var J=W.clone()._ishlnsubmul(Q,1,he);J.negative===0&&(W=J,G&&(G.words[he]=1));for(var Z=he-1;Z>=0;Z--){var re=(W.words[Q.length+Z]|0)*67108864+(W.words[Q.length+Z-1]|0);for(re=Math.min(re/ue|0,67108863),W._ishlnsubmul(Q,re,Z);W.negative!==0;)re--,W.negative=0,W._ishlnsubmul(Q,1,Z),W.isZero()||(W.negative^=1);G&&(G.words[Z]=re)}return G&&G.strip(),W.strip(),N!=="div"&&U!==0&&W.iushrn(U),{div:G||null,mod:W}},s.prototype.divmod=function(I,N,U){if(i(!I.isZero()),this.isZero())return{div:new s(0),mod:new s(0)};var W,Q,ue;return this.negative!==0&&I.negative===0?(ue=this.neg().divmod(I,N),N!=="mod"&&(W=ue.div.neg()),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.iadd(I)),{div:W,mod:Q}):this.negative===0&&I.negative!==0?(ue=this.divmod(I.neg(),N),N!=="mod"&&(W=ue.div.neg()),{div:W,mod:ue.mod}):this.negative&I.negative?(ue=this.neg().divmod(I.neg(),N),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.isub(I)),{div:ue.div,mod:Q}):I.length>this.length||this.cmp(I)<0?{div:new s(0),mod:this}:I.length===1?N==="div"?{div:this.divn(I.words[0]),mod:null}:N==="mod"?{div:null,mod:new s(this.modn(I.words[0]))}:{div:this.divn(I.words[0]),mod:new s(this.modn(I.words[0]))}:this._wordDiv(I,N)},s.prototype.div=function(I){return this.divmod(I,"div",!1).div},s.prototype.mod=function(I){return this.divmod(I,"mod",!1).mod},s.prototype.umod=function(I){return this.divmod(I,"mod",!0).mod},s.prototype.divRound=function(I){var N=this.divmod(I);if(N.mod.isZero())return N.div;var U=N.div.negative!==0?N.mod.isub(I):N.mod,W=I.ushrn(1),Q=I.andln(1),ue=U.cmp(W);return ue<0||Q===1&&ue===0?N.div:N.div.negative!==0?N.div.isubn(1):N.div.iaddn(1)},s.prototype.modn=function(I){i(I<=67108863);for(var N=(1<<26)%I,U=0,W=this.length-1;W>=0;W--)U=(N*U+(this.words[W]|0))%I;return U},s.prototype.idivn=function(I){i(I<=67108863);for(var N=0,U=this.length-1;U>=0;U--){var W=(this.words[U]|0)+N*67108864;this.words[U]=W/I|0,N=W%I}return this.strip()},s.prototype.divn=function(I){return this.clone().idivn(I)},s.prototype.egcd=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=new s(0),se=new s(1),he=0;N.isEven()&&U.isEven();)N.iushrn(1),U.iushrn(1),++he;for(var G=U.clone(),$=N.clone();!N.isZero();){for(var J=0,Z=1;!(N.words[0]&Z)&&J<26;++J,Z<<=1);if(J>0)for(N.iushrn(J);J-- >0;)(W.isOdd()||Q.isOdd())&&(W.iadd(G),Q.isub($)),W.iushrn(1),Q.iushrn(1);for(var re=0,ne=1;!(U.words[0]&ne)&&re<26;++re,ne<<=1);if(re>0)for(U.iushrn(re);re-- >0;)(ue.isOdd()||se.isOdd())&&(ue.iadd(G),se.isub($)),ue.iushrn(1),se.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(ue),Q.isub(se)):(U.isub(N),ue.isub(W),se.isub(Q))}return{a:ue,b:se,gcd:U.iushln(he)}},s.prototype._invmp=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=U.clone();N.cmpn(1)>0&&U.cmpn(1)>0;){for(var se=0,he=1;!(N.words[0]&he)&&se<26;++se,he<<=1);if(se>0)for(N.iushrn(se);se-- >0;)W.isOdd()&&W.iadd(ue),W.iushrn(1);for(var G=0,$=1;!(U.words[0]&$)&&G<26;++G,$<<=1);if(G>0)for(U.iushrn(G);G-- >0;)Q.isOdd()&&Q.iadd(ue),Q.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(Q)):(U.isub(N),Q.isub(W))}var J;return N.cmpn(1)===0?J=W:J=Q,J.cmpn(0)<0&&J.iadd(I),J},s.prototype.gcd=function(I){if(this.isZero())return I.abs();if(I.isZero())return this.abs();var N=this.clone(),U=I.clone();N.negative=0,U.negative=0;for(var W=0;N.isEven()&&U.isEven();W++)N.iushrn(1),U.iushrn(1);do{for(;N.isEven();)N.iushrn(1);for(;U.isEven();)U.iushrn(1);var Q=N.cmp(U);if(Q<0){var ue=N;N=U,U=ue}else if(Q===0||U.cmpn(1)===0)break;N.isub(U)}while(!0);return U.iushln(W)},s.prototype.invm=function(I){return this.egcd(I).a.umod(I)},s.prototype.isEven=function(){return(this.words[0]&1)===0},s.prototype.isOdd=function(){return(this.words[0]&1)===1},s.prototype.andln=function(I){return this.words[0]&I},s.prototype.bincn=function(I){i(typeof I=="number");var N=I%26,U=(I-N)/26,W=1<<N;if(this.length<=U)return this._expand(U+1),this.words[U]|=W,this;for(var Q=W,ue=U;Q!==0&&ue<this.length;ue++){var se=this.words[ue]|0;se+=Q,Q=se>>>26,se&=67108863,this.words[ue]=se}return Q!==0&&(this.words[ue]=Q,this.length++),this},s.prototype.isZero=function(){return this.length===1&&this.words[0]===0},s.prototype.cmpn=function(I){var N=I<0;if(this.negative!==0&&!N)return-1;if(this.negative===0&&N)return 1;this.strip();var U;if(this.length>1)U=1;else{N&&(I=-I),i(I<=67108863,"Number is too big");var W=this.words[0]|0;U=W===I?0:W<I?-1:1}return this.negative!==0?-U|0:U},s.prototype.cmp=function(I){if(this.negative!==0&&I.negative===0)return-1;if(this.negative===0&&I.negative!==0)return 1;var N=this.ucmp(I);return this.negative!==0?-N|0:N},s.prototype.ucmp=function(I){if(this.length>I.length)return 1;if(this.length<I.length)return-1;for(var N=0,U=this.length-1;U>=0;U--){var W=this.words[U]|0,Q=I.words[U]|0;if(W!==Q){W<Q?N=-1:W>Q&&(N=1);break}}return N},s.prototype.gtn=function(I){return this.cmpn(I)===1},s.prototype.gt=function(I){return this.cmp(I)===1},s.prototype.gten=function(I){return this.cmpn(I)>=0},s.prototype.gte=function(I){return this.cmp(I)>=0},s.prototype.ltn=function(I){return this.cmpn(I)===-1},s.prototype.lt=function(I){return this.cmp(I)===-1},s.prototype.lten=function(I){return this.cmpn(I)<=0},s.prototype.lte=function(I){return this.cmp(I)<=0},s.prototype.eqn=function(I){return this.cmpn(I)===0},s.prototype.eq=function(I){return this.cmp(I)===0},s.red=function(I){return new F(I)},s.prototype.toRed=function(I){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),I.convertTo(this)._forceRed(I)},s.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},s.prototype._forceRed=function(I){return this.red=I,this},s.prototype.forceRed=function(I){return i(!this.red,"Already a number in reduction context"),this._forceRed(I)},s.prototype.redAdd=function(I){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,I)},s.prototype.redIAdd=function(I){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,I)},s.prototype.redSub=function(I){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,I)},s.prototype.redISub=function(I){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,I)},s.prototype.redShl=function(I){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,I)},s.prototype.redMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.mul(this,I)},s.prototype.redIMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.imul(this,I)},s.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},s.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},s.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},s.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},s.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},s.prototype.redPow=function(I){return i(this.red&&!I.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,I)};var u={k256:null,p224:null,p192:null,p25519:null};function y(O,I){this.name=O,this.p=new s(I,16),this.n=this.p.bitLength(),this.k=new s(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}y.prototype._tmp=function(){var I=new s(null);return I.words=new Array(Math.ceil(this.n/13)),I},y.prototype.ireduce=function(I){var N=I,U;do this.split(N,this.tmp),N=this.imulK(N),N=N.iadd(this.tmp),U=N.bitLength();while(U>this.n);var W=U<this.n?-1:N.ucmp(this.p);return W===0?(N.words[0]=0,N.length=1):W>0?N.isub(this.p):N.strip!==void 0?N.strip():N._strip(),N},y.prototype.split=function(I,N){I.iushrn(this.n,0,N)},y.prototype.imulK=function(I){return I.imul(this.k)};function f(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}n(f,y),f.prototype.split=function(I,N){for(var U=4194303,W=Math.min(I.length,9),Q=0;Q<W;Q++)N.words[Q]=I.words[Q];if(N.length=W,I.length<=9){I.words[0]=0,I.length=1;return}var ue=I.words[9];for(N.words[N.length++]=ue&U,Q=10;Q<I.length;Q++){var se=I.words[Q]|0;I.words[Q-10]=(se&U)<<4|ue>>>22,ue=se}ue>>>=22,I.words[Q-10]=ue,ue===0&&I.length>10?I.length-=10:I.length-=9},f.prototype.imulK=function(I){I.words[I.length]=0,I.words[I.length+1]=0,I.length+=2;for(var N=0,U=0;U<I.length;U++){var W=I.words[U]|0;N+=W*977,I.words[U]=N&67108863,N=W*64+(N/67108864|0)}return I.words[I.length-1]===0&&(I.length--,I.words[I.length-1]===0&&I.length--),I};function P(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}n(P,y);function L(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}n(L,y);function z(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}n(z,y),z.prototype.imulK=function(I){for(var N=0,U=0;U<I.length;U++){var W=(I.words[U]|0)*19+N,Q=W&67108863;W>>>=26,I.words[U]=Q,N=W}return N!==0&&(I.words[I.length++]=N),I},s._prime=function(I){if(u[I])return u[I];var N;if(I==="k256")N=new f;else if(I==="p224")N=new P;else if(I==="p192")N=new L;else if(I==="p25519")N=new z;else throw new Error("Unknown prime "+I);return u[I]=N,N};function F(O){if(typeof O=="string"){var I=s._prime(O);this.m=I.p,this.prime=I}else i(O.gtn(1),"modulus must be greater than 1"),this.m=O,this.prime=null}F.prototype._verify1=function(I){i(I.negative===0,"red works only with positives"),i(I.red,"red works only with red numbers")},F.prototype._verify2=function(I,N){i((I.negative|N.negative)===0,"red works only with positives"),i(I.red&&I.red===N.red,"red works only with red numbers")},F.prototype.imod=function(I){return this.prime?this.prime.ireduce(I)._forceRed(this):I.umod(this.m)._forceRed(this)},F.prototype.neg=function(I){return I.isZero()?I.clone():this.m.sub(I)._forceRed(this)},F.prototype.add=function(I,N){this._verify2(I,N);var U=I.add(N);return U.cmp(this.m)>=0&&U.isub(this.m),U._forceRed(this)},F.prototype.iadd=function(I,N){this._verify2(I,N);var U=I.iadd(N);return U.cmp(this.m)>=0&&U.isub(this.m),U},F.prototype.sub=function(I,N){this._verify2(I,N);var U=I.sub(N);return U.cmpn(0)<0&&U.iadd(this.m),U._forceRed(this)},F.prototype.isub=function(I,N){this._verify2(I,N);var U=I.isub(N);return U.cmpn(0)<0&&U.iadd(this.m),U},F.prototype.shl=function(I,N){return this._verify1(I),this.imod(I.ushln(N))},F.prototype.imul=function(I,N){return this._verify2(I,N),this.imod(I.imul(N))},F.prototype.mul=function(I,N){return this._verify2(I,N),this.imod(I.mul(N))},F.prototype.isqr=function(I){return this.imul(I,I.clone())},F.prototype.sqr=function(I){return this.mul(I,I)},F.prototype.sqrt=function(I){if(I.isZero())return I.clone();var N=this.m.andln(3);if(i(N%2===1),N===3){var U=this.m.add(new s(1)).iushrn(2);return this.pow(I,U)}for(var W=this.m.subn(1),Q=0;!W.isZero()&&W.andln(1)===0;)Q++,W.iushrn(1);i(!W.isZero());var ue=new s(1).toRed(this),se=ue.redNeg(),he=this.m.subn(1).iushrn(1),G=this.m.bitLength();for(G=new s(2*G*G).toRed(this);this.pow(G,he).cmp(se)!==0;)G.redIAdd(se);for(var $=this.pow(G,W),J=this.pow(I,W.addn(1).iushrn(1)),Z=this.pow(I,W),re=Q;Z.cmp(ue)!==0;){for(var ne=Z,j=0;ne.cmp(ue)!==0;j++)ne=ne.redSqr();i(j<re);var ee=this.pow($,new s(1).iushln(re-j-1));J=J.redMul(ee),$=ee.redSqr(),Z=Z.redMul($),re=j}return J},F.prototype.invm=function(I){var N=I._invmp(this.m);return N.negative!==0?(N.negative=0,this.imod(N).redNeg()):this.imod(N)},F.prototype.pow=function(I,N){if(N.isZero())return new s(1).toRed(this);if(N.cmpn(1)===0)return I.clone();var U=4,W=new Array(1<<U);W[0]=new s(1).toRed(this),W[1]=I;for(var Q=2;Q<W.length;Q++)W[Q]=this.mul(W[Q-1],I);var ue=W[0],se=0,he=0,G=N.bitLength()%26;for(G===0&&(G=26),Q=N.length-1;Q>=0;Q--){for(var $=N.words[Q],J=G-1;J>=0;J--){var Z=$>>J&1;if(ue!==W[0]&&(ue=this.sqr(ue)),Z===0&&se===0){he=0;continue}se<<=1,se|=Z,he++,!(he!==U&&(Q!==0||J!==0))&&(ue=this.mul(ue,W[se]),he=0,se=0)}G=26}return ue},F.prototype.convertTo=function(I){var N=I.umod(this.m);return N===I?N.clone():N},F.prototype.convertFrom=function(I){var N=I.clone();return N.red=null,N},s.mont=function(I){return new B(I)};function B(O){F.call(this,O),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new s(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}n(B,F),B.prototype.convertTo=function(I){return this.imod(I.ushln(this.shift))},B.prototype.convertFrom=function(I){var N=this.imod(I.mul(this.rinv));return N.red=null,N},B.prototype.imul=function(I,N){if(I.isZero()||N.isZero())return I.words[0]=0,I.length=1,I;var U=I.imul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.mul=function(I,N){if(I.isZero()||N.isZero())return new s(0)._forceRed(this);var U=I.mul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.invm=function(I){var N=this.imod(I._invmp(this.m).mul(this.r2));return N._forceRed(this)}}(e,this)},6204:function(e){"use strict";e.exports=t;function t(r){var o,a,i,n=r.length,s=0;for(o=0;o<n;++o)s+=r[o].length;var c=new Array(s),h=0;for(o=0;o<n;++o){var v=r[o],p=v.length;for(a=0;a<p;++a){var T=c[h++]=new Array(p-1),l=0;for(i=0;i<p;++i)i!==a&&(T[l++]=v[i]);if(a&1){var _=T[1];T[1]=T[0],T[0]=_}}}return c}},6867:function(e,t,r){"use strict";e.exports=l;var o=r(1888),a=r(855),i=r(7150);function n(_,w){for(var S=0;S<_;++S)if(!(w[S]<=w[S+_]))return!0;return!1}function s(_,w,S,E){for(var m=0,b=0,d=0,u=_.length;d<u;++d){var y=_[d];if(!n(w,y)){for(var f=0;f<2*w;++f)S[m++]=y[f];E[b++]=d}}return b}function c(_,w,S,E){var m=_.length,b=w.length;if(!(m<=0||b<=0)){var d=_[0].length>>>1;if(!(d<=0)){var u,y=o.mallocDouble(2*d*m),f=o.mallocInt32(m);if(m=s(_,d,y,f),m>0){if(d===1&&E)a.init(m),u=a.sweepComplete(d,S,0,m,y,f,0,m,y,f);else{var P=o.mallocDouble(2*d*b),L=o.mallocInt32(b);b=s(w,d,P,L),b>0&&(a.init(m+b),d===1?u=a.sweepBipartite(d,S,0,m,y,f,0,b,P,L):u=i(d,S,E,m,y,f,b,P,L),o.free(P),o.free(L))}o.free(y),o.free(f)}return u}}}var h;function v(_,w){h.push([_,w])}function p(_){return h=[],c(_,_,v,!0),h}function T(_,w){return h=[],c(_,w,v,!1),h}function l(_,w,S){switch(arguments.length){case 1:return p(_);case 2:return typeof w=="function"?c(_,_,w,!0):T(_,w);case 3:return c(_,w,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(e,t){"use strict";function r(){function i(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=p,u=b*p;d<T;++d,u+=b){var y=l[h+u],f=l[h+u+c],P=_[d];e:for(var L=w,z=b*w;L<S;++L,z+=b){var F=E[h+z],B=E[h+z+c],O=m[L];if(!(B<y||f<F)){for(var I=h+1;I<c;++I){var N=l[I+u],U=l[I+c+u],W=E[I+z],Q=E[I+c+z];if(U<W||Q<N)continue e}var ue=v(P,O);if(ue!==void 0)return ue}}}}function n(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=w,u=b*w;d<S;++d,u+=b){var y=E[h+u],f=E[h+u+c],P=m[d];e:for(var L=p,z=b*p;L<T;++L,z+=b){var F=l[h+z],B=l[h+z+c],O=_[L];if(!(f<F||B<y)){for(var I=h+1;I<c;++I){var N=l[I+z],U=l[I+c+z],W=E[I+u],Q=E[I+c+u];if(U<W||Q<N)continue e}var ue=v(O,P);if(ue!==void 0)return ue}}}}function s(c,h,v,p,T,l,_,w,S,E,m){return T-p>S-w?i(c,h,v,p,T,l,_,w,S,E,m):n(c,h,v,p,T,l,_,w,S,E,m)}return s}function o(){function i(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;F<m;++F,B+=u){var O=b[p+B],I=d[F];if(!(O<=P||L<O)){for(var N=p+1;N<v;++N){var U=w[N+f],W=w[N+v+f],Q=b[N+B],ue=b[N+v+B];if(W<Q||ue<U)continue e}var se=T(I,z);if(se!==void 0)return se}}}}function n(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;F<m;++F,B+=u){var O=b[p+B],I=d[F];if(!(O<P||L<O)){for(var N=p+1;N<v;++N){var U=w[N+f],W=w[N+v+f],Q=b[N+B],ue=b[N+v+B];if(W<Q||ue<U)continue e}var se=T(z,I);if(se!==void 0)return se}}}}function s(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=E,f=u*E;y<m;++y,f+=u){var P=b[p+f],L=d[y];e:for(var z=l,F=u*l;z<_;++z,F+=u){var B=w[p+F],O=w[p+F+v],I=S[z];if(!(P<=B||O<P)){for(var N=p+1;N<v;++N){var U=w[N+F],W=w[N+v+F],Q=b[N+f],ue=b[N+v+f];if(W<Q||ue<U)continue e}var se=T(L,I);if(se!==void 0)return se}}}}function c(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=E,f=u*E;y<m;++y,f+=u){var P=b[p+f],L=d[y];e:for(var z=l,F=u*l;z<_;++z,F+=u){var B=w[p+F],O=w[p+F+v],I=S[z];if(!(P<B||O<P)){for(var N=p+1;N<v;++N){var U=w[N+F],W=w[N+v+F],Q=b[N+f],ue=b[N+v+f];if(W<Q||ue<U)continue e}var se=T(I,L);if(se!==void 0)return se}}}}function h(v,p,T,l,_,w,S,E,m,b,d,u){return w-_>b-m?l?i(v,p,T,_,w,S,E,m,b,d,u):n(v,p,T,_,w,S,E,m,b,d,u):l?s(v,p,T,_,w,S,E,m,b,d,u):c(v,p,T,_,w,S,E,m,b,d,u)}return h}function a(i){return i?r():o()}t.partial=a(!1),t.full=a(!0)},7150:function(e,t,r){"use strict";e.exports=O;var o=r(1888),a=r(8828),i=r(2455),n=i.partial,s=i.full,c=r(855),h=r(3545),v=r(8105),p=128,T=1<<22,l=1<<22,_=v("!(lo>=p0)&&!(p1>=hi)"),w=v("lo===p0"),S=v("lo<p0"),E=v("hi<=p0"),m=v("lo<=p0&&p0<=hi"),b=v("lo<p0&&p0<=hi"),d=6,u=2,y=1024,f=o.mallocInt32(y),P=o.mallocDouble(y);function L(I,N){var U=8*a.log2(N+1)*(I+1)|0,W=a.nextPow2(d*U);f.length<W&&(o.free(f),f=o.mallocInt32(W));var Q=a.nextPow2(u*U);P.length<Q&&(o.free(P),P=o.mallocDouble(Q))}function z(I,N,U,W,Q,ue,se,he,G){var $=d*I;f[$]=N,f[$+1]=U,f[$+2]=W,f[$+3]=Q,f[$+4]=ue,f[$+5]=se;var J=u*I;P[J]=he,P[J+1]=G}function F(I,N,U,W,Q,ue,se,he,G,$,J){var Z=2*I,re=G*Z,ne=$[re+N];e:for(var j=Q,ee=Q*Z;j<ue;++j,ee+=Z){var ie=se[ee+N],fe=se[ee+N+I];if(!(ne<ie||fe<ne)&&!(W&&ne===ie)){for(var be=he[j],Ae=N+1;Ae<I;++Ae){var ie=se[ee+Ae],fe=se[ee+Ae+I],Be=$[re+Ae],Ie=$[re+Ae+I];if(fe<Be||Ie<ie)continue e}var Ze;if(W?Ze=U(J,be):Ze=U(be,J),Ze!==void 0)return Ze}}}function B(I,N,U,W,Q,ue,se,he,G,$){var J=2*I,Z=he*J,re=G[Z+N];e:for(var ne=W,j=W*J;ne<Q;++ne,j+=J){var ee=se[ne];if(ee!==$){var ie=ue[j+N],fe=ue[j+N+I];if(!(re<ie||fe<re)){for(var be=N+1;be<I;++be){var ie=ue[j+be],fe=ue[j+be+I],Ae=G[Z+be],Be=G[Z+be+I];if(fe<Ae||Be<ie)continue e}var Ie=U(ee,$);if(Ie!==void 0)return Ie}}}}function O(I,N,U,W,Q,ue,se,he,G){L(I,W+se);var $=0,J=2*I,Z;for(z($++,0,0,W,0,se,U?16:0,-1/0,1/0),U||z($++,0,0,se,0,W,1,-1/0,1/0);$>0;){$-=1;var re=$*d,ne=f[re],j=f[re+1],ee=f[re+2],ie=f[re+3],fe=f[re+4],be=f[re+5],Ae=$*u,Be=P[Ae],Ie=P[Ae+1],Ze=be&1,at=!!(be&16),it=Q,et=ue,lt=he,Me=G;if(Ze&&(it=he,et=G,lt=Q,Me=ue),!(be&2&&(ee=S(I,ne,j,ee,it,et,Ie),j>=ee))&&!(be&4&&(j=E(I,ne,j,ee,it,et,Be),j>=ee))){var ge=ee-j,ce=fe-ie;if(at){if(I*ge*(ge+ce)<l){if(Z=c.scanComplete(I,ne,N,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}}else if(I*Math.min(ge,ce)<p){if(Z=n(I,ne,N,Ze,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}else if(I*ge*ce<T){if(Z=c.scanBipartite(I,ne,N,Ze,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}var ze=_(I,ne,j,ee,it,et,Be,Ie);if(j<ze)if(I*(ze-j)<p){if(Z=s(I,ne+1,N,j,ze,it,et,ie,fe,lt,Me),Z!==void 0)return Z}else if(ne===I-2){if(Ze?Z=c.sweepBipartite(I,N,ie,fe,lt,Me,j,ze,it,et):Z=c.sweepBipartite(I,N,j,ze,it,et,ie,fe,lt,Me),Z!==void 0)return Z}else z($++,ne+1,j,ze,ie,fe,Ze,-1/0,1/0),z($++,ne+1,ie,fe,j,ze,Ze^1,-1/0,1/0);if(ze<ee){var tt=h(I,ne,ie,fe,lt,Me),nt=lt[J*tt+ne],Qe=w(I,ne,tt,fe,lt,Me,nt);if(Qe<fe&&z($++,ne,ze,ee,Qe,fe,(Ze|4)+(at?16:0),nt,Ie),ie<tt&&z($++,ne,ze,ee,ie,tt,(Ze|2)+(at?16:0),Be,nt),tt+1===Qe){if(at?Z=B(I,ne,N,ze,ee,it,et,tt,lt,Me[tt]):Z=F(I,ne,N,Ze,ze,ee,it,et,tt,lt,Me[tt]),Z!==void 0)return Z}else if(tt<Qe){var Ct;if(at){if(Ct=m(I,ne,ze,ee,it,et,nt),ze<Ct){var St=w(I,ne,ze,Ct,it,et,nt);if(ne===I-2){if(ze<St&&(Z=c.sweepComplete(I,N,ze,St,it,et,tt,Qe,lt,Me),Z!==void 0)||St<Ct&&(Z=c.sweepBipartite(I,N,St,Ct,it,et,tt,Qe,lt,Me),Z!==void 0))return Z}else ze<St&&z($++,ne+1,ze,St,tt,Qe,16,-1/0,1/0),St<Ct&&(z($++,ne+1,St,Ct,tt,Qe,0,-1/0,1/0),z($++,ne+1,tt,Qe,St,Ct,1,-1/0,1/0))}}else Ze?Ct=b(I,ne,ze,ee,it,et,nt):Ct=m(I,ne,ze,ee,it,et,nt),ze<Ct&&(ne===I-2?Ze?Z=c.sweepBipartite(I,N,tt,Qe,lt,Me,ze,Ct,it,et):Z=c.sweepBipartite(I,N,ze,Ct,it,et,tt,Qe,lt,Me):(z($++,ne+1,ze,Ct,tt,Qe,Ze,-1/0,1/0),z($++,ne+1,tt,Qe,ze,Ct,Ze^1,-1/0,1/0)))}}}}}},3545:function(e,t,r){"use strict";e.exports=s;var o=r(8105),a=o("lo<p0"),i=8;function n(c,h,v,p,T,l){for(var _=2*c,w=_*(v+1)+h,S=v+1;S<p;++S,w+=_)for(var E=T[w],m=S,b=_*(S-1);m>v&&T[b+h]>E;--m,b-=_){for(var d=b,u=b+_,y=0;y<_;++y,++d,++u){var f=T[d];T[d]=T[u],T[u]=f}var P=l[m];l[m]=l[m-1],l[m-1]=P}}function s(c,h,v,p,T,l){if(p<=v+1)return v;for(var _=v,w=p,S=p+v>>>1,E=2*c,m=S,b=T[E*S+h];_<w;){if(w-_<i){n(c,h,_,w,T,l),b=T[E*S+h];break}var d=w-_,u=Math.random()*d+_|0,y=T[E*u+h],f=Math.random()*d+_|0,P=T[E*f+h],L=Math.random()*d+_|0,z=T[E*L+h];y<=P?z>=P?(m=f,b=P):y>=z?(m=u,b=y):(m=L,b=z):P>=z?(m=f,b=P):z>=y?(m=u,b=y):(m=L,b=z);for(var O=E*(w-1),I=E*m,F=0;F<E;++F,++O,++I){var B=T[O];T[O]=T[I],T[I]=B}var N=l[w-1];l[w-1]=l[m],l[m]=N,m=a(c,h,_,w-1,T,l,b);for(var O=E*(w-1),I=E*m,F=0;F<E;++F,++O,++I){var B=T[O];T[O]=T[I],T[I]=B}var N=l[w-1];if(l[w-1]=l[m],l[m]=N,S<m){for(w=m-1;_<w&&T[E*(w-1)+h]===b;)w-=1;w+=1}else if(m<S)for(_=m+1;_<w&&T[E*_+h]===b;)_+=1;else break}return a(c,h,v,S,T,l,T[E*S+h])}},8105:function(e){"use strict";e.exports=r;var t={"lo===p0":o,"lo<p0":a,"lo<=p0":i,"hi<=p0":n,"lo<p0&&p0<=hi":c,"lo<=p0&&p0<=hi":s,"!(lo>=p0)&&!(p1>=hi)":h};function r(v){return t[v]}function o(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P===S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function a(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P<S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function i(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function n(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function s(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<=S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function c(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function h(v,p,T,l,_,w,S,E){for(var m=2*v,b=m*T,d=b,u=T,y=p,f=v+p,P=T;l>P;++P,b+=m){var L=_[b+y],z=_[b+f];if(!(L>=S)&&!(E>=z))if(u===P)u+=1,d+=m;else{for(var F=0;m>F;++F){var B=_[b+F];_[b+F]=_[d],_[d++]=B}var O=w[P];w[P]=w[u],w[u++]=O}}return u}},4192:function(e){"use strict";e.exports=r;var t=32;function r(p,T){T<=4*t?o(0,T-1,p):v(0,T-1,p)}function o(p,T,l){for(var _=2*(p+1),w=p+1;w<=T;++w){for(var S=l[_++],E=l[_++],m=w,b=_-2;m-- >p;){var d=l[b-2],u=l[b-1];if(d<S)break;if(d===S&&u<E)break;l[b]=d,l[b+1]=u,b-=2}l[b]=S,l[b+1]=E}}function a(p,T,l){p*=2,T*=2;var _=l[p],w=l[p+1];l[p]=l[T],l[p+1]=l[T+1],l[T]=_,l[T+1]=w}function i(p,T,l){p*=2,T*=2,l[p]=l[T],l[p+1]=l[T+1]}function n(p,T,l,_){p*=2,T*=2,l*=2;var w=_[p],S=_[p+1];_[p]=_[T],_[p+1]=_[T+1],_[T]=_[l],_[T+1]=_[l+1],_[l]=w,_[l+1]=S}function s(p,T,l,_,w){p*=2,T*=2,w[p]=w[T],w[T]=l,w[p+1]=w[T+1],w[T+1]=_}function c(p,T,l){p*=2,T*=2;var _=l[p],w=l[T];return _<w?!1:_===w?l[p+1]>l[T+1]:!0}function h(p,T,l,_){p*=2;var w=_[p];return w<T?!0:w===T?_[p+1]<l:!1}function v(p,T,l){var _=(T-p+1)/6|0,w=p+_,S=T-_,E=p+T>>1,m=E-_,b=E+_,d=w,u=m,y=E,f=b,P=S,L=p+1,z=T-1,F=0;c(d,u,l)&&(F=d,d=u,u=F),c(f,P,l)&&(F=f,f=P,P=F),c(d,y,l)&&(F=d,d=y,y=F),c(u,y,l)&&(F=u,u=y,y=F),c(d,f,l)&&(F=d,d=f,f=F),c(y,f,l)&&(F=y,y=f,f=F),c(u,P,l)&&(F=u,u=P,P=F),c(u,y,l)&&(F=u,u=y,y=F),c(f,P,l)&&(F=f,f=P,P=F);for(var B=l[2*u],O=l[2*u+1],I=l[2*f],N=l[2*f+1],U=2*d,W=2*y,Q=2*P,ue=2*w,se=2*E,he=2*S,G=0;G<2;++G){var $=l[U+G],J=l[W+G],Z=l[Q+G];l[ue+G]=$,l[se+G]=J,l[he+G]=Z}i(m,p,l),i(b,T,l);for(var re=L;re<=z;++re)if(h(re,B,O,l))re!==L&&a(re,L,l),++L;else if(!h(re,I,N,l))for(;;)if(h(z,I,N,l)){h(z,B,O,l)?(n(re,L,z,l),++L,--z):(a(re,z,l),--z);break}else{if(--z<re)break;continue}s(p,L-1,B,O,l),s(T,z+1,I,N,l),L-2-p<=t?o(p,L-2,l):v(p,L-2,l),T-(z+2)<=t?o(z+2,T,l):v(z+2,T,l),z-L<=t?o(L,z,l):v(L,z,l)}},855:function(e,t,r){"use strict";e.exports={init:w,sweepBipartite:m,sweepComplete:b,scanBipartite:d,scanComplete:u};var o=r(1888),a=r(8828),i=r(4192),n=1<<28,s=1024,c=o.mallocInt32(s),h=o.mallocInt32(s),v=o.mallocInt32(s),p=o.mallocInt32(s),T=o.mallocInt32(s),l=o.mallocInt32(s),_=o.mallocDouble(s*8);function w(y){var f=a.nextPow2(y);c.length<f&&(o.free(c),c=o.mallocInt32(f)),h.length<f&&(o.free(h),h=o.mallocInt32(f)),v.length<f&&(o.free(v),v=o.mallocInt32(f)),p.length<f&&(o.free(p),p=o.mallocInt32(f)),T.length<f&&(o.free(T),T=o.mallocInt32(f)),l.length<f&&(o.free(l),l=o.mallocInt32(f));var P=8*f;_.length<P&&(o.free(_),_=o.mallocDouble(P))}function S(y,f,P,L){var z=f[L],F=y[P-1];y[z]=F,f[F]=z}function E(y,f,P,L){y[P]=L,f[L]=P}function m(y,f,P,L,z,F,B,O,I,N){for(var U=0,W=2*y,Q=y-1,ue=W-1,se=P;se<L;++se){var he=F[se],G=W*se;_[U++]=z[G+Q],_[U++]=-(he+1),_[U++]=z[G+ue],_[U++]=he}for(var se=B;se<O;++se){var he=N[se]+n,$=W*se;_[U++]=I[$+Q],_[U++]=-he,_[U++]=I[$+ue],_[U++]=he}var J=U>>>1;i(_,J);for(var Z=0,re=0,se=0;se<J;++se){var ne=_[2*se+1]|0;if(ne>=n)ne=ne-n|0,S(v,p,re--,ne);else if(ne>=0)S(c,h,Z--,ne);else if(ne<=-n){ne=-ne-n|0;for(var j=0;j<Z;++j){var ee=f(c[j],ne);if(ee!==void 0)return ee}E(v,p,re++,ne)}else{ne=-ne-1|0;for(var j=0;j<re;++j){var ee=f(ne,v[j]);if(ee!==void 0)return ee}E(c,h,Z++,ne)}}}function b(y,f,P,L,z,F,B,O,I,N){for(var U=0,W=2*y,Q=y-1,ue=W-1,se=P;se<L;++se){var he=F[se]+1<<1,G=W*se;_[U++]=z[G+Q],_[U++]=-he,_[U++]=z[G+ue],_[U++]=he}for(var se=B;se<O;++se){var he=N[se]+1<<1,$=W*se;_[U++]=I[$+Q],_[U++]=-he|1,_[U++]=I[$+ue],_[U++]=he|1}var J=U>>>1;i(_,J);for(var Z=0,re=0,ne=0,se=0;se<J;++se){var j=_[2*se+1]|0,ee=j&1;if(se<J-1&&j>>1===_[2*se+3]>>1&&(ee=2,se+=1),j<0){for(var ie=-(j>>1)-1,fe=0;fe<ne;++fe){var be=f(T[fe],ie);if(be!==void 0)return be}if(ee!==0)for(var fe=0;fe<Z;++fe){var be=f(c[fe],ie);if(be!==void 0)return be}if(ee!==1)for(var fe=0;fe<re;++fe){var be=f(v[fe],ie);if(be!==void 0)return be}ee===0?E(c,h,Z++,ie):ee===1?E(v,p,re++,ie):ee===2&&E(T,l,ne++,ie)}else{var ie=(j>>1)-1;ee===0?S(c,h,Z--,ie):ee===1?S(v,p,re--,ie):ee===2&&S(T,l,ne--,ie)}}}function d(y,f,P,L,z,F,B,O,I,N,U,W){var Q=0,ue=2*y,se=f,he=f+y,G=1,$=1;L?$=n:G=n;for(var J=z;J<F;++J){var Z=J+G,re=ue*J;_[Q++]=B[re+se],_[Q++]=-Z,_[Q++]=B[re+he],_[Q++]=Z}for(var J=I;J<N;++J){var Z=J+$,ne=ue*J;_[Q++]=U[ne+se],_[Q++]=-Z}var j=Q>>>1;i(_,j);for(var ee=0,J=0;J<j;++J){var ie=_[2*J+1]|0;if(ie<0){var Z=-ie,fe=!1;if(Z>=n?(fe=!L,Z-=n):(fe=!!L,Z-=1),fe)E(c,h,ee++,Z);else{var be=W[Z],Ae=ue*Z,Be=U[Ae+f+1],Ie=U[Ae+f+1+y];e:for(var Ze=0;Ze<ee;++Ze){var at=c[Ze],it=ue*at;if(!(Ie<B[it+f+1]||B[it+f+1+y]<Be)){for(var et=f+2;et<y;++et)if(U[Ae+et+y]<B[it+et]||B[it+et+y]<U[Ae+et])continue e;var lt=O[at],Me;if(L?Me=P(be,lt):Me=P(lt,be),Me!==void 0)return Me}}}}else S(c,h,ee--,ie-G)}}function u(y,f,P,L,z,F,B,O,I,N,U){for(var W=0,Q=2*y,ue=f,se=f+y,he=L;he<z;++he){var G=he+n,$=Q*he;_[W++]=F[$+ue],_[W++]=-G,_[W++]=F[$+se],_[W++]=G}for(var he=O;he<I;++he){var G=he+1,J=Q*he;_[W++]=N[J+ue],_[W++]=-G}var Z=W>>>1;i(_,Z);for(var re=0,he=0;he<Z;++he){var ne=_[2*he+1]|0;if(ne<0){var G=-ne;if(G>=n)c[re++]=G-n;else{G-=1;var j=U[G],ee=Q*G,ie=N[ee+f+1],fe=N[ee+f+1+y];e:for(var be=0;be<re;++be){var Ae=c[be],Be=B[Ae];if(Be===j)break;var Ie=Q*Ae;if(!(fe<F[Ie+f+1]||F[Ie+f+1+y]<ie)){for(var Ze=f+2;Ze<y;++Ze)if(N[ee+Ze+y]<F[Ie+Ze]||F[Ie+Ze+y]<N[ee+Ze])continue e;var at=P(Be,j);if(at!==void 0)return at}}}}else{for(var G=ne-n,be=re-1;be>=0;--be)if(c[be]===G){for(var Ze=be+1;Ze<re;++Ze)c[Ze-1]=c[Ze];break}--re}}}},2538:function(e,t,r){"use strict";var o=r(8902),a=r(5542),i=r(2272),n=r(5023);e.exports=p;function s(T){return[Math.min(T[0],T[1]),Math.max(T[0],T[1])]}function c(T,l){return T[0]-l[0]||T[1]-l[1]}function h(T){return T.map(s).sort(c)}function v(T,l,_){return l in T?T[l]:_}function p(T,l,_){Array.isArray(l)?(_=_||{},l=l||[]):(_=l||{},l=[]);var w=!!v(_,"delaunay",!0),S=!!v(_,"interior",!0),E=!!v(_,"exterior",!0),m=!!v(_,"infinity",!1);if(!S&&!E||T.length===0)return[];var b=o(T,l);if(w||S!==E||m){for(var d=a(T.length,h(l)),u=0;u<b.length;++u){var y=b[u];d.addTriangle(y[0],y[1],y[2])}return w&&i(T,d),E?S?m?n(d,0,m):d.cells():n(d,1,m):n(d,-1)}else return b}},2272:function(e,t,r){"use strict";var o=r(2646)[4],a=r(2478);e.exports=n;function i(s,c,h,v,p,T){var l=c.opposite(v,p);if(!(l<0)){if(p<v){var _=v;v=p,p=_,_=T,T=l,l=_}c.isConstraint(v,p)||o(s[v],s[p],s[T],s[l])<0&&h.push(v,p)}}function n(s,c){for(var h=[],v=s.length,p=c.stars,T=0;T<v;++T)for(var l=p[T],_=1;_<l.length;_+=2){var w=l[_];if(!(w<T)&&!c.isConstraint(T,w)){for(var S=l[_-1],E=-1,m=1;m<l.length;m+=2)if(l[m-1]===w){E=l[m];break}E<0||o(s[T],s[w],s[S],s[E])<0&&h.push(T,w)}}for(;h.length>0;){for(var w=h.pop(),T=h.pop(),S=-1,E=-1,l=p[T],b=1;b<l.length;b+=2){var d=l[b-1],u=l[b];d===w?E=u:u===w&&(S=d)}S<0||E<0||o(s[T],s[w],s[S],s[E])>=0||(c.flip(T,w),i(s,c,h,S,T,E),i(s,c,h,T,E,S),i(s,c,h,E,w,S),i(s,c,h,w,S,E))}}},5023:function(e,t,r){"use strict";var o=r(2478);e.exports=h;function a(v,p,T,l,_,w,S){this.cells=v,this.neighbor=p,this.flags=l,this.constraint=T,this.active=_,this.next=w,this.boundary=S}var i=a.prototype;function n(v,p){return v[0]-p[0]||v[1]-p[1]||v[2]-p[2]}i.locate=function(){var v=[0,0,0];return function(p,T,l){var _=p,w=T,S=l;return T<l?T<p&&(_=T,w=l,S=p):l<p&&(_=l,w=p,S=T),_<0?-1:(v[0]=_,v[1]=w,v[2]=S,o.eq(this.cells,v,n))}}();function s(v,p){for(var T=v.cells(),l=T.length,_=0;_<l;++_){var w=T[_],S=w[0],E=w[1],m=w[2];E<m?E<S&&(w[0]=E,w[1]=m,w[2]=S):m<S&&(w[0]=m,w[1]=S,w[2]=E)}T.sort(n);for(var b=new Array(l),_=0;_<b.length;++_)b[_]=0;var d=[],u=[],y=new Array(3*l),f=new Array(3*l),P=null;p&&(P=[]);for(var L=new a(T,y,f,b,d,u,P),_=0;_<l;++_)for(var w=T[_],z=0;z<3;++z){var S=w[z],E=w[(z+1)%3],F=y[3*_+z]=L.locate(E,S,v.opposite(E,S)),B=f[3*_+z]=v.isConstraint(S,E);F<0&&(B?u.push(_):(d.push(_),b[_]=1),p&&P.push([E,S,-1]))}return L}function c(v,p,T){for(var l=0,_=0;_<v.length;++_)p[_]===T&&(v[l++]=v[_]);return v.length=l,v}function h(v,p,T){var l=s(v,T);if(p===0)return T?l.cells.concat(l.boundary):l.cells;for(var _=1,w=l.active,S=l.next,E=l.flags,m=l.cells,b=l.constraint,d=l.neighbor;w.length>0||S.length>0;){for(;w.length>0;){var u=w.pop();if(E[u]!==-_){E[u]=_;for(var y=m[u],f=0;f<3;++f){var P=d[3*u+f];P>=0&&E[P]===0&&(b[3*u+f]?S.push(P):(w.push(P),E[P]=_))}}}var L=S;S=w,w=L,S.length=0,_=-_}var z=c(m,E,p);return T?z.concat(l.boundary):z}},8902:function(e,t,r){"use strict";var o=r(2478),a=r(3250)[3],i=0,n=1,s=2;e.exports=S;function c(E,m,b,d,u){this.a=E,this.b=m,this.idx=b,this.lowerIds=d,this.upperIds=u}function h(E,m,b,d){this.a=E,this.b=m,this.type=b,this.idx=d}function v(E,m){var b=E.a[0]-m.a[0]||E.a[1]-m.a[1]||E.type-m.type;return b||E.type!==i&&(b=a(E.a,E.b,m.b),b)?b:E.idx-m.idx}function p(E,m){return a(E.a,E.b,m)}function T(E,m,b,d,u){for(var y=o.lt(m,d,p),f=o.gt(m,d,p),P=y;P<f;++P){for(var L=m[P],z=L.lowerIds,B=z.length;B>1&&a(b[z[B-2]],b[z[B-1]],d)>0;)E.push([z[B-1],z[B-2],u]),B-=1;z.length=B,z.push(u);for(var F=L.upperIds,B=F.length;B>1&&a(b[F[B-2]],b[F[B-1]],d)<0;)E.push([F[B-2],F[B-1],u]),B-=1;F.length=B,F.push(u)}}function l(E,m){var b;return E.a[0]<m.a[0]?b=a(E.a,E.b,m.a):b=a(m.b,m.a,E.a),b||(m.b[0]<E.b[0]?b=a(E.a,E.b,m.b):b=a(m.b,m.a,E.b),b||E.idx-m.idx)}function _(E,m,b){var d=o.le(E,b,l),u=E[d],y=u.upperIds,f=y[y.length-1];u.upperIds=[f],E.splice(d+1,0,new c(b.a,b.b,b.idx,[f],y))}function w(E,m,b){var d=b.a;b.a=b.b,b.b=d;var u=o.eq(E,b,l),y=E[u],f=E[u-1];f.upperIds=y.upperIds,E.splice(u,1)}function S(E,m){for(var b=E.length,d=m.length,u=[],y=0;y<b;++y)u.push(new h(E[y],null,i,y));for(var y=0;y<d;++y){var f=m[y],P=E[f[0]],L=E[f[1]];P[0]<L[0]?u.push(new h(P,L,s,y),new h(L,P,n,y)):P[0]>L[0]&&u.push(new h(L,P,s,y),new h(P,L,n,y))}u.sort(v);for(var z=u[0].a[0]-(1+Math.abs(u[0].a[0]))*Math.pow(2,-52),F=[new c([z,1],[z,0],-1,[],[],[],[])],B=[],y=0,O=u.length;y<O;++y){var I=u[y],N=I.type;N===i?T(B,F,E,I.a,I.idx):N===s?_(F,E,I):w(F,E,I)}return B}},5542:function(e,t,r){"use strict";var o=r(2478);e.exports=s;function a(c,h){this.stars=c,this.edges=h}var i=a.prototype;function n(c,h,v){for(var p=1,T=c.length;p<T;p+=2)if(c[p-1]===h&&c[p]===v){c[p-1]=c[T-2],c[p]=c[T-1],c.length=T-2;return}}i.isConstraint=function(){var c=[0,0];function h(v,p){return v[0]-p[0]||v[1]-p[1]}return function(v,p){return c[0]=Math.min(v,p),c[1]=Math.max(v,p),o.eq(this.edges,c,h)>=0}}(),i.removeTriangle=function(c,h,v){var p=this.stars;n(p[c],h,v),n(p[h],v,c),n(p[v],c,h)},i.addTriangle=function(c,h,v){var p=this.stars;p[c].push(h,v),p[h].push(v,c),p[v].push(c,h)},i.opposite=function(c,h){for(var v=this.stars[h],p=1,T=v.length;p<T;p+=2)if(v[p]===c)return v[p-1];return-1},i.flip=function(c,h){var v=this.opposite(c,h),p=this.opposite(h,c);this.removeTriangle(c,h,v),this.removeTriangle(h,c,p),this.addTriangle(c,p,v),this.addTriangle(h,v,p)},i.edges=function(){for(var c=this.stars,h=[],v=0,p=c.length;v<p;++v)for(var T=c[v],l=0,_=T.length;l<_;l+=2)h.push([T[l],T[l+1]]);return h},i.cells=function(){for(var c=this.stars,h=[],v=0,p=c.length;v<p;++v)for(var T=c[v],l=0,_=T.length;l<_;l+=2){var w=T[l],S=T[l+1];v<Math.min(w,S)&&h.push([v,w,S])}return h};function s(c,h){for(var v=new Array(c),p=0;p<c;++p)v[p]=[];return new a(v,h)}},2419:function(e){"use strict";e.exports=t;function t(r){for(var o=1,a=1;a<r.length;++a)for(var i=0;i<a;++i)if(r[a]<r[i])o=-o;else if(r[i]===r[a])return 0;return o}},3628:function(e,t,r){"use strict";var o=r(1338),a=r(727);function i(c,h){for(var v=0,p=c.length,T=0;T<p;++T)v+=c[T]*h[T];return v}function n(c){var h=c.length;if(h===0)return[];var v=c[0].length,p=o([c.length+1,c.length+1],1),T=o([c.length+1],1);p[h][h]=0;for(var l=0;l<h;++l){for(var _=0;_<=l;++_)p[_][l]=p[l][_]=2*i(c[l],c[_]);T[l]=i(c[l],c[l])}for(var w=a(p,T),S=0,E=w[h+1],l=0;l<E.length;++l)S+=E[l];for(var m=new Array(h),l=0;l<h;++l){for(var E=w[l],b=0,_=0;_<E.length;++_)b+=E[_];m[l]=b/S}return m}function s(c){if(c.length===0)return[];for(var h=c[0].length,v=o([h]),p=n(c),T=0;T<c.length;++T)for(var l=0;l<h;++l)v[l]+=c[T][l]*p[T];return v}s.barycenetric=n,e.exports=s},6037:function(e,t,r){e.exports=a;var o=r(3628);function a(i){for(var n=o(i),s=0,c=0;c<i.length;++c)for(var h=i[c],v=0;v<n.length;++v)s+=Math.pow(h[v]-n[v],2);return Math.sqrt(s/i.length)}},332:function(e,t,r){"use strict";e.exports=P;var o=r(1755),a=r(6867),i=r(1125),n=r(7842),s=r(1318),c=r(946),h=r(5838),v=r(1278),p=r(3637);function T(L){var z=c(L);return[v(z,-1/0),v(z,1/0)]}function l(L,z){for(var F=new Array(z.length),B=0;B<z.length;++B){var O=z[B],I=L[O[0]],N=L[O[1]];F[B]=[v(Math.min(I[0],N[0]),-1/0),v(Math.min(I[1],N[1]),-1/0),v(Math.max(I[0],N[0]),1/0),v(Math.max(I[1],N[1]),1/0)]}return F}function _(L){for(var z=new Array(L.length),F=0;F<L.length;++F){var B=L[F];z[F]=[v(B[0],-1/0),v(B[1],-1/0),v(B[0],1/0),v(B[1],1/0)]}return z}function w(L,z,F){var B=[];return a(F,function(O,I){var N=z[O],U=z[I];if(!(N[0]===U[0]||N[0]===U[1]||N[1]===U[0]||N[1]===U[1])){var W=L[N[0]],Q=L[N[1]],ue=L[U[0]],se=L[U[1]];i(W,Q,ue,se)&&B.push([O,I])}}),B}function S(L,z,F,B){var O=[];return a(F,B,function(I,N){var U=z[I];if(!(U[0]===N||U[1]===N)){var W=L[N],Q=L[U[0]],ue=L[U[1]];i(Q,ue,W,W)&&O.push([I,N])}}),O}function E(L,z,F,B,O){var I,N,U=L.map(function(Ae){return[n(Ae[0]),n(Ae[1])]});for(I=0;I<F.length;++I){var W=F[I];N=W[0];var Q=W[1],ue=z[N],se=z[Q],he=p(h(L[ue[0]]),h(L[ue[1]]),h(L[se[0]]),h(L[se[1]]));if(he){var G=L.length;L.push([c(he[0]),c(he[1])]),U.push(he),B.push([N,G],[Q,G])}}for(B.sort(function(Ae,Be){if(Ae[0]!==Be[0])return Ae[0]-Be[0];var Ie=U[Ae[1]],Ze=U[Be[1]];return s(Ie[0],Ze[0])||s(Ie[1],Ze[1])}),I=B.length-1;I>=0;--I){var $=B[I];N=$[0];var J=z[N],Z=J[0],re=J[1],ne=L[Z],j=L[re];if((ne[0]-j[0]||ne[1]-j[1])<0){var ee=Z;Z=re,re=ee}J[0]=Z;var ie=J[1]=$[1],fe;for(O&&(fe=J[2]);I>0&&B[I-1][0]===N;){var $=B[--I],be=$[1];O?z.push([ie,be,fe]):z.push([ie,be]),ie=be}O?z.push([ie,re,fe]):z.push([ie,re])}return U}function m(L,z,F){for(var B=z.length,O=new o(B),I=[],N=0;N<z.length;++N){var U=z[N],W=T(U[0]),Q=T(U[1]);I.push([v(W[0],-1/0),v(Q[0],-1/0),v(W[1],1/0),v(Q[1],1/0)])}a(I,function($,J){O.link($,J)});for(var ue=!0,se=new Array(B),N=0;N<B;++N){var he=O.find(N);he!==N&&(ue=!1,L[he]=[Math.min(L[N][0],L[he][0]),Math.min(L[N][1],L[he][1])])}if(ue)return null;for(var G=0,N=0;N<B;++N){var he=O.find(N);he===N?(se[N]=G,L[G++]=L[N]):se[N]=-1}L.length=G;for(var N=0;N<B;++N)se[N]<0&&(se[N]=se[O.find(N)]);return se}function b(L,z){return L[0]-z[0]||L[1]-z[1]}function d(L,z){var F=L[0]-z[0]||L[1]-z[1];return F||(L[2]<z[2]?-1:L[2]>z[2]?1:0)}function u(L,z,F){if(L.length!==0){if(z)for(var B=0;B<L.length;++B){var O=L[B],I=z[O[0]],N=z[O[1]];O[0]=Math.min(I,N),O[1]=Math.max(I,N)}else for(var B=0;B<L.length;++B){var O=L[B],I=O[0],N=O[1];O[0]=Math.min(I,N),O[1]=Math.max(I,N)}F?L.sort(d):L.sort(b);for(var U=1,B=1;B<L.length;++B){var W=L[B-1],Q=L[B];Q[0]===W[0]&&Q[1]===W[1]&&(!F||Q[2]===W[2])||(L[U++]=Q)}L.length=U}}function y(L,z,F){var B=m(L,[],_(L));return u(z,B,F),!!B}function f(L,z,F){var B=l(L,z),O=w(L,z,B),I=_(L),N=S(L,z,B,I),U=E(L,z,O,N,F),W=m(L,U,I);return u(z,W,F),W?!0:O.length>0||N.length>0}function P(L,z,F){var B;if(F){B=z;for(var O=new Array(z.length),I=0;I<z.length;++I){var N=z[I];O[I]=[N[0],N[1],F[I]]}z=O}for(var U=y(L,z,!!F);f(L,z,!!F);)U=!0;if(F&&U){B.length=0,F.length=0;for(var I=0;I<z.length;++I){var N=z[I];B.push([N[0],N[1]]),F.push(N[2])}}return U}},3637:function(e,t,r){"use strict";e.exports=p;var o=r(6504),a=r(8697),i=r(5572),n=r(7721),s=r(544),c=r(2653),h=r(8987);function v(T,l){return i(o(T[0],l[1]),o(T[1],l[0]))}function p(T,l,_,w){var S=s(l,T),E=s(w,_),m=v(S,E);if(n(m)===0)return null;var b=s(T,_),d=v(E,b),u=a(d,m),y=h(S,u),f=c(T,y);return f}},3642:function(e){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],"rainbow-soft":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],"freesurface-blue":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],"freesurface-red":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],"velocity-blue":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],"velocity-green":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},6729:function(e,t,r){"use strict";var o=r(3642),a=r(395);e.exports=i;function i(h){var v,p,T,l,_,w,S,E,u,m,b;if(h||(h={}),E=(h.nshades||72)-1,S=h.format||"hex",w=h.colormap,w||(w="jet"),typeof w=="string"){if(w=w.toLowerCase(),!o[w])throw Error(w+" not a supported colorscale");_=o[w]}else if(Array.isArray(w))_=w.slice();else throw Error("unsupported colormap option",w);if(_.length>E+1)throw new Error(w+" map requires nshades to be at least size "+_.length);Array.isArray(h.alpha)?h.alpha.length!==2?m=[1,1]:m=h.alpha.slice():typeof h.alpha=="number"?m=[h.alpha,h.alpha]:m=[1,1],v=_.map(function(P){return Math.round(P.index*E)}),m[0]=Math.min(Math.max(m[0],0),1),m[1]=Math.min(Math.max(m[1],0),1);var d=_.map(function(P,L){var z=_[L].index,F=_[L].rgb.slice();return F.length===4&&F[3]>=0&&F[3]<=1||(F[3]=m[0]+(m[1]-m[0])*z),F}),u=[];for(b=0;b<v.length-1;++b){l=v[b+1]-v[b],p=d[b],T=d[b+1];for(var y=0;y<l;y++){var f=y/l;u.push([Math.round(a(p[0],T[0],f)),Math.round(a(p[1],T[1],f)),Math.round(a(p[2],T[2],f)),a(p[3],T[3],f)])}}return u.push(_[_.length-1].rgb.concat(m[1])),S==="hex"?u=u.map(s):S==="rgbaString"?u=u.map(c):S==="float"&&(u=u.map(n)),u}function n(h){return[h[0]/255,h[1]/255,h[2]/255,h[3]]}function s(h){for(var v,p="#",T=0;T<3;++T)v=h[T],v=v.toString(16),p+=("00"+v).substr(v.length);return p}function c(h){return"rgba("+h.join(",")+")"}},3140:function(e,t,r){"use strict";e.exports=h;var o=r(3250),a=r(8572),i=r(9362),n=r(5382),s=r(8210);function c(v,p,T){var l=i(v[0],-p[0]),_=i(v[1],-p[1]),w=i(T[0],-p[0]),S=i(T[1],-p[1]),E=s(n(l,w),n(_,S));return E[E.length-1]>=0}function h(v,p,T,l){var _=o(p,T,l);if(_===0){var w=a(o(v,p,T)),S=a(o(v,p,l));if(w===S){if(w===0){var E=c(v,p,T),m=c(v,p,l);return E===m?0:E?1:-1}return 0}else{if(S===0)return w>0||c(v,p,l)?-1:1;if(w===0)return S>0||c(v,p,T)?1:-1}return a(S-w)}var b=o(v,p,T);if(b>0)return _>0&&o(v,p,l)>0?1:-1;if(b<0)return _>0||o(v,p,l)>0?1:-1;var d=o(v,p,l);return d>0||c(v,p,T)?1:-1}},8572:function(e){"use strict";e.exports=function(r){return r<0?-1:r>0?1:0}},8507:function(e){e.exports=o;var t=Math.min;function r(a,i){return a-i}function o(a,i){var n=a.length,s=a.length-i.length;if(s)return s;switch(n){case 0:return 0;case 1:return a[0]-i[0];case 2:return a[0]+a[1]-i[0]-i[1]||t(a[0],a[1])-t(i[0],i[1]);case 3:var c=a[0]+a[1],h=i[0]+i[1];if(s=c+a[2]-(h+i[2]),s)return s;var v=t(a[0],a[1]),p=t(i[0],i[1]);return t(v,a[2])-t(p,i[2])||t(v+a[2],c)-t(p+i[2],h);case 4:var T=a[0],l=a[1],_=a[2],w=a[3],S=i[0],E=i[1],m=i[2],b=i[3];return T+l+_+w-(S+E+m+b)||t(T,l,_,w)-t(S,E,m,b,S)||t(T+l,T+_,T+w,l+_,l+w,_+w)-t(S+E,S+m,S+b,E+m,E+b,m+b)||t(T+l+_,T+l+w,T+_+w,l+_+w)-t(S+E+m,S+E+b,S+m+b,E+m+b);default:for(var d=a.slice().sort(r),u=i.slice().sort(r),y=0;y<n;++y)if(s=d[y]-u[y],s)return s;return 0}}},3788:function(e,t,r){"use strict";var o=r(8507),a=r(2419);e.exports=i;function i(n,s){return o(n,s)||a(n)-a(s)}},7352:function(e,t,r){"use strict";var o=r(5721),a=r(4750),i=r(2690);e.exports=n;function n(s){var c=s.length;if(c===0)return[];if(c===1)return[[0]];var h=s[0].length;return h===0?[]:h===1?o(s):h===2?a(s):i(s,h)}},5721:function(e){"use strict";e.exports=t;function t(r){for(var o=0,a=0,i=1;i<r.length;++i)r[i][0]<r[o][0]&&(o=i),r[i][0]>r[a][0]&&(a=i);return o<a?[[o],[a]]:o>a?[[a],[o]]:[[o]]}},4750:function(e,t,r){"use strict";e.exports=a;var o=r(3090);function a(i){var n=o(i),s=n.length;if(s<=2)return[];for(var c=new Array(s),h=n[s-1],v=0;v<s;++v){var p=n[v];c[v]=[h,p],h=p}return c}},2690:function(e,t,r){"use strict";e.exports=s;var o=r(8954),a=r(3952);function i(c,h){for(var v=c.length,p=new Array(v),T=0;T<h.length;++T)p[T]=c[h[T]];for(var l=h.length,T=0;T<v;++T)h.indexOf(T)<0&&(p[l++]=c[T]);return p}function n(c,h){for(var v=c.length,p=h.length,T=0;T<v;++T)for(var l=c[T],_=0;_<l.length;++_){var w=l[_];if(w<p)l[_]=h[w];else{w=w-p;for(var S=0;S<p;++S)w>=h[S]&&(w+=1);l[_]=w}}return c}function s(c,h){try{return o(c,!0)}catch{var v=a(c);if(v.length<=h)return[];var p=i(c,v),T=o(p,!0);return n(T,v)}}},4769:function(e){"use strict";function t(o,a,i,n,s,c){var h=6*s*s-6*s,v=3*s*s-4*s+1,p=-6*s*s+6*s,T=3*s*s-2*s;if(o.length){c||(c=new Array(o.length));for(var l=o.length-1;l>=0;--l)c[l]=h*o[l]+v*a[l]+p*i[l]+T*n[l];return c}return h*o+v*a+p*i[l]+T*n}function r(o,a,i,n,s,c){var h=s-1,v=s*s,p=h*h,T=(1+2*s)*p,l=s*p,_=v*(3-2*s),w=v*h;if(o.length){c||(c=new Array(o.length));for(var S=o.length-1;S>=0;--S)c[S]=T*o[S]+l*a[S]+_*i[S]+w*n[S];return c}return T*o+l*a+_*i+w*n}e.exports=r,e.exports.derivative=t},7642:function(e,t,r){"use strict";var o=r(8954),a=r(1682);e.exports=c;function i(h,v){this.point=h,this.index=v}function n(h,v){for(var p=h.point,T=v.point,l=p.length,_=0;_<l;++_){var w=T[_]-p[_];if(w)return w}return 0}function s(h,v,p){if(h===1)return p?[[-1,0]]:[];var T=v.map(function(E,m){return[E[0],m]});T.sort(function(E,m){return E[0]-m[0]});for(var l=new Array(h-1),_=1;_<h;++_){var w=T[_-1],S=T[_];l[_-1]=[w[1],S[1]]}return p&&l.push([-1,l[0][1]],[l[h-1][1],-1]),l}function c(h,v){var p=h.length;if(p===0)return[];var T=h[0].length;if(T<1)return[];if(T===1)return s(p,h,v);for(var l=new Array(p),_=1,w=0;w<p;++w){for(var S=h[w],E=new Array(T+1),m=0,b=0;b<T;++b){var d=S[b];E[b]=d,m+=d*d}E[T]=m,l[w]=new i(E,w),_=Math.max(m,_)}a(l,n),p=l.length;for(var u=new Array(p+T+1),y=new Array(p+T+1),f=(T+1)*(T+1)*_,P=new Array(T+1),w=0;w<=T;++w)P[w]=0;P[T]=f,u[0]=P.slice(),y[0]=-1;for(var w=0;w<=T;++w){var E=P.slice();E[w]=1,u[w+1]=E,y[w+1]=-1}for(var w=0;w<p;++w){var L=l[w];u[w+T+1]=L.point,y[w+T+1]=L.index}var z=o(u,!1);if(v?z=z.filter(function(F){for(var B=0,O=0;O<=T;++O){var I=y[F[O]];if(I<0&&++B>=2)return!1;F[O]=I}return!0}):z=z.filter(function(F){for(var B=0;B<=T;++B){var O=y[F[B]];if(O<0)return!1;F[B]=O}return!0}),T&1)for(var w=0;w<z.length;++w){var L=z[w],E=L[0];L[0]=L[1],L[1]=E}return z}},2361:function(e){var t=!1;if(typeof Float64Array<"u"){var r=new Float64Array(1),o=new Uint32Array(r.buffer);if(r[0]=1,t=!0,o[1]===1072693248){let _=function(E,m){return o[0]=E,o[1]=m,r[0]},w=function(E){return r[0]=E,o[0]},S=function(E){return r[0]=E,o[1]};var a=_,i=w,n=S;e.exports=function(m){return r[0]=m,[o[0],o[1]]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}else if(o[0]===1072693248){let _=function(E,m){return o[1]=E,o[0]=m,r[0]},w=function(E){return r[0]=E,o[1]},S=function(E){return r[0]=E,o[0]};var s=_,c=w,h=S;e.exports=function(m){return r[0]=m,[o[1],o[0]]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}else t=!1}if(!t){let _=function(E,m){return l.writeUInt32LE(E,0,!0),l.writeUInt32LE(m,4,!0),l.readDoubleLE(0,!0)},w=function(E){return l.writeDoubleLE(E,0,!0),l.readUInt32LE(0,!0)},S=function(E){return l.writeDoubleLE(E,0,!0),l.readUInt32LE(4,!0)};var v=_,p=w,T=S,l=new Buffer(8);e.exports=function(m){return l.writeDoubleLE(m,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}e.exports.sign=function(_){return e.exports.hi(_)>>>31},e.exports.exponent=function(_){var w=e.exports.hi(_);return(w<<1>>>21)-1023},e.exports.fraction=function(_){var w=e.exports.lo(_),S=e.exports.hi(_),E=S&(1<<20)-1;return S&2146435072&&(E+=1048576),[w,E]},e.exports.denormalized=function(_){var w=e.exports.hi(_);return!(w&2146435072)}},1338:function(e){"use strict";function t(a,i,n){var s=a[n]|0;if(s<=0)return[];var c=new Array(s),h;if(n===a.length-1)for(h=0;h<s;++h)c[h]=i;else for(h=0;h<s;++h)c[h]=t(a,i,n+1);return c}function r(a,i){var n,s;for(n=new Array(a),s=0;s<a;++s)n[s]=i;return n}function o(a,i){switch(typeof i>"u"&&(i=0),typeof a){case"number":if(a>0)return r(a|0,i);break;case"object":if(typeof a.length=="number")return t(a,i,0);break}return[]}e.exports=o},3134:function(e,t,r){"use strict";e.exports=a;var o=r(1682);function a(i,n){var s=i.length;if(typeof n!="number"){n=0;for(var c=0;c<s;++c){var h=i[c];n=Math.max(n,h[0],h[1])}n=(n|0)+1}n=n|0;for(var v=new Array(n),c=0;c<n;++c)v[c]=[];for(var c=0;c<s;++c){var h=i[c];v[h[0]].push(h[1]),v[h[1]].push(h[0])}for(var p=0;p<n;++p)o(v[p],function(T,l){return T-l});return v}},5033:function(e){"use strict";e.exports=t;function t(r,o,a){var i=o||0,n=a||1;return[[r[12]+r[0],r[13]+r[1],r[14]+r[2],r[15]+r[3]],[r[12]-r[0],r[13]-r[1],r[14]-r[2],r[15]-r[3]],[r[12]+r[4],r[13]+r[5],r[14]+r[6],r[15]+r[7]],[r[12]-r[4],r[13]-r[5],r[14]-r[6],r[15]-r[7]],[i*r[12]+r[8],i*r[13]+r[9],i*r[14]+r[10],i*r[15]+r[11]],[n*r[12]-r[8],n*r[13]-r[9],n*r[14]-r[10],n*r[15]-r[11]]]}},9215:function(e,t,r){"use strict";e.exports=h;var o=r(4769),a=r(2478);function i(v,p,T){return Math.min(p,Math.max(v,T))}function n(v,p,T){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var l=0;l<this.dimension;++l)this.bounds[0][l]=-1/0,this.bounds[1][l]=1/0;this._state=v.slice().reverse(),this._velocity=p.slice().reverse(),this._time=[T],this._scratch=[v.slice(),v.slice(),v.slice(),v.slice(),v.slice()]}var s=n.prototype;s.flush=function(v){var p=a.gt(this._time,v)-1;p<=0||(this._time.splice(0,p),this._state.splice(0,p*this.dimension),this._velocity.splice(0,p*this.dimension))},s.curve=function(v){var p=this._time,T=p.length,l=a.le(p,v),_=this._scratch[0],w=this._state,S=this._velocity,E=this.dimension,m=this.bounds;if(l<0)for(var b=E-1,d=0;d<E;++d,--b)_[d]=w[b];else if(l>=T-1)for(var b=w.length-1,u=v-p[T-1],d=0;d<E;++d,--b)_[d]=w[b]+u*S[b];else{for(var b=E*(l+1)-1,y=p[l],f=p[l+1],P=f-y||1,L=this._scratch[1],z=this._scratch[2],F=this._scratch[3],B=this._scratch[4],O=!0,d=0;d<E;++d,--b)L[d]=w[b],F[d]=S[b]*P,z[d]=w[b+E],B[d]=S[b+E]*P,O=O&&L[d]===z[d]&&F[d]===B[d]&&F[d]===0;if(O)for(var d=0;d<E;++d)_[d]=L[d];else o(L,F,z,B,(v-y)/P,_)}for(var I=m[0],N=m[1],d=0;d<E;++d)_[d]=i(I[d],N[d],_[d]);return _},s.dcurve=function(v){var p=this._time,T=p.length,l=a.le(p,v),_=this._scratch[0],w=this._state,S=this._velocity,E=this.dimension;if(l>=T-1)for(var m=w.length-1,b=v-p[T-1],d=0;d<E;++d,--m)_[d]=S[m];else{for(var m=E*(l+1)-1,u=p[l],y=p[l+1],f=y-u||1,P=this._scratch[1],L=this._scratch[2],z=this._scratch[3],F=this._scratch[4],B=!0,d=0;d<E;++d,--m)P[d]=w[m],z[d]=S[m]*f,L[d]=w[m+E],F[d]=S[m+E]*f,B=B&&P[d]===L[d]&&z[d]===F[d]&&z[d]===0;if(B)for(var d=0;d<E;++d)_[d]=0;else{o.derivative(P,z,L,F,(v-u)/f,_);for(var d=0;d<E;++d)_[d]/=f}}return _},s.lastT=function(){var v=this._time;return v[v.length-1]},s.stable=function(){for(var v=this._velocity,p=v.length,T=this.dimension-1;T>=0;--T)if(v[--p])return!1;return!0},s.jump=function(v){var p=this.lastT(),T=this.dimension;if(!(v<p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1];this._time.push(p,v);for(var b=0;b<2;++b)for(var d=0;d<T;++d)l.push(l[w++]),_.push(0);this._time.push(v);for(var d=T;d>0;--d)l.push(i(E[d-1],m[d-1],arguments[d])),_.push(0)}},s.push=function(v){var p=this.lastT(),T=this.dimension;if(!(v<p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=v-p,E=this.bounds,m=E[0],b=E[1],d=S>1e-6?1/S:0;this._time.push(v);for(var u=T;u>0;--u){var y=i(m[u-1],b[u-1],arguments[u]);l.push(y),_.push((y-l[w++])*d)}}},s.set=function(v){var p=this.dimension;if(!(v<this.lastT()||arguments.length!==p+1)){var T=this._state,l=this._velocity,_=this.bounds,w=_[0],S=_[1];this._time.push(v);for(var E=p;E>0;--E)T.push(i(w[E-1],S[E-1],arguments[E])),l.push(0)}},s.move=function(v){var p=this.lastT(),T=this.dimension;if(!(v<=p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1],b=v-p,d=b>1e-6?1/b:0;this._time.push(v);for(var u=T;u>0;--u){var y=arguments[u];l.push(i(E[u-1],m[u-1],l[w++]+y)),_.push(y*d)}}},s.idle=function(v){var p=this.lastT();if(!(v<p)){var T=this.dimension,l=this._state,_=this._velocity,w=l.length-T,S=this.bounds,E=S[0],m=S[1],b=v-p;this._time.push(v);for(var d=T-1;d>=0;--d)l.push(i(E[d],m[d],l[w]+b*_[w])),_.push(0),w+=1}};function c(v){for(var p=new Array(v),T=0;T<v;++T)p[T]=0;return p}function h(v,p,T){switch(arguments.length){case 0:return new n([0],[0],0);case 1:if(typeof v=="number"){var l=c(v);return new n(l,l,0)}else return new n(v,c(v.length),0);case 2:if(typeof p=="number"){var l=c(v.length);return new n(v,l,+p)}else T=0;case 3:if(v.length!==p.length)throw new Error("state and velocity lengths must match");return new n(v,p,T)}}},3840:function(e){"use strict";e.exports=E;var t=0,r=1;function o(m,b,d,u,y,f){this._color=m,this.key=b,this.value=d,this.left=u,this.right=y,this._count=f}function a(m){return new o(m._color,m.key,m.value,m.left,m.right,m._count)}function i(m,b){return new o(m,b.key,b.value,b.left,b.right,b._count)}function n(m){m._count=1+(m.left?m.left._count:0)+(m.right?m.right._count:0)}function s(m,b){this._compare=m,this.root=b}var c=s.prototype;Object.defineProperty(c,"keys",{get:function(){var m=[];return this.forEach(function(b,d){m.push(b)}),m}}),Object.defineProperty(c,"values",{get:function(){var m=[];return this.forEach(function(b,d){m.push(d)}),m}}),Object.defineProperty(c,"length",{get:function(){return this.root?this.root._count:0}}),c.insert=function(m,b){for(var d=this._compare,u=this.root,y=[],f=[];u;){var P=d(m,u.key);y.push(u),f.push(P),P<=0?u=u.left:u=u.right}y.push(new o(t,m,b,null,null,1));for(var L=y.length-2;L>=0;--L){var u=y[L];f[L]<=0?y[L]=new o(u._color,u.key,u.value,y[L+1],u.right,u._count+1):y[L]=new o(u._color,u.key,u.value,u.left,y[L+1],u._count+1)}for(var L=y.length-1;L>1;--L){var z=y[L-1],u=y[L];if(z._color===r||u._color===r)break;var F=y[L-2];if(F.left===z)if(z.left===u){var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.left=z.right,z._color=r,z.right=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.left===F?O.left=z:O.right=z}break}}else{var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(z.right=u.left,F._color=t,F.left=u.right,u._color=r,u.left=z,u.right=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.left===F?O.left=u:O.right=u}break}}else if(z.right===u){var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.right=z.left,z._color=r,z.left=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.right===F?O.right=z:O.left=z}break}}else{var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(z.left=u.right,F._color=t,F.right=u.left,u._color=r,u.right=z,u.left=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.right===F?O.right=u:O.left=u}break}}}return y[0]._color=r,new s(d,y[0])};function h(m,b){if(b.left){var d=h(m,b.left);if(d)return d}var d=m(b.key,b.value);if(d)return d;if(b.right)return h(m,b.right)}function v(m,b,d,u){var y=b(m,u.key);if(y<=0){if(u.left){var f=v(m,b,d,u.left);if(f)return f}var f=d(u.key,u.value);if(f)return f}if(u.right)return v(m,b,d,u.right)}function p(m,b,d,u,y){var f=d(m,y.key),P=d(b,y.key),L;if(f<=0&&(y.left&&(L=p(m,b,d,u,y.left),L)||P>0&&(L=u(y.key,y.value),L)))return L;if(P>0&&y.right)return p(m,b,d,u,y.right)}c.forEach=function(b,d,u){if(this.root)switch(arguments.length){case 1:return h(b,this.root);case 2:return v(d,this._compare,b,this.root);case 3:return this._compare(d,u)>=0?void 0:p(d,u,this._compare,b,this.root)}},Object.defineProperty(c,"begin",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.left;return new T(this,m)}}),Object.defineProperty(c,"end",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.right;return new T(this,m)}}),c.at=function(m){if(m<0)return new T(this,[]);for(var b=this.root,d=[];;){if(d.push(b),b.left){if(m<b.left._count){b=b.left;continue}m-=b.left._count}if(!m)return new T(this,d);if(m-=1,b.right){if(m>=b.right._count)break;b=b.right}else break}return new T(this,[])},c.ge=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<=0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.gt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.lt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.le=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>=0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.find=function(m){for(var b=this._compare,d=this.root,u=[];d;){var y=b(m,d.key);if(u.push(d),y===0)return new T(this,u);y<=0?d=d.left:d=d.right}return new T(this,[])},c.remove=function(m){var b=this.find(m);return b?b.remove():this},c.get=function(m){for(var b=this._compare,d=this.root;d;){var u=b(m,d.key);if(u===0)return d.value;u<=0?d=d.left:d=d.right}};function T(m,b){this.tree=m,this._stack=b}var l=T.prototype;Object.defineProperty(l,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(l,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),l.clone=function(){return new T(this.tree,this._stack.slice())};function _(m,b){m.key=b.key,m.value=b.value,m.left=b.left,m.right=b.right,m._color=b._color,m._count=b._count}function w(m){for(var b,d,u,y,f=m.length-1;f>=0;--f){if(b=m[f],f===0){b._color=r;return}if(d=m[f-1],d.left===b){if(u=d.right,u.right&&u.right._color===t){if(u=d.right=a(u),y=u.right=a(u.right),d.right=u.left,u.left=d,u.right=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u;return}else if(u.left&&u.left._color===t){if(u=d.right=a(u),y=u.left=a(u.left),d.right=y.left,u.left=y.right,y.left=d,y.right=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.left===d?P.left=y:P.right=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.right=i(t,u);return}else{d.right=i(t,u);continue}else{if(u=a(u),d.right=u.left,u.left=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u,m[f]=d,f+1<m.length?m[f+1]=b:m.push(b),f=f+2}}else{if(u=d.left,u.left&&u.left._color===t){if(u=d.left=a(u),y=u.left=a(u.left),d.left=u.right,u.right=d,u.left=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u;return}else if(u.right&&u.right._color===t){if(u=d.left=a(u),y=u.right=a(u.right),d.left=y.right,u.right=y.left,y.right=d,y.left=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.right===d?P.right=y:P.left=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.left=i(t,u);return}else{d.left=i(t,u);continue}else{if(u=a(u),d.left=u.right,u.right=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u,m[f]=d,f+1<m.length?m[f+1]=b:m.push(b),f=f+2}}}}l.remove=function(){var m=this._stack;if(m.length===0)return this.tree;var b=new Array(m.length),d=m[m.length-1];b[b.length-1]=new o(d._color,d.key,d.value,d.left,d.right,d._count);for(var u=m.length-2;u>=0;--u){var d=m[u];d.left===m[u+1]?b[u]=new o(d._color,d.key,d.value,b[u+1],d.right,d._count):b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count)}if(d=b[b.length-1],d.left&&d.right){var y=b.length;for(d=d.left;d.right;)b.push(d),d=d.right;var f=b[y-1];b.push(new o(d._color,f.key,f.value,d.left,d.right,d._count)),b[y-1].key=d.key,b[y-1].value=d.value;for(var u=b.length-2;u>=y;--u)d=b[u],b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count);b[y-1].left=b[y]}if(d=b[b.length-1],d._color===t){var P=b[b.length-2];P.left===d?P.left=null:P.right===d&&(P.right=null),b.pop();for(var u=0;u<b.length;++u)b[u]._count--;return new s(this.tree._compare,b[0])}else if(d.left||d.right){d.left?_(d,d.left):d.right&&_(d,d.right),d._color=r;for(var u=0;u<b.length-1;++u)b[u]._count--;return new s(this.tree._compare,b[0])}else{if(b.length===1)return new s(this.tree._compare,null);for(var u=0;u<b.length;++u)b[u]._count--;var L=b[b.length-2];w(b),L.left===d?L.left=null:L.right=null}return new s(this.tree._compare,b[0])},Object.defineProperty(l,"key",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(l,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(l,"index",{get:function(){var m=0,b=this._stack;if(b.length===0){var d=this.tree.root;return d?d._count:0}else b[b.length-1].left&&(m=b[b.length-1].left._count);for(var u=b.length-2;u>=0;--u)b[u+1]===b[u].right&&(++m,b[u].left&&(m+=b[u].left._count));return m},enumerable:!0}),l.next=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.right)for(b=b.right;b;)m.push(b),b=b.left;else for(m.pop();m.length>0&&m[m.length-1].right===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasNext",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].right)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].left===m[b])return!0;return!1}}),l.update=function(m){var b=this._stack;if(b.length===0)throw new Error("Can't update empty node!");var d=new Array(b.length),u=b[b.length-1];d[d.length-1]=new o(u._color,u.key,m,u.left,u.right,u._count);for(var y=b.length-2;y>=0;--y)u=b[y],u.left===b[y+1]?d[y]=new o(u._color,u.key,u.value,d[y+1],u.right,u._count):d[y]=new o(u._color,u.key,u.value,u.left,d[y+1],u._count);return new s(this.tree._compare,d[0])},l.prev=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.left)for(b=b.left;b;)m.push(b),b=b.right;else for(m.pop();m.length>0&&m[m.length-1].left===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasPrev",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].left)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].right===m[b])return!0;return!1}});function S(m,b){return m<b?-1:m>b?1:0}function E(m){return new s(m||S,null)}},3837:function(e,t,r){"use strict";e.exports=L;var o=r(4935),a=r(501),i=r(5304),n=r(6429),s=r(6444),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),h=ArrayBuffer,v=DataView;function p(z){return h.isView(z)&&!(z instanceof v)}function T(z){return Array.isArray(z)||p(z)}function l(z,F){return z[0]=F[0],z[1]=F[1],z[2]=F[2],z}function _(z){this.gl=z,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=i(z)}var w=_.prototype;w.update=function(z){z=z||{};function F(Z,re,ne){if(ne in z){var j=z[ne],ee=this[ne],ie;(Z?T(j)&&T(j[0]):T(j))?this[ne]=ie=[re(j[0]),re(j[1]),re(j[2])]:this[ne]=ie=[re(j),re(j),re(j)];for(var fe=0;fe<3;++fe)if(ie[fe]!==ee[fe])return!0}return!1}var B=F.bind(this,!1,Number),O=F.bind(this,!1,Boolean),I=F.bind(this,!1,String),N=F.bind(this,!0,function(Z){if(T(Z)){if(Z.length===3)return[+Z[0],+Z[1],+Z[2],1];if(Z.length===4)return[+Z[0],+Z[1],+Z[2],+Z[3]]}return[0,0,0,1]}),U,W=!1,Q=!1;if("bounds"in z)for(var ue=z.bounds,se=0;se<2;++se)for(var he=0;he<3;++he)ue[se][he]!==this.bounds[se][he]&&(Q=!0),this.bounds[se][he]=ue[se][he];if("ticks"in z){U=z.ticks,W=!0,this.autoTicks=!1;for(var se=0;se<3;++se)this.tickSpacing[se]=0}else B("tickSpacing")&&(this.autoTicks=!0,Q=!0);if(this._firstInit&&("ticks"in z||"tickSpacing"in z||(this.autoTicks=!0),Q=!0,W=!0,this._firstInit=!1),Q&&this.autoTicks&&(U=s.create(this.bounds,this.tickSpacing),W=!0),W){for(var se=0;se<3;++se)U[se].sort(function(re,ne){return re.x-ne.x});s.equal(U,this.ticks)?W=!1:this.ticks=U}O("tickEnable"),I("tickFont")&&(W=!0),I("tickFontStyle")&&(W=!0),I("tickFontWeight")&&(W=!0),I("tickFontVariant")&&(W=!0),B("tickSize"),B("tickAngle"),B("tickPad"),N("tickColor");var G=I("labels");I("labelFont")&&(G=!0),I("labelFontStyle")&&(G=!0),I("labelFontWeight")&&(G=!0),I("labelFontVariant")&&(G=!0),O("labelEnable"),B("labelSize"),B("labelPad"),N("labelColor"),O("lineEnable"),O("lineMirror"),B("lineWidth"),N("lineColor"),O("lineTickEnable"),O("lineTickMirror"),B("lineTickLength"),B("lineTickWidth"),N("lineTickColor"),O("gridEnable"),B("gridWidth"),N("gridColor"),O("zeroEnable"),N("zeroLineColor"),B("zeroLineWidth"),O("backgroundEnable"),N("backgroundColor");var $=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],J=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(G||W)&&this._text.update(this.bounds,this.labels,$,this.ticks,J):this._text=o(this.gl,this.bounds,this.labels,$,this.ticks,J),this._lines&&W&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=a(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var E=[new S,new S,new S];function m(z,F,B,O,I){for(var N=z.primalOffset,U=z.primalMinor,W=z.mirrorOffset,Q=z.mirrorMinor,ue=O[F],se=0;se<3;++se)if(F!==se){var he=N,G=W,$=U,J=Q;ue&1<<se&&(he=W,G=N,$=Q,J=U),he[se]=B[0][se],G[se]=B[1][se],I[se]>0?($[se]=-1,J[se]=0):($[se]=0,J[se]=1)}}var b=[0,0,0],d={model:c,view:c,projection:c,_ortho:!1};w.isOpaque=function(){return!0},w.isTransparent=function(){return!1},w.drawTransparent=function(z){};var u=0,y=[0,0,0],f=[0,0,0],P=[0,0,0];w.draw=function(z){z=z||d;for(var ne=this.gl,F=z.model||c,B=z.view||c,O=z.projection||c,I=this.bounds,N=z._ortho||!1,U=n(F,B,O,I,N),W=U.cubeEdges,Q=U.axis,ue=B[12],se=B[13],he=B[14],G=B[15],$=N?2:1,J=$*this.pixelRatio*(O[3]*ue+O[7]*se+O[11]*he+O[15]*G)/ne.drawingBufferHeight,Z=0;Z<3;++Z)this.lastCubeProps.cubeEdges[Z]=W[Z],this.lastCubeProps.axis[Z]=Q[Z];for(var re=E,Z=0;Z<3;++Z)m(E[Z],Z,this.bounds,W,Q);for(var ne=this.gl,j=b,Z=0;Z<3;++Z)this.backgroundEnable[Z]?j[Z]=Q[Z]:j[Z]=0;this._background.draw(F,B,O,I,j,this.backgroundColor),this._lines.bind(F,B,O,this);for(var Z=0;Z<3;++Z){var ee=[0,0,0];Q[Z]>0?ee[Z]=I[1][Z]:ee[Z]=I[0][Z];for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.gridEnable[fe]&&this._lines.drawGrid(fe,be,this.bounds,ee,this.gridColor[fe],this.gridWidth[fe]*this.pixelRatio)}for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.zeroEnable[be]&&Math.min(I[0][be],I[1][be])<=0&&Math.max(I[0][be],I[1][be])>=0&&this._lines.drawZero(fe,be,this.bounds,ee,this.zeroLineColor[be],this.zeroLineWidth[be]*this.pixelRatio)}}for(var Z=0;Z<3;++Z){this.lineEnable[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].primalOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio),this.lineMirror[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].mirrorOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio);for(var Ae=l(y,re[Z].primalMinor),Be=l(f,re[Z].mirrorMinor),Ie=this.lineTickLength,ie=0;ie<3;++ie){var Ze=J/F[5*ie];Ae[ie]*=Ie[ie]*Ze,Be[ie]*=Ie[ie]*Ze}this.lineTickEnable[Z]&&this._lines.drawAxisTicks(Z,re[Z].primalOffset,Ae,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio),this.lineTickMirror[Z]&&this._lines.drawAxisTicks(Z,re[Z].mirrorOffset,Be,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio)}this._lines.unbind(),this._text.bind(F,B,O,this.pixelRatio);var at,it=.5,et,lt;function Me(Qe){lt=[0,0,0],lt[Qe]=1}function ge(Qe,Ct,St){var Ot=(Qe+1)%3,jt=(Qe+2)%3,ur=Ct[Ot],ar=Ct[jt],Cr=St[Ot],vr=St[jt];if(ur>0&&vr>0){Me(Ot);return}else if(ur>0&&vr<0){Me(Ot);return}else if(ur<0&&vr>0){Me(Ot);return}else if(ur<0&&vr<0){Me(Ot);return}else if(ar>0&&Cr>0){Me(jt);return}else if(ar>0&&Cr<0){Me(jt);return}else if(ar<0&&Cr>0){Me(jt);return}else if(ar<0&&Cr<0){Me(jt);return}}for(var Z=0;Z<3;++Z){for(var ce=re[Z].primalMinor,ze=re[Z].mirrorMinor,tt=l(P,re[Z].primalOffset),ie=0;ie<3;++ie)this.lineTickEnable[Z]&&(tt[ie]+=J*ce[ie]*Math.max(this.lineTickLength[ie],0)/F[5*ie]);var nt=[0,0,0];if(nt[Z]=1,this.tickEnable[Z]){this.tickAngle[Z]===-3600?(this.tickAngle[Z]=0,this.tickAlign[Z]="auto"):this.tickAlign[Z]=-1,et=1,at=[this.tickAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]),lt=[0,0,0],ge(Z,ce,ze);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.tickPad[ie]/F[5*ie];this._text.drawTicks(Z,this.tickSize[Z],this.tickAngle[Z],tt,this.tickColor[Z],nt,lt,at)}if(this.labelEnable[Z]){et=0,lt=[0,0,0],this.labels[Z].length>4&&(Me(Z),et=1),at=[this.labelAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.labelPad[ie]/F[5*ie];tt[Z]+=.5*(I[0][Z]+I[1][Z]),this._text.drawLabel(Z,this.labelSize[Z],this.labelAngle[Z],tt,this.labelColor[Z],[0,0,0],lt,at)}}this._text.unbind()},w.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function L(z,F){var B=new _(z);return B.update(F),B}},5304:function(e,t,r){"use strict";e.exports=c;var o=r(2762),a=r(8116),i=r(1879).bg;function n(h,v,p,T){this.gl=h,this.buffer=v,this.vao=p,this.shader=T}var s=n.prototype;s.draw=function(h,v,p,T,l,_){for(var w=!1,S=0;S<3;++S)w=w||l[S];if(w){var E=this.gl;E.enable(E.POLYGON_OFFSET_FILL),E.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:h,view:v,projection:p,bounds:T,enable:l,colors:_},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),E.disable(E.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function c(h){for(var v=[],p=[],T=0,l=0;l<3;++l)for(var _=(l+1)%3,w=(l+2)%3,S=[0,0,0],E=[0,0,0],m=-1;m<=1;m+=2){p.push(T,T+2,T+1,T+1,T+2,T+3),S[l]=m,E[l]=m;for(var b=-1;b<=1;b+=2){S[_]=b;for(var d=-1;d<=1;d+=2)S[w]=d,v.push(S[0],S[1],S[2],E[0],E[1],E[2]),T+=1}var u=_;_=w,w=u}var y=o(h,new Float32Array(v)),f=o(h,new Uint16Array(p),h.ELEMENT_ARRAY_BUFFER),P=a(h,[{buffer:y,type:h.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:h.FLOAT,size:3,offset:12,stride:24}],f),L=i(h);return L.attributes.position.location=0,L.attributes.normal.location=1,new n(h,y,P,L)}},6429:function(e,t,r){"use strict";e.exports=m;var o=r(8828),a=r(6760),i=r(5202),n=r(3250),s=new Array(16),c=new Array(8),h=new Array(8),v=new Array(3),p=[0,0,0];(function(){for(var b=0;b<8;++b)c[b]=[1,1,1,1],h[b]=[1,1,1]})();function T(b,d,u){for(var y=0;y<4;++y){b[y]=u[12+y];for(var f=0;f<3;++f)b[y]+=d[f]*u[4*f+y]}}var l=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function _(b){for(var d=0;d<l.length;++d)if(b=i.positive(b,l[d]),b.length<3)return 0;for(var u=b[0],y=u[0]/u[3],f=u[1]/u[3],P=0,d=1;d+1<b.length;++d){var L=b[d],z=b[d+1],F=L[0]/L[3],B=L[1]/L[3],O=z[0]/z[3],I=z[1]/z[3],N=F-y,U=B-f,W=O-y,Q=I-f;P+=Math.abs(N*Q-U*W)}return P}var w=[1,1,1],S=[0,0,0],E={cubeEdges:w,axis:S};function m(b,d,u,y,f){a(s,d,b),a(s,u,s);for(var P=0,L=0;L<2;++L){v[2]=y[L][2];for(var z=0;z<2;++z){v[1]=y[z][1];for(var F=0;F<2;++F)v[0]=y[F][0],T(c[P],v,s),P+=1}}for(var B=-1,L=0;L<8;++L){for(var O=c[L][3],I=0;I<3;++I)h[L][I]=c[L][I]/O;f&&(h[L][2]*=-1),O<0&&(B<0||h[L][2]<h[B][2])&&(B=L)}if(B<0){B=0;for(var N=0;N<3;++N){for(var U=(N+2)%3,W=(N+1)%3,Q=-1,ue=-1,se=0;se<2;++se){var he=se<<N,G=he+(se<<U)+(1-se<<W),$=he+(1-se<<U)+(se<<W);n(h[he],h[G],h[$],p)<0||(se?Q=1:ue=1)}if(Q<0||ue<0){ue>Q&&(B|=1<<N);continue}for(var se=0;se<2;++se){var he=se<<N,G=he+(se<<U)+(1-se<<W),$=he+(1-se<<U)+(se<<W),J=_([c[he],c[G],c[$],c[he+(1<<U)+(1<<W)]]);se?Q=J:ue=J}if(ue>Q){B|=1<<N;continue}}}for(var Z=7^B,re=-1,L=0;L<8;++L)L===B||L===Z||(re<0||h[re][1]>h[L][1])&&(re=L);for(var ne=-1,L=0;L<3;++L){var j=re^1<<L;if(!(j===B||j===Z)){ne<0&&(ne=j);var W=h[j];W[0]<h[ne][0]&&(ne=j)}}for(var ee=-1,L=0;L<3;++L){var j=re^1<<L;if(!(j===B||j===Z||j===ne)){ee<0&&(ee=j);var W=h[j];W[0]>h[ee][0]&&(ee=j)}}var ie=w;ie[0]=ie[1]=ie[2]=0,ie[o.log2(ne^re)]=re&ne,ie[o.log2(re^ee)]=re&ee;var fe=ee^7;fe===B||fe===Z?(fe=ne^7,ie[o.log2(ee^fe)]=fe&ee):ie[o.log2(ne^fe)]=fe&ne;for(var be=S,Ae=B,N=0;N<3;++N)Ae&1<<N?be[N]=-1:be[N]=1;return E}},501:function(e,t,r){"use strict";e.exports=w;var o=r(2762),a=r(8116),i=r(1879).n,n=[0,0,0],s=[0,0,0],c=[0,0,0],h=[0,0,0],v=[1,1];function p(S){return S[0]=S[1]=S[2]=0,S}function T(S,E){return S[0]=E[0],S[1]=E[1],S[2]=E[2],S}function l(S,E,m,b,d,u,y,f){this.gl=S,this.vertBuffer=E,this.vao=m,this.shader=b,this.tickCount=d,this.tickOffset=u,this.gridCount=y,this.gridOffset=f}var _=l.prototype;_.bind=function(S,E,m){this.shader.bind(),this.shader.uniforms.model=S,this.shader.uniforms.view=E,this.shader.uniforms.projection=m,v[0]=this.gl.drawingBufferWidth,v[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=v,this.vao.bind()},_.unbind=function(){this.vao.unbind()},_.drawAxisLine=function(S,E,m,b,d){var u=p(s);this.shader.uniforms.majorAxis=s,u[S]=E[1][S]-E[0][S],this.shader.uniforms.minorAxis=u;var y=T(h,m);y[S]+=E[0][S],this.shader.uniforms.offset=y,this.shader.uniforms.lineWidth=d,this.shader.uniforms.color=b;var f=p(c);f[(S+2)%3]=1,this.shader.uniforms.screenAxis=f,this.vao.draw(this.gl.TRIANGLES,6);var f=p(c);f[(S+1)%3]=1,this.shader.uniforms.screenAxis=f,this.vao.draw(this.gl.TRIANGLES,6)},_.drawAxisTicks=function(S,E,m,b,d){if(this.tickCount[S]){var u=p(n);u[S]=1,this.shader.uniforms.majorAxis=u,this.shader.uniforms.offset=E,this.shader.uniforms.minorAxis=m,this.shader.uniforms.color=b,this.shader.uniforms.lineWidth=d;var y=p(c);y[S]=1,this.shader.uniforms.screenAxis=y,this.vao.draw(this.gl.TRIANGLES,this.tickCount[S],this.tickOffset[S])}},_.drawGrid=function(S,E,m,b,d,u){if(this.gridCount[S]){var y=p(s);y[E]=m[1][E]-m[0][E],this.shader.uniforms.minorAxis=y;var f=T(h,b);f[E]+=m[0][E],this.shader.uniforms.offset=f;var P=p(n);P[S]=1,this.shader.uniforms.majorAxis=P;var L=p(c);L[S]=1,this.shader.uniforms.screenAxis=L,this.shader.uniforms.lineWidth=u,this.shader.uniforms.color=d,this.vao.draw(this.gl.TRIANGLES,this.gridCount[S],this.gridOffset[S])}},_.drawZero=function(S,E,m,b,d,u){var y=p(s);this.shader.uniforms.majorAxis=y,y[S]=m[1][S]-m[0][S],this.shader.uniforms.minorAxis=y;var f=T(h,b);f[S]+=m[0][S],this.shader.uniforms.offset=f;var P=p(c);P[E]=1,this.shader.uniforms.screenAxis=P,this.shader.uniforms.lineWidth=u,this.shader.uniforms.color=d,this.vao.draw(this.gl.TRIANGLES,6)},_.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()};function w(S,E,m){var b=[],d=[0,0,0],u=[0,0,0],y=[0,0,0],f=[0,0,0];b.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var P=0;P<3;++P){for(var F=b.length/3|0,L=0;L<m[P].length;++L){var z=+m[P][L].x;b.push(z,0,1,z,1,1,z,0,-1,z,0,-1,z,1,1,z,1,-1)}var O=b.length/3|0;d[P]=F,u[P]=O-F;for(var F=b.length/3|0,B=0;B<m[P].length;++B){var z=+m[P][B].x;b.push(z,0,1,z,1,1,z,0,-1,z,0,-1,z,1,1,z,1,-1)}var O=b.length/3|0;y[P]=F,f[P]=O-F}var I=o(S,new Float32Array(b)),N=a(S,[{buffer:I,type:S.FLOAT,size:3,stride:0,offset:0}]),U=i(S);return U.attributes.position.location=0,new l(S,I,N,U,u,d,f,y)}},1879:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position;

uniform mat4 model, view, projection;
uniform vec3 offset, majorAxis, minorAxis, screenAxis;
uniform float lineWidth;
uniform vec2 screenShape;

vec3 project(vec3 p) {
  vec4 pp = projection * (view * (model * vec4(p, 1.0)));
  return pp.xyz / max(pp.w, 0.0001);
}

void main() {
  vec3 major = position.x * majorAxis;
  vec3 minor = position.y * minorAxis;

  vec3 vPosition = major + minor + offset;
  vec3 pPosition = project(vPosition);
  vec3 offset = project(vPosition + screenAxis * position.z);

  vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;

  gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);
}
`]),n=o([`precision highp float;
#define GLSLIFY 1

uniform vec4 color;
void main() {
  gl_FragColor = color;
}`]);t.n=function(p){return a(p,i,n,null,[{name:"position",type:"vec3"}])};var s=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position;

uniform mat4 model, view, projection;
uniform vec3 offset, axis, alignDir, alignOpt;
uniform float scale, angle, pixelScale;
uniform vec2 resolution;

vec3 project(vec3 p) {
  vec4 pp = projection * (view * (model * vec4(p, 1.0)));
  return pp.xyz / max(pp.w, 0.0001);
}

float computeViewAngle(vec3 a, vec3 b) {
  vec3 A = project(a);
  vec3 B = project(b);

  return atan(
    (B.y - A.y) * resolution.y,
    (B.x - A.x) * resolution.x
  );
}

const float PI = 3.141592;
const float TWO_PI = 2.0 * PI;
const float HALF_PI = 0.5 * PI;
const float ONE_AND_HALF_PI = 1.5 * PI;

int option = int(floor(alignOpt.x + 0.001));
float hv_ratio =       alignOpt.y;
bool enableAlign =    (alignOpt.z != 0.0);

float mod_angle(float a) {
  return mod(a, PI);
}

float positive_angle(float a) {
  return mod_angle((a < 0.0) ?
    a + TWO_PI :
    a
  );
}

float look_upwards(float a) {
  float b = positive_angle(a);
  return ((b > HALF_PI) && (b <= ONE_AND_HALF_PI)) ?
    b - PI :
    b;
}

float look_horizontal_or_vertical(float a, float ratio) {
  // ratio controls the ratio between being horizontal to (vertical + horizontal)
  // if ratio is set to 0.5 then it is 50%, 50%.
  // when using a higher ratio e.g. 0.75 the result would
  // likely be more horizontal than vertical.

  float b = positive_angle(a);

  return
    (b < (      ratio) * HALF_PI) ? 0.0 :
    (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :
    (b < (2.0 + ratio) * HALF_PI) ? 0.0 :
    (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :
                                    0.0;
}

float roundTo(float a, float b) {
  return float(b * floor((a + 0.5 * b) / b));
}

float look_round_n_directions(float a, int n) {
  float b = positive_angle(a);
  float div = TWO_PI / float(n);
  float c = roundTo(b, div);
  return look_upwards(c);
}

float applyAlignOption(float rawAngle, float delta) {
  return
    (option >  2) ? look_round_n_directions(rawAngle + delta, option) :       // option 3-n: round to n directions
    (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical
    (option == 1) ? rawAngle + delta :       // use free angle, and flip to align with one direction of the axis
    (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards
    (option ==-1) ? 0.0 :                    // useful for backward compatibility, all texts remains horizontal
                    rawAngle;                // otherwise return back raw input angle
}

bool isAxisTitle = (axis.x == 0.0) &&
                   (axis.y == 0.0) &&
                   (axis.z == 0.0);

void main() {
  //Compute world offset
  float axisDistance = position.z;
  vec3 dataPosition = axisDistance * axis + offset;

  float beta = angle; // i.e. user defined attributes for each tick

  float axisAngle;
  float clipAngle;
  float flip;

  if (enableAlign) {
    axisAngle = (isAxisTitle) ? HALF_PI :
                      computeViewAngle(dataPosition, dataPosition + axis);
    clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);

    axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;
    clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;

    flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),
                vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;

    beta += applyAlignOption(clipAngle, flip * PI);
  }

  //Compute plane offset
  vec2 planeCoord = position.xy * pixelScale;

  mat2 planeXform = scale * mat2(
     cos(beta), sin(beta),
    -sin(beta), cos(beta)
  );

  vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;

  //Compute clip position
  vec3 clipPosition = project(dataPosition);

  //Apply text offset in clip coordinates
  clipPosition += vec3(viewOffset, 0.0);

  //Done
  gl_Position = vec4(clipPosition, 1.0);
}
`]),c=o([`precision highp float;
#define GLSLIFY 1

uniform vec4 color;
void main() {
  gl_FragColor = color;
}`]);t.Q=function(p){return a(p,s,c,null,[{name:"position",type:"vec3"}])};var h=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position;
attribute vec3 normal;

uniform mat4 model, view, projection;
uniform vec3 enable;
uniform vec3 bounds[2];

varying vec3 colorChannel;

void main() {

  vec3 signAxis = sign(bounds[1] - bounds[0]);

  vec3 realNormal = signAxis * normal;

  if(dot(realNormal, enable) > 0.0) {
    vec3 minRange = min(bounds[0], bounds[1]);
    vec3 maxRange = max(bounds[0], bounds[1]);
    vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));
    gl_Position = projection * (view * (model * vec4(nPosition, 1.0)));
  } else {
    gl_Position = vec4(0,0,0,0);
  }

  colorChannel = abs(realNormal);
}
`]),v=o([`precision highp float;
#define GLSLIFY 1

uniform vec4 colors[3];

varying vec3 colorChannel;

void main() {
  gl_FragColor = colorChannel.x * colors[0] +
                 colorChannel.y * colors[1] +
                 colorChannel.z * colors[2];
}`]);t.bg=function(p){return a(p,h,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(e,t,r){"use strict";e.exports=_;var o=r(2762),a=r(8116),i=r(4359),n=r(1879).Q,s=window||process.global||{},c=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};var h=3;function v(w,S,E,m){this.gl=w,this.shader=S,this.buffer=E,this.vao=m,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var p=v.prototype,T=[0,0];p.bind=function(w,S,E,m){this.vao.bind(),this.shader.bind();var b=this.shader.uniforms;b.model=w,b.view=S,b.projection=E,b.pixelScale=m,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},p.unbind=function(){this.vao.unbind()},p.update=function(w,S,E,m,b){var d=[];function u(N,U,W,Q,ue,se){var he=[W.style,W.weight,W.variant,W.family].join("_"),G=c[he];G||(G=c[he]={});var $=G[U];$||($=G[U]=l(U,{triangles:!0,font:W.family,fontStyle:W.style,fontWeight:W.weight,fontVariant:W.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ue,styletags:se}));for(var J=(Q||12)/12,Z=$.positions,re=$.cells,ne=0,j=re.length;ne<j;++ne)for(var ee=re[ne],ie=2;ie>=0;--ie){var fe=Z[ee[ie]];d.push(J*fe[0],-J*fe[1],N)}}for(var y=[0,0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0],z=1.25,F={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},B=0;B<3;++B){P[B]=d.length/h|0,u(.5*(w[0][B]+w[1][B]),S[B],E[B],12,z,F),L[B]=(d.length/h|0)-P[B],y[B]=d.length/h|0;for(var O=0;O<m[B].length;++O)if(m[B][O].text){var I={family:m[B][O].font||b[B].family,style:b[B].fontStyle||b[B].style,weight:b[B].fontWeight||b[B].weight,variant:b[B].fontVariant||b[B].variant};u(m[B][O].x,m[B][O].text,I,m[B][O].fontSize||12,z,F)}f[B]=(d.length/h|0)-y[B]}this.buffer.update(d),this.tickOffset=y,this.tickCount=f,this.labelOffset=P,this.labelCount=L},p.drawTicks=function(w,S,E,m,b,d,u,y){this.tickCount[w]&&(this.shader.uniforms.axis=d,this.shader.uniforms.color=b,this.shader.uniforms.angle=E,this.shader.uniforms.scale=S,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=u,this.shader.uniforms.alignOpt=y,this.vao.draw(this.gl.TRIANGLES,this.tickCount[w],this.tickOffset[w]))},p.drawLabel=function(w,S,E,m,b,d,u,y){this.labelCount[w]&&(this.shader.uniforms.axis=d,this.shader.uniforms.color=b,this.shader.uniforms.angle=E,this.shader.uniforms.scale=S,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=u,this.shader.uniforms.alignOpt=y,this.vao.draw(this.gl.TRIANGLES,this.labelCount[w],this.labelOffset[w]))},p.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()};function l(w,S){try{return i(w,S)}catch(E){return console.warn('error vectorizing text:"'+w+'" error:',E),{cells:[],positions:[]}}}function _(w,S,E,m,b,d){var u=o(w),y=a(w,[{buffer:u,size:3}]),f=n(w);f.attributes.position.location=0;var P=new v(w,f,u,y);return P.update(S,E,m,b,d),P}},6444:function(e,t){"use strict";t.create=o,t.equal=a;function r(i,n){var s=i+"",c=s.indexOf("."),h=0;c>=0&&(h=s.length-c-1);var v=Math.pow(10,h),p=Math.round(i*n*v),T=p+"";if(T.indexOf("e")>=0)return T;var l=p/v,_=p%v;p<0?(l=-Math.ceil(l)|0,_=-_|0):(l=Math.floor(l)|0,_=_|0);var w=""+l;if(p<0&&(w="-"+w),h){for(var S=""+_;S.length<h;)S="0"+S;return w+"."+S}else return w}function o(i,n){for(var s=[],c=0;c<3;++c){for(var h=[],v=.5*(i[0][c]+i[1][c]),p=0;p*n[c]<=i[1][c];++p)h.push({x:p*n[c],text:r(n[c],p)});for(var p=-1;p*n[c]>=i[0][c];--p)h.push({x:p*n[c],text:r(n[c],p)});s.push(h)}return s}function a(i,n){for(var s=0;s<3;++s){if(i[s].length!==n[s].length)return!1;for(var c=0;c<i[s].length;++c){var h=i[s][c],v=n[s][c];if(h.x!==v.x||h.text!==v.text||h.font!==v.font||h.fontColor!==v.fontColor||h.fontSize!==v.fontSize||h.dx!==v.dx||h.dy!==v.dy)return!1}}return!0}},5445:function(e,t,r){"use strict";e.exports=E;var o=r(5033),a=r(5202),i=r(6429),n=r(6760),s=r(5665),c=r(5352),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),v=new Float32Array(16);function p(m,b,d){this.lo=m,this.hi=b,this.pixelsPerDataUnit=d}var T=[0,0,0,1],l=[0,0,0,1];function _(m,b,d,u,y){for(var f=0;f<3;++f){for(var P=T,L=l,z=0;z<3;++z)L[z]=P[z]=d[z];L[3]=P[3]=1,L[f]+=1,c(L,L,b),L[3]<0&&(m[f]=1/0),P[f]-=1,c(P,P,b),P[3]<0&&(m[f]=1/0);var F=(P[0]/P[3]-L[0]/L[3])*u,B=(P[1]/P[3]-L[1]/L[3])*y;m[f]=.25*Math.sqrt(F*F+B*B)}return m}var w=[new p(1/0,-1/0,1/0),new p(1/0,-1/0,1/0),new p(1/0,-1/0,1/0)],S=[0,0,0];function E(m,b,d,u,B){var f=b.model||h,P=b.view||h,L=b.projection||h,z=b._ortho||!1,F=m.bounds,B=B||i(f,P,L,F,z),O=B.axis;n(v,P,f),n(v,L,v);for(var I=w,N=0;N<3;++N)I[N].lo=1/0,I[N].hi=-1/0,I[N].pixelsPerDataUnit=1/0;var U=o(s(v,v));s(v,v);for(var W=0;W<3;++W){var Q=(W+1)%3,ue=(W+2)%3,se=S;e:for(var N=0;N<2;++N){var he=[];if(O[W]<0!=!!N){se[W]=F[N][W];for(var G=0;G<2;++G){se[Q]=F[G^N][Q];for(var $=0;$<2;++$)se[ue]=F[$^G^N][ue],he.push(se.slice())}for(var J=z?5:4,G=J;G===J;++G){if(he.length===0)continue e;he=a.positive(he,U[G])}for(var G=0;G<he.length;++G)for(var ue=he[G],Z=_(S,v,ue,d,u),$=0;$<3;++$)I[$].lo=Math.min(I[$].lo,ue[$]),I[$].hi=Math.max(I[$].hi,ue[$]),$!==W&&(I[$].pixelsPerDataUnit=Math.min(I[$].pixelsPerDataUnit,Math.abs(Z[$])))}}}return I}},2762:function(e,t,r){"use strict";var o=r(1888),a=r(5298),i=r(9618),n=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function s(l,_,w,S,E){this.gl=l,this.type=_,this.handle=w,this.length=S,this.usage=E}var c=s.prototype;c.bind=function(){this.gl.bindBuffer(this.type,this.handle)},c.unbind=function(){this.gl.bindBuffer(this.type,null)},c.dispose=function(){this.gl.deleteBuffer(this.handle)};function h(l,_,w,S,E,m){var b=E.length*E.BYTES_PER_ELEMENT;if(m<0)return l.bufferData(_,E,S),b;if(b+m>w)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return l.bufferSubData(_,m,E),w}function v(l,_){for(var w=o.malloc(l.length,_),S=l.length,E=0;E<S;++E)w[E]=l[E];return w}function p(l,_){for(var w=1,S=_.length-1;S>=0;--S){if(_[S]!==w)return!1;w*=l[S]}return!0}c.update=function(l,_){if(typeof _!="number"&&(_=-1),this.bind(),typeof l=="object"&&typeof l.shape<"u"){var w=l.dtype;if(n.indexOf(w)<0&&(w="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&w!=="uint16"?w="uint32":w="uint16"}if(w===l.dtype&&p(l.shape,l.stride))l.offset===0&&l.data.length===l.shape[0]?this.length=h(this.gl,this.type,this.length,this.usage,l.data,_):this.length=h(this.gl,this.type,this.length,this.usage,l.data.subarray(l.offset,l.shape[0]),_);else{var E=o.malloc(l.size,w),m=i(E,l.shape);a.assign(m,l),_<0?this.length=h(this.gl,this.type,this.length,this.usage,E,_):this.length=h(this.gl,this.type,this.length,this.usage,E.subarray(0,l.size),_),o.free(E)}}else if(Array.isArray(l)){var b;this.type===this.gl.ELEMENT_ARRAY_BUFFER?b=v(l,"uint16"):b=v(l,"float32"),_<0?this.length=h(this.gl,this.type,this.length,this.usage,b,_):this.length=h(this.gl,this.type,this.length,this.usage,b.subarray(0,l.length),_),o.free(b)}else if(typeof l=="object"&&typeof l.length=="number")this.length=h(this.gl,this.type,this.length,this.usage,l,_);else if(typeof l=="number"||l===void 0){if(_>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");l=l|0,l<=0&&(l=1),this.gl.bufferData(this.type,l|0,this.usage),this.length=l}else throw new Error("gl-buffer: Invalid data type")};function T(l,_,w,S){if(w=w||l.ARRAY_BUFFER,S=S||l.DYNAMIC_DRAW,w!==l.ARRAY_BUFFER&&w!==l.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==l.DYNAMIC_DRAW&&S!==l.STATIC_DRAW&&S!==l.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var E=l.createBuffer(),m=new s(l,w,E,0,S);return m.update(_),m}e.exports=T},6405:function(e,t,r){"use strict";var o=r(2931);e.exports=function(i,n){var s=i.positions,c=i.vectors,h={positions:[],vertexIntensity:[],vertexIntensityBounds:i.vertexIntensityBounds,vectors:[],cells:[],coneOffset:i.coneOffset,colormap:i.colormap};if(i.positions.length===0)return n&&(n[0]=[0,0,0],n[1]=[0,0,0]),h;for(var v=0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S=-1/0,E=null,m=null,b=[],d=1/0,u=!1,y=i.coneSizemode==="raw",f=0;f<s.length;f++){var P=s[f];p=Math.min(P[0],p),T=Math.max(P[0],T),l=Math.min(P[1],l),_=Math.max(P[1],_),w=Math.min(P[2],w),S=Math.max(P[2],S);var L=c[f];if(o.length(L)>v&&(v=o.length(L)),f&&!y){var z=2*o.distance(E,P)/(o.length(m)+o.length(L));z?(d=Math.min(d,z),u=!1):u=!0}u||(E=P,m=L),b.push(L)}var F=[p,l,w],B=[T,_,S];n&&(n[0]=F,n[1]=B),v===0&&(v=1);var O=1/v;isFinite(d)||(d=1),h.vectorScale=d;var I=i.coneSize||(y?1:.5);i.absoluteConeSize&&(I=i.absoluteConeSize*O),h.coneScale=I;for(var f=0,N=0;f<s.length;f++)for(var P=s[f],U=P[0],W=P[1],Q=P[2],ue=b[f],se=o.length(ue)*O,he=0,G=8;he<G;he++){h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vertexIntensity.push(se,se,se),h.vertexIntensity.push(se,se,se);var $=h.positions.length;h.cells.push([$-6,$-5,$-4],[$-3,$-2,$-1])}return h};var a=r(614);e.exports.createMesh=r(9060),e.exports.createConeMesh=function(i,n){return e.exports.createMesh(i,n,{shaders:a,traceType:"cone"})}},9060:function(e,t,r){"use strict";var o=r(9405),a=r(2762),i=r(8116),n=r(7766),s=r(6760),c=r(7608),h=r(9618),v=r(6729),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(b,d,u,y,f,P,L,z,F,B,O){this.gl=b,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=d,this.dirty=!0,this.triShader=u,this.pickShader=y,this.trianglePositions=f,this.triangleVectors=P,this.triangleColors=z,this.triangleUVs=F,this.triangleIds=L,this.triangleVAO=B,this.triangleCount=0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.traceType=O,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=p,this._view=p,this._projection=p,this._resolution=[1,1]}var l=T.prototype;l.isOpaque=function(){return this.opacity>=1},l.isTransparent=function(){return this.opacity<1},l.pickSlots=1,l.setPickBase=function(b){this.pickId=b};function _(b){for(var d=v({colormap:b,nshades:256,format:"rgba"}),u=new Uint8Array(256*4),y=0;y<256;++y){for(var f=d[y],P=0;P<3;++P)u[4*y+P]=f[P];u[4*y+3]=f[3]*255}return h(u,[256,256,4],[4,0,1])}function w(b){for(var d=b.length,u=new Array(d),y=0;y<d;++y)u[y]=b[y][2];return u}l.update=function(b){b=b||{};var d=this.gl;this.dirty=!0,"lightPosition"in b&&(this.lightPosition=b.lightPosition),"opacity"in b&&(this.opacity=b.opacity),"ambient"in b&&(this.ambientLight=b.ambient),"diffuse"in b&&(this.diffuseLight=b.diffuse),"specular"in b&&(this.specularLight=b.specular),"roughness"in b&&(this.roughness=b.roughness),"fresnel"in b&&(this.fresnel=b.fresnel),b.tubeScale!==void 0&&(this.tubeScale=b.tubeScale),b.vectorScale!==void 0&&(this.vectorScale=b.vectorScale),b.coneScale!==void 0&&(this.coneScale=b.coneScale),b.coneOffset!==void 0&&(this.coneOffset=b.coneOffset),b.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=d.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=d.LINEAR,this.texture.setPixels(_(b.colormap)),this.texture.generateMipmap());var u=b.cells,y=b.positions,f=b.vectors;if(!(!y||!u||!f)){var P=[],L=[],z=[],F=[],B=[];this.cells=u,this.positions=y,this.vectors=f;var O=b.meshColor||[1,1,1,1],I=b.vertexIntensity,N=1/0,U=-1/0;if(I)if(b.vertexIntensityBounds)N=+b.vertexIntensityBounds[0],U=+b.vertexIntensityBounds[1];else for(var W=0;W<I.length;++W){var Q=I[W];N=Math.min(N,Q),U=Math.max(U,Q)}else for(var W=0;W<y.length;++W){var Q=y[W][2];N=Math.min(N,Q),U=Math.max(U,Q)}I?this.intensity=I:this.intensity=w(y),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var W=0;W<y.length;++W)for(var ue=y[W],se=0;se<3;++se)isNaN(ue[se])||!isFinite(ue[se])||(this.bounds[0][se]=Math.min(this.bounds[0][se],ue[se]),this.bounds[1][se]=Math.max(this.bounds[1][se],ue[se]));var he=0;e:for(var W=0;W<u.length;++W){var G=u[W];switch(G.length){case 3:for(var se=0;se<3;++se)for(var $=G[se],ue=y[$],J=0;J<3;++J)if(isNaN(ue[J])||!isFinite(ue[J]))continue e;for(var se=0;se<3;++se){var $=G[2-se],ue=y[$];P.push(ue[0],ue[1],ue[2],ue[3]);var Z=f[$];L.push(Z[0],Z[1],Z[2],Z[3]||0);var re=O;re.length===3?z.push(re[0],re[1],re[2],1):z.push(re[0],re[1],re[2],re[3]);var ne;I?ne=[(I[$]-N)/(U-N),0]:ne=[(ue[2]-N)/(U-N),0],F.push(ne[0],ne[1]),B.push(W)}he+=1;break;default:break}}this.triangleCount=he,this.trianglePositions.update(P),this.triangleVectors.update(L),this.triangleColors.update(z),this.triangleUVs.update(F),this.triangleIds.update(new Uint32Array(B))}},l.drawTransparent=l.draw=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);var z={model:u,view:y,projection:f,inverseModel:p.slice(),clipBounds:P,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};z.inverseModel=c(z.inverseModel,z.model),d.disable(d.CULL_FACE),this.texture.bind(0);var F=new Array(16);s(F,z.view,z.model),s(F,z.projection,F),c(F,F);for(var L=0;L<3;++L)z.eyePosition[L]=F[12+L]/F[15];for(var B=F[15],L=0;L<3;++L)B+=this.lightPosition[L]*F[4*L+3];for(var L=0;L<3;++L){for(var O=F[12+L],I=0;I<3;++I)O+=F[4*I+L]*this.lightPosition[I];z.lightPosition[L]=O/B}if(this.triangleCount>0){var N=this.triShader;N.bind(),N.uniforms=z,this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},l.drawPick=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);this._model=[].slice.call(u),this._view=[].slice.call(y),this._projection=[].slice.call(f),this._resolution=[d.drawingBufferWidth,d.drawingBufferHeight];var z={model:u,view:y,projection:f,clipBounds:P,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},F=this.pickShader;F.bind(),F.uniforms=z,this.triangleCount>0&&(this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},l.pick=function(b){if(!b||b.id!==this.pickId)return null;var d=b.value[0]+256*b.value[1]+65536*b.value[2],u=this.cells[d],y=this.positions[u[1]].slice(0,3),f={position:y,dataCoordinate:y,index:Math.floor(u[1]/48)};return this.traceType==="cone"?f.index=Math.floor(u[1]/48):this.traceType==="streamtube"&&(f.intensity=this.intensity[u[1]],f.velocity=this.vectors[u[1]].slice(0,3),f.divergence=this.vectors[u[1]][3],f.index=d),f},l.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(b,d){var u=o(b,d.meshShader.vertex,d.meshShader.fragment,null,d.meshShader.attributes);return u.attributes.position.location=0,u.attributes.color.location=2,u.attributes.uv.location=3,u.attributes.vector.location=4,u}function E(b,d){var u=o(b,d.pickShader.vertex,d.pickShader.fragment,null,d.pickShader.attributes);return u.attributes.position.location=0,u.attributes.id.location=1,u.attributes.vector.location=4,u}function m(b,d,u){var y=u.shaders;arguments.length===1&&(d=b,b=d.gl);var f=S(b,y),P=E(b,y),L=n(b,h(new Uint8Array([255,255,255,255]),[1,1,4]));L.generateMipmap(),L.minFilter=b.LINEAR_MIPMAP_LINEAR,L.magFilter=b.LINEAR;var z=a(b),F=a(b),B=a(b),O=a(b),I=a(b),N=i(b,[{buffer:z,type:b.FLOAT,size:4},{buffer:I,type:b.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:B,type:b.FLOAT,size:4},{buffer:O,type:b.FLOAT,size:2},{buffer:F,type:b.FLOAT,size:4}]),U=new T(b,L,f,P,z,F,I,B,O,N,u.traceType||"cone");return U.update(d),U}e.exports=m},614:function(e,t,r){var o=r(3236),a=o([`precision highp float;

precision highp float;
#define GLSLIFY 1

vec3 getOrthogonalVector(vec3 v) {
  // Return up-vector for only-z vector.
  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.
  // Assign z = 0, x = -b, y = a:
  // a*-b + b*a + c*0 = -ba + ba + 0 = 0
  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
    return normalize(vec3(-v.y, v.x, 0.0));
  } else {
    return normalize(vec3(0.0, v.z, -v.y));
  }
}

// Calculate the cone vertex and normal at the given index.
//
// The returned vertex is for a cone with its top at origin and height of 1.0,
// pointing in the direction of the vector attribute.
//
// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
// These vertices are used to make up the triangles of the cone by the following:
//   segment + 0 top vertex
//   segment + 1 perimeter vertex a+1
//   segment + 2 perimeter vertex a
//   segment + 3 center base vertex
//   segment + 4 perimeter vertex a
//   segment + 5 perimeter vertex a+1
// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
// To go from index to segment, floor(index / 6)
// To go from segment to angle, 2*pi * (segment/segmentCount)
// To go from index to segment index, index - (segment*6)
//
vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {

  const float segmentCount = 8.0;

  float index = rawIndex - floor(rawIndex /
    (segmentCount * 6.0)) *
    (segmentCount * 6.0);

  float segment = floor(0.001 + index/6.0);
  float segmentIndex = index - (segment*6.0);

  normal = -normalize(d);

  if (segmentIndex > 2.99 && segmentIndex < 3.01) {
    return mix(vec3(0.0), -d, coneOffset);
  }

  float nextAngle = (
    (segmentIndex > 0.99 &&  segmentIndex < 1.01) ||
    (segmentIndex > 4.99 &&  segmentIndex < 5.01)
  ) ? 1.0 : 0.0;
  float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);

  vec3 v1 = mix(d, vec3(0.0), coneOffset);
  vec3 v2 = v1 - d;

  vec3 u = getOrthogonalVector(d);
  vec3 v = normalize(cross(u, d));

  vec3 x = u * cos(angle) * length(d)*0.25;
  vec3 y = v * sin(angle) * length(d)*0.25;
  vec3 v3 = v2 + x + y;
  if (segmentIndex < 3.0) {
    vec3 tx = u * sin(angle);
    vec3 ty = v * -cos(angle);
    vec3 tangent = tx + ty;
    normal = normalize(cross(v3 - v1, tangent));
  }

  if (segmentIndex == 0.0) {
    return mix(d, vec3(0.0), coneOffset);
  }
  return v3;
}

attribute vec3 vector;
attribute vec4 color, position;
attribute vec2 uv;

uniform float vectorScale, coneScale, coneOffset;
uniform mat4 model, view, projection, inverseModel;
uniform vec3 eyePosition, lightPosition;

varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
varying vec4 f_color;
varying vec2 f_uv;

void main() {
  // Scale the vector magnitude to stay constant with
  // model & view changes.
  vec3 normal;
  vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);
  vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);

  //Lighting geometry parameters
  vec4 cameraCoordinate = view * conePosition;
  cameraCoordinate.xyz /= cameraCoordinate.w;
  f_lightDirection = lightPosition - cameraCoordinate.xyz;
  f_eyeDirection   = eyePosition - cameraCoordinate.xyz;
  f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);

  // vec4 m_position  = model * vec4(conePosition, 1.0);
  vec4 t_position  = view * conePosition;
  gl_Position      = projection * t_position;

  f_color          = color;
  f_data           = conePosition.xyz;
  f_position       = position.xyz;
  f_uv             = uv;
}
`]),i=o([`#extension GL_OES_standard_derivatives : enable

precision highp float;
#define GLSLIFY 1

float beckmannDistribution(float x, float roughness) {
  float NdotH = max(x, 0.0001);
  float cos2Alpha = NdotH * NdotH;
  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
  float roughness2 = roughness * roughness;
  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
  return exp(tan2Alpha / roughness2) / denom;
}

float cookTorranceSpecular(
  vec3 lightDirection,
  vec3 viewDirection,
  vec3 surfaceNormal,
  float roughness,
  float fresnel) {

  float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
  float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);

  //Half angle vector
  vec3 H = normalize(lightDirection + viewDirection);

  //Geometric term
  float NdotH = max(dot(surfaceNormal, H), 0.0);
  float VdotH = max(dot(viewDirection, H), 0.000001);
  float LdotH = max(dot(lightDirection, H), 0.000001);
  float G1 = (2.0 * NdotH * VdotN) / VdotH;
  float G2 = (2.0 * NdotH * LdotN) / LdotH;
  float G = min(1.0, min(G1, G2));
  
  //Distribution term
  float D = beckmannDistribution(NdotH, roughness);

  //Fresnel term
  float F = pow(1.0 - VdotN, fresnel);

  //Multiply terms and done
  return  G * F * D / max(3.14159265 * VdotN, 0.000001);
}

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 clipBounds[2];
uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
uniform sampler2D texture;

varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
varying vec4 f_color;
varying vec2 f_uv;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
  vec3 N = normalize(f_normal);
  vec3 L = normalize(f_lightDirection);
  vec3 V = normalize(f_eyeDirection);

  if(gl_FrontFacing) {
    N = -N;
  }

  float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);

  vec4 surfaceColor = f_color * texture2D(texture, f_uv);
  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);

  gl_FragColor = litColor * opacity;
}
`]),n=o([`precision highp float;

precision highp float;
#define GLSLIFY 1

vec3 getOrthogonalVector(vec3 v) {
  // Return up-vector for only-z vector.
  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.
  // Assign z = 0, x = -b, y = a:
  // a*-b + b*a + c*0 = -ba + ba + 0 = 0
  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
    return normalize(vec3(-v.y, v.x, 0.0));
  } else {
    return normalize(vec3(0.0, v.z, -v.y));
  }
}

// Calculate the cone vertex and normal at the given index.
//
// The returned vertex is for a cone with its top at origin and height of 1.0,
// pointing in the direction of the vector attribute.
//
// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
// These vertices are used to make up the triangles of the cone by the following:
//   segment + 0 top vertex
//   segment + 1 perimeter vertex a+1
//   segment + 2 perimeter vertex a
//   segment + 3 center base vertex
//   segment + 4 perimeter vertex a
//   segment + 5 perimeter vertex a+1
// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
// To go from index to segment, floor(index / 6)
// To go from segment to angle, 2*pi * (segment/segmentCount)
// To go from index to segment index, index - (segment*6)
//
vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {

  const float segmentCount = 8.0;

  float index = rawIndex - floor(rawIndex /
    (segmentCount * 6.0)) *
    (segmentCount * 6.0);

  float segment = floor(0.001 + index/6.0);
  float segmentIndex = index - (segment*6.0);

  normal = -normalize(d);

  if (segmentIndex > 2.99 && segmentIndex < 3.01) {
    return mix(vec3(0.0), -d, coneOffset);
  }

  float nextAngle = (
    (segmentIndex > 0.99 &&  segmentIndex < 1.01) ||
    (segmentIndex > 4.99 &&  segmentIndex < 5.01)
  ) ? 1.0 : 0.0;
  float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);

  vec3 v1 = mix(d, vec3(0.0), coneOffset);
  vec3 v2 = v1 - d;

  vec3 u = getOrthogonalVector(d);
  vec3 v = normalize(cross(u, d));

  vec3 x = u * cos(angle) * length(d)*0.25;
  vec3 y = v * sin(angle) * length(d)*0.25;
  vec3 v3 = v2 + x + y;
  if (segmentIndex < 3.0) {
    vec3 tx = u * sin(angle);
    vec3 ty = v * -cos(angle);
    vec3 tangent = tx + ty;
    normal = normalize(cross(v3 - v1, tangent));
  }

  if (segmentIndex == 0.0) {
    return mix(d, vec3(0.0), coneOffset);
  }
  return v3;
}

attribute vec4 vector;
attribute vec4 position;
attribute vec4 id;

uniform mat4 model, view, projection;
uniform float vectorScale, coneScale, coneOffset;

varying vec3 f_position;
varying vec4 f_id;

void main() {
  vec3 normal;
  vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);
  vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
  gl_Position = projection * (view * conePosition);
  f_id        = id;
  f_position  = position.xyz;
}
`]),s=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3  clipBounds[2];
uniform float pickId;

varying vec3 f_position;
varying vec4 f_id;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;

  gl_FragColor = vec4(pickId, f_id.xyz);
}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(e){e.exports={0:"NONE",1:"ONE",2:"LINE_LOOP",3:"LINE_STRIP",4:"TRIANGLES",5:"TRIANGLE_STRIP",6:"TRIANGLE_FAN",256:"DEPTH_BUFFER_BIT",512:"NEVER",513:"LESS",514:"EQUAL",515:"LEQUAL",516:"GREATER",517:"NOTEQUAL",518:"GEQUAL",519:"ALWAYS",768:"SRC_COLOR",769:"ONE_MINUS_SRC_COLOR",770:"SRC_ALPHA",771:"ONE_MINUS_SRC_ALPHA",772:"DST_ALPHA",773:"ONE_MINUS_DST_ALPHA",774:"DST_COLOR",775:"ONE_MINUS_DST_COLOR",776:"SRC_ALPHA_SATURATE",1024:"STENCIL_BUFFER_BIT",1028:"FRONT",1029:"BACK",1032:"FRONT_AND_BACK",1280:"INVALID_ENUM",1281:"INVALID_VALUE",1282:"INVALID_OPERATION",1285:"OUT_OF_MEMORY",1286:"INVALID_FRAMEBUFFER_OPERATION",2304:"CW",2305:"CCW",2849:"LINE_WIDTH",2884:"CULL_FACE",2885:"CULL_FACE_MODE",2886:"FRONT_FACE",2928:"DEPTH_RANGE",2929:"DEPTH_TEST",2930:"DEPTH_WRITEMASK",2931:"DEPTH_CLEAR_VALUE",2932:"DEPTH_FUNC",2960:"STENCIL_TEST",2961:"STENCIL_CLEAR_VALUE",2962:"STENCIL_FUNC",2963:"STENCIL_VALUE_MASK",2964:"STENCIL_FAIL",2965:"STENCIL_PASS_DEPTH_FAIL",2966:"STENCIL_PASS_DEPTH_PASS",2967:"STENCIL_REF",2968:"STENCIL_WRITEMASK",2978:"VIEWPORT",3024:"DITHER",3042:"BLEND",3088:"SCISSOR_BOX",3089:"SCISSOR_TEST",3106:"COLOR_CLEAR_VALUE",3107:"COLOR_WRITEMASK",3317:"UNPACK_ALIGNMENT",3333:"PACK_ALIGNMENT",3379:"MAX_TEXTURE_SIZE",3386:"MAX_VIEWPORT_DIMS",3408:"SUBPIXEL_BITS",3410:"RED_BITS",3411:"GREEN_BITS",3412:"BLUE_BITS",3413:"ALPHA_BITS",3414:"DEPTH_BITS",3415:"STENCIL_BITS",3553:"TEXTURE_2D",4352:"DONT_CARE",4353:"FASTEST",4354:"NICEST",5120:"BYTE",5121:"UNSIGNED_BYTE",5122:"SHORT",5123:"UNSIGNED_SHORT",5124:"INT",5125:"UNSIGNED_INT",5126:"FLOAT",5386:"INVERT",5890:"TEXTURE",6401:"STENCIL_INDEX",6402:"DEPTH_COMPONENT",6406:"ALPHA",6407:"RGB",6408:"RGBA",6409:"LUMINANCE",6410:"LUMINANCE_ALPHA",7680:"KEEP",7681:"REPLACE",7682:"INCR",7683:"DECR",7936:"VENDOR",7937:"RENDERER",7938:"VERSION",9728:"NEAREST",9729:"LINEAR",9984:"NEAREST_MIPMAP_NEAREST",9985:"LINEAR_MIPMAP_NEAREST",9986:"NEAREST_MIPMAP_LINEAR",9987:"LINEAR_MIPMAP_LINEAR",10240:"TEXTURE_MAG_FILTER",10241:"TEXTURE_MIN_FILTER",10242:"TEXTURE_WRAP_S",10243:"TEXTURE_WRAP_T",10497:"REPEAT",10752:"POLYGON_OFFSET_UNITS",16384:"COLOR_BUFFER_BIT",32769:"CONSTANT_COLOR",32770:"ONE_MINUS_CONSTANT_COLOR",32771:"CONSTANT_ALPHA",32772:"ONE_MINUS_CONSTANT_ALPHA",32773:"BLEND_COLOR",32774:"FUNC_ADD",32777:"BLEND_EQUATION_RGB",32778:"FUNC_SUBTRACT",32779:"FUNC_REVERSE_SUBTRACT",32819:"UNSIGNED_SHORT_4_4_4_4",32820:"UNSIGNED_SHORT_5_5_5_1",32823:"POLYGON_OFFSET_FILL",32824:"POLYGON_OFFSET_FACTOR",32854:"RGBA4",32855:"RGB5_A1",32873:"TEXTURE_BINDING_2D",32926:"SAMPLE_ALPHA_TO_COVERAGE",32928:"SAMPLE_COVERAGE",32936:"SAMPLE_BUFFERS",32937:"SAMPLES",32938:"SAMPLE_COVERAGE_VALUE",32939:"SAMPLE_COVERAGE_INVERT",32968:"BLEND_DST_RGB",32969:"BLEND_SRC_RGB",32970:"BLEND_DST_ALPHA",32971:"BLEND_SRC_ALPHA",33071:"CLAMP_TO_EDGE",33170:"GENERATE_MIPMAP_HINT",33189:"DEPTH_COMPONENT16",33306:"DEPTH_STENCIL_ATTACHMENT",33635:"UNSIGNED_SHORT_5_6_5",33648:"MIRRORED_REPEAT",33901:"ALIASED_POINT_SIZE_RANGE",33902:"ALIASED_LINE_WIDTH_RANGE",33984:"TEXTURE0",33985:"TEXTURE1",33986:"TEXTURE2",33987:"TEXTURE3",33988:"TEXTURE4",33989:"TEXTURE5",33990:"TEXTURE6",33991:"TEXTURE7",33992:"TEXTURE8",33993:"TEXTURE9",33994:"TEXTURE10",33995:"TEXTURE11",33996:"TEXTURE12",33997:"TEXTURE13",33998:"TEXTURE14",33999:"TEXTURE15",34e3:"TEXTURE16",34001:"TEXTURE17",34002:"TEXTURE18",34003:"TEXTURE19",34004:"TEXTURE20",34005:"TEXTURE21",34006:"TEXTURE22",34007:"TEXTURE23",34008:"TEXTURE24",34009:"TEXTURE25",34010:"TEXTURE26",34011:"TEXTURE27",34012:"TEXTURE28",34013:"TEXTURE29",34014:"TEXTURE30",34015:"TEXTURE31",34016:"ACTIVE_TEXTURE",34024:"MAX_RENDERBUFFER_SIZE",34041:"DEPTH_STENCIL",34055:"INCR_WRAP",34056:"DECR_WRAP",34067:"TEXTURE_CUBE_MAP",34068:"TEXTURE_BINDING_CUBE_MAP",34069:"TEXTURE_CUBE_MAP_POSITIVE_X",34070:"TEXTURE_CUBE_MAP_NEGATIVE_X",34071:"TEXTURE_CUBE_MAP_POSITIVE_Y",34072:"TEXTURE_CUBE_MAP_NEGATIVE_Y",34073:"TEXTURE_CUBE_MAP_POSITIVE_Z",34074:"TEXTURE_CUBE_MAP_NEGATIVE_Z",34076:"MAX_CUBE_MAP_TEXTURE_SIZE",34338:"VERTEX_ATTRIB_ARRAY_ENABLED",34339:"VERTEX_ATTRIB_ARRAY_SIZE",34340:"VERTEX_ATTRIB_ARRAY_STRIDE",34341:"VERTEX_ATTRIB_ARRAY_TYPE",34342:"CURRENT_VERTEX_ATTRIB",34373:"VERTEX_ATTRIB_ARRAY_POINTER",34466:"NUM_COMPRESSED_TEXTURE_FORMATS",34467:"COMPRESSED_TEXTURE_FORMATS",34660:"BUFFER_SIZE",34661:"BUFFER_USAGE",34816:"STENCIL_BACK_FUNC",34817:"STENCIL_BACK_FAIL",34818:"STENCIL_BACK_PASS_DEPTH_FAIL",34819:"STENCIL_BACK_PASS_DEPTH_PASS",34877:"BLEND_EQUATION_ALPHA",34921:"MAX_VERTEX_ATTRIBS",34922:"VERTEX_ATTRIB_ARRAY_NORMALIZED",34930:"MAX_TEXTURE_IMAGE_UNITS",34962:"ARRAY_BUFFER",34963:"ELEMENT_ARRAY_BUFFER",34964:"ARRAY_BUFFER_BINDING",34965:"ELEMENT_ARRAY_BUFFER_BINDING",34975:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",35040:"STREAM_DRAW",35044:"STATIC_DRAW",35048:"DYNAMIC_DRAW",35632:"FRAGMENT_SHADER",35633:"VERTEX_SHADER",35660:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",35661:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",35663:"SHADER_TYPE",35664:"FLOAT_VEC2",35665:"FLOAT_VEC3",35666:"FLOAT_VEC4",35667:"INT_VEC2",35668:"INT_VEC3",35669:"INT_VEC4",35670:"BOOL",35671:"BOOL_VEC2",35672:"BOOL_VEC3",35673:"BOOL_VEC4",35674:"FLOAT_MAT2",35675:"FLOAT_MAT3",35676:"FLOAT_MAT4",35678:"SAMPLER_2D",35680:"SAMPLER_CUBE",35712:"DELETE_STATUS",35713:"COMPILE_STATUS",35714:"LINK_STATUS",35715:"VALIDATE_STATUS",35716:"INFO_LOG_LENGTH",35717:"ATTACHED_SHADERS",35718:"ACTIVE_UNIFORMS",35719:"ACTIVE_UNIFORM_MAX_LENGTH",35720:"SHADER_SOURCE_LENGTH",35721:"ACTIVE_ATTRIBUTES",35722:"ACTIVE_ATTRIBUTE_MAX_LENGTH",35724:"SHADING_LANGUAGE_VERSION",35725:"CURRENT_PROGRAM",36003:"STENCIL_BACK_REF",36004:"STENCIL_BACK_VALUE_MASK",36005:"STENCIL_BACK_WRITEMASK",36006:"FRAMEBUFFER_BINDING",36007:"RENDERBUFFER_BINDING",36048:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",36049:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",36050:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",36051:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",36053:"FRAMEBUFFER_COMPLETE",36054:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",36055:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",36057:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",36061:"FRAMEBUFFER_UNSUPPORTED",36064:"COLOR_ATTACHMENT0",36096:"DEPTH_ATTACHMENT",36128:"STENCIL_ATTACHMENT",36160:"FRAMEBUFFER",36161:"RENDERBUFFER",36162:"RENDERBUFFER_WIDTH",36163:"RENDERBUFFER_HEIGHT",36164:"RENDERBUFFER_INTERNAL_FORMAT",36168:"STENCIL_INDEX8",36176:"RENDERBUFFER_RED_SIZE",36177:"RENDERBUFFER_GREEN_SIZE",36178:"RENDERBUFFER_BLUE_SIZE",36179:"RENDERBUFFER_ALPHA_SIZE",36180:"RENDERBUFFER_DEPTH_SIZE",36181:"RENDERBUFFER_STENCIL_SIZE",36194:"RGB565",36336:"LOW_FLOAT",36337:"MEDIUM_FLOAT",36338:"HIGH_FLOAT",36339:"LOW_INT",36340:"MEDIUM_INT",36341:"HIGH_INT",36346:"SHADER_COMPILER",36347:"MAX_VERTEX_UNIFORM_VECTORS",36348:"MAX_VARYING_VECTORS",36349:"MAX_FRAGMENT_UNIFORM_VECTORS",37440:"UNPACK_FLIP_Y_WEBGL",37441:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",37442:"CONTEXT_LOST_WEBGL",37443:"UNPACK_COLORSPACE_CONVERSION_WEBGL",37444:"BROWSER_DEFAULT_WEBGL"}},5171:function(e,t,r){var o=r(737);e.exports=function(i){return o[i]}},9165:function(e,t,r){"use strict";e.exports=T;var o=r(2762),a=r(8116),i=r(3436),n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.shader=S,this.buffer=_,this.vao=w,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var c=s.prototype;c.isOpaque=function(){return!this.hasAlpha},c.isTransparent=function(){return this.hasAlpha},c.drawTransparent=c.draw=function(l){var _=this.gl,w=this.shader.uniforms;this.shader.bind();var S=w.view=l.view||n,E=w.projection=l.projection||n;w.model=l.model||n,w.clipBounds=this.clipBounds,w.opacity=this.opacity;var m=S[12],b=S[13],d=S[14],u=S[15],y=l._ortho||!1,f=y?2:1,P=f*this.pixelRatio*(E[3]*m+E[7]*b+E[11]*d+E[15]*u)/_.drawingBufferHeight;this.vao.bind();for(var L=0;L<3;++L)_.lineWidth(this.lineWidth[L]*this.pixelRatio),w.capSize=this.capSize[L]*P,this.lineCount[L]&&_.drawArrays(_.LINES,this.lineOffset[L],this.lineCount[L]);this.vao.unbind()};function h(l,_){for(var w=0;w<3;++w)l[0][w]=Math.min(l[0][w],_[w]),l[1][w]=Math.max(l[1][w],_[w])}var v=function(){for(var l=new Array(3),_=0;_<3;++_){for(var w=[],S=1;S<=2;++S)for(var E=-1;E<=1;E+=2){var m=(S+_)%3,b=[0,0,0];b[m]=E,w.push(b)}l[_]=w}return l}();function p(l,_,w,S){for(var E=v[S],m=0;m<E.length;++m){var b=E[m];l.push(_[0],_[1],_[2],w[0],w[1],w[2],w[3],b[0],b[1],b[2])}return E.length}c.update=function(l){l=l||{},"lineWidth"in l&&(this.lineWidth=l.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),"capSize"in l&&(this.capSize=l.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,"opacity"in l&&(this.opacity=+l.opacity,this.opacity<1&&(this.hasAlpha=!0));var _=l.color||[[0,0,0],[0,0,0],[0,0,0]],w=l.position,S=l.error;if(Array.isArray(_[0])||(_=[_,_,_]),w&&S){var E=[],m=w.length,b=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var d=0;d<3;++d){this.lineOffset[d]=b;e:for(var u=0;u<m;++u){for(var y=w[u],f=0;f<3;++f)if(isNaN(y[f])||!isFinite(y[f]))continue e;var P=S[u],L=_[d];if(Array.isArray(L[0])&&(L=_[u]),L.length===3?L=[L[0],L[1],L[2],1]:L.length===4&&(L=[L[0],L[1],L[2],L[3]],!this.hasAlpha&&L[3]<1&&(this.hasAlpha=!0)),!(isNaN(P[0][d])||isNaN(P[1][d]))){if(P[0][d]<0){var z=y.slice();z[d]+=P[0][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}if(P[1][d]>0){var z=y.slice();z[d]+=P[1][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}}}this.lineCount[d]=b-this.lineOffset[d]}this.buffer.update(E)}},c.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(l){var _=l.gl,w=o(_),S=a(_,[{buffer:w,type:_.FLOAT,size:3,offset:0,stride:40},{buffer:w,type:_.FLOAT,size:4,offset:12,stride:40},{buffer:w,type:_.FLOAT,size:3,offset:28,stride:40}]),E=i(_);E.attributes.position.location=0,E.attributes.color.location=1,E.attributes.offset.location=2;var m=new s(_,w,S,E);return m.update(l),m}},3436:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position, offset;
attribute vec4 color;
uniform mat4 model, view, projection;
uniform float capSize;
varying vec4 fragColor;
varying vec3 fragPosition;

void main() {
  vec4 worldPosition  = model * vec4(position, 1.0);
  worldPosition       = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);
  gl_Position         = projection * (view * worldPosition);
  fragColor           = color;
  fragPosition        = position;
}`]),n=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 clipBounds[2];
uniform float opacity;
varying vec3 fragPosition;
varying vec4 fragColor;

void main() {
  if (
    outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||
    fragColor.a * opacity == 0.
  ) discard;

  gl_FragColor = opacity * fragColor;
}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(e,t,r){"use strict";var o=r(7766);e.exports=b;var a=null,i,n,s,c;function h(d){var u=d.getParameter(d.FRAMEBUFFER_BINDING),y=d.getParameter(d.RENDERBUFFER_BINDING),f=d.getParameter(d.TEXTURE_BINDING_2D);return[u,y,f]}function v(d,u){d.bindFramebuffer(d.FRAMEBUFFER,u[0]),d.bindRenderbuffer(d.RENDERBUFFER,u[1]),d.bindTexture(d.TEXTURE_2D,u[2])}function p(d,u){var y=d.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL);a=new Array(y+1);for(var f=0;f<=y;++f){for(var P=new Array(y),L=0;L<f;++L)P[L]=d.COLOR_ATTACHMENT0+L;for(var L=f;L<y;++L)P[L]=d.NONE;a[f]=P}}function T(d){switch(d){case i:throw new Error("gl-fbo: Framebuffer unsupported");case n:throw new Error("gl-fbo: Framebuffer incomplete attachment");case s:throw new Error("gl-fbo: Framebuffer incomplete dimensions");case c:throw new Error("gl-fbo: Framebuffer incomplete missing attachment");default:throw new Error("gl-fbo: Framebuffer failed for unspecified reason")}}function l(d,u,y,f,P,L){if(!f)return null;var z=o(d,u,y,P,f);return z.magFilter=d.NEAREST,z.minFilter=d.NEAREST,z.mipSamples=1,z.bind(),d.framebufferTexture2D(d.FRAMEBUFFER,L,d.TEXTURE_2D,z.handle,0),z}function _(d,u,y,f,P){var L=d.createRenderbuffer();return d.bindRenderbuffer(d.RENDERBUFFER,L),d.renderbufferStorage(d.RENDERBUFFER,f,u,y),d.framebufferRenderbuffer(d.FRAMEBUFFER,P,d.RENDERBUFFER,L),L}function w(d){var u=h(d.gl),y=d.gl,f=d.handle=y.createFramebuffer(),P=d._shape[0],L=d._shape[1],z=d.color.length,F=d._ext,B=d._useStencil,O=d._useDepth,I=d._colorType;y.bindFramebuffer(y.FRAMEBUFFER,f);for(var N=0;N<z;++N)d.color[N]=l(y,P,L,I,y.RGBA,y.COLOR_ATTACHMENT0+N);z===0?(d._color_rb=_(y,P,L,y.RGBA4,y.COLOR_ATTACHMENT0),F&&F.drawBuffersWEBGL(a[0])):z>1&&F.drawBuffersWEBGL(a[z]);var U=y.getExtension("WEBGL_depth_texture");U?B?d.depth=l(y,P,L,U.UNSIGNED_INT_24_8_WEBGL,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O&&(d.depth=l(y,P,L,y.UNSIGNED_SHORT,y.DEPTH_COMPONENT,y.DEPTH_ATTACHMENT)):O&&B?d._depth_rb=_(y,P,L,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O?d._depth_rb=_(y,P,L,y.DEPTH_COMPONENT16,y.DEPTH_ATTACHMENT):B&&(d._depth_rb=_(y,P,L,y.STENCIL_INDEX,y.STENCIL_ATTACHMENT));var W=y.checkFramebufferStatus(y.FRAMEBUFFER);if(W!==y.FRAMEBUFFER_COMPLETE){d._destroyed=!0,y.bindFramebuffer(y.FRAMEBUFFER,null),y.deleteFramebuffer(d.handle),d.handle=null,d.depth&&(d.depth.dispose(),d.depth=null),d._depth_rb&&(y.deleteRenderbuffer(d._depth_rb),d._depth_rb=null);for(var N=0;N<d.color.length;++N)d.color[N].dispose(),d.color[N]=null;d._color_rb&&(y.deleteRenderbuffer(d._color_rb),d._color_rb=null),v(y,u),T(W)}v(y,u)}function S(d,u,y,f,P,L,z,F){this.gl=d,this._shape=[u|0,y|0],this._destroyed=!1,this._ext=F,this.color=new Array(P);for(var B=0;B<P;++B)this.color[B]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=f,this._useDepth=L,this._useStencil=z;var O=this,I=[u|0,y|0];Object.defineProperties(I,{0:{get:function(){return O._shape[0]},set:function(N){return O.width=N}},1:{get:function(){return O._shape[1]},set:function(N){return O.height=N}}}),this._shapeVector=I,w(this)}var E=S.prototype;function m(d,u,y){if(d._destroyed)throw new Error("gl-fbo: Can't resize destroyed FBO");if(!(d._shape[0]===u&&d._shape[1]===y)){var f=d.gl,P=f.getParameter(f.MAX_RENDERBUFFER_SIZE);if(u<0||u>P||y<0||y>P)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");d._shape[0]=u,d._shape[1]=y;for(var L=h(f),z=0;z<d.color.length;++z)d.color[z].shape=d._shape;d._color_rb&&(f.bindRenderbuffer(f.RENDERBUFFER,d._color_rb),f.renderbufferStorage(f.RENDERBUFFER,f.RGBA4,d._shape[0],d._shape[1])),d.depth&&(d.depth.shape=d._shape),d._depth_rb&&(f.bindRenderbuffer(f.RENDERBUFFER,d._depth_rb),d._useDepth&&d._useStencil?f.renderbufferStorage(f.RENDERBUFFER,f.DEPTH_STENCIL,d._shape[0],d._shape[1]):d._useDepth?f.renderbufferStorage(f.RENDERBUFFER,f.DEPTH_COMPONENT16,d._shape[0],d._shape[1]):d._useStencil&&f.renderbufferStorage(f.RENDERBUFFER,f.STENCIL_INDEX,d._shape[0],d._shape[1])),f.bindFramebuffer(f.FRAMEBUFFER,d.handle);var F=f.checkFramebufferStatus(f.FRAMEBUFFER);F!==f.FRAMEBUFFER_COMPLETE&&(d.dispose(),v(f,L),T(F)),v(f,L)}}Object.defineProperties(E,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(d){if(Array.isArray(d)||(d=[d|0,d|0]),d.length!==2)throw new Error("gl-fbo: Shape vector must be length 2");var u=d[0]|0,y=d[1]|0;return m(this,u,y),[u,y]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(d){return d=d|0,m(this,d,this._shape[1]),d},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(d){return d=d|0,m(this,this._shape[0],d),d},enumerable:!1}}),E.bind=function(){if(!this._destroyed){var d=this.gl;d.bindFramebuffer(d.FRAMEBUFFER,this.handle),d.viewport(0,0,this._shape[0],this._shape[1])}},E.dispose=function(){if(!this._destroyed){this._destroyed=!0;var d=this.gl;d.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(d.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var u=0;u<this.color.length;++u)this.color[u].dispose(),this.color[u]=null;this._color_rb&&(d.deleteRenderbuffer(this._color_rb),this._color_rb=null)}};function b(d,u,y,f){i||(i=d.FRAMEBUFFER_UNSUPPORTED,n=d.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,s=d.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,c=d.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var P=d.getExtension("WEBGL_draw_buffers");if(!a&&P&&p(d,P),Array.isArray(u)&&(f=y,y=u[1]|0,u=u[0]|0),typeof u!="number")throw new Error("gl-fbo: Missing shape parameter");var L=d.getParameter(d.MAX_RENDERBUFFER_SIZE);if(u<0||u>L||y<0||y>L)throw new Error("gl-fbo: Parameters are too large for FBO");f=f||{};var z=1;if("color"in f){if(z=Math.max(f.color|0,0),z<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(z>1)if(P){if(z>d.getParameter(P.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+z+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var F=d.UNSIGNED_BYTE,B=d.getExtension("OES_texture_float");if(f.float&&z>0){if(!B)throw new Error("gl-fbo: Context does not support floating point textures");F=d.FLOAT}else f.preferFloat&&z>0&&B&&(F=d.FLOAT);var O=!0;"depth"in f&&(O=!!f.depth);var I=!1;return"stencil"in f&&(I=!!f.stencil),new S(d,u,y,F,z,O,I,P)}},2992:function(e,t,r){var o=r(3387).sprintf,a=r(5171),i=r(1848),n=r(1085);e.exports=s;function s(c,h,v){"use strict";var p=i(h)||"of unknown name (see npm glsl-shader-name)",T="unknown type";v!==void 0&&(T=v===a.FRAGMENT_SHADER?"fragment":"vertex");for(var l=o(`Error compiling %s shader %s:
`,T,p),_=o("%s%s",l,c),w=c.split(`
`),S={},E=0;E<w.length;E++){var m=w[E];if(!(m===""||m==="\0")){var b=parseInt(m.split(":")[2]);if(isNaN(b))throw new Error(o("Could not parse error: %s",m));S[b]=m}}for(var d=n(h).split(`
`),E=0;E<d.length;E++)if(!(!S[E+3]&&!S[E+2]&&!S[E+1])){var u=d[E];if(l+=u+`
`,S[E+1]){var y=S[E+1];y=y.substr(y.split(":",3).join(":").length+1).trim(),l+=o(`^^^ %s

`,y)}}return{long:l.trim(),short:_.trim()}}},7319:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position, nextPosition;
attribute float arcLength, lineWidth;
attribute vec4 color;

uniform vec2 screenShape;
uniform float pixelRatio;
uniform mat4 model, view, projection;

varying vec4 fragColor;
varying vec3 worldPosition;
varying float pixelArcLength;

vec4 project(vec3 p) {
  return projection * (view * (model * vec4(p, 1.0)));
}

void main() {
  vec4 startPoint = project(position);
  vec4 endPoint   = project(nextPosition);

  vec2 A = startPoint.xy / startPoint.w;
  vec2 B =   endPoint.xy /   endPoint.w;

  float clipAngle = atan(
    (B.y - A.y) * screenShape.y,
    (B.x - A.x) * screenShape.x
  );

  vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(
    sin(clipAngle),
    -cos(clipAngle)
  ) / screenShape;

  gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);

  worldPosition = position;
  pixelArcLength = arcLength;
  fragColor = color;
}
`]),n=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3      clipBounds[2];
uniform sampler2D dashTexture;
uniform float     dashScale;
uniform float     opacity;

varying vec3    worldPosition;
varying float   pixelArcLength;
varying vec4    fragColor;

void main() {
  if (
    outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||
    fragColor.a * opacity == 0.
  ) discard;

  float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;
  if(dashWeight < 0.5) {
    discard;
  }
  gl_FragColor = fragColor * opacity;
}
`]),s=o([`precision highp float;
#define GLSLIFY 1

#define FLOAT_MAX  1.70141184e38
#define FLOAT_MIN  1.17549435e-38

// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl
vec4 packFloat(float v) {
  float av = abs(v);

  //Handle special cases
  if(av < FLOAT_MIN) {
    return vec4(0.0, 0.0, 0.0, 0.0);
  } else if(v > FLOAT_MAX) {
    return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;
  } else if(v < -FLOAT_MAX) {
    return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;
  }

  vec4 c = vec4(0,0,0,0);

  //Compute exponent and mantissa
  float e = floor(log2(av));
  float m = av * pow(2.0, -e) - 1.0;

  //Unpack mantissa
  c[1] = floor(128.0 * m);
  m -= c[1] / 128.0;
  c[2] = floor(32768.0 * m);
  m -= c[2] / 32768.0;
  c[3] = floor(8388608.0 * m);

  //Unpack exponent
  float ebias = e + 127.0;
  c[0] = floor(ebias / 2.0);
  ebias -= c[0] * 2.0;
  c[1] += floor(ebias) * 128.0;

  //Unpack sign bit
  c[0] += 128.0 * step(0.0, -v);

  //Scale back to range
  return c / 255.0;
}

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform float pickId;
uniform vec3 clipBounds[2];

varying vec3 worldPosition;
varying float pixelArcLength;
varying vec4 fragColor;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;

  gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);
}`]),c=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];t.createShader=function(h){return a(h,i,n,null,c)},t.createPickShader=function(h){return a(h,i,s,null,c)}},5714:function(e,t,r){"use strict";e.exports=d;var o=r(2762),a=r(8116),i=r(7766),n=new Uint8Array(4),s=new Float32Array(n.buffer);function c(u,y,f,P){return n[0]=P,n[1]=f,n[2]=y,n[3]=u,s[0]}var h=r(2478),v=r(9618),p=r(7319),T=p.createShader,l=p.createPickShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function w(u,y){for(var f=0,P=0;P<3;++P){var L=u[P]-y[P];f+=L*L}return Math.sqrt(f)}function S(u){for(var y=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],f=0;f<3;++f)y[0][f]=Math.max(u[0][f],y[0][f]),y[1][f]=Math.min(u[1][f],y[1][f]);return y}function E(u,y,f,P){this.arcLength=u,this.position=y,this.index=f,this.dataCoordinate=P}function m(u,y,f,P,L,z){this.gl=u,this.shader=y,this.pickShader=f,this.buffer=P,this.vao=L,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=z,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var b=m.prototype;b.isTransparent=function(){return this.hasAlpha},b.isOpaque=function(){return!this.hasAlpha},b.pickSlots=1,b.setPickBase=function(u){this.pickId=u},b.drawTransparent=b.draw=function(u){if(this.vertexCount){var y=this.gl,f=this.shader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,clipBounds:S(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.drawPick=function(u){if(this.vertexCount){var y=this.gl,f=this.pickShader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,pickId:this.pickId,clipBounds:S(this.clipBounds),screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.update=function(u){var y,f;this.dirty=!0;var P=!!u.connectGaps;"dashScale"in u&&(this.dashScale=u.dashScale),this.hasAlpha=!1,"opacity"in u&&(this.opacity=+u.opacity,this.opacity<1&&(this.hasAlpha=!0));var L=[],z=[],F=[],B=0,O=0,I=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],N=u.position||u.positions;if(N){var U=u.color||u.colors||[0,0,0,1],W=u.lineWidth||1,Q=!1;e:for(y=1;y<N.length;++y){var ue=N[y-1],se=N[y];for(z.push(B),F.push(ue.slice()),f=0;f<3;++f){if(isNaN(ue[f])||isNaN(se[f])||!isFinite(ue[f])||!isFinite(se[f])){if(!P&&L.length>0){for(var he=0;he<24;++he)L.push(L[L.length-12]);O+=2,Q=!0}continue e}I[0][f]=Math.min(I[0][f],ue[f],se[f]),I[1][f]=Math.max(I[1][f],ue[f],se[f])}var G,$;Array.isArray(U[0])?(G=U.length>y-1?U[y-1]:U.length>0?U[U.length-1]:[0,0,0,1],$=U.length>y?U[y]:U.length>0?U[U.length-1]:[0,0,0,1]):G=$=U,G.length===3&&(G=[G[0],G[1],G[2],1]),$.length===3&&($=[$[0],$[1],$[2],1]),!this.hasAlpha&&G[3]<1&&(this.hasAlpha=!0);var J;Array.isArray(W)?J=W.length>y-1?W[y-1]:W.length>0?W[W.length-1]:[0,0,0,1]:J=W;var Z=B;if(B+=w(ue,se),Q){for(f=0;f<2;++f)L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3]);O+=2,Q=!1}L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3],ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,-J,G[0],G[1],G[2],G[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,-J,$[0],$[1],$[2],$[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,J,$[0],$[1],$[2],$[3]),O+=4}}if(this.buffer.update(L),z.push(B),F.push(N[N.length-1].slice()),this.bounds=I,this.vertexCount=O,this.points=F,this.arcLength=z,"dashes"in u){var re=u.dashes,ne=re.slice();for(ne.unshift(0),y=1;y<ne.length;++y)ne[y]=ne[y-1]+ne[y];var j=v(new Array(256*4),[256,1,4]);for(y=0;y<256;++y){for(f=0;f<4;++f)j.set(y,0,f,0);h.le(ne,ne[ne.length-1]*y/255)&1?j.set(y,0,0,0):j.set(y,0,0,255)}this.texture.setPixels(j)}},b.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},b.pick=function(u){if(!u||u.id!==this.pickId)return null;var y=c(u.value[0],u.value[1],u.value[2],0),f=h.le(this.arcLength,y);if(f<0)return null;if(f===this.arcLength.length-1)return new E(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),f);for(var P=this.points[f],L=this.points[Math.min(f+1,this.points.length-1)],z=(y-this.arcLength[f])/(this.arcLength[f+1]-this.arcLength[f]),F=1-z,B=[0,0,0],O=0;O<3;++O)B[O]=F*P[O]+z*L[O];var I=Math.min(z<.5?f:f+1,this.points.length-1);return new E(y,B,I,this.points[I])};function d(u){var y=u.gl||u.scene&&u.scene.gl,f=T(y);f.attributes.position.location=0,f.attributes.nextPosition.location=1,f.attributes.arcLength.location=2,f.attributes.lineWidth.location=3,f.attributes.color.location=4;var P=l(y);P.attributes.position.location=0,P.attributes.nextPosition.location=1,P.attributes.arcLength.location=2,P.attributes.lineWidth.location=3,P.attributes.color.location=4;for(var L=o(y),z=a(y,[{buffer:L,size:3,offset:0,stride:48},{buffer:L,size:3,offset:12,stride:48},{buffer:L,size:1,offset:24,stride:48},{buffer:L,size:1,offset:28,stride:48},{buffer:L,size:4,offset:32,stride:48}]),F=v(new Array(256*4),[256,1,4]),B=0;B<1024;++B)F.data[B]=255;var O=i(y,F);O.wrap=y.REPEAT;var I=new m(y,f,P,L,z,O);return I.update(u),I}},1903:function(e){e.exports=t;function t(r){var o=new Float32Array(16);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o[4]=r[4],o[5]=r[5],o[6]=r[6],o[7]=r[7],o[8]=r[8],o[9]=r[9],o[10]=r[10],o[11]=r[11],o[12]=r[12],o[13]=r[13],o[14]=r[14],o[15]=r[15],o}},6864:function(e){e.exports=t;function t(){var r=new Float32Array(16);return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},9921:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3],s=r[4],c=r[5],h=r[6],v=r[7],p=r[8],T=r[9],l=r[10],_=r[11],w=r[12],S=r[13],E=r[14],m=r[15],b=o*c-a*s,d=o*h-i*s,u=o*v-n*s,y=a*h-i*c,f=a*v-n*c,P=i*v-n*h,L=p*S-T*w,z=p*E-l*w,F=p*m-_*w,B=T*E-l*S,O=T*m-_*S,I=l*m-_*E;return b*I-d*O+u*B+y*F-f*z+P*L}},7399:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a+a,h=i+i,v=n+n,p=a*c,T=i*c,l=i*h,_=n*c,w=n*h,S=n*v,E=s*c,m=s*h,b=s*v;return r[0]=1-l-S,r[1]=T+b,r[2]=_-m,r[3]=0,r[4]=T-b,r[5]=1-p-S,r[6]=w+E,r[7]=0,r[8]=_+m,r[9]=w-E,r[10]=1-p-l,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},6743:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3],h=i+i,v=n+n,p=s+s,T=i*h,l=i*v,_=i*p,w=n*v,S=n*p,E=s*p,m=c*h,b=c*v,d=c*p;return r[0]=1-(w+E),r[1]=l+d,r[2]=_-b,r[3]=0,r[4]=l-d,r[5]=1-(T+E),r[6]=S+m,r[7]=0,r[8]=_+b,r[9]=S-m,r[10]=1-(T+w),r[11]=0,r[12]=a[0],r[13]=a[1],r[14]=a[2],r[15]=1,r}},7894:function(e){e.exports=t;function t(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},7608:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=o[4],h=o[5],v=o[6],p=o[7],T=o[8],l=o[9],_=o[10],w=o[11],S=o[12],E=o[13],m=o[14],b=o[15],d=a*h-i*c,u=a*v-n*c,y=a*p-s*c,f=i*v-n*h,P=i*p-s*h,L=n*p-s*v,z=T*E-l*S,F=T*m-_*S,B=T*b-w*S,O=l*m-_*E,I=l*b-w*E,N=_*b-w*m,U=d*N-u*I+y*O+f*B-P*F+L*z;return U?(U=1/U,r[0]=(h*N-v*I+p*O)*U,r[1]=(n*I-i*N-s*O)*U,r[2]=(E*L-m*P+b*f)*U,r[3]=(_*P-l*L-w*f)*U,r[4]=(v*B-c*N-p*F)*U,r[5]=(a*N-n*B+s*F)*U,r[6]=(m*y-S*L-b*u)*U,r[7]=(T*L-_*y+w*u)*U,r[8]=(c*I-h*B+p*z)*U,r[9]=(i*B-a*I-s*z)*U,r[10]=(S*P-E*y+b*d)*U,r[11]=(l*y-T*P-w*d)*U,r[12]=(h*F-c*O-v*z)*U,r[13]=(a*O-i*F+n*z)*U,r[14]=(E*u-S*f-m*d)*U,r[15]=(T*f-l*u+_*d)*U,r):null}},6582:function(e,t,r){var o=r(7894);e.exports=a;function a(i,n,s,c){var h,v,p,T,l,_,w,S,E,m,b=n[0],d=n[1],u=n[2],y=c[0],f=c[1],P=c[2],L=s[0],z=s[1],F=s[2];return Math.abs(b-L)<1e-6&&Math.abs(d-z)<1e-6&&Math.abs(u-F)<1e-6?o(i):(w=b-L,S=d-z,E=u-F,m=1/Math.sqrt(w*w+S*S+E*E),w*=m,S*=m,E*=m,h=f*E-P*S,v=P*w-y*E,p=y*S-f*w,m=Math.sqrt(h*h+v*v+p*p),m?(m=1/m,h*=m,v*=m,p*=m):(h=0,v=0,p=0),T=S*p-E*v,l=E*h-w*p,_=w*v-S*h,m=Math.sqrt(T*T+l*l+_*_),m?(m=1/m,T*=m,l*=m,_*=m):(T=0,l=0,_=0),i[0]=h,i[1]=T,i[2]=w,i[3]=0,i[4]=v,i[5]=l,i[6]=S,i[7]=0,i[8]=p,i[9]=_,i[10]=E,i[11]=0,i[12]=-(h*b+v*d+p*u),i[13]=-(T*b+l*d+_*u),i[14]=-(w*b+S*d+E*u),i[15]=1,i)}},6760:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3],h=o[4],v=o[5],p=o[6],T=o[7],l=o[8],_=o[9],w=o[10],S=o[11],E=o[12],m=o[13],b=o[14],d=o[15],u=a[0],y=a[1],f=a[2],P=a[3];return r[0]=u*i+y*h+f*l+P*E,r[1]=u*n+y*v+f*_+P*m,r[2]=u*s+y*p+f*w+P*b,r[3]=u*c+y*T+f*S+P*d,u=a[4],y=a[5],f=a[6],P=a[7],r[4]=u*i+y*h+f*l+P*E,r[5]=u*n+y*v+f*_+P*m,r[6]=u*s+y*p+f*w+P*b,r[7]=u*c+y*T+f*S+P*d,u=a[8],y=a[9],f=a[10],P=a[11],r[8]=u*i+y*h+f*l+P*E,r[9]=u*n+y*v+f*_+P*m,r[10]=u*s+y*p+f*w+P*b,r[11]=u*c+y*T+f*S+P*d,u=a[12],y=a[13],f=a[14],P=a[15],r[12]=u*i+y*h+f*l+P*E,r[13]=u*n+y*v+f*_+P*m,r[14]=u*s+y*p+f*w+P*b,r[15]=u*c+y*T+f*S+P*d,r}},4040:function(e){e.exports=t;function t(r,o,a,i,n,s,c){var h=1/(o-a),v=1/(i-n),p=1/(s-c);return r[0]=-2*h,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*v,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=2*p,r[11]=0,r[12]=(o+a)*h,r[13]=(n+i)*v,r[14]=(c+s)*p,r[15]=1,r}},4772:function(e){e.exports=t;function t(r,o,a,i,n){var s=1/Math.tan(o/2),c=1/(i-n);return r[0]=s/a,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=s,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=(n+i)*c,r[11]=-1,r[12]=0,r[13]=0,r[14]=2*n*i*c,r[15]=0,r}},6079:function(e){e.exports=t;function t(r,o,a,i){var n=i[0],s=i[1],c=i[2],h=Math.sqrt(n*n+s*s+c*c),v,p,T,l,_,w,S,E,m,b,d,u,y,f,P,L,z,F,B,O,I,N,U,W;return Math.abs(h)<1e-6?null:(h=1/h,n*=h,s*=h,c*=h,v=Math.sin(a),p=Math.cos(a),T=1-p,l=o[0],_=o[1],w=o[2],S=o[3],E=o[4],m=o[5],b=o[6],d=o[7],u=o[8],y=o[9],f=o[10],P=o[11],L=n*n*T+p,z=s*n*T+c*v,F=c*n*T-s*v,B=n*s*T-c*v,O=s*s*T+p,I=c*s*T+n*v,N=n*c*T+s*v,U=s*c*T-n*v,W=c*c*T+p,r[0]=l*L+E*z+u*F,r[1]=_*L+m*z+y*F,r[2]=w*L+b*z+f*F,r[3]=S*L+d*z+P*F,r[4]=l*B+E*O+u*I,r[5]=_*B+m*O+y*I,r[6]=w*B+b*O+f*I,r[7]=S*B+d*O+P*I,r[8]=l*N+E*U+u*W,r[9]=_*N+m*U+y*W,r[10]=w*N+b*U+f*W,r[11]=S*N+d*U+P*W,o!==r&&(r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r)}},5567:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[4],c=o[5],h=o[6],v=o[7],p=o[8],T=o[9],l=o[10],_=o[11];return o!==r&&(r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[4]=s*n+p*i,r[5]=c*n+T*i,r[6]=h*n+l*i,r[7]=v*n+_*i,r[8]=p*n-s*i,r[9]=T*n-c*i,r[10]=l*n-h*i,r[11]=_*n-v*i,r}},2408:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[0],c=o[1],h=o[2],v=o[3],p=o[8],T=o[9],l=o[10],_=o[11];return o!==r&&(r[4]=o[4],r[5]=o[5],r[6]=o[6],r[7]=o[7],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[0]=s*n-p*i,r[1]=c*n-T*i,r[2]=h*n-l*i,r[3]=v*n-_*i,r[8]=s*i+p*n,r[9]=c*i+T*n,r[10]=h*i+l*n,r[11]=v*i+_*n,r}},7089:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[0],c=o[1],h=o[2],v=o[3],p=o[4],T=o[5],l=o[6],_=o[7];return o!==r&&(r[8]=o[8],r[9]=o[9],r[10]=o[10],r[11]=o[11],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[0]=s*n+p*i,r[1]=c*n+T*i,r[2]=h*n+l*i,r[3]=v*n+_*i,r[4]=p*n-s*i,r[5]=T*n-c*i,r[6]=l*n-h*i,r[7]=_*n-v*i,r}},2504:function(e){e.exports=t;function t(r,o,a){var i=a[0],n=a[1],s=a[2];return r[0]=o[0]*i,r[1]=o[1]*i,r[2]=o[2]*i,r[3]=o[3]*i,r[4]=o[4]*n,r[5]=o[5]*n,r[6]=o[6]*n,r[7]=o[7]*n,r[8]=o[8]*s,r[9]=o[9]*s,r[10]=o[10]*s,r[11]=o[11]*s,r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15],r}},7656:function(e){e.exports=t;function t(r,o,a){var i=a[0],n=a[1],s=a[2],c,h,v,p,T,l,_,w,S,E,m,b;return o===r?(r[12]=o[0]*i+o[4]*n+o[8]*s+o[12],r[13]=o[1]*i+o[5]*n+o[9]*s+o[13],r[14]=o[2]*i+o[6]*n+o[10]*s+o[14],r[15]=o[3]*i+o[7]*n+o[11]*s+o[15]):(c=o[0],h=o[1],v=o[2],p=o[3],T=o[4],l=o[5],_=o[6],w=o[7],S=o[8],E=o[9],m=o[10],b=o[11],r[0]=c,r[1]=h,r[2]=v,r[3]=p,r[4]=T,r[5]=l,r[6]=_,r[7]=w,r[8]=S,r[9]=E,r[10]=m,r[11]=b,r[12]=c*i+T*n+S*s+o[12],r[13]=h*i+l*n+E*s+o[13],r[14]=v*i+_*n+m*s+o[14],r[15]=p*i+w*n+b*s+o[15]),r}},5665:function(e){e.exports=t;function t(r,o){if(r===o){var a=o[1],i=o[2],n=o[3],s=o[6],c=o[7],h=o[11];r[1]=o[4],r[2]=o[8],r[3]=o[12],r[4]=a,r[6]=o[9],r[7]=o[13],r[8]=i,r[9]=s,r[11]=o[14],r[12]=n,r[13]=c,r[14]=h}else r[0]=o[0],r[1]=o[4],r[2]=o[8],r[3]=o[12],r[4]=o[1],r[5]=o[5],r[6]=o[9],r[7]=o[13],r[8]=o[2],r[9]=o[6],r[10]=o[10],r[11]=o[14],r[12]=o[3],r[13]=o[7],r[14]=o[11],r[15]=o[15];return r}},7626:function(e,t,r){"use strict";var o=r(2642),a=r(9346);e.exports=h;function i(v,p){for(var T=[0,0,0,0],l=0;l<4;++l)for(var _=0;_<4;++_)T[_]+=v[4*l+_]*p[l];return T}function n(v,p,T,l,_){for(var w=i(l,i(T,i(p,[v[0],v[1],v[2],1]))),S=0;S<3;++S)w[S]/=w[3];return[.5*_[0]*(1+w[0]),.5*_[1]*(1-w[1])]}function s(v,p){if(v.length===2){for(var T=0,l=0,_=0;_<2;++_)T+=Math.pow(p[_]-v[0][_],2),l+=Math.pow(p[_]-v[1][_],2);return T=Math.sqrt(T),l=Math.sqrt(l),T+l<1e-6?[1,0]:[l/(T+l),T/(l+T)]}else if(v.length===3){var w=[0,0];return a(v[0],v[1],v[2],p,w),o(v,w)}return[]}function c(v,p){for(var T=[0,0,0],l=0;l<v.length;++l)for(var _=v[l],w=p[l],S=0;S<3;++S)T[S]+=w*_[S];return T}function h(v,p,T,l,_,w){if(v.length===1)return[0,v[0].slice()];for(var S=new Array(v.length),E=0;E<v.length;++E)S[E]=n(v[E],T,l,_,w);for(var m=0,b=1/0,E=0;E<S.length;++E){for(var d=0,u=0;u<2;++u)d+=Math.pow(S[E][u]-p[u],2);d<b&&(b=d,m=E)}for(var y=s(S,p),f=0,E=0;E<3;++E){if(y[E]<-.001||y[E]>1.0001)return null;f+=y[E]}return Math.abs(f-1)>.001?null:[m,c(v,y),y]}},840:function(e,t,r){var o=r(3236),a=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position, normal;
attribute vec4 color;
attribute vec2 uv;

uniform mat4 model
           , view
           , projection
           , inverseModel;
uniform vec3 eyePosition
           , lightPosition;

varying vec3 f_normal
           , f_lightDirection
           , f_eyeDirection
           , f_data;
varying vec4 f_color;
varying vec2 f_uv;

vec4 project(vec3 p) {
  return projection * (view * (model * vec4(p, 1.0)));
}

void main() {
  gl_Position      = project(position);

  //Lighting geometry parameters
  vec4 cameraCoordinate = view * vec4(position , 1.0);
  cameraCoordinate.xyz /= cameraCoordinate.w;
  f_lightDirection = lightPosition - cameraCoordinate.xyz;
  f_eyeDirection   = eyePosition - cameraCoordinate.xyz;
  f_normal  = normalize((vec4(normal, 0.0) * inverseModel).xyz);

  f_color          = color;
  f_data           = position;
  f_uv             = uv;
}
`]),i=o([`#extension GL_OES_standard_derivatives : enable

precision highp float;
#define GLSLIFY 1

float beckmannDistribution(float x, float roughness) {
  float NdotH = max(x, 0.0001);
  float cos2Alpha = NdotH * NdotH;
  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
  float roughness2 = roughness * roughness;
  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
  return exp(tan2Alpha / roughness2) / denom;
}

float cookTorranceSpecular(
  vec3 lightDirection,
  vec3 viewDirection,
  vec3 surfaceNormal,
  float roughness,
  float fresnel) {

  float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
  float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);

  //Half angle vector
  vec3 H = normalize(lightDirection + viewDirection);

  //Geometric term
  float NdotH = max(dot(surfaceNormal, H), 0.0);
  float VdotH = max(dot(viewDirection, H), 0.000001);
  float LdotH = max(dot(lightDirection, H), 0.000001);
  float G1 = (2.0 * NdotH * VdotN) / VdotH;
  float G2 = (2.0 * NdotH * LdotN) / LdotH;
  float G = min(1.0, min(G1, G2));
  
  //Distribution term
  float D = beckmannDistribution(NdotH, roughness);

  //Fresnel term
  float F = pow(1.0 - VdotN, fresnel);

  //Multiply terms and done
  return  G * F * D / max(3.14159265 * VdotN, 0.000001);
}

//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 clipBounds[2];
uniform float roughness
            , fresnel
            , kambient
            , kdiffuse
            , kspecular;
uniform sampler2D texture;

varying vec3 f_normal
           , f_lightDirection
           , f_eyeDirection
           , f_data;
varying vec4 f_color;
varying vec2 f_uv;

void main() {
  if (f_color.a == 0.0 ||
    outOfRange(clipBounds[0], clipBounds[1], f_data)
  ) discard;

  vec3 N = normalize(f_normal);
  vec3 L = normalize(f_lightDirection);
  vec3 V = normalize(f_eyeDirection);

  if(gl_FrontFacing) {
    N = -N;
  }

  float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
  //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d

  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);

  vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);
  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);

  gl_FragColor = litColor * f_color.a;
}
`]),n=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position;
attribute vec4 color;
attribute vec2 uv;

uniform mat4 model, view, projection;

varying vec4 f_color;
varying vec3 f_data;
varying vec2 f_uv;

void main() {
  gl_Position = projection * (view * (model * vec4(position, 1.0)));
  f_color = color;
  f_data  = position;
  f_uv    = uv;
}`]),s=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 clipBounds[2];
uniform sampler2D texture;
uniform float opacity;

varying vec4 f_color;
varying vec3 f_data;
varying vec2 f_uv;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;

  gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
}`]),c=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

attribute vec3 position;
attribute vec4 color;
attribute vec2 uv;
attribute float pointSize;

uniform mat4 model, view, projection;
uniform vec3 clipBounds[2];

varying vec4 f_color;
varying vec2 f_uv;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], position)) {

    gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);
  } else {
    gl_Position = projection * (view * (model * vec4(position, 1.0)));
  }
  gl_PointSize = pointSize;
  f_color = color;
  f_uv = uv;
}`]),h=o([`precision highp float;
#define GLSLIFY 1

uniform sampler2D texture;
uniform float opacity;

varying vec4 f_color;
varying vec2 f_uv;

void main() {
  vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);
  if(dot(pointR, pointR) > 0.25) {
    discard;
  }
  gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
}`]),v=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position;
attribute vec4 id;

uniform mat4 model, view, projection;

varying vec3 f_position;
varying vec4 f_id;

void main() {
  gl_Position = projection * (view * (model * vec4(position, 1.0)));
  f_id        = id;
  f_position  = position;
}`]),p=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3  clipBounds[2];
uniform float pickId;

varying vec3 f_position;
varying vec4 f_id;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;

  gl_FragColor = vec4(pickId, f_id.xyz);
}`]),T=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

attribute vec3  position;
attribute float pointSize;
attribute vec4  id;

uniform mat4 model, view, projection;
uniform vec3 clipBounds[2];

varying vec3 f_position;
varying vec4 f_id;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], position)) {

    gl_Position = vec4(0.0, 0.0, 0.0, 0.0);
  } else {
    gl_Position  = projection * (view * (model * vec4(position, 1.0)));
    gl_PointSize = pointSize;
  }
  f_id         = id;
  f_position   = position;
}`]),l=o([`precision highp float;
#define GLSLIFY 1

attribute vec3 position;

uniform mat4 model, view, projection;

void main() {
  gl_Position = projection * (view * (model * vec4(position, 1.0)));
}`]),_=o([`precision highp float;
#define GLSLIFY 1

uniform vec3 contourColor;

void main() {
  gl_FragColor = vec4(contourColor, 1.0);
}
`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:c,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:v,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:T,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:l,fragment:_,attributes:[{name:"position",type:"vec3"}]}},7201:function(e,t,r){"use strict";var o=1e-6,a=1e-6,i=r(9405),n=r(2762),s=r(8116),c=r(7766),h=r(8406),v=r(6760),p=r(7608),T=r(9618),l=r(6729),_=r(7765),w=r(1888),S=r(840),E=r(7626),m=S.meshShader,b=S.wireShader,d=S.pointShader,u=S.pickShader,y=S.pointPickShader,f=S.contourShader,P=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function L(he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe){this.gl=he,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=G,this.dirty=!0,this.triShader=$,this.lineShader=J,this.pointShader=Z,this.pickShader=re,this.pointPickShader=ne,this.contourShader=j,this.trianglePositions=ee,this.triangleColors=fe,this.triangleNormals=Ae,this.triangleUVs=be,this.triangleIds=ie,this.triangleVAO=Be,this.triangleCount=0,this.lineWidth=1,this.edgePositions=Ie,this.edgeColors=at,this.edgeUVs=it,this.edgeIds=Ze,this.edgeVAO=et,this.edgeCount=0,this.pointPositions=lt,this.pointColors=ge,this.pointUVs=ce,this.pointSizes=ze,this.pointIds=Me,this.pointVAO=tt,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=nt,this.contourVAO=Qe,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=P,this._view=P,this._projection=P,this._resolution=[1,1]}var z=L.prototype;z.isOpaque=function(){return!this.hasAlpha},z.isTransparent=function(){return this.hasAlpha},z.pickSlots=1,z.setPickBase=function(he){this.pickId=he};function F(he,G){if(!G||!G.length)return 1;for(var $=0;$<G.length;++$){if(G.length<2)return 1;if(G[$][0]===he)return G[$][1];if(G[$][0]>he&&$>0){var J=(G[$][0]-he)/(G[$][0]-G[$-1][0]);return G[$][1]*(1-J)+J*G[$-1][1]}}return 1}function B(he,G){for(var $=l({colormap:he,nshades:256,format:"rgba"}),J=new Uint8Array(256*4),Z=0;Z<256;++Z){for(var re=$[Z],ne=0;ne<3;++ne)J[4*Z+ne]=re[ne];G?J[4*Z+3]=255*F(Z/255,G):J[4*Z+3]=255*re[3]}return T(J,[256,256,4],[4,0,1])}function O(he){for(var G=he.length,$=new Array(G),J=0;J<G;++J)$[J]=he[J][2];return $}z.highlight=function(he){if(!he||!this.contourEnable){this.contourCount=0;return}for(var G=_(this.cells,this.intensity,he.intensity),$=G.cells,J=G.vertexIds,Z=G.vertexWeights,re=$.length,ne=w.mallocFloat32(2*3*re),j=0,ee=0;ee<re;++ee)for(var ie=$[ee],fe=0;fe<2;++fe){var be=ie[0];ie.length===2&&(be=ie[fe]);for(var Ae=J[be][0],Be=J[be][1],Ie=Z[be],Ze=1-Ie,at=this.positions[Ae],it=this.positions[Be],et=0;et<3;++et)ne[j++]=Ie*at[et]+Ze*it[et]}this.contourCount=j/3|0,this.contourPositions.update(ne.subarray(0,j)),w.free(ne)},z.update=function(he){he=he||{};var G=this.gl;this.dirty=!0,"contourEnable"in he&&(this.contourEnable=he.contourEnable),"contourColor"in he&&(this.contourColor=he.contourColor),"lineWidth"in he&&(this.lineWidth=he.lineWidth),"lightPosition"in he&&(this.lightPosition=he.lightPosition),this.hasAlpha=!1,"opacity"in he&&(this.opacity=he.opacity,this.opacity<1&&(this.hasAlpha=!0)),"opacityscale"in he&&(this.opacityscale=he.opacityscale,this.hasAlpha=!0),"ambient"in he&&(this.ambientLight=he.ambient),"diffuse"in he&&(this.diffuseLight=he.diffuse),"specular"in he&&(this.specularLight=he.specular),"roughness"in he&&(this.roughness=he.roughness),"fresnel"in he&&(this.fresnel=he.fresnel),he.texture?(this.texture.dispose(),this.texture=c(G,he.texture)):he.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=G.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=G.LINEAR,this.texture.setPixels(B(he.colormap,this.opacityscale)),this.texture.generateMipmap());var $=he.cells,J=he.positions;if(!(!J||!$)){var Z=[],re=[],ne=[],j=[],ee=[],ie=[],fe=[],be=[],Ae=[],Be=[],Ie=[],Ze=[],at=[],it=[];this.cells=$,this.positions=J;var et=he.vertexNormals,lt=he.cellNormals,Me=he.vertexNormalsEpsilon===void 0?o:he.vertexNormalsEpsilon,ge=he.faceNormalsEpsilon===void 0?a:he.faceNormalsEpsilon;he.useFacetNormals&&!lt&&(lt=h.faceNormals($,J,ge)),!lt&&!et&&(et=h.vertexNormals($,J,Me));var ce=he.vertexColors,ze=he.cellColors,tt=he.meshColor||[1,1,1,1],nt=he.vertexUVs,Qe=he.vertexIntensity,Ct=he.cellUVs,St=he.cellIntensity,Ot=1/0,jt=-1/0;if(!nt&&!Ct)if(Qe)if(he.vertexIntensityBounds)Ot=+he.vertexIntensityBounds[0],jt=+he.vertexIntensityBounds[1];else for(var ur=0;ur<Qe.length;++ur){var ar=Qe[ur];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}else if(St)if(he.cellIntensityBounds)Ot=+he.cellIntensityBounds[0],jt=+he.cellIntensityBounds[1];else for(var ur=0;ur<St.length;++ur){var ar=St[ur];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}else for(var ur=0;ur<J.length;++ur){var ar=J[ur][2];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}Qe?this.intensity=Qe:St?this.intensity=St:this.intensity=O(J),this.pickVertex=!(St||ze);var Cr=he.pointSizes,vr=he.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var ur=0;ur<J.length;++ur)for(var _r=J[ur],yt=0;yt<3;++yt)isNaN(_r[yt])||!isFinite(_r[yt])||(this.bounds[0][yt]=Math.min(this.bounds[0][yt],_r[yt]),this.bounds[1][yt]=Math.max(this.bounds[1][yt],_r[yt]));var Fe=0,Ke=0,Ne=0;e:for(var ur=0;ur<$.length;++ur){var Ee=$[ur];switch(Ee.length){case 1:for(var Ve=Ee[0],_r=J[Ve],yt=0;yt<3;++yt)if(isNaN(_r[yt])||!isFinite(_r[yt]))continue e;Be.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?Ie.push(ke[0],ke[1],ke[2],this.opacity):(Ie.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0));var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],Ze.push(Te[0],Te[1]),Cr?at.push(Cr[Ve]):at.push(vr),it.push(ur),Ne+=1;break;case 2:for(var yt=0;yt<2;++yt)for(var Ve=Ee[yt],_r=J[Ve],Le=0;Le<3;++Le)if(isNaN(_r[Le])||!isFinite(_r[Le]))continue e;for(var yt=0;yt<2;++yt){var Ve=Ee[yt],_r=J[Ve];ie.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?fe.push(ke[0],ke[1],ke[2],this.opacity):(fe.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0));var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],be.push(Te[0],Te[1]),Ae.push(ur)}Ke+=1;break;case 3:for(var yt=0;yt<3;++yt)for(var Ve=Ee[yt],_r=J[Ve],Le=0;Le<3;++Le)if(isNaN(_r[Le])||!isFinite(_r[Le]))continue e;for(var yt=0;yt<3;++yt){var Ve=Ee[2-yt],_r=J[Ve];Z.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,ke?this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?re.push(ke[0],ke[1],ke[2],this.opacity):(re.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0)):re.push(.5,.5,.5,1);var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],j.push(Te[0],Te[1]);var rt;et?rt=et[Ve]:rt=lt[ur],ne.push(rt[0],rt[1],rt[2]),ee.push(ur)}Fe+=1;break;default:break}}this.pointCount=Ne,this.edgeCount=Ke,this.triangleCount=Fe,this.pointPositions.update(Be),this.pointColors.update(Ie),this.pointUVs.update(Ze),this.pointSizes.update(at),this.pointIds.update(new Uint32Array(it)),this.edgePositions.update(ie),this.edgeColors.update(fe),this.edgeUVs.update(be),this.edgeIds.update(new Uint32Array(Ae)),this.trianglePositions.update(Z),this.triangleColors.update(re),this.triangleUVs.update(j),this.triangleNormals.update(ne),this.triangleIds.update(new Uint32Array(ee))}},z.drawTransparent=z.draw=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);var j={model:$,view:J,projection:Z,inverseModel:P.slice(),clipBounds:re,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};j.inverseModel=p(j.inverseModel,j.model),G.disable(G.CULL_FACE),this.texture.bind(0);var ee=new Array(16);v(ee,j.view,j.model),v(ee,j.projection,ee),p(ee,ee);for(var ne=0;ne<3;++ne)j.eyePosition[ne]=ee[12+ne]/ee[15];for(var ie=ee[15],ne=0;ne<3;++ne)ie+=this.lightPosition[ne]*ee[4*ne+3];for(var ne=0;ne<3;++ne){for(var fe=ee[12+ne],be=0;be<3;++be)fe+=ee[4*be+ne]*this.lightPosition[be];j.lightPosition[ne]=fe/ie}if(this.triangleCount>0){var Ae=this.triShader;Ae.bind(),Ae.uniforms=j,this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var Ae=this.lineShader;Ae.bind(),Ae.uniforms=j,this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var Ae=this.pointShader;Ae.bind(),Ae.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var Ae=this.contourShader;Ae.bind(),Ae.uniforms=j,this.contourVAO.bind(),G.drawArrays(G.LINES,0,this.contourCount),this.contourVAO.unbind()}},z.drawPick=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);this._model=[].slice.call($),this._view=[].slice.call(J),this._projection=[].slice.call(Z),this._resolution=[G.drawingBufferWidth,G.drawingBufferHeight];var j={model:$,view:J,projection:Z,clipBounds:re,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=j,this.triangleCount>0&&(this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}},z.pick=function(he){if(!he||he.id!==this.pickId)return null;for(var G=he.value[0]+256*he.value[1]+65536*he.value[2],$=this.cells[G],J=this.positions,Z=new Array($.length),re=0;re<$.length;++re)Z[re]=J[$[re]];var ne=he.coord[0],j=he.coord[1];if(!this.pickVertex){var ee=this.positions[$[0]],ie=this.positions[$[1]],fe=this.positions[$[2]],be=[(ee[0]+ie[0]+fe[0])/3,(ee[1]+ie[1]+fe[1])/3,(ee[2]+ie[2]+fe[2])/3];return{_cellCenter:!0,position:[ne,j],index:G,cell:$,cellId:G,intensity:this.intensity[G],dataCoordinate:be}}var Ae=E(Z,[ne*this.pixelRatio,this._resolution[1]-j*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!Ae)return null;for(var Be=Ae[2],Ie=0,re=0;re<$.length;++re)Ie+=Be[re]*this.intensity[$[re]];return{position:Ae[1],index:$[Ae[0]],cell:$,cellId:G,intensity:Ie,dataCoordinate:this.positions[$[Ae[0]]]}},z.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()};function I(he){var G=i(he,m.vertex,m.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.normal.location=4,G}function N(he){var G=i(he,b.vertex,b.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G}function U(he){var G=i(he,d.vertex,d.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.pointSize.location=4,G}function W(he){var G=i(he,u.vertex,u.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G}function Q(he){var G=i(he,y.vertex,y.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G.attributes.pointSize.location=4,G}function ue(he){var G=i(he,f.vertex,f.fragment);return G.attributes.position.location=0,G}function se(he,G){arguments.length===1&&(G=he,he=G.gl);var $=he.getExtension("OES_standard_derivatives")||he.getExtension("MOZ_OES_standard_derivatives")||he.getExtension("WEBKIT_OES_standard_derivatives");if(!$)throw new Error("derivatives not supported");var J=I(he),Z=N(he),re=U(he),ne=W(he),j=Q(he),ee=ue(he),ie=c(he,T(new Uint8Array([255,255,255,255]),[1,1,4]));ie.generateMipmap(),ie.minFilter=he.LINEAR_MIPMAP_LINEAR,ie.magFilter=he.LINEAR;var fe=n(he),be=n(he),Ae=n(he),Be=n(he),Ie=n(he),Ze=s(he,[{buffer:fe,type:he.FLOAT,size:3},{buffer:Ie,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:be,type:he.FLOAT,size:4},{buffer:Ae,type:he.FLOAT,size:2},{buffer:Be,type:he.FLOAT,size:3}]),at=n(he),it=n(he),et=n(he),lt=n(he),Me=s(he,[{buffer:at,type:he.FLOAT,size:3},{buffer:lt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:it,type:he.FLOAT,size:4},{buffer:et,type:he.FLOAT,size:2}]),ge=n(he),ce=n(he),ze=n(he),tt=n(he),nt=n(he),Qe=s(he,[{buffer:ge,type:he.FLOAT,size:3},{buffer:nt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:ce,type:he.FLOAT,size:4},{buffer:ze,type:he.FLOAT,size:2},{buffer:tt,type:he.FLOAT,size:1}]),Ct=n(he),St=s(he,[{buffer:Ct,type:he.FLOAT,size:3}]),Ot=new L(he,ie,J,Z,re,ne,j,ee,fe,Ie,be,Ae,Be,Ze,at,lt,it,et,Me,ge,nt,ce,ze,tt,Qe,Ct,St);return Ot.update(G),Ot}e.exports=se},4437:function(e,t,r){"use strict";e.exports=h;var o=r(3025),a=r(6296),i=r(351),n=r(8512),s=r(24),c=r(7520);function h(v,p){v=v||document.body,p=p||{};var T=[.01,1/0];"distanceLimits"in p&&(T[0]=p.distanceLimits[0],T[1]=p.distanceLimits[1]),"zoomMin"in p&&(T[0]=p.zoomMin),"zoomMax"in p&&(T[1]=p.zoomMax);var l=a({center:p.center||[0,0,0],up:p.up||[0,1,0],eye:p.eye||[0,0,10],mode:p.mode||"orbit",distanceLimits:T}),_=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],w=0,S=v.clientWidth,E=v.clientHeight,m={keyBindingMode:"rotate",enableWheel:!0,view:l,element:v,delay:p.delay||16,rotateSpeed:p.rotateSpeed||1,zoomSpeed:p.zoomSpeed||1,translateSpeed:p.translateSpeed||1,flipX:!!p.flipX,flipY:!!p.flipY,modes:l.modes,_ortho:p._ortho||p.projection&&p.projection.type==="orthographic"||!1,tick:function(){var b=o(),d=this.delay,u=b-2*d;l.idle(b-d),l.recalcMatrix(u),l.flush(b-(100+d*2));for(var y=!0,f=l.computedMatrix,P=0;P<16;++P)y=y&&_[P]===f[P],_[P]=f[P];var L=v.clientWidth===S&&v.clientHeight===E;return S=v.clientWidth,E=v.clientHeight,y?!L:(w=Math.exp(l.computedRadius[0]),!0)},lookAt:function(b,d,u){l.lookAt(l.lastT(),b,d,u)},rotate:function(b,d,u){l.rotate(l.lastT(),b,d,u)},pan:function(b,d,u){l.pan(l.lastT(),b,d,u)},translate:function(b,d,u){l.translate(l.lastT(),b,d,u)}};return Object.defineProperties(m,{matrix:{get:function(){return l.computedMatrix},set:function(b){return l.setMatrix(l.lastT(),b),l.computedMatrix},enumerable:!0},mode:{get:function(){return l.getMode()},set:function(b){var d=l.computedUp.slice(),u=l.computedEye.slice(),y=l.computedCenter.slice();if(l.setMode(b),b==="turntable"){var f=o();l._active.lookAt(f,u,y,d),l._active.lookAt(f+500,u,y,[0,0,1]),l._active.flush(f)}return l.getMode()},enumerable:!0},center:{get:function(){return l.computedCenter},set:function(b){return l.lookAt(l.lastT(),null,b),l.computedCenter},enumerable:!0},eye:{get:function(){return l.computedEye},set:function(b){return l.lookAt(l.lastT(),b),l.computedEye},enumerable:!0},up:{get:function(){return l.computedUp},set:function(b){return l.lookAt(l.lastT(),null,null,b),l.computedUp},enumerable:!0},distance:{get:function(){return w},set:function(b){return l.setDistance(l.lastT(),b),b},enumerable:!0},distanceLimits:{get:function(){return l.getDistanceLimits(T)},set:function(b){return l.setDistanceLimits(b),b},enumerable:!0}}),v.addEventListener("contextmenu",function(b){return b.preventDefault(),!1}),m._lastX=-1,m._lastY=-1,m._lastMods={shift:!1,control:!1,alt:!1,meta:!1},m.enableMouseListeners=function(){m.mouseListener=i(v,b),v.addEventListener("touchstart",function(d){var u=s(d.changedTouches[0],v);b(0,u[0],u[1],m._lastMods),b(1,u[0],u[1],m._lastMods)},c?{passive:!0}:!1),v.addEventListener("touchmove",function(d){var u=s(d.changedTouches[0],v);b(1,u[0],u[1],m._lastMods),d.preventDefault()},c?{passive:!1}:!1),v.addEventListener("touchend",function(d){b(0,m._lastX,m._lastY,m._lastMods)},c?{passive:!0}:!1);function b(d,u,y,f){var P=m.keyBindingMode;if(P!==!1){var L=P==="rotate",z=P==="pan",F=P==="zoom",B=!!f.control,O=!!f.alt,I=!!f.shift,N=!!(d&1),U=!!(d&2),W=!!(d&4),Q=1/v.clientHeight,ue=Q*(u-m._lastX),se=Q*(y-m._lastY),he=m.flipX?1:-1,G=m.flipY?1:-1,$=Math.PI*m.rotateSpeed,J=o();if(m._lastX!==-1&&m._lastY!==-1&&((L&&N&&!B&&!O&&!I||N&&!B&&!O&&I)&&l.rotate(J,he*$*ue,-G*$*se,0),(z&&N&&!B&&!O&&!I||U||N&&B&&!O&&!I)&&l.pan(J,-m.translateSpeed*ue*w,m.translateSpeed*se*w,0),F&&N&&!B&&!O&&!I||W||N&&!B&&O&&!I)){var Z=-m.zoomSpeed*se/window.innerHeight*(J-l.lastT())*100;l.pan(J,0,0,w*(Math.exp(Z)-1))}return m._lastX=u,m._lastY=y,m._lastMods=f,!0}}m.wheelListener=n(v,function(d,u){if(m.keyBindingMode!==!1&&m.enableWheel){var y=m.flipX?1:-1,f=m.flipY?1:-1,P=o();if(Math.abs(d)>Math.abs(u))l.rotate(P,0,0,-d*y*Math.PI*m.rotateSpeed/window.innerWidth);else if(!m._ortho){var L=-m.zoomSpeed*f*u/window.innerHeight*(P-l.lastT())/20;l.pan(P,0,0,w*(Math.exp(L)-1))}}},!0)},m.enableMouseListeners(),m}},799:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision mediump float;
#define GLSLIFY 1
attribute vec2 position;
varying vec2 uv;
void main() {
  uv = position;
  gl_Position = vec4(position, 0, 1);
}`]),n=o([`precision mediump float;
#define GLSLIFY 1

uniform sampler2D accumBuffer;
varying vec2 uv;

void main() {
  vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));
  gl_FragColor = min(vec4(1,1,1,1), accum);
}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec2"}])}},4100:function(e,t,r){"use strict";var o=r(4437),a=r(3837),i=r(5445),n=r(4449),s=r(3589),c=r(2260),h=r(7169),v=r(351),p=r(4772),T=r(4040),l=r(799),_=r(9216)({tablet:!0,featureDetect:!0});e.exports={createScene:b,createCamera:o};function w(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(u,y){var f=null;try{f=u.getContext("webgl",y),f||(f=u.getContext("experimental-webgl",y))}catch{return null}return f}function E(u){var y=Math.round(Math.log(Math.abs(u))/Math.log(10));if(y<0){var f=Math.round(Math.pow(10,-y));return Math.ceil(u*f)/f}else if(y>0){var f=Math.round(Math.pow(10,y));return Math.ceil(u/f)*f}return Math.ceil(u)}function m(u){return typeof u=="boolean"?u:!0}function b(u){u=u||{},u.camera=u.camera||{};var y=u.canvas;if(!y)if(y=document.createElement("canvas"),u.container){var f=u.container;f.appendChild(y)}else document.body.appendChild(y);var P=u.gl;if(P||(u.glOptions&&(_=!!u.glOptions.preserveDrawingBuffer),P=S(y,u.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:_})),!P)throw new Error("webgl not supported");var L=u.bounds||[[-10,-10,-10],[10,10,10]],z=new w,F=c(P,P.drawingBufferWidth,P.drawingBufferHeight,{preferFloat:!_}),B=l(P),O=u.cameraObject&&u.cameraObject._ortho===!0||u.camera.projection&&u.camera.projection.type==="orthographic"||!1,I={eye:u.camera.eye||[2,0,0],center:u.camera.center||[0,0,0],up:u.camera.up||[0,1,0],zoomMin:u.camera.zoomMax||.1,zoomMax:u.camera.zoomMin||100,mode:u.camera.mode||"turntable",_ortho:O},N=u.axes||{},U=a(P,N);U.enable=!N.disable;var W=u.spikes||{},Q=n(P,W),ue=[],se=[],he=[],G=[],$=!0,ne=!0,J=new Array(16),Z=new Array(16),re={view:null,projection:J,model:Z,_ortho:!1},ne=!0,j=[P.drawingBufferWidth,P.drawingBufferHeight],ee=u.cameraObject||o(y,I),ie={gl:P,contextLost:!1,pixelRatio:u.pixelRatio||1,canvas:y,selection:z,camera:ee,axes:U,axesPixels:null,spikes:Q,bounds:L,objects:ue,shape:j,aspect:u.aspectRatio||[1,1,1],pickRadius:u.pickRadius||10,zNear:u.zNear||.01,zFar:u.zFar||1e3,fovy:u.fovy||Math.PI/4,clearColor:u.clearColor||[0,0,0,0],autoResize:m(u.autoResize),autoBounds:m(u.autoBounds),autoScale:!!u.autoScale,autoCenter:m(u.autoCenter),clipToBounds:m(u.clipToBounds),snapToData:!!u.snapToData,onselect:u.onselect||null,onrender:u.onrender||null,onclick:u.onclick||null,cameraParams:re,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(lt){this.aspect[0]=lt.x,this.aspect[1]=lt.y,this.aspect[2]=lt.z,ne=!0},setBounds:function(lt,Me){this.bounds[0][lt]=Me.min,this.bounds[1][lt]=Me.max},setClearColor:function(lt){this.clearColor=lt},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},fe=[P.drawingBufferWidth/ie.pixelRatio|0,P.drawingBufferHeight/ie.pixelRatio|0];function be(){if(!ie._stopped&&ie.autoResize){var lt=y.parentNode,Me=1,ge=1;lt&&lt!==document.body?(Me=lt.clientWidth,ge=lt.clientHeight):(Me=window.innerWidth,ge=window.innerHeight);var ce=Math.ceil(Me*ie.pixelRatio)|0,ze=Math.ceil(ge*ie.pixelRatio)|0;if(ce!==y.width||ze!==y.height){y.width=ce,y.height=ze;var tt=y.style;tt.position=tt.position||"absolute",tt.left="0px",tt.top="0px",tt.width=Me+"px",tt.height=ge+"px",$=!0}}}ie.autoResize&&be(),window.addEventListener("resize",be);function Ae(){for(var lt=ue.length,Me=G.length,ge=0;ge<Me;++ge)he[ge]=0;e:for(var ge=0;ge<lt;++ge){var ce=ue[ge],ze=ce.pickSlots;if(!ze){se[ge]=-1;continue}for(var tt=0;tt<Me;++tt)if(he[tt]+ze<255){se[ge]=tt,ce.setPickBase(he[tt]+1),he[tt]+=ze;continue e}var nt=s(P,j);se[ge]=Me,G.push(nt),he.push(ze),ce.setPickBase(1),Me+=1}for(;Me>0&&he[Me-1]===0;)he.pop(),G.pop().dispose()}ie.update=function(lt){ie._stopped||(lt=lt||{},$=!0,ne=!0)},ie.add=function(lt){ie._stopped||(lt.axes=U,ue.push(lt),se.push(-1),$=!0,ne=!0,Ae())},ie.remove=function(lt){if(!ie._stopped){var Me=ue.indexOf(lt);Me<0||(ue.splice(Me,1),se.pop(),$=!0,ne=!0,Ae())}},ie.dispose=function(){if(!ie._stopped&&(ie._stopped=!0,window.removeEventListener("resize",be),y.removeEventListener("webglcontextlost",Be),ie.mouseListener.enabled=!1,!ie.contextLost)){U.dispose(),Q.dispose();for(var lt=0;lt<ue.length;++lt)ue[lt].dispose();F.dispose();for(var lt=0;lt<G.length;++lt)G[lt].dispose();B.dispose(),P=null,U=null,Q=null,ue=[]}},ie._mouseRotating=!1,ie._prevButtons=0,ie.enableMouseListeners=function(){ie.mouseListener=v(y,function(lt,Me,ge){if(!ie._stopped){var ce=G.length,ze=ue.length,tt=z.object;z.distance=1/0,z.mouse[0]=Me,z.mouse[1]=ge,z.object=null,z.screen=null,z.dataCoordinate=z.dataPosition=null;var nt=!1;if(lt&&ie._prevButtons)ie._mouseRotating=!0;else{ie._mouseRotating&&(ne=!0),ie._mouseRotating=!1;for(var Qe=0;Qe<ce;++Qe){var Ct=G[Qe].query(Me,fe[1]-ge-1,ie.pickRadius);if(Ct){if(Ct.distance>z.distance)continue;for(var St=0;St<ze;++St){var Ot=ue[St];if(se[St]===Qe){var jt=Ot.pick(Ct);jt&&(z.buttons=lt,z.screen=Ct.coord,z.distance=Ct.distance,z.object=Ot,z.index=jt.distance,z.dataPosition=jt.position,z.dataCoordinate=jt.dataCoordinate,z.data=jt,nt=!0)}}}}}tt&&tt!==z.object&&(tt.highlight&&tt.highlight(null),$=!0),z.object&&(z.object.highlight&&z.object.highlight(z.data),$=!0),nt=nt||z.object!==tt,nt&&ie.onselect&&ie.onselect(z),lt&1&&!(ie._prevButtons&1)&&ie.onclick&&ie.onclick(z),ie._prevButtons=lt}})};function Be(){if(ie.contextLost)return!0;P.isContextLost()&&(ie.contextLost=!0,ie.mouseListener.enabled=!1,ie.selection.object=null,ie.oncontextloss&&ie.oncontextloss())}y.addEventListener("webglcontextlost",Be);function Ie(){if(!Be()){P.colorMask(!0,!0,!0,!0),P.depthMask(!0),P.disable(P.BLEND),P.enable(P.DEPTH_TEST),P.depthFunc(P.LEQUAL);for(var lt=ue.length,Me=G.length,ge=0;ge<Me;++ge){var ce=G[ge];ce.shape=fe,ce.begin();for(var ze=0;ze<lt;++ze)if(se[ze]===ge){var tt=ue[ze];tt.drawPick&&(tt.pixelRatio=1,tt.drawPick(re))}ce.end()}}}var Ze=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],at=[Ze[0].slice(),Ze[1].slice()];function it(){if(!Be()){be();var lt=ie.camera.tick();re.view=ie.camera.matrix,$=$||lt,ne=ne||lt,U.pixelRatio=ie.pixelRatio,Q.pixelRatio=ie.pixelRatio;var Me=ue.length,ge=Ze[0],ce=Ze[1];ge[0]=ge[1]=ge[2]=1/0,ce[0]=ce[1]=ce[2]=-1/0;for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.pixelRatio=ie.pixelRatio,tt.axes=ie.axes,$=$||!!tt.dirty,ne=ne||!!tt.dirty;var nt=tt.bounds;if(nt)for(var Qe=nt[0],Ct=nt[1],St=0;St<3;++St)ge[St]=Math.min(ge[St],Qe[St]),ce[St]=Math.max(ce[St],Ct[St])}var Ot=ie.bounds;if(ie.autoBounds)for(var St=0;St<3;++St){if(ce[St]<ge[St])ge[St]=-1,ce[St]=1;else{ge[St]===ce[St]&&(ge[St]-=1,ce[St]+=1);var jt=.05*(ce[St]-ge[St]);ge[St]=ge[St]-jt,ce[St]=ce[St]+jt}Ot[0][St]=ge[St],Ot[1][St]=ce[St]}for(var ur=!1,St=0;St<3;++St)ur=ur||at[0][St]!==Ot[0][St]||at[1][St]!==Ot[1][St],at[0][St]=Ot[0][St],at[1][St]=Ot[1][St];if(ne=ne||ur,$=$||ur,!!$){if(ur){for(var ar=[0,0,0],ze=0;ze<3;++ze)ar[ze]=E((Ot[1][ze]-Ot[0][ze])/10);U.autoTicks?U.update({bounds:Ot,tickSpacing:ar}):U.update({bounds:Ot})}var Cr=P.drawingBufferWidth,vr=P.drawingBufferHeight;j[0]=Cr,j[1]=vr,fe[0]=Math.max(Cr/ie.pixelRatio,1)|0,fe[1]=Math.max(vr/ie.pixelRatio,1)|0,d(ie,O);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.axesBounds=Ot,ie.clipToBounds&&(tt.clipBounds=Ot)}z.object&&(ie.snapToData?Q.position=z.dataCoordinate:Q.position=z.dataPosition,Q.bounds=Ot),ne&&(ne=!1,Ie()),ie.axesPixels=i(ie.axes,re,Cr,vr),ie.onrender&&ie.onrender(),P.bindFramebuffer(P.FRAMEBUFFER,null),P.viewport(0,0,Cr,vr),ie.clearRGBA(),P.depthMask(!0),P.colorMask(!0,!0,!0,!0),P.enable(P.DEPTH_TEST),P.depthFunc(P.LEQUAL),P.disable(P.BLEND),P.disable(P.CULL_FACE);var _r=!1;U.enable&&(_r=_r||U.isTransparent(),U.draw(re)),Q.axes=U,z.object&&Q.draw(re),P.disable(P.CULL_FACE);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.axes=U,tt.pixelRatio=ie.pixelRatio,tt.isOpaque&&tt.isOpaque()&&tt.draw(re),tt.isTransparent&&tt.isTransparent()&&(_r=!0)}if(_r){F.shape=j,F.bind(),P.clear(P.DEPTH_BUFFER_BIT),P.colorMask(!1,!1,!1,!1),P.depthMask(!0),P.depthFunc(P.LESS),U.enable&&U.isTransparent()&&U.drawTransparent(re);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.isOpaque&&tt.isOpaque()&&tt.draw(re)}P.enable(P.BLEND),P.blendEquation(P.FUNC_ADD),P.blendFunc(P.ONE,P.ONE_MINUS_SRC_ALPHA),P.colorMask(!0,!0,!0,!0),P.depthMask(!1),P.clearColor(0,0,0,0),P.clear(P.COLOR_BUFFER_BIT),U.isTransparent()&&U.drawTransparent(re);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.isTransparent&&tt.isTransparent()&&tt.drawTransparent(re)}P.bindFramebuffer(P.FRAMEBUFFER,null),P.blendFunc(P.ONE,P.ONE_MINUS_SRC_ALPHA),P.disable(P.DEPTH_TEST),B.bind(),F.color[0].bind(0),B.uniforms.accumBuffer=0,h(P),P.disable(P.BLEND)}$=!1;for(var ze=0;ze<Me;++ze)ue[ze].dirty=!1}}}function et(){ie._stopped||ie.contextLost||(it(),requestAnimationFrame(et))}return ie.enableMouseListeners(),et(),ie.redraw=function(){ie._stopped||($=!0,it())},ie}function d(u,y){var f=u.bounds,P=u.cameraParams,L=P.projection,z=P.model,F=u.gl.drawingBufferWidth,B=u.gl.drawingBufferHeight,O=u.zNear,I=u.zFar,N=u.fovy,U=F/B;y?(T(L,-U,U,-1,1,O,I),P._ortho=!0):(p(L,N,U,O,I),P._ortho=!1);for(var W=0;W<16;++W)z[W]=0;z[15]=1;for(var Q=0,W=0;W<3;++W)Q=Math.max(Q,f[1][W]-f[0][W]);for(var W=0;W<3;++W)u.autoScale?z[5*W]=u.aspect[W]/(f[1][W]-f[0][W]):z[5*W]=1/Q,u.autoCenter&&(z[12+W]=-z[5*W]*.5*(f[0][W]+f[1][W]))}},783:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3],v=a[0],p=a[1],T=a[2],l=a[3],_,w,S,E,m;return w=n*v+s*p+c*T+h*l,w<0&&(w=-w,v=-v,p=-p,T=-T,l=-l),1-w>1e-6?(_=Math.acos(w),S=Math.sin(_),E=Math.sin((1-i)*_)/S,m=Math.sin(i*_)/S):(E=1-i,m=i),r[0]=E*n+m*v,r[1]=E*s+m*p,r[2]=E*c+m*T,r[3]=E*h+m*l,r}},5964:function(e){"use strict";e.exports=function(t){return!t&&t!==0?"":t.toString()}},9366:function(e,t,r){"use strict";var o=r(4359);e.exports=i;var a={};function i(n,s,c){var h=[s.style,s.weight,s.variant,s.family].join("_"),v=a[h];if(v||(v=a[h]={}),n in v)return v[n];var p={textAlign:"center",textBaseline:"middle",lineHeight:1,font:s.family,fontStyle:s.style,fontWeight:s.weight,fontVariant:s.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};p.triangles=!0;var T=o(n,p);p.triangles=!1;var l=o(n,p),_,w;if(c&&c!==1){for(_=0;_<T.positions.length;++_)for(w=0;w<T.positions[_].length;++w)T.positions[_][w]/=c;for(_=0;_<l.positions.length;++_)for(w=0;w<l.positions[_].length;++w)l.positions[_][w]/=c}var S=[[1/0,1/0],[-1/0,-1/0]],E=l.positions.length;for(_=0;_<E;++_){var m=l.positions[_];for(w=0;w<2;++w)S[0][w]=Math.min(S[0][w],m[w]),S[1][w]=Math.max(S[1][w],m[w])}return v[n]=[T,l,S]}},1283:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

attribute vec3 position;
attribute vec4 color;
attribute vec2 glyph;
attribute vec4 id;

uniform vec4 highlightId;
uniform float highlightScale;
uniform mat4 model, view, projection;
uniform vec3 clipBounds[2];

varying vec4 interpColor;
varying vec4 pickId;
varying vec3 dataCoordinate;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], position)) {

    gl_Position = vec4(0,0,0,0);
  } else {
    float scale = 1.0;
    if(distance(highlightId, id) < 0.0001) {
      scale = highlightScale;
    }

    vec4 worldPosition = model * vec4(position, 1);
    vec4 viewPosition = view * worldPosition;
    viewPosition = viewPosition / viewPosition.w;
    vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));

    gl_Position = clipPosition;
    interpColor = color;
    pickId = id;
    dataCoordinate = position;
  }
}`]),n=a([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

attribute vec3 position;
attribute vec4 color;
attribute vec2 glyph;
attribute vec4 id;

uniform mat4 model, view, projection;
uniform vec2 screenSize;
uniform vec3 clipBounds[2];
uniform float highlightScale, pixelRatio;
uniform vec4 highlightId;

varying vec4 interpColor;
varying vec4 pickId;
varying vec3 dataCoordinate;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], position)) {

    gl_Position = vec4(0,0,0,0);
  } else {
    float scale = pixelRatio;
    if(distance(highlightId.bgr, id.bgr) < 0.001) {
      scale *= highlightScale;
    }

    vec4 worldPosition = model * vec4(position, 1.0);
    vec4 viewPosition = view * worldPosition;
    vec4 clipPosition = projection * viewPosition;
    clipPosition /= clipPosition.w;

    gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);
    interpColor = color;
    pickId = id;
    dataCoordinate = position;
  }
}`]),s=a([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

attribute vec3 position;
attribute vec4 color;
attribute vec2 glyph;
attribute vec4 id;

uniform float highlightScale;
uniform vec4 highlightId;
uniform vec3 axes[2];
uniform mat4 model, view, projection;
uniform vec2 screenSize;
uniform vec3 clipBounds[2];
uniform float scale, pixelRatio;

varying vec4 interpColor;
varying vec4 pickId;
varying vec3 dataCoordinate;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], position)) {

    gl_Position = vec4(0,0,0,0);
  } else {
    float lscale = pixelRatio * scale;
    if(distance(highlightId, id) < 0.0001) {
      lscale *= highlightScale;
    }

    vec4 clipCenter   = projection * (view * (model * vec4(position, 1)));
    vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;
    vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1)));

    gl_Position = clipPosition;
    interpColor = color;
    pickId = id;
    dataCoordinate = dataPosition;
  }
}
`]),c=a([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 fragClipBounds[2];
uniform float opacity;

varying vec4 interpColor;
varying vec3 dataCoordinate;

void main() {
  if (
    outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||
    interpColor.a * opacity == 0.
  ) discard;
  gl_FragColor = interpColor * opacity;
}
`]),h=a([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 fragClipBounds[2];
uniform float pickGroup;

varying vec4 pickId;
varying vec3 dataCoordinate;

void main() {
  if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;

  gl_FragColor = vec4(pickGroup, pickId.bgr);
}`]),v=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],p={vertex:i,fragment:c,attributes:v},T={vertex:n,fragment:c,attributes:v},l={vertex:s,fragment:c,attributes:v},_={vertex:i,fragment:h,attributes:v},w={vertex:n,fragment:h,attributes:v},S={vertex:s,fragment:h,attributes:v};function E(m,b){var d=o(m,b),u=d.attributes;return u.position.location=0,u.color.location=1,u.glyph.location=2,u.id.location=3,d}t.createPerspective=function(m){return E(m,p)},t.createOrtho=function(m){return E(m,T)},t.createProject=function(m){return E(m,l)},t.createPickPerspective=function(m){return E(m,_)},t.createPickOrtho=function(m){return E(m,w)},t.createPickProject=function(m){return E(m,S)}},8418:function(e,t,r){"use strict";var o=r(5219),a=r(2762),i=r(8116),n=r(1888),s=r(6760),c=r(1283),h=r(9366),v=r(5964),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,l=DataView;function _(Z){return T.isView(Z)&&!(Z instanceof l)}function w(Z){return Array.isArray(Z)||_(Z)}e.exports=J;function S(Z,re){var ne=Z[0],j=Z[1],ee=Z[2],ie=Z[3];return Z[0]=re[0]*ne+re[4]*j+re[8]*ee+re[12]*ie,Z[1]=re[1]*ne+re[5]*j+re[9]*ee+re[13]*ie,Z[2]=re[2]*ne+re[6]*j+re[10]*ee+re[14]*ie,Z[3]=re[3]*ne+re[7]*j+re[11]*ee+re[15]*ie,Z}function E(Z,re,ne,j){return S(j,j,ne),S(j,j,re),S(j,j,Z)}function m(Z,re){this.index=Z,this.dataCoordinate=this.position=re}function b(Z){return Z===!0||Z>1?1:Z}function d(Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze){this.gl=Z,this.pixelRatio=1,this.shader=re,this.orthoShader=ne,this.projectShader=j,this.pointBuffer=ee,this.colorBuffer=ie,this.glyphBuffer=fe,this.idBuffer=be,this.vao=Ae,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Be,this.pickOrthoShader=Ie,this.pickProjectShader=Ze,this.points=[],this._selectResult=new m(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var u=d.prototype;u.pickSlots=1,u.setPickBase=function(Z){this.pickId=Z},u.isTransparent=function(){if(this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&this.projectHasAlpha)return!0;return!1},u.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0,1],z=[0,0,0,1],F=p.slice(),B=[0,0,0],O=[[0,0,0],[0,0,0]];function I(Z){return Z[0]=Z[1]=Z[2]=0,Z}function N(Z,re){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[3]=1,Z}function U(Z,re,ne,j){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[ne]=j,Z}function W(Z){for(var re=O,ne=0;ne<2;++ne)for(var j=0;j<3;++j)re[ne][j]=Math.max(Math.min(Z[ne][j],1e8),-1e8);return re}function Q(Z,re,ne,j){var ee=re.axesProject,ie=re.gl,fe=Z.uniforms,be=ne.model||p,Ae=ne.view||p,Be=ne.projection||p,Ie=re.axesBounds,Ze=W(re.clipBounds),at;re.axes&&re.axes.lastCubeProps?at=re.axes.lastCubeProps.axis:at=[1,1,1],y[0]=2/ie.drawingBufferWidth,y[1]=2/ie.drawingBufferHeight,Z.bind(),fe.view=Ae,fe.projection=Be,fe.screenSize=y,fe.highlightId=re.highlightId,fe.highlightScale=re.highlightScale,fe.clipBounds=Ze,fe.pickGroup=re.pickId/255,fe.pixelRatio=j;for(var it=0;it<3;++it)if(ee[it]){fe.scale=re.projectScale[it],fe.opacity=re.projectOpacity[it];for(var et=F,lt=0;lt<16;++lt)et[lt]=0;for(var lt=0;lt<4;++lt)et[5*lt]=1;et[5*it]=0,at[it]<0?et[12+it]=Ie[0][it]:et[12+it]=Ie[1][it],s(et,be,et),fe.model=et;var Me=(it+1)%3,ge=(it+2)%3,ce=I(f),ze=I(P);ce[Me]=1,ze[ge]=1;var tt=E(Be,Ae,be,N(L,ce)),nt=E(Be,Ae,be,N(z,ze));if(Math.abs(tt[1])>Math.abs(nt[1])){var Qe=tt;tt=nt,nt=Qe,Qe=ce,ce=ze,ze=Qe;var Ct=Me;Me=ge,ge=Ct}tt[0]<0&&(ce[Me]=-1),nt[1]>0&&(ze[ge]=-1);for(var St=0,Ot=0,lt=0;lt<4;++lt)St+=Math.pow(be[4*Me+lt],2),Ot+=Math.pow(be[4*ge+lt],2);ce[Me]/=Math.sqrt(St),ze[ge]/=Math.sqrt(Ot),fe.axes[0]=ce,fe.axes[1]=ze,fe.fragClipBounds[0]=U(B,Ze[0],it,-1e8),fe.fragClipBounds[1]=U(B,Ze[1],it,1e8),re.vao.bind(),re.vao.draw(ie.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ie.lineWidth(re.lineWidth*j),re.vao.draw(ie.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}var ue=[-1e8,-1e8,-1e8],se=[1e8,1e8,1e8],he=[ue,se];function G(Z,re,ne,j,ee,ie,fe){var be=ne.gl;if((ie===ne.projectHasAlpha||fe)&&Q(re,ne,j,ee),ie===ne.hasAlpha||fe){Z.bind();var Ae=Z.uniforms;Ae.model=j.model||p,Ae.view=j.view||p,Ae.projection=j.projection||p,y[0]=2/be.drawingBufferWidth,y[1]=2/be.drawingBufferHeight,Ae.screenSize=y,Ae.highlightId=ne.highlightId,Ae.highlightScale=ne.highlightScale,Ae.fragClipBounds=he,Ae.clipBounds=ne.axes.bounds,Ae.opacity=ne.opacity,Ae.pickGroup=ne.pickId/255,Ae.pixelRatio=ee,ne.vao.bind(),ne.vao.draw(be.TRIANGLES,ne.vertexCount),ne.lineWidth>0&&(be.lineWidth(ne.lineWidth*ee),ne.vao.draw(be.LINES,ne.lineVertexCount,ne.vertexCount)),ne.vao.unbind()}}u.draw=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!1,!1)},u.drawTransparent=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!0,!1)},u.drawPick=function(Z){var re=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;G(re,this.pickProjectShader,this,Z,1,!0,!0)},u.pick=function(Z){if(!Z||Z.id!==this.pickId)return null;var re=Z.value[2]+(Z.value[1]<<8)+(Z.value[0]<<16);if(re>=this.pointCount||re<0)return null;var ne=this.points[re],j=this._selectResult;j.index=re;for(var ee=0;ee<3;++ee)j.position[ee]=j.dataCoordinate[ee]=ne[ee];return j},u.highlight=function(Z){if(!Z)this.highlightId=[1,1,1,1];else{var re=Z.index,ne=re&255,j=re>>8&255,ee=re>>16&255;this.highlightId=[ne/255,j/255,ee/255,0]}};function $(Z,re,ne,j){var ee;w(Z)?re<Z.length?ee=Z[re]:ee=void 0:ee=Z,ee=v(ee);var ie=!0;o(ee)&&(ee="\u25BC",ie=!1),ne||(ne={});var fe=ne.family;w(fe)&&(fe=fe[re]),fe||(fe="normal");var be=ne.weight;w(be)&&(be=be[re]),be||(be="normal");var Ae=ne.style;w(Ae)&&(Ae=Ae[re]),Ae||(Ae="normal");var Be=ne.variant;w(Be)&&(Be=Be[re]),Be||(Be="normal");var Ie=h(ee,{family:fe,weight:be,style:Ae,variant:Be},j),Ie=h(ee,ne,j);return{mesh:Ie[0],lines:Ie[1],bounds:Ie[2],visible:ie}}u.update=function(Z){if(Z=Z||{},"perspective"in Z&&(this.useOrtho=!Z.perspective),"orthographic"in Z&&(this.useOrtho=!!Z.orthographic),"lineWidth"in Z&&(this.lineWidth=Z.lineWidth),"project"in Z)if(w(Z.project))this.axesProject=Z.project;else{var re=!!Z.project;this.axesProject=[re,re,re]}if("projectScale"in Z)if(w(Z.projectScale))this.projectScale=Z.projectScale.slice();else{var ne=+Z.projectScale;this.projectScale=[ne,ne,ne]}if(this.projectHasAlpha=!1,"projectOpacity"in Z){if(w(Z.projectOpacity))this.projectOpacity=Z.projectOpacity.slice();else{var ne=+Z.projectOpacity;this.projectOpacity=[ne,ne,ne]}for(var j=0;j<3;++j)this.projectOpacity[j]=b(this.projectOpacity[j]),this.projectOpacity[j]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Z&&(this.opacity=b(Z.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var ee=Z.position,ie={family:Z.font||"normal",style:Z.fontStyle||"normal",weight:Z.fontWeight||"normal",variant:Z.fontVariant||"normal"},fe=Z.alignment||[0,0],be,Ae;if(fe.length===2)be=fe[0],Ae=fe[1];else{be=[],Ae=[];for(var j=0;j<fe.length;++j)be[j]=fe[j][0],Ae[j]=fe[j][1]}var Be=[1/0,1/0,1/0],Ie=[-1/0,-1/0,-1/0],Ze=Z.glyph,at=Z.color,it=Z.size,et=Z.angle,lt=Z.lineColor,Me=-1,ge=0,ce=0,ze=0;if(ee.length){ze=ee.length;e:for(var j=0;j<ze;++j){for(var tt=ee[j],nt=0;nt<3;++nt)if(isNaN(tt[nt])||!isFinite(tt[nt]))continue e;var Qe=$(Ze,j,ie,this.pixelRatio),Ct=Qe.mesh,St=Qe.lines,Ot=Qe.bounds;ge+=Ct.cells.length*3,ce+=St.edges.length*2}}var jt=ge+ce,ur=n.mallocFloat(3*jt),ar=n.mallocFloat(4*jt),Cr=n.mallocFloat(2*jt),vr=n.mallocUint32(jt);if(jt>0){var _r=0,yt=ge,Fe=[0,0,0,1],Ke=[0,0,0,1],Ne=w(at)&&w(at[0]),Ee=w(lt)&&w(lt[0]);e:for(var j=0;j<ze;++j){Me+=1;for(var tt=ee[j],nt=0;nt<3;++nt){if(isNaN(tt[nt])||!isFinite(tt[nt]))continue e;Ie[nt]=Math.max(Ie[nt],tt[nt]),Be[nt]=Math.min(Be[nt],tt[nt])}var Qe=$(Ze,j,ie,this.pixelRatio),Ct=Qe.mesh,St=Qe.lines,Ot=Qe.bounds,Ve=Qe.visible;if(!Ve)Fe=[1,1,1,0];else if(w(at)){var ke;if(Ne?j<at.length?ke=at[j]:ke=[0,0,0,0]:ke=at,ke.length===3){for(var nt=0;nt<3;++nt)Fe[nt]=ke[nt];Fe[3]=1}else if(ke.length===4){for(var nt=0;nt<4;++nt)Fe[nt]=ke[nt];!this.hasAlpha&&ke[3]<1&&(this.hasAlpha=!0)}}else Fe[0]=Fe[1]=Fe[2]=0,Fe[3]=1;if(!Ve)Ke=[1,1,1,0];else if(w(lt)){var ke;if(Ee?j<lt.length?ke=lt[j]:ke=[0,0,0,0]:ke=lt,ke.length===3){for(var nt=0;nt<3;++nt)Ke[nt]=ke[nt];Ke[nt]=1}else if(ke.length===4){for(var nt=0;nt<4;++nt)Ke[nt]=ke[nt];!this.hasAlpha&&ke[3]<1&&(this.hasAlpha=!0)}}else Ke[0]=Ke[1]=Ke[2]=0,Ke[3]=1;var Te=.5;Ve?w(it)?j<it.length?Te=+it[j]:Te=12:it?Te=+it:this.useOrtho&&(Te=12):Te=0;var Le=0;w(et)?j<et.length?Le=+et[j]:Le=0:et&&(Le=+et);for(var rt=Math.cos(Le),dt=Math.sin(Le),tt=ee[j],nt=0;nt<3;++nt)Ie[nt]=Math.max(Ie[nt],tt[nt]),Be[nt]=Math.min(Be[nt],tt[nt]);var xt=be,It=Ae,xt=0;w(be)?j<be.length?xt=be[j]:xt=0:be&&(xt=be);var It=0;w(Ae)?j<Ae.length?It=Ae[j]:It=0:Ae&&(It=Ae),xt*=xt>0?1-Ot[0][0]:xt<0?1+Ot[1][0]:1,It*=It>0?1-Ot[0][1]:It<0?1+Ot[1][1]:1;for(var Bt=[xt,It],Aa=Ct.cells||[],La=Ct.positions||[],nt=0;nt<Aa.length;++nt)for(var Gt=Aa[nt],Kt=0;Kt<3;++Kt){for(var sr=0;sr<3;++sr)ur[3*_r+sr]=tt[sr];for(var sr=0;sr<4;++sr)ar[4*_r+sr]=Fe[sr];vr[_r]=Me;var sa=La[Gt[Kt]];Cr[2*_r]=Te*(rt*sa[0]-dt*sa[1]+Bt[0]),Cr[2*_r+1]=Te*(dt*sa[0]+rt*sa[1]+Bt[1]),_r+=1}for(var Aa=St.edges,La=St.positions,nt=0;nt<Aa.length;++nt)for(var Gt=Aa[nt],Kt=0;Kt<2;++Kt){for(var sr=0;sr<3;++sr)ur[3*yt+sr]=tt[sr];for(var sr=0;sr<4;++sr)ar[4*yt+sr]=Ke[sr];vr[yt]=Me;var sa=La[Gt[Kt]];Cr[2*yt]=Te*(rt*sa[0]-dt*sa[1]+Bt[0]),Cr[2*yt+1]=Te*(dt*sa[0]+rt*sa[1]+Bt[1]),yt+=1}}}this.bounds=[Be,Ie],this.points=ee,this.pointCount=ee.length,this.vertexCount=ge,this.lineVertexCount=ce,this.pointBuffer.update(ur),this.colorBuffer.update(ar),this.glyphBuffer.update(Cr),this.idBuffer.update(vr),n.free(ur),n.free(ar),n.free(Cr),n.free(vr)},u.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()};function J(Z){var re=Z.gl,ne=c.createPerspective(re),j=c.createOrtho(re),ee=c.createProject(re),ie=c.createPickPerspective(re),fe=c.createPickOrtho(re),be=c.createPickProject(re),Ae=a(re),Be=a(re),Ie=a(re),Ze=a(re),at=i(re,[{buffer:Ae,size:3,type:re.FLOAT},{buffer:Be,size:4,type:re.FLOAT},{buffer:Ie,size:2,type:re.FLOAT},{buffer:Ze,size:4,type:re.UNSIGNED_BYTE,normalized:!0}]),it=new d(re,ne,j,ee,Ae,Be,Ie,Ze,at,ie,fe,be);return it.update(Z),it}},3589:function(e,t,r){"use strict";e.exports=p;var o=r(2260),a=r(1888),i=r(9618),n=r(8828).nextPow2,s=function(T,l,_){for(var w=1e8,S=-1,E=-1,m=T.shape[0],b=T.shape[1],d=0;d<m;d++)for(var u=0;u<b;u++){var y=T.get(d,u,0),f=T.get(d,u,1),P=T.get(d,u,2),L=T.get(d,u,3);if(y<255||f<255||P<255||L<255){var z=l-d,F=_-u,B=z*z+F*F;B<w&&(w=B,S=d,E=u)}}return[S,E,w]};function c(T,l,_,w,S){this.coord=[T,l],this.id=_,this.value=w,this.distance=S}function h(T,l,_){this.gl=T,this.fbo=l,this.buffer=_,this._readTimeout=null;var w=this;this._readCallback=function(){w.gl&&(l.bind(),T.readPixels(0,0,l.shape[0],l.shape[1],T.RGBA,T.UNSIGNED_BYTE,w.buffer),w._readTimeout=null)}}var v=h.prototype;Object.defineProperty(v,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(T){if(this.gl){this.fbo.shape=T;var l=this.fbo.shape[0],_=this.fbo.shape[1];if(_*l*4>this.buffer.length){a.free(this.buffer);for(var w=this.buffer=a.mallocUint8(n(_*l*4)),S=0;S<_*l*4;++S)w[S]=255}return T}}}),v.begin=function(){var T=this.gl,l=this.shape;T&&(this.fbo.bind(),T.clearColor(1,1,1,1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT))},v.end=function(){var T=this.gl;T&&(T.bindFramebuffer(T.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},v.query=function(T,l,_){if(!this.gl)return null;var w=this.fbo.shape.slice();T=T|0,l=l|0,typeof _!="number"&&(_=1);var S=Math.min(Math.max(T-_,0),w[0])|0,E=Math.min(Math.max(T+_,0),w[0])|0,m=Math.min(Math.max(l-_,0),w[1])|0,b=Math.min(Math.max(l+_,0),w[1])|0;if(E<=S||b<=m)return null;var d=[E-S,b-m],u=i(this.buffer,[d[0],d[1],4],[4,w[0]*4,1],4*(S+w[0]*m)),y=s(u.hi(d[0],d[1],1),_,_),f=y[0],P=y[1];if(f<0||Math.pow(this.radius,2)<y[2])return null;var L=u.get(f,P,0),z=u.get(f,P,1),F=u.get(f,P,2),B=u.get(f,P,3);return new c(f+S|0,P+m|0,L,[z,F,B],Math.sqrt(y[2]))},v.dispose=function(){this.gl&&(this.fbo.dispose(),a.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))};function p(T,l){var _=l[0],w=l[1],S={},E=o(T,_,w,S),m=a.mallocUint8(_*w*4);return new h(T,E,m)}},9405:function(e,t,r){"use strict";var o=r(3327),a=r(8731),i=r(216),n=r(5091),s=r(2145),c=r(8866);function h(l){this.gl=l,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var v=h.prototype;v.bind=function(){this.program||this._relink();var l,_=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),w=this.gl.lastAttribCount;if(_>w)for(l=w;l<_;l++)this.gl.enableVertexAttribArray(l);else if(w>_)for(l=_;l<w;l++)this.gl.disableVertexAttribArray(l);this.gl.lastAttribCount=_,this.gl.useProgram(this.program)},v.dispose=function(){for(var l=this.gl.lastAttribCount,_=0;_<l;_++)this.gl.disableVertexAttribArray(_);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null};function p(l,_){return l.name<_.name?-1:1}v.update=function(l,_,w,S){if(!_||arguments.length===1){var E=l;l=E.vertex,_=E.fragment,w=E.uniforms,S=E.attributes}var m=this,b=m.gl,d=m._vref;m._vref=n.shader(b,b.VERTEX_SHADER,l),d&&d.dispose(),m.vertShader=m._vref.shader;var u=this._fref;if(m._fref=n.shader(b,b.FRAGMENT_SHADER,_),u&&u.dispose(),m.fragShader=m._fref.shader,!w||!S){var y=b.createProgram();if(b.attachShader(y,m.fragShader),b.attachShader(y,m.vertShader),b.linkProgram(y),!b.getProgramParameter(y,b.LINK_STATUS)){var f=b.getProgramInfoLog(y);throw new c(f,"Error linking program:"+f)}w=w||s.uniforms(b,y),S=S||s.attributes(b,y),b.deleteProgram(y)}S=S.slice(),S.sort(p);var P=[],L=[],z=[],F;for(F=0;F<S.length;++F){var B=S[F];if(B.type.indexOf("mat")>=0){for(var O=B.type.charAt(B.type.length-1)|0,I=new Array(O),N=0;N<O;++N)I[N]=z.length,L.push(B.name+"["+N+"]"),typeof B.location=="number"?z.push(B.location+N):Array.isArray(B.location)&&B.location.length===O&&typeof B.location[N]=="number"?z.push(B.location[N]|0):z.push(-1);P.push({name:B.name,type:B.type,locations:I})}else P.push({name:B.name,type:B.type,locations:[z.length]}),L.push(B.name),typeof B.location=="number"?z.push(B.location|0):z.push(-1)}var U=0;for(F=0;F<z.length;++F)if(z[F]<0){for(;z.indexOf(U)>=0;)U+=1;z[F]=U}var W=new Array(w.length);function Q(){m.program=n.program(b,m._vref,m._fref,L,z);for(var ue=0;ue<w.length;++ue)W[ue]=b.getUniformLocation(m.program,w[ue].name)}Q(),m._relink=Q,m.types={uniforms:i(w),attributes:i(S)},m.attributes=a(b,m,P,z),Object.defineProperty(m,"uniforms",o(b,m,w,W))};function T(l,_,w,S,E){var m=new h(l);return m.update(_,w,S,E),m}e.exports=T},8866:function(e){function t(r,o,a){this.shortMessage=o||"",this.longMessage=a||"",this.rawError=r||"",this.message="gl-shader: "+(o||r||"")+(a?`
`+a:""),this.stack=new Error().stack}t.prototype=new Error,t.prototype.name="GLError",t.prototype.constructor=t,e.exports=t},8731:function(e,t,r){"use strict";e.exports=h;var o=r(8866);function a(v,p,T,l,_,w){this._gl=v,this._wrapper=p,this._index=T,this._locations=l,this._dimension=_,this._constFunc=w}var i=a.prototype;i.pointer=function(p,T,l,_){var w=this,S=w._gl,E=w._locations[w._index];S.vertexAttribPointer(E,w._dimension,p||S.FLOAT,!!T,l||0,_||0),S.enableVertexAttribArray(E)},i.set=function(v,p,T,l){return this._constFunc(this._locations[this._index],v,p,T,l)},Object.defineProperty(i,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var n=[function(v,p,T){return T.length===void 0?v.vertexAttrib1f(p,T):v.vertexAttrib1fv(p,T)},function(v,p,T,l){return T.length===void 0?v.vertexAttrib2f(p,T,l):v.vertexAttrib2fv(p,T)},function(v,p,T,l,_){return T.length===void 0?v.vertexAttrib3f(p,T,l,_):v.vertexAttrib3fv(p,T)},function(v,p,T,l,_,w){return T.length===void 0?v.vertexAttrib4f(p,T,l,_,w):v.vertexAttrib4fv(p,T)}];function s(v,p,T,l,_,w,S){var E=n[_],m=new a(v,p,T,l,_,E);Object.defineProperty(w,S,{set:function(b){return v.disableVertexAttribArray(l[T]),E(v,l[T],b),b},get:function(){return m},enumerable:!0})}function c(v,p,T,l,_,w,S){for(var E=new Array(_),m=new Array(_),b=0;b<_;++b)s(v,p,T[b],l,_,E,b),m[b]=E[b];Object.defineProperty(E,"location",{set:function(y){if(Array.isArray(y))for(var f=0;f<_;++f)m[f].location=y[f];else for(var f=0;f<_;++f)m[f].location=y+f;return y},get:function(){for(var y=new Array(_),f=0;f<_;++f)y[f]=l[T[f]];return y},enumerable:!0}),E.pointer=function(y,f,P,L){y=y||v.FLOAT,f=!!f,P=P||_*_,L=L||0;for(var z=0;z<_;++z){var F=l[T[z]];v.vertexAttribPointer(F,_,y,f,P,L+z*_),v.enableVertexAttribArray(F)}};var d=new Array(_),u=v["vertexAttrib"+_+"fv"];Object.defineProperty(w,S,{set:function(y){for(var f=0;f<_;++f){var P=l[T[f]];if(v.disableVertexAttribArray(P),Array.isArray(y[0]))u.call(v,P,y[f]);else{for(var L=0;L<_;++L)d[L]=y[_*f+L];u.call(v,P,d)}}return y},get:function(){return E},enumerable:!0})}function h(v,p,T,l){for(var _={},w=0,S=T.length;w<S;++w){var E=T[w],m=E.name,b=E.type,d=E.locations;switch(b){case"bool":case"int":case"float":s(v,p,d[0],l,1,_,m);break;default:if(b.indexOf("vec")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);s(v,p,d[0],l,u,_,m)}else if(b.indexOf("mat")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);c(v,p,d,l,u,_,m)}else throw new o("","Unknown data type for attribute "+m+": "+b);break}}return _}},3327:function(e,t,r){"use strict";var o=r(216),a=r(8866);e.exports=s;function i(c){return function(){return c}}function n(c,h){for(var v=new Array(c),p=0;p<c;++p)v[p]=h;return v}function s(c,h,v,p){function T(b){return function(d,u,y){return d.getUniform(u.program,y[b])}}function l(b){return function(u){for(var y=_("",b),f=0;f<y.length;++f){var P=y[f],L=P[0],z=P[1];if(p[z]){var F=u;if(typeof L=="string"&&(L.indexOf(".")===0||L.indexOf("[")===0)){var B=L;if(L.indexOf(".")===0&&(B=L.slice(1)),B.indexOf("]")===B.length-1){var O=B.indexOf("["),I=B.slice(0,O),N=B.slice(O+1,B.length-1);F=I?u[I][N]:u[N]}else F=u[B]}var U=v[z].type,W;switch(U){case"bool":case"int":case"sampler2D":case"samplerCube":c.uniform1i(p[z],F);break;case"float":c.uniform1f(p[z],F);break;default:var Q=U.indexOf("vec");if(0<=Q&&Q<=1&&U.length===4+Q){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid data type");switch(U.charAt(0)){case"b":case"i":c["uniform"+W+"iv"](p[z],F);break;case"v":c["uniform"+W+"fv"](p[z],F);break;default:throw new a("","Unrecognized data type for vector "+name+": "+U)}}else if(U.indexOf("mat")===0&&U.length===4){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+U);c["uniformMatrix"+W+"fv"](p[z],!1,F);break}else throw new a("","Unknown uniform data type for "+name+": "+U)}}}}}function _(b,d){if(typeof d!="object")return[[b,d]];var u=[];for(var y in d){var f=d[y],P=b;parseInt(y)+""===y?P+="["+y+"]":P+="."+y,typeof f=="object"?u.push.apply(u,_(P,f)):u.push([P,f])}return u}function w(b){switch(b){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var d=b.indexOf("vec");if(0<=d&&d<=1&&b.length===4+d){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid data type");return b.charAt(0)==="b"?n(u,!1):n(u,0)}else if(b.indexOf("mat")===0&&b.length===4){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+b);return n(u*u,0)}else throw new a("","Unknown uniform data type for "+name+": "+b)}}function S(b,d,u){if(typeof u=="object"){var y=E(u);Object.defineProperty(b,d,{get:i(y),set:l(u),enumerable:!0,configurable:!1})}else p[u]?Object.defineProperty(b,d,{get:T(u),set:l(u),enumerable:!0,configurable:!1}):b[d]=w(v[u].type)}function E(b){var d;if(Array.isArray(b)){d=new Array(b.length);for(var u=0;u<b.length;++u)S(d,u,b[u])}else{d={};for(var y in b)S(d,y,b[y])}return d}var m=o(v,!0);return{get:i(E(m)),set:l(m),enumerable:!0,configurable:!0}}},216:function(e){"use strict";e.exports=t;function t(r,o){for(var a={},i=0;i<r.length;++i)for(var n=r[i].name,s=n.split("."),c=a,h=0;h<s.length;++h){var v=s[h].split("[");if(v.length>1){v[0]in c||(c[v[0]]=[]),c=c[v[0]];for(var p=1;p<v.length;++p){var T=parseInt(v[p]);p<v.length-1||h<s.length-1?(T in c||(p<v.length-1?c[T]=[]:c[T]={}),c=c[T]):o?c[T]=i:c[T]=r[i].type}}else h<s.length-1?(v[0]in c||(c[v[0]]={}),c=c[v[0]]):o?c[v[0]]=i:c[v[0]]=r[i].type}return a}},2145:function(e,t){"use strict";t.uniforms=i,t.attributes=n;var r={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},o=null;function a(s,c){if(!o){var h=Object.keys(r);o={};for(var v=0;v<h.length;++v){var p=h[v];o[s[p]]=r[p]}}return o[c]}function i(s,c){for(var h=s.getProgramParameter(c,s.ACTIVE_UNIFORMS),v=[],p=0;p<h;++p){var T=s.getActiveUniform(c,p);if(T){var l=a(s,T.type);if(T.size>1)for(var _=0;_<T.size;++_)v.push({name:T.name.replace("[0]","["+_+"]"),type:l});else v.push({name:T.name,type:l})}}return v}function n(s,c){for(var h=s.getProgramParameter(c,s.ACTIVE_ATTRIBUTES),v=[],p=0;p<h;++p){var T=s.getActiveAttrib(c,p);T&&v.push({name:T.name,type:a(s,T.type)})}return v}},5091:function(e,t,r){"use strict";t.shader=_,t.program=w;var o=r(8866),a=r(2992),i=typeof WeakMap>"u"?r(606):WeakMap,n=new i,s=0;function c(S,E,m,b,d,u,y){this.id=S,this.src=E,this.type=m,this.shader=b,this.count=u,this.programs=[],this.cache=y}c.prototype.dispose=function(){if(--this.count===0){for(var S=this.cache,E=S.gl,m=this.programs,b=0,d=m.length;b<d;++b){var u=S.programs[m[b]];u&&(delete S.programs[b],E.deleteProgram(u))}E.deleteShader(this.shader),delete S.shaders[this.type===E.FRAGMENT_SHADER|0][this.src]}};function h(S){this.gl=S,this.shaders=[{},{}],this.programs={}}var v=h.prototype;function p(S,E,m){var b=S.createShader(E);if(S.shaderSource(b,m),S.compileShader(b),!S.getShaderParameter(b,S.COMPILE_STATUS)){var d=S.getShaderInfoLog(b);try{var u=a(d,m,E)}catch(y){throw console.warn("Failed to format compiler error: "+y),new o(d,`Error compiling shader:
`+d)}throw new o(d,u.short,u.long)}return b}v.getShaderReference=function(S,E){var m=this.gl,b=this.shaders[S===m.FRAGMENT_SHADER|0],d=b[E];if(!d||!m.isShader(d.shader)){var u=p(m,S,E);d=b[E]=new c(s++,E,S,u,[],1,this)}else d.count+=1;return d};function T(S,E,m,b,d){var u=S.createProgram();S.attachShader(u,E),S.attachShader(u,m);for(var y=0;y<b.length;++y)S.bindAttribLocation(u,d[y],b[y]);if(S.linkProgram(u),!S.getProgramParameter(u,S.LINK_STATUS)){var f=S.getProgramInfoLog(u);throw new o(f,"Error linking program: "+f)}return u}v.getProgram=function(S,E,m,b){var d=[S.id,E.id,m.join(":"),b.join(":")].join("@"),u=this.programs[d];return(!u||!this.gl.isProgram(u))&&(this.programs[d]=u=T(this.gl,S.shader,E.shader,m,b),S.programs.push(d),E.programs.push(d)),u};function l(S){var E=n.get(S);return E||(E=new h(S),n.set(S,E)),E}function _(S,E,m){return l(S).getShaderReference(E,m)}function w(S,E,m,b,d){return l(S).getProgram(E,m,b,d)}},1493:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision mediump float;
#define GLSLIFY 1

attribute vec3 position, color;
attribute float weight;

uniform mat4 model, view, projection;
uniform vec3 coordinates[3];
uniform vec4 colors[3];
uniform vec2 screenShape;
uniform float lineWidth;

varying vec4 fragColor;

void main() {
  vec3 vertexPosition = mix(coordinates[0],
    mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));

  vec4 clipPos = projection * (view * (model * vec4(vertexPosition, 1.0)));
  vec2 clipOffset = (projection * (view * (model * vec4(color, 0.0)))).xy;
  vec2 delta = weight * clipOffset * screenShape;
  vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;

  gl_Position   = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);
  fragColor     = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];
}
`]),n=o([`precision mediump float;
#define GLSLIFY 1

varying vec4 fragColor;

void main() {
  gl_FragColor = fragColor;
}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec3"},{name:"weight",type:"float"}])}},4449:function(e,t,r){"use strict";var o=r(2762),a=r(8116),i=r(1493);e.exports=T;var n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.buffer=_,this.vao=w,this.shader=S,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var c=s.prototype,h=[0,0,0],v=[0,0,0],p=[0,0];c.isTransparent=function(){return!1},c.drawTransparent=function(l){},c.draw=function(l){var _=this.gl,w=this.vao,S=this.shader;w.bind(),S.bind();var E=l.model||n,m=l.view||n,b=l.projection||n,d;this.axes&&(d=this.axes.lastCubeProps.axis);for(var u=h,y=v,f=0;f<3;++f)d&&d[f]<0?(u[f]=this.bounds[0][f],y[f]=this.bounds[1][f]):(u[f]=this.bounds[1][f],y[f]=this.bounds[0][f]);p[0]=_.drawingBufferWidth,p[1]=_.drawingBufferHeight,S.uniforms.model=E,S.uniforms.view=m,S.uniforms.projection=b,S.uniforms.coordinates=[this.position,u,y],S.uniforms.colors=this.colors,S.uniforms.screenShape=p;for(var f=0;f<3;++f)S.uniforms.lineWidth=this.lineWidth[f]*this.pixelRatio,this.enabled[f]&&(w.draw(_.TRIANGLES,6,6*f),this.drawSides[f]&&w.draw(_.TRIANGLES,12,18+12*f));w.unbind()},c.update=function(l){l&&("bounds"in l&&(this.bounds=l.bounds),"position"in l&&(this.position=l.position),"lineWidth"in l&&(this.lineWidth=l.lineWidth),"colors"in l&&(this.colors=l.colors),"enabled"in l&&(this.enabled=l.enabled),"drawSides"in l&&(this.drawSides=l.drawSides))},c.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function T(l,_){var w=[];function S(u,y,f,P,L,z){var F=[u,y,f,0,0,0,1];F[P+3]=1,F[P]=L,w.push.apply(w,F),F[6]=-1,w.push.apply(w,F),F[P]=z,w.push.apply(w,F),w.push.apply(w,F),F[6]=1,w.push.apply(w,F),F[P]=L,w.push.apply(w,F)}S(0,0,0,0,0,1),S(0,0,0,1,0,1),S(0,0,0,2,0,1),S(1,0,0,1,-1,1),S(1,0,0,2,-1,1),S(0,1,0,0,-1,1),S(0,1,0,2,-1,1),S(0,0,1,0,-1,1),S(0,0,1,1,-1,1);var E=o(l,w),m=a(l,[{type:l.FLOAT,buffer:E,size:3,offset:0,stride:28},{type:l.FLOAT,buffer:E,size:3,offset:12,stride:28},{type:l.FLOAT,buffer:E,size:1,offset:24,stride:28}]),b=i(l);b.attributes.position.location=0,b.attributes.color.location=1,b.attributes.weight.location=2;var d=new s(l,E,m,b);return d.update(_),d}},6740:function(e,t,r){var o=r(3236),a=o([`precision highp float;

precision highp float;
#define GLSLIFY 1

vec3 getOrthogonalVector(vec3 v) {
  // Return up-vector for only-z vector.
  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.
  // Assign z = 0, x = -b, y = a:
  // a*-b + b*a + c*0 = -ba + ba + 0 = 0
  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
    return normalize(vec3(-v.y, v.x, 0.0));
  } else {
    return normalize(vec3(0.0, v.z, -v.y));
  }
}

// Calculate the tube vertex and normal at the given index.
//
// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
//
// Each tube segment is made up of a ring of vertices.
// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
// The indexes of tube segments run from 0 to 8.
//
vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
  float segmentCount = 8.0;

  float angle = 2.0 * 3.14159 * (index / segmentCount);

  vec3 u = getOrthogonalVector(d);
  vec3 v = normalize(cross(u, d));

  vec3 x = u * cos(angle) * length(d);
  vec3 y = v * sin(angle) * length(d);
  vec3 v3 = x + y;

  normal = normalize(v3);

  return v3;
}

attribute vec4 vector;
attribute vec4 color, position;
attribute vec2 uv;

uniform float vectorScale, tubeScale;
uniform mat4 model, view, projection, inverseModel;
uniform vec3 eyePosition, lightPosition;

varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
varying vec4 f_color;
varying vec2 f_uv;

void main() {
  // Scale the vector magnitude to stay constant with
  // model & view changes.
  vec3 normal;
  vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
  vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);

  //Lighting geometry parameters
  vec4 cameraCoordinate = view * tubePosition;
  cameraCoordinate.xyz /= cameraCoordinate.w;
  f_lightDirection = lightPosition - cameraCoordinate.xyz;
  f_eyeDirection   = eyePosition - cameraCoordinate.xyz;
  f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);

  // vec4 m_position  = model * vec4(tubePosition, 1.0);
  vec4 t_position  = view * tubePosition;
  gl_Position      = projection * t_position;

  f_color          = color;
  f_data           = tubePosition.xyz;
  f_position       = position.xyz;
  f_uv             = uv;
}
`]),i=o([`#extension GL_OES_standard_derivatives : enable

precision highp float;
#define GLSLIFY 1

float beckmannDistribution(float x, float roughness) {
  float NdotH = max(x, 0.0001);
  float cos2Alpha = NdotH * NdotH;
  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
  float roughness2 = roughness * roughness;
  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
  return exp(tan2Alpha / roughness2) / denom;
}

float cookTorranceSpecular(
  vec3 lightDirection,
  vec3 viewDirection,
  vec3 surfaceNormal,
  float roughness,
  float fresnel) {

  float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
  float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);

  //Half angle vector
  vec3 H = normalize(lightDirection + viewDirection);

  //Geometric term
  float NdotH = max(dot(surfaceNormal, H), 0.0);
  float VdotH = max(dot(viewDirection, H), 0.000001);
  float LdotH = max(dot(lightDirection, H), 0.000001);
  float G1 = (2.0 * NdotH * VdotN) / VdotH;
  float G2 = (2.0 * NdotH * LdotN) / LdotH;
  float G = min(1.0, min(G1, G2));
  
  //Distribution term
  float D = beckmannDistribution(NdotH, roughness);

  //Fresnel term
  float F = pow(1.0 - VdotN, fresnel);

  //Multiply terms and done
  return  G * F * D / max(3.14159265 * VdotN, 0.000001);
}

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 clipBounds[2];
uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
uniform sampler2D texture;

varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
varying vec4 f_color;
varying vec2 f_uv;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
  vec3 N = normalize(f_normal);
  vec3 L = normalize(f_lightDirection);
  vec3 V = normalize(f_eyeDirection);

  if(gl_FrontFacing) {
    N = -N;
  }

  float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);

  vec4 surfaceColor = f_color * texture2D(texture, f_uv);
  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);

  gl_FragColor = litColor * opacity;
}
`]),n=o([`precision highp float;

precision highp float;
#define GLSLIFY 1

vec3 getOrthogonalVector(vec3 v) {
  // Return up-vector for only-z vector.
  // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
  // From the above if-statement we have ||a|| > 0  U  ||b|| > 0.
  // Assign z = 0, x = -b, y = a:
  // a*-b + b*a + c*0 = -ba + ba + 0 = 0
  if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
    return normalize(vec3(-v.y, v.x, 0.0));
  } else {
    return normalize(vec3(0.0, v.z, -v.y));
  }
}

// Calculate the tube vertex and normal at the given index.
//
// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
//
// Each tube segment is made up of a ring of vertices.
// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
// The indexes of tube segments run from 0 to 8.
//
vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
  float segmentCount = 8.0;

  float angle = 2.0 * 3.14159 * (index / segmentCount);

  vec3 u = getOrthogonalVector(d);
  vec3 v = normalize(cross(u, d));

  vec3 x = u * cos(angle) * length(d);
  vec3 y = v * sin(angle) * length(d);
  vec3 v3 = x + y;

  normal = normalize(v3);

  return v3;
}

attribute vec4 vector;
attribute vec4 position;
attribute vec4 id;

uniform mat4 model, view, projection;
uniform float tubeScale;

varying vec3 f_position;
varying vec4 f_id;

void main() {
  vec3 normal;
  vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
  vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);

  gl_Position = projection * (view * tubePosition);
  f_id        = id;
  f_position  = position.xyz;
}
`]),s=o([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3  clipBounds[2];
uniform float pickId;

varying vec3 f_position;
varying vec4 f_id;

void main() {
  if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;

  gl_FragColor = vec4(pickId, f_id.xyz);
}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(e,t,r){"use strict";var o=r(2931),a=r(9970),i=["xyz","xzy","yxz","yzx","zxy","zyx"],n=function(S,E,m,b){for(var d=S.points,u=S.velocities,y=S.divergences,f=[],P=[],L=[],z=[],F=[],B=[],O=0,I=0,N=a.create(),U=a.create(),W=8,Q=0;Q<d.length;Q++){var ue=d[Q],se=u[Q],he=y[Q];E===0&&(he=m*.05),I=o.length(se)/b,N=a.create(),o.copy(N,se),N[3]=he;for(var G=0;G<W;G++)F[G]=[ue[0],ue[1],ue[2],G];if(z.length>0)for(var G=0;G<W;G++){var $=(G+1)%W;f.push(z[G],F[G],F[$],F[$],z[$],z[G]),L.push(U,N,N,N,U,U),B.push(O,I,I,I,O,O);var J=f.length;P.push([J-6,J-5,J-4],[J-3,J-2,J-1])}var Z=z;z=F,F=Z;var re=U;U=N,N=re;var ne=O;O=I,I=ne}return{positions:f,cells:P,vectors:L,vertexIntensity:B}},s=function(S,E,m,b){for(var d=0,u=0;u<S.length;u++)for(var y=S[u].velocities,f=0;f<y.length;f++)d=Math.max(d,o.length(y[f]));for(var P=S.map(function(Q){return n(Q,m,b,d)}),L=[],z=[],F=[],B=[],u=0;u<P.length;u++){var O=P[u],I=L.length;L=L.concat(O.positions),F=F.concat(O.vectors),B=B.concat(O.vertexIntensity);for(var f=0;f<O.cells.length;f++){var N=O.cells[f],U=[];z.push(U);for(var W=0;W<N.length;W++)U.push(N[W]+I)}}return{positions:L,cells:z,vectors:F,vertexIntensity:B,colormap:E}},c=function(S,E){var m=S.length,b;for(b=0;b<m;b++){var d=S[b];if(d===E)return b;if(d>E)return b-1}return b},h=function(S,E,m){return S<E?E:S>m?m:S},v=function(S,E,m){var b=E.vectors,d=E.meshgrid,u=S[0],y=S[1],f=S[2],P=d[0].length,L=d[1].length,z=d[2].length,F=c(d[0],u),B=c(d[1],y),O=c(d[2],f),I=F+1,N=B+1,U=O+1;if(F=h(F,0,P-1),I=h(I,0,P-1),B=h(B,0,L-1),N=h(N,0,L-1),O=h(O,0,z-1),U=h(U,0,z-1),F<0||B<0||O<0||I>P-1||N>L-1||U>z-1)return o.create();var W=d[0][F],Q=d[0][I],ue=d[1][B],se=d[1][N],he=d[2][O],G=d[2][U],$=(u-W)/(Q-W),J=(y-ue)/(se-ue),Z=(f-he)/(G-he);isFinite($)||($=.5),isFinite(J)||(J=.5),isFinite(Z)||(Z=.5);var re,ne,j,ee,ie,fe;switch(m.reversedX&&(F=P-1-F,I=P-1-I),m.reversedY&&(B=L-1-B,N=L-1-N),m.reversedZ&&(O=z-1-O,U=z-1-U),m.filled){case 5:ie=O,fe=U,j=B*z,ee=N*z,re=F*z*L,ne=I*z*L;break;case 4:ie=O,fe=U,re=F*z,ne=I*z,j=B*z*P,ee=N*z*P;break;case 3:j=B,ee=N,ie=O*L,fe=U*L,re=F*L*z,ne=I*L*z;break;case 2:j=B,ee=N,re=F*L,ne=I*L,ie=O*L*P,fe=U*L*P;break;case 1:re=F,ne=I,ie=O*P,fe=U*P,j=B*P*z,ee=N*P*z;break;default:re=F,ne=I,j=B*P,ee=N*P,ie=O*P*L,fe=U*P*L;break}var be=b[re+j+ie],Ae=b[re+j+fe],Be=b[re+ee+ie],Ie=b[re+ee+fe],Ze=b[ne+j+ie],at=b[ne+j+fe],it=b[ne+ee+ie],et=b[ne+ee+fe],lt=o.create(),Me=o.create(),ge=o.create(),ce=o.create();o.lerp(lt,be,Ze,$),o.lerp(Me,Ae,at,$),o.lerp(ge,Be,it,$),o.lerp(ce,Ie,et,$);var ze=o.create(),tt=o.create();o.lerp(ze,lt,ge,J),o.lerp(tt,Me,ce,J);var nt=o.create();return o.lerp(nt,ze,tt,Z),nt},p=function(S,E){var m=E[0],b=E[1],d=E[2];return S[0]=m<0?-m:m,S[1]=b<0?-b:b,S[2]=d<0?-d:d,S},T=function(S){var E=1/0;S.sort(function(u,y){return u-y});for(var m=S.length,b=1;b<m;b++){var d=Math.abs(S[b]-S[b-1]);d<E&&(E=d)}return E},l=function(S){for(var E=[],m=[],b=[],d={},u={},y={},f=S.length,P=0;P<f;P++){var L=S[P],z=L[0],F=L[1],B=L[2];d[z]||(E.push(z),d[z]=!0),u[F]||(m.push(F),u[F]=!0),y[B]||(b.push(B),y[B]=!0)}var O=T(E),I=T(m),N=T(b),U=Math.min(O,I,N);return isFinite(U)?U:1};e.exports=function(S,E){var m=S.startingPositions,b=S.maxLength||1e3,d=S.tubeSize||1,u=S.absoluteTubeSize,y=S.gridFill||"+x+y+z",f={};y.indexOf("-x")!==-1&&(f.reversedX=!0),y.indexOf("-y")!==-1&&(f.reversedY=!0),y.indexOf("-z")!==-1&&(f.reversedZ=!0),f.filled=i.indexOf(y.replace(/-/g,"").replace(/\+/g,""));var P=S.getVelocity||function(at){return v(at,S,f)},L=S.getDivergence||function(at,it){var et=o.create(),lt=1e-4;o.add(et,at,[lt,0,0]);var Me=P(et);o.subtract(Me,Me,it),o.scale(Me,Me,1/lt),o.add(et,at,[0,lt,0]);var ge=P(et);o.subtract(ge,ge,it),o.scale(ge,ge,1/lt),o.add(et,at,[0,0,lt]);var ce=P(et);return o.subtract(ce,ce,it),o.scale(ce,ce,1/lt),o.add(et,Me,ge),o.add(et,et,ce),et},z=[],F=E[0][0],B=E[0][1],O=E[0][2],I=E[1][0],N=E[1][1],U=E[1][2],W=function(at){var it=at[0],et=at[1],lt=at[2];return!(it<F||it>I||et<B||et>N||lt<O||lt>U)},Q=o.distance(E[0],E[1]),ue=10*Q/b,se=ue*ue,he=1,G=0,$=m.length;$>1&&(he=l(m));for(var J=0;J<$;J++){var Z=o.create();o.copy(Z,m[J]);var re=[Z],ne=[],j=P(Z),ee=Z;ne.push(j);var ie=[],fe=L(Z,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be),z.push({points:re,velocities:ne,divergences:ie});for(var Ae=0;Ae<b*100&&re.length<b&&W(Z);){Ae++;var Be=o.clone(j),Ie=o.squaredLength(Be);if(Ie===0)break;if(Ie>se&&o.scale(Be,Be,ue/Math.sqrt(Ie)),o.add(Be,Be,Z),j=P(Be),o.squaredDistance(ee,Be)-se>-1e-4*se){re.push(Be),ee=Be,ne.push(j);var fe=L(Be,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be)}Z=Be}}var Ze=s(z,S.colormap,G,he);return u?Ze.tubeScale=u:(G===0&&(G=1),Ze.tubeScale=d*.5*he/G),Ze};var _=r(6740),w=r(6405).createMesh;e.exports.createTubeMesh=function(S,E){return w(S,E,{shaders:_,traceType:"streamtube"})}},990:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float;
#define GLSLIFY 1

attribute vec4 uv;
attribute vec3 f;
attribute vec3 normal;

uniform vec3 objectOffset;
uniform mat4 model, view, projection, inverseModel;
uniform vec3 lightPosition, eyePosition;
uniform sampler2D colormap;

varying float value, kill;
varying vec3 worldCoordinate;
varying vec2 planeCoordinate;
varying vec3 lightDirection, eyeDirection, surfaceNormal;
varying vec4 vColor;

void main() {
  vec3 localCoordinate = vec3(uv.zw, f.x);
  worldCoordinate = objectOffset + localCoordinate;
  mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
  vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0);
  vec4 clipPosition = projection * (view * worldPosition);
  gl_Position = clipPosition;
  kill = f.y;
  value = f.z;
  planeCoordinate = uv.xy;

  vColor = texture2D(colormap, vec2(value, value));

  //Lighting geometry parameters
  vec4 cameraCoordinate = view * worldPosition;
  cameraCoordinate.xyz /= cameraCoordinate.w;
  lightDirection = lightPosition - cameraCoordinate.xyz;
  eyeDirection   = eyePosition - cameraCoordinate.xyz;
  surfaceNormal  = normalize((vec4(normal,0) * inverseModel).xyz);
}
`]),n=a([`precision highp float;
#define GLSLIFY 1

float beckmannDistribution(float x, float roughness) {
  float NdotH = max(x, 0.0001);
  float cos2Alpha = NdotH * NdotH;
  float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
  float roughness2 = roughness * roughness;
  float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
  return exp(tan2Alpha / roughness2) / denom;
}

float beckmannSpecular(
  vec3 lightDirection,
  vec3 viewDirection,
  vec3 surfaceNormal,
  float roughness) {
  return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);
}

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec3 lowerBound, upperBound;
uniform float contourTint;
uniform vec4 contourColor;
uniform sampler2D colormap;
uniform vec3 clipBounds[2];
uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
uniform float vertexColor;

varying float value, kill;
varying vec3 worldCoordinate;
varying vec3 lightDirection, eyeDirection, surfaceNormal;
varying vec4 vColor;

void main() {
  if (
    kill > 0.0 ||
    vColor.a == 0.0 ||
    outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)
  ) discard;

  vec3 N = normalize(surfaceNormal);
  vec3 V = normalize(eyeDirection);
  vec3 L = normalize(lightDirection);

  if(gl_FrontFacing) {
    N = -N;
  }

  float specular = max(beckmannSpecular(L, V, N, roughness), 0.);
  float diffuse  = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);

  //decide how to interpolate color \u2014 in vertex or in fragment
  vec4 surfaceColor =
    step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +
    step(.5, vertexColor) * vColor;

  vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular,  1.0);

  gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;
}
`]),s=a([`precision highp float;
#define GLSLIFY 1

attribute vec4 uv;
attribute float f;

uniform vec3 objectOffset;
uniform mat3 permutation;
uniform mat4 model, view, projection;
uniform float height, zOffset;
uniform sampler2D colormap;

varying float value, kill;
varying vec3 worldCoordinate;
varying vec2 planeCoordinate;
varying vec3 lightDirection, eyeDirection, surfaceNormal;
varying vec4 vColor;

void main() {
  vec3 dataCoordinate = permutation * vec3(uv.xy, height);
  worldCoordinate = objectOffset + dataCoordinate;
  mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
  vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0);

  vec4 clipPosition = projection * (view * worldPosition);
  clipPosition.z += zOffset;

  gl_Position = clipPosition;
  value = f + objectOffset.z;
  kill = -1.0;
  planeCoordinate = uv.zw;

  vColor = texture2D(colormap, vec2(value, value));

  //Don't do lighting for contours
  surfaceNormal   = vec3(1,0,0);
  eyeDirection    = vec3(0,1,0);
  lightDirection  = vec3(0,0,1);
}
`]),c=a([`precision highp float;
#define GLSLIFY 1

bool outOfRange(float a, float b, float p) {
  return ((p > max(a, b)) || 
          (p < min(a, b)));
}

bool outOfRange(vec2 a, vec2 b, vec2 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y));
}

bool outOfRange(vec3 a, vec3 b, vec3 p) {
  return (outOfRange(a.x, b.x, p.x) ||
          outOfRange(a.y, b.y, p.y) ||
          outOfRange(a.z, b.z, p.z));
}

bool outOfRange(vec4 a, vec4 b, vec4 p) {
  return outOfRange(a.xyz, b.xyz, p.xyz);
}

uniform vec2 shape;
uniform vec3 clipBounds[2];
uniform float pickId;

varying float value, kill;
varying vec3 worldCoordinate;
varying vec2 planeCoordinate;
varying vec3 surfaceNormal;

vec2 splitFloat(float v) {
  float vh = 255.0 * v;
  float upper = floor(vh);
  float lower = fract(vh);
  return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);
}

void main() {
  if ((kill > 0.0) ||
      (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;

  vec2 ux = splitFloat(planeCoordinate.x / shape.x);
  vec2 uy = splitFloat(planeCoordinate.y / shape.y);
  gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));
}
`]);t.createShader=function(h){var v=o(h,i,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createPickShader=function(h){var v=o(h,i,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createContourShader=function(h){var v=o(h,s,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v},t.createPickContourShader=function(h){var v=o(h,s,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v}},9499:function(e,t,r){"use strict";e.exports=re;var o=r(8828),a=r(2762),i=r(8116),n=r(7766),s=r(1888),c=r(6729),h=r(5298),v=r(9994),p=r(9618),T=r(3711),l=r(6760),_=r(7608),w=r(2478),S=r(6199),E=r(990),m=E.createShader,b=E.createContourShader,d=E.createPickShader,u=E.createPickContourShader,y=4*10,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],L=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];(function(){for(var ne=0;ne<3;++ne){var j=L[ne],ee=(ne+1)%3,ie=(ne+2)%3;j[ee+0]=1,j[ie+3]=1,j[ne+6]=1}})();function z(ne,j,ee,ie,fe){this.position=ne,this.index=j,this.uv=ee,this.level=ie,this.dataCoordinate=fe}var F=256;function B(ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me){this.gl=ne,this.shape=j,this.bounds=ee,this.objectOffset=Me,this.intensityBounds=[],this._shader=ie,this._pickShader=fe,this._coordinateBuffer=be,this._vao=Ae,this._colorMap=Be,this._contourShader=Ie,this._contourPickShader=Ze,this._contourBuffer=at,this._contourVAO=it,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new z([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=et,this._dynamicVAO=lt,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var O=B.prototype;O.genColormap=function(ne,j){var ee=!1,ie=v([c({colormap:ne,nshades:F,format:"rgba"}).map(function(fe,be){var Ae=j?I(be/255,j):fe[3];return Ae<1&&(ee=!0),[fe[0],fe[1],fe[2],255*Ae]})]);return h.divseq(ie,255),this.hasAlphaScale=ee,ie},O.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},O.isOpaque=function(){return!this.isTransparent()},O.pickSlots=1,O.setPickBase=function(ne){this.pickId=ne};function I(ne,j){if(!j||!j.length)return 1;for(var ee=0;ee<j.length;++ee){if(j.length<2)return 1;if(j[ee][0]===ne)return j[ee][1];if(j[ee][0]>ne&&ee>0){var ie=(j[ee][0]-ne)/(j[ee][0]-j[ee-1][0]);return j[ee][1]*(1-ie)+ie*j[ee-1][1]}}return 1}var N=[0,0,0],U={showSurface:!1,showContour:!1,projections:[f.slice(),f.slice(),f.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function W(ne,j){var ee,ie,fe,be=j.axes&&j.axes.lastCubeProps.axis||N,Ae=j.showSurface,Be=j.showContour;for(ee=0;ee<3;++ee)for(Ae=Ae||j.surfaceProject[ee],ie=0;ie<3;++ie)Be=Be||j.contourProject[ee][ie];for(ee=0;ee<3;++ee){var Ie=U.projections[ee];for(ie=0;ie<16;++ie)Ie[ie]=0;for(ie=0;ie<4;++ie)Ie[5*ie]=1;Ie[5*ee]=0,Ie[12+ee]=j.axesBounds[+(be[ee]>0)][ee],l(Ie,ne.model,Ie);var Ze=U.clipBounds[ee];for(fe=0;fe<2;++fe)for(ie=0;ie<3;++ie)Ze[fe][ie]=ne.clipBounds[fe][ie];Ze[0][ee]=-1e8,Ze[1][ee]=1e8}return U.showSurface=Ae,U.showContour=Be,U}var Q={model:f,view:f,projection:f,inverseModel:f.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},ue=f.slice(),se=[1,0,0,0,1,0,0,0,1];function he(ne,j){ne=ne||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var ie=Q;ie.model=ne.model||f,ie.view=ne.view||f,ie.projection=ne.projection||f,ie.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ie.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ie.objectOffset=this.objectOffset,ie.contourColor=this.contourColor[0],ie.inverseModel=_(ie.inverseModel,ie.model);for(var fe=0;fe<2;++fe)for(var be=ie.clipBounds[fe],Ae=0;Ae<3;++Ae)be[Ae]=Math.min(Math.max(this.clipBounds[fe][Ae],-1e8),1e8);ie.kambient=this.ambientLight,ie.kdiffuse=this.diffuseLight,ie.kspecular=this.specularLight,ie.roughness=this.roughness,ie.fresnel=this.fresnel,ie.opacity=this.opacity,ie.height=0,ie.permutation=se,ie.vertexColor=this.vertexColor;var Be=ue;for(l(Be,ie.view,ie.model),l(Be,ie.projection,Be),_(Be,Be),fe=0;fe<3;++fe)ie.eyePosition[fe]=Be[12+fe]/Be[15];var Ie=Be[15];for(fe=0;fe<3;++fe)Ie+=this.lightPosition[fe]*Be[4*fe+3];for(fe=0;fe<3;++fe){var Ze=Be[12+fe];for(Ae=0;Ae<3;++Ae)Ze+=Be[4*Ae+fe]*this.lightPosition[Ae];ie.lightPosition[fe]=Ze/Ie}var at=W(ie,this);if(at.showSurface){for(this._shader.bind(),this._shader.uniforms=ie,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),fe=0;fe<3;++fe)!this.surfaceProject[fe]||!this.vertexCount||(this._shader.uniforms.model=at.projections[fe],this._shader.uniforms.clipBounds=at.clipBounds[fe],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(at.showContour){var it=this._contourShader;ie.kambient=1,ie.kdiffuse=0,ie.kspecular=0,ie.opacity=1,it.bind(),it.uniforms=ie;var et=this._contourVAO;for(et.bind(),fe=0;fe<3;++fe)for(it.uniforms.permutation=L[fe],ee.lineWidth(this.contourWidth[fe]*this.pixelRatio),Ae=0;Ae<this.contourLevels[fe].length;++Ae)Ae===this.highlightLevel[fe]?(it.uniforms.contourColor=this.highlightColor[fe],it.uniforms.contourTint=this.highlightTint[fe]):(Ae===0||Ae-1===this.highlightLevel[fe])&&(it.uniforms.contourColor=this.contourColor[fe],it.uniforms.contourTint=this.contourTint[fe]),this._contourCounts[fe][Ae]&&(it.uniforms.height=this.contourLevels[fe][Ae],et.draw(ee.LINES,this._contourCounts[fe][Ae],this._contourOffsets[fe][Ae]));for(fe=0;fe<3;++fe)for(it.uniforms.model=at.projections[fe],it.uniforms.clipBounds=at.clipBounds[fe],Ae=0;Ae<3;++Ae)if(this.contourProject[fe][Ae]){it.uniforms.permutation=L[Ae],ee.lineWidth(this.contourWidth[Ae]*this.pixelRatio);for(var lt=0;lt<this.contourLevels[Ae].length;++lt)lt===this.highlightLevel[Ae]?(it.uniforms.contourColor=this.highlightColor[Ae],it.uniforms.contourTint=this.highlightTint[Ae]):(lt===0||lt-1===this.highlightLevel[Ae])&&(it.uniforms.contourColor=this.contourColor[Ae],it.uniforms.contourTint=this.contourTint[Ae]),this._contourCounts[Ae][lt]&&(it.uniforms.height=this.contourLevels[Ae][lt],et.draw(ee.LINES,this._contourCounts[Ae][lt],this._contourOffsets[Ae][lt]))}for(et.unbind(),et=this._dynamicVAO,et.bind(),fe=0;fe<3;++fe)if(this._dynamicCounts[fe]!==0)for(it.uniforms.model=ie.model,it.uniforms.clipBounds=ie.clipBounds,it.uniforms.permutation=L[fe],ee.lineWidth(this.dynamicWidth[fe]*this.pixelRatio),it.uniforms.contourColor=this.dynamicColor[fe],it.uniforms.contourTint=this.dynamicTint[fe],it.uniforms.height=this.dynamicLevel[fe],et.draw(ee.LINES,this._dynamicCounts[fe],this._dynamicOffsets[fe]),Ae=0;Ae<3;++Ae)this.contourProject[Ae][fe]&&(it.uniforms.model=at.projections[Ae],it.uniforms.clipBounds=at.clipBounds[Ae],et.draw(ee.LINES,this._dynamicCounts[fe],this._dynamicOffsets[fe]));et.unbind()}}O.draw=function(ne){return he.call(this,ne,!1)},O.drawTransparent=function(ne){return he.call(this,ne,!0)};var G={model:f,view:f,projection:f,inverseModel:f,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};O.drawPick=function(ne){ne=ne||{};var j=this.gl;j.disable(j.CULL_FACE);var ee=G;ee.model=ne.model||f,ee.view=ne.view||f,ee.projection=ne.projection||f,ee.shape=this._field[2].shape,ee.pickId=this.pickId/255,ee.lowerBound=this.bounds[0],ee.upperBound=this.bounds[1],ee.objectOffset=this.objectOffset,ee.permutation=se;for(var ie=0;ie<2;++ie)for(var fe=ee.clipBounds[ie],be=0;be<3;++be)fe[be]=Math.min(Math.max(this.clipBounds[ie][be],-1e8),1e8);var Ae=W(ee,this);if(Ae.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=ee,this._vao.bind(),this._vao.draw(j.TRIANGLES,this._vertexCount),ie=0;ie<3;++ie)this.surfaceProject[ie]&&(this._pickShader.uniforms.model=Ae.projections[ie],this._pickShader.uniforms.clipBounds=Ae.clipBounds[ie],this._vao.draw(j.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ae.showContour){var Be=this._contourPickShader;Be.bind(),Be.uniforms=ee;var Ie=this._contourVAO;for(Ie.bind(),be=0;be<3;++be)for(j.lineWidth(this.contourWidth[be]*this.pixelRatio),Be.uniforms.permutation=L[be],ie=0;ie<this.contourLevels[be].length;++ie)this._contourCounts[be][ie]&&(Be.uniforms.height=this.contourLevels[be][ie],Ie.draw(j.LINES,this._contourCounts[be][ie],this._contourOffsets[be][ie]));for(ie=0;ie<3;++ie)for(Be.uniforms.model=Ae.projections[ie],Be.uniforms.clipBounds=Ae.clipBounds[ie],be=0;be<3;++be)if(this.contourProject[ie][be]){Be.uniforms.permutation=L[be],j.lineWidth(this.contourWidth[be]*this.pixelRatio);for(var Ze=0;Ze<this.contourLevels[be].length;++Ze)this._contourCounts[be][Ze]&&(Be.uniforms.height=this.contourLevels[be][Ze],Ie.draw(j.LINES,this._contourCounts[be][Ze],this._contourOffsets[be][Ze]))}Ie.unbind()}},O.pick=function(ne){if(!ne||ne.id!==this.pickId)return null;var j=this._field[2].shape,ee=this._pickResult,ie=j[0]*(ne.value[0]+(ne.value[2]>>4)/16)/255,fe=Math.floor(ie),be=ie-fe,Ae=j[1]*(ne.value[1]+(ne.value[2]&15)/16)/255,Be=Math.floor(Ae),Ie=Ae-Be;fe+=1,Be+=1;var Ze=ee.position;Ze[0]=Ze[1]=Ze[2]=0;for(var at=0;at<2;++at)for(var it=at?be:1-be,et=0;et<2;++et)for(var lt=et?Ie:1-Ie,Me=fe+at,ge=Be+et,ce=it*lt,ze=0;ze<3;++ze)Ze[ze]+=this._field[ze].get(Me,ge)*ce;for(var tt=this._pickResult.level,nt=0;nt<3;++nt)if(tt[nt]=w.le(this.contourLevels[nt],Ze[nt]),tt[nt]<0)this.contourLevels[nt].length>0&&(tt[nt]=0);else if(tt[nt]<this.contourLevels[nt].length-1){var Qe=this.contourLevels[nt][tt[nt]],Ct=this.contourLevels[nt][tt[nt]+1];Math.abs(Qe-Ze[nt])>Math.abs(Ct-Ze[nt])&&(tt[nt]+=1)}for(ee.index[0]=be<.5?fe:fe+1,ee.index[1]=Ie<.5?Be:Be+1,ee.uv[0]=ie/j[0],ee.uv[1]=Ae/j[1],ze=0;ze<3;++ze)ee.dataCoordinate[ze]=this._field[ze].get(ee.index[0],ee.index[1]);return ee},O.padField=function(ne,j){var ee=j.shape.slice(),ie=ne.shape.slice();h.assign(ne.lo(1,1).hi(ee[0],ee[1]),j),h.assign(ne.lo(1).hi(ee[0],1),j.hi(ee[0],1)),h.assign(ne.lo(1,ie[1]-1).hi(ee[0],1),j.lo(0,ee[1]-1).hi(ee[0],1)),h.assign(ne.lo(0,1).hi(1,ee[1]),j.hi(1)),h.assign(ne.lo(ie[0]-1,1).hi(1,ee[1]),j.lo(ee[0]-1)),ne.set(0,0,j.get(0,0)),ne.set(0,ie[1]-1,j.get(0,ee[1]-1)),ne.set(ie[0]-1,0,j.get(ee[0]-1,0)),ne.set(ie[0]-1,ie[1]-1,j.get(ee[0]-1,ee[1]-1))};function $(ne,j){return Array.isArray(ne)?[j(ne[0]),j(ne[1]),j(ne[2])]:[j(ne),j(ne),j(ne)]}function J(ne){return Array.isArray(ne)?ne.length===3?[ne[0],ne[1],ne[2],1]:[ne[0],ne[1],ne[2],ne[3]]:[0,0,0,1]}function Z(ne){if(Array.isArray(ne)){if(Array.isArray(ne))return[J(ne[0]),J(ne[1]),J(ne[2])];var j=J(ne);return[j.slice(),j.slice(),j.slice()]}}O.update=function(ne){ne=ne||{},this.objectOffset=ne.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in ne&&(this.contourWidth=$(ne.contourWidth,Number)),"showContour"in ne&&(this.showContour=$(ne.showContour,Boolean)),"showSurface"in ne&&(this.showSurface=!!ne.showSurface),"contourTint"in ne&&(this.contourTint=$(ne.contourTint,Boolean)),"contourColor"in ne&&(this.contourColor=Z(ne.contourColor)),"contourProject"in ne&&(this.contourProject=$(ne.contourProject,function($a){return $($a,Boolean)})),"surfaceProject"in ne&&(this.surfaceProject=ne.surfaceProject),"dynamicColor"in ne&&(this.dynamicColor=Z(ne.dynamicColor)),"dynamicTint"in ne&&(this.dynamicTint=$(ne.dynamicTint,Number)),"dynamicWidth"in ne&&(this.dynamicWidth=$(ne.dynamicWidth,Number)),"opacity"in ne&&(this.opacity=ne.opacity),"opacityscale"in ne&&(this.opacityscale=ne.opacityscale),"colorBounds"in ne&&(this.colorBounds=ne.colorBounds),"vertexColor"in ne&&(this.vertexColor=ne.vertexColor?1:0),"colormap"in ne&&this._colorMap.setPixels(this.genColormap(ne.colormap,this.opacityscale));var j=ne.field||ne.coords&&ne.coords[2]||null,ee=!1;if(j||(this._field[2].shape[0]||this._field[2].shape[2]?j=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):j=this._field[2].hi(0,0)),"field"in ne||"coords"in ne){var ie=(j.shape[0]+2)*(j.shape[1]+2);ie>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(o.nextPow2(ie))),this._field[2]=p(this._field[2].data,[j.shape[0]+2,j.shape[1]+2]),this.padField(this._field[2],j),this.shape=j.shape.slice();for(var fe=this.shape,be=0;be<2;++be)this._field[2].size>this._field[be].data.length&&(s.freeFloat(this._field[be].data),this._field[be].data=s.mallocFloat(this._field[2].size)),this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2]);if(ne.coords){var Ae=ne.coords;if(!Array.isArray(Ae)||Ae.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(be=0;be<2;++be){var Be=Ae[be];for(et=0;et<2;++et)if(Be.shape[et]!==fe[et])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[be],Be)}}else if(ne.ticks){var Ie=ne.ticks;if(!Array.isArray(Ie)||Ie.length!==2)throw new Error("gl-surface: invalid ticks");for(be=0;be<2;++be){var Ze=Ie[be];if((Array.isArray(Ze)||Ze.length)&&(Ze=p(Ze)),Ze.shape[0]!==fe[be])throw new Error("gl-surface: invalid tick length");var at=p(Ze.data,fe);at.stride[be]=Ze.stride[0],at.stride[be^1]=0,this.padField(this._field[be],at)}}else{for(be=0;be<2;++be){var it=[0,0];it[be]=1,this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2],it,0)}this._field[0].set(0,0,0);for(var et=0;et<fe[0];++et)this._field[0].set(et+1,0,et);for(this._field[0].set(fe[0]+1,0,fe[0]-1),this._field[1].set(0,0,0),et=0;et<fe[1];++et)this._field[1].set(0,et+1,et);this._field[1].set(0,fe[1]+1,fe[1]-1)}var lt=this._field,Me=p(s.mallocFloat(lt[2].size*3*2),[3,fe[0]+2,fe[1]+2,2]);for(be=0;be<3;++be)S(Me.pick(be),lt[be],"mirror");var ge=p(s.mallocFloat(lt[2].size*3),[fe[0]+2,fe[1]+2,3]);for(be=0;be<fe[0]+2;++be)for(et=0;et<fe[1]+2;++et){var ce=Me.get(0,be,et,0),ze=Me.get(0,be,et,1),tt=Me.get(1,be,et,0),nt=Me.get(1,be,et,1),Qe=Me.get(2,be,et,0),Ct=Me.get(2,be,et,1),St=tt*Ct-nt*Qe,Ot=Qe*ze-Ct*ce,jt=ce*nt-ze*tt,ur=Math.sqrt(St*St+Ot*Ot+jt*jt);ur<1e-8?(ur=Math.max(Math.abs(St),Math.abs(Ot),Math.abs(jt)),ur<1e-8?(jt=1,Ot=St=0,ur=1):ur=1/ur):ur=1/Math.sqrt(ur),ge.set(be,et,0,St*ur),ge.set(be,et,1,Ot*ur),ge.set(be,et,2,jt*ur)}s.free(Me.data);var ar=[1/0,1/0,1/0],Cr=[-1/0,-1/0,-1/0],vr=1/0,_r=-1/0,yt=(fe[0]-1)*(fe[1]-1)*6,Fe=s.mallocFloat(o.nextPow2(10*yt)),Ke=0,Ne=0;for(be=0;be<fe[0]-1;++be)e:for(et=0;et<fe[1]-1;++et){for(var Ee=0;Ee<2;++Ee)for(var Ve=0;Ve<2;++Ve)for(var ke=0;ke<3;++ke){var Te=this._field[ke].get(1+be+Ee,1+et+Ve);if(isNaN(Te)||!isFinite(Te))continue e}for(ke=0;ke<6;++ke){var Le=be+P[ke][0],rt=et+P[ke][1],dt=this._field[0].get(Le+1,rt+1),xt=this._field[1].get(Le+1,rt+1);Te=this._field[2].get(Le+1,rt+1),St=ge.get(Le+1,rt+1,0),Ot=ge.get(Le+1,rt+1,1),jt=ge.get(Le+1,rt+1,2),ne.intensity&&(It=ne.intensity.get(Le,rt));var It=ne.intensity?ne.intensity.get(Le,rt):Te+this.objectOffset[2];Fe[Ke++]=Le,Fe[Ke++]=rt,Fe[Ke++]=dt,Fe[Ke++]=xt,Fe[Ke++]=Te,Fe[Ke++]=0,Fe[Ke++]=It,Fe[Ke++]=St,Fe[Ke++]=Ot,Fe[Ke++]=jt,ar[0]=Math.min(ar[0],dt+this.objectOffset[0]),ar[1]=Math.min(ar[1],xt+this.objectOffset[1]),ar[2]=Math.min(ar[2],Te+this.objectOffset[2]),vr=Math.min(vr,It),Cr[0]=Math.max(Cr[0],dt+this.objectOffset[0]),Cr[1]=Math.max(Cr[1],xt+this.objectOffset[1]),Cr[2]=Math.max(Cr[2],Te+this.objectOffset[2]),_r=Math.max(_r,It),Ne+=1}}for(ne.intensityBounds&&(vr=+ne.intensityBounds[0],_r=+ne.intensityBounds[1]),be=6;be<Ke;be+=10)Fe[be]=(Fe[be]-vr)/(_r-vr);this._vertexCount=Ne,this._coordinateBuffer.update(Fe.subarray(0,Ke)),s.freeFloat(Fe),s.free(ge.data),this.bounds=[ar,Cr],this.intensity=ne.intensity||this._field[2],(this.intensityBounds[0]!==vr||this.intensityBounds[1]!==_r)&&(ee=!0),this.intensityBounds=[vr,_r]}if("levels"in ne){var Bt=ne.levels;for(Array.isArray(Bt[0])?Bt=Bt.slice():Bt=[[],[],Bt],be=0;be<3;++be)Bt[be]=Bt[be].slice(),Bt[be].sort(function($a,mt){return $a-mt});for(be=0;be<3;++be)for(et=0;et<Bt[be].length;++et)Bt[be][et]-=this.objectOffset[be];e:for(be=0;be<3;++be){if(Bt[be].length!==this.contourLevels[be].length){ee=!0;break}for(et=0;et<Bt[be].length;++et)if(Bt[be][et]!==this.contourLevels[be][et]){ee=!0;break e}}this.contourLevels=Bt}if(ee){lt=this._field,fe=this.shape;for(var Gt=[],Kt=0;Kt<3;++Kt){var sr=this.contourLevels[Kt],sa=[],Aa=[],La=[0,0,0];for(be=0;be<sr.length;++be){var ka=T(this._field[Kt],sr[be]);sa.push(Gt.length/5|0),Ne=0;e:for(et=0;et<ka.cells.length;++et){var Ga=ka.cells[et];for(ke=0;ke<2;++ke){var Ma=ka.positions[Ga[ke]],Ua=Ma[0],ni=Math.floor(Ua)|0,Wt=Ua-ni,zt=Ma[1],Vt=Math.floor(zt)|0,Ut=zt-Vt,xr=!1;t:for(var Zr=0;Zr<3;++Zr){La[Zr]=0;var pa=(Kt+Zr+1)%3;for(Ee=0;Ee<2;++Ee){var Xr=Ee?Wt:1-Wt;for(Le=Math.min(Math.max(ni+Ee,0),fe[0])|0,Ve=0;Ve<2;++Ve){var Ea=Ve?Ut:1-Ut;if(rt=Math.min(Math.max(Vt+Ve,0),fe[1])|0,Zr<2?Te=this._field[pa].get(Le,rt):Te=(this.intensity.get(Le,rt)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(Te)||isNaN(Te)){xr=!0;break t}var Fa=Xr*Ea;La[Zr]+=Fa*Te}}}if(!xr)Gt.push(La[0],La[1],Ma[0],Ma[1],La[2]),Ne+=1;else{if(ke>0){for(var qa=0;qa<5;++qa)Gt.pop();Ne-=1}continue e}}}Aa.push(Ne)}this._contourOffsets[Kt]=sa,this._contourCounts[Kt]=Aa}var ya=s.mallocFloat(Gt.length);for(be=0;be<Gt.length;++be)ya[be]=Gt[be];this._contourBuffer.update(ya),s.freeFloat(ya)}},O.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var ne=0;ne<3;++ne)s.freeFloat(this._field[ne].data)},O.highlight=function(ne){var j;if(!ne){this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],this.highlightLevel=[-1,-1,-1];return}for(j=0;j<3;++j)this.enableHighlight[j]?this.highlightLevel[j]=ne.level[j]:this.highlightLevel[j]=-1;var ee;for(this.snapToData?ee=ne.dataCoordinate:ee=ne.position,j=0;j<3;++j)ee[j]-=this.objectOffset[j];if(!((!this.enableDynamic[0]||ee[0]===this.dynamicLevel[0])&&(!this.enableDynamic[1]||ee[1]===this.dynamicLevel[1])&&(!this.enableDynamic[2]||ee[2]===this.dynamicLevel[2]))){for(var ie=0,fe=this.shape,be=s.mallocFloat(12*fe[0]*fe[1]),Ae=0;Ae<3;++Ae){if(!this.enableDynamic[Ae]){this.dynamicLevel[Ae]=NaN,this._dynamicCounts[Ae]=0;continue}this.dynamicLevel[Ae]=ee[Ae];var Be=(Ae+1)%3,Ie=(Ae+2)%3,Ze=this._field[Ae],at=this._field[Be],it=this._field[Ie],et=T(Ze,ee[Ae]),lt=et.cells,Me=et.positions;for(this._dynamicOffsets[Ae]=ie,j=0;j<lt.length;++j)for(var ge=lt[j],ce=0;ce<2;++ce){var ze=Me[ge[ce]],tt=+ze[0],nt=tt|0,Qe=Math.min(nt+1,fe[0])|0,Ct=tt-nt,St=1-Ct,Ot=+ze[1],jt=Ot|0,ur=Math.min(jt+1,fe[1])|0,ar=Ot-jt,Cr=1-ar,vr=St*Cr,_r=St*ar,yt=Ct*Cr,Fe=Ct*ar,Ke=vr*at.get(nt,jt)+_r*at.get(nt,ur)+yt*at.get(Qe,jt)+Fe*at.get(Qe,ur),Ne=vr*it.get(nt,jt)+_r*it.get(nt,ur)+yt*it.get(Qe,jt)+Fe*it.get(Qe,ur);if(isNaN(Ke)||isNaN(Ne)){ce&&(ie-=1);break}be[2*ie+0]=Ke,be[2*ie+1]=Ne,ie+=1}this._dynamicCounts[Ae]=ie-this._dynamicOffsets[Ae]}this._dynamicBuffer.update(be.subarray(0,2*ie)),s.freeFloat(be)}};function re(ne){var j=ne.gl,ee=m(j),ie=d(j),fe=b(j),be=u(j),Ae=a(j),Be=i(j,[{buffer:Ae,size:4,stride:y,offset:0},{buffer:Ae,size:3,stride:y,offset:16},{buffer:Ae,size:3,stride:y,offset:28}]),Ie=a(j),Ze=i(j,[{buffer:Ie,size:4,stride:20,offset:0},{buffer:Ie,size:1,stride:20,offset:16}]),at=a(j),it=i(j,[{buffer:at,size:2,type:j.FLOAT}]),et=n(j,1,F,j.RGBA,j.UNSIGNED_BYTE);et.minFilter=j.LINEAR,et.magFilter=j.LINEAR;var lt=new B(j,[0,0],[[0,0,0],[0,0,0]],ee,ie,Ae,Be,et,fe,be,Ie,Ze,at,it,[0,0,0]),Me={levels:[[],[],[]]};for(var ge in ne)Me[ge]=ne[ge];return Me.colormap=Me.colormap||"jet",lt.update(Me),lt}},7766:function(e,t,r){"use strict";var o=r(9618),a=r(5298),i=r(1888);e.exports=u;var n=null,s=null,c=null;function h(y){n=[y.LINEAR,y.NEAREST_MIPMAP_LINEAR,y.LINEAR_MIPMAP_NEAREST,y.LINEAR_MIPMAP_NEAREST],s=[y.NEAREST,y.LINEAR,y.NEAREST_MIPMAP_NEAREST,y.NEAREST_MIPMAP_LINEAR,y.LINEAR_MIPMAP_NEAREST,y.LINEAR_MIPMAP_LINEAR],c=[y.REPEAT,y.CLAMP_TO_EDGE,y.MIRRORED_REPEAT]}function v(y){return typeof HTMLCanvasElement<"u"&&y instanceof HTMLCanvasElement||typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement||typeof HTMLVideoElement<"u"&&y instanceof HTMLVideoElement||typeof ImageData<"u"&&y instanceof ImageData}var p=function(y,f){a.muls(y,f,255)};function T(y,f,P){var L=y.gl,z=L.getParameter(L.MAX_TEXTURE_SIZE);if(f<0||f>z||P<0||P>z)throw new Error("gl-texture2d: Invalid texture size");return y._shape=[f,P],y.bind(),L.texImage2D(L.TEXTURE_2D,0,y.format,f,P,0,y.format,y.type,null),y._mipLevels=[0],y}function l(y,f,P,L,z,F){this.gl=y,this.handle=f,this.format=z,this.type=F,this._shape=[P,L],this._mipLevels=[0],this._magFilter=y.NEAREST,this._minFilter=y.NEAREST,this._wrapS=y.CLAMP_TO_EDGE,this._wrapT=y.CLAMP_TO_EDGE,this._anisoSamples=1;var B=this,O=[this._wrapS,this._wrapT];Object.defineProperties(O,[{get:function(){return B._wrapS},set:function(N){return B.wrapS=N}},{get:function(){return B._wrapT},set:function(N){return B.wrapT=N}}]),this._wrapVector=O;var I=[this._shape[0],this._shape[1]];Object.defineProperties(I,[{get:function(){return B._shape[0]},set:function(N){return B.width=N}},{get:function(){return B._shape[1]},set:function(N){return B.height=N}}]),this._shapeVector=I}var _=l.prototype;Object.defineProperties(_,{minFilter:{get:function(){return this._minFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,y),this._minFilter=y}},magFilter:{get:function(){return this._magFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,y),this._magFilter=y}},mipSamples:{get:function(){return this._anisoSamples},set:function(y){var f=this._anisoSamples;if(this._anisoSamples=Math.max(y,1)|0,f!==this._anisoSamples){var P=this.gl.getExtension("EXT_texture_filter_anisotropic");P&&this.gl.texParameterf(this.gl.TEXTURE_2D,P.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,y),this._wrapS=y}},wrapT:{get:function(){return this._wrapT},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,y),this._wrapT=y}},wrap:{get:function(){return this._wrapVector},set:function(y){if(Array.isArray(y)||(y=[y,y]),y.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var f=0;f<2;++f)if(c.indexOf(y[f])<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);this._wrapS=y[0],this._wrapT=y[1];var P=this.gl;return this.bind(),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,this._wrapS),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,this._wrapT),y}},shape:{get:function(){return this._shapeVector},set:function(y){if(!Array.isArray(y))y=[y|0,y|0];else if(y.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,y[0]|0,y[1]|0),[y[0]|0,y[1]|0]}},width:{get:function(){return this._shape[0]},set:function(y){return y=y|0,T(this,y,this._shape[1]),y}},height:{get:function(){return this._shape[1]},set:function(y){return y=y|0,T(this,this._shape[0],y),y}}}),_.bind=function(y){var f=this.gl;return y!==void 0&&f.activeTexture(f.TEXTURE0+(y|0)),f.bindTexture(f.TEXTURE_2D,this.handle),y!==void 0?y|0:f.getParameter(f.ACTIVE_TEXTURE)-f.TEXTURE0},_.dispose=function(){this.gl.deleteTexture(this.handle)},_.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var y=Math.min(this._shape[0],this._shape[1]),f=0;y>0;++f,y>>>=1)this._mipLevels.indexOf(f)<0&&this._mipLevels.push(f)},_.setPixels=function(y,f,P,L){var z=this.gl;this.bind(),Array.isArray(f)?(L=P,P=f[1]|0,f=f[0]|0):(f=f||0,P=P||0),L=L||0;var F=v(y)?y:y.raw;if(F){var B=this._mipLevels.indexOf(L)<0;B?(z.texImage2D(z.TEXTURE_2D,0,this.format,this.format,this.type,F),this._mipLevels.push(L)):z.texSubImage2D(z.TEXTURE_2D,L,f,P,this.format,this.type,F)}else if(y.shape&&y.stride&&y.data){if(y.shape.length<2||f+y.shape[1]>this._shape[1]>>>L||P+y.shape[0]>this._shape[0]>>>L||f<0||P<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(z,f,P,L,this.format,this.type,this._mipLevels,y)}else throw new Error("gl-texture2d: Unsupported data type")};function w(y,f){return y.length===3?f[2]===1&&f[1]===y[0]*y[2]&&f[0]===y[2]:f[0]===1&&f[1]===y[0]}function S(y,f,P,L,z,F,B,O){var I=O.dtype,N=O.shape.slice();if(N.length<2||N.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var U=0,W=0,Q=w(N,O.stride.slice());I==="float32"?U=y.FLOAT:I==="float64"?(U=y.FLOAT,Q=!1,I="float32"):I==="uint8"?U=y.UNSIGNED_BYTE:(U=y.UNSIGNED_BYTE,Q=!1,I="uint8");var ue=1;if(N.length===2)W=y.LUMINANCE,N=[N[0],N[1],1],O=o(O.data,N,[O.stride[0],O.stride[1],1],O.offset);else if(N.length===3){if(N[2]===1)W=y.ALPHA;else if(N[2]===2)W=y.LUMINANCE_ALPHA;else if(N[2]===3)W=y.RGB;else if(N[2]===4)W=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ue=N[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((W===y.LUMINANCE||W===y.ALPHA)&&(z===y.LUMINANCE||z===y.ALPHA)&&(W=z),W!==z)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var se=O.size,he=B.indexOf(L)<0;if(he&&B.push(L),U===F&&Q)O.offset===0&&O.data.length===se?he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data):he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data.subarray(O.offset,O.offset+se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data.subarray(O.offset,O.offset+se));else{var G;F===y.FLOAT?G=i.mallocFloat32(se):G=i.mallocUint8(se);var $=o(G,N,[N[2],N[2]*N[0],1]);U===y.FLOAT&&F===y.UNSIGNED_BYTE?p($,O):a.assign($,O),he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,G.subarray(0,se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,G.subarray(0,se)),F===y.FLOAT?i.freeFloat32(G):i.freeUint8(G)}}function E(y){var f=y.createTexture();return y.bindTexture(y.TEXTURE_2D,f),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MIN_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MAG_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_S,y.CLAMP_TO_EDGE),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_T,y.CLAMP_TO_EDGE),f}function m(y,f,P,L,z){var F=y.getParameter(y.MAX_TEXTURE_SIZE);if(f<0||f>F||P<0||P>F)throw new Error("gl-texture2d: Invalid texture shape");if(z===y.FLOAT&&!y.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,L,f,P,0,L,z,null),new l(y,B,f,P,L,z)}function b(y,f,P,L,z,F){var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,z,z,F,f),new l(y,B,P,L,z,F)}function d(y,f){var P=f.dtype,L=f.shape.slice(),z=y.getParameter(y.MAX_TEXTURE_SIZE);if(L[0]<0||L[0]>z||L[1]<0||L[1]>z)throw new Error("gl-texture2d: Invalid texture size");var F=w(L,f.stride.slice()),B=0;P==="float32"?B=y.FLOAT:P==="float64"?(B=y.FLOAT,F=!1,P="float32"):P==="uint8"?B=y.UNSIGNED_BYTE:(B=y.UNSIGNED_BYTE,F=!1,P="uint8");var O=0;if(L.length===2)O=y.LUMINANCE,L=[L[0],L[1],1],f=o(f.data,L,[f.stride[0],f.stride[1],1],f.offset);else if(L.length===3)if(L[2]===1)O=y.ALPHA;else if(L[2]===2)O=y.LUMINANCE_ALPHA;else if(L[2]===3)O=y.RGB;else if(L[2]===4)O=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");B===y.FLOAT&&!y.getExtension("OES_texture_float")&&(B=y.UNSIGNED_BYTE,F=!1);var I,N,U=f.size;if(F)f.offset===0&&f.data.length===U?I=f.data:I=f.data.subarray(f.offset,f.offset+U);else{var W=[L[2],L[2]*L[0],1];N=i.malloc(U,P);var Q=o(N,L,W,0);(P==="float32"||P==="float64")&&B===y.UNSIGNED_BYTE?p(Q,f):a.assign(Q,f),I=N.subarray(0,U)}var ue=E(y);return y.texImage2D(y.TEXTURE_2D,0,O,L[0],L[1],0,O,B,I),F||i.free(N),new l(y,ue,L[0],L[1],O,B)}function u(y){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(n||h(y),typeof arguments[1]=="number")return m(y,arguments[1],arguments[2],arguments[3]||y.RGBA,arguments[4]||y.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return m(y,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var f=arguments[1],P=v(f)?f:f.raw;if(P)return b(y,P,f.width|0,f.height|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(f.shape&&f.data&&f.stride)return d(y,f)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(e){"use strict";function t(r,o,a){o?o.bind():r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null);var i=r.getParameter(r.MAX_VERTEX_ATTRIBS)|0;if(a){if(a.length>i)throw new Error("gl-vao: Too many vertex attributes");for(var n=0;n<a.length;++n){var s=a[n];if(s.buffer){var c=s.buffer,h=s.size||4,v=s.type||r.FLOAT,p=!!s.normalized,T=s.stride||0,l=s.offset||0;c.bind(),r.enableVertexAttribArray(n),r.vertexAttribPointer(n,h,v,p,T,l)}else{if(typeof s=="number")r.vertexAttrib1f(n,s);else if(s.length===1)r.vertexAttrib1f(n,s[0]);else if(s.length===2)r.vertexAttrib2f(n,s[0],s[1]);else if(s.length===3)r.vertexAttrib3f(n,s[0],s[1],s[2]);else if(s.length===4)r.vertexAttrib4f(n,s[0],s[1],s[2],s[3]);else throw new Error("gl-vao: Invalid vertex attribute");r.disableVertexAttribArray(n)}}for(;n<i;++n)r.disableVertexAttribArray(n)}else{r.bindBuffer(r.ARRAY_BUFFER,null);for(var n=0;n<i;++n)r.disableVertexAttribArray(n)}}e.exports=t},870:function(e,t,r){"use strict";var o=r(1433);function a(n){this.gl=n,this._elements=null,this._attributes=null,this._elementsType=n.UNSIGNED_SHORT}a.prototype.bind=function(){o(this.gl,this._elements,this._attributes)},a.prototype.update=function(n,s,c){this._elements=s,this._attributes=n,this._elementsType=c||this.gl.UNSIGNED_SHORT},a.prototype.dispose=function(){},a.prototype.unbind=function(){},a.prototype.draw=function(n,s,c){c=c||0;var h=this.gl;this._elements?h.drawElements(n,s,this._elementsType,c):h.drawArrays(n,c,s)};function i(n){return new a(n)}e.exports=i},7518:function(e,t,r){"use strict";var o=r(1433);function a(s,c,h,v,p,T){this.location=s,this.dimension=c,this.a=h,this.b=v,this.c=p,this.d=T}a.prototype.bind=function(s){switch(this.dimension){case 1:s.vertexAttrib1f(this.location,this.a);break;case 2:s.vertexAttrib2f(this.location,this.a,this.b);break;case 3:s.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:s.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function i(s,c,h){this.gl=s,this._ext=c,this.handle=h,this._attribs=[],this._useElements=!1,this._elementsType=s.UNSIGNED_SHORT}i.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var s=0;s<this._attribs.length;++s)this._attribs[s].bind(this.gl)},i.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},i.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},i.prototype.update=function(s,c,h){if(this.bind(),o(this.gl,c,s),this.unbind(),this._attribs.length=0,s)for(var v=0;v<s.length;++v){var p=s[v];typeof p=="number"?this._attribs.push(new a(v,1,p)):Array.isArray(p)&&this._attribs.push(new a(v,p.length,p[0],p[1],p[2],p[3]))}this._useElements=!!c,this._elementsType=h||this.gl.UNSIGNED_SHORT},i.prototype.draw=function(s,c,h){h=h||0;var v=this.gl;this._useElements?v.drawElements(s,c,this._elementsType,h):v.drawArrays(s,h,c)};function n(s,c){return new i(s,c,c.createVertexArrayOES())}e.exports=n},8116:function(e,t,r){"use strict";var o=r(7518),a=r(870);function i(s){this.bindVertexArrayOES=s.bindVertexArray.bind(s),this.createVertexArrayOES=s.createVertexArray.bind(s),this.deleteVertexArrayOES=s.deleteVertexArray.bind(s)}function n(s,c,h,v){var p=s.createVertexArray?new i(s):s.getExtension("OES_vertex_array_object"),T;return p?T=o(s,p):T=a(s),T.update(c,h,v),T}e.exports=n},5632:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r}},8192:function(e,t,r){e.exports=n;var o=r(2825),a=r(3536),i=r(244);function n(s,c){var h=o(s[0],s[1],s[2]),v=o(c[0],c[1],c[2]);a(h,h),a(v,v);var p=i(h,v);return p>1?0:Math.acos(p)}},9226:function(e){e.exports=t;function t(r,o){return r[0]=Math.ceil(o[0]),r[1]=Math.ceil(o[1]),r[2]=Math.ceil(o[2]),r}},3126:function(e){e.exports=t;function t(r){var o=new Float32Array(3);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o}},3990:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r}},1091:function(e){e.exports=t;function t(){var r=new Float32Array(3);return r[0]=0,r[1]=0,r[2]=0,r}},5911:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2];return r[0]=n*v-s*h,r[1]=s*c-i*v,r[2]=i*h-n*c,r}},5455:function(e,t,r){e.exports=r(7056)},7056:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return Math.sqrt(a*a+i*i+n*n)}},4008:function(e,t,r){e.exports=r(6690)},6690:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r}},244:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}},2613:function(e){e.exports=1e-6},9922:function(e,t,r){e.exports=a;var o=r(2613);function a(i,n){var s=i[0],c=i[1],h=i[2],v=n[0],p=n[1],T=n[2];return Math.abs(s-v)<=o*Math.max(1,Math.abs(s),Math.abs(v))&&Math.abs(c-p)<=o*Math.max(1,Math.abs(c),Math.abs(p))&&Math.abs(h-T)<=o*Math.max(1,Math.abs(h),Math.abs(T))}},9265:function(e){e.exports=t;function t(r,o){return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]}},2681:function(e){e.exports=t;function t(r,o){return r[0]=Math.floor(o[0]),r[1]=Math.floor(o[1]),r[2]=Math.floor(o[2]),r}},5137:function(e,t,r){e.exports=a;var o=r(1091)();function a(i,n,s,c,h,v){var p,T;for(n||(n=3),s||(s=0),c?T=Math.min(c*n+s,i.length):T=i.length,p=s;p<T;p+=n)o[0]=i[p],o[1]=i[p+1],o[2]=i[p+2],h(o,o,v),i[p]=o[0],i[p+1]=o[1],i[p+2]=o[2];return i}},2825:function(e){e.exports=t;function t(r,o,a){var i=new Float32Array(3);return i[0]=r,i[1]=o,i[2]=a,i}},2931:function(e,t,r){e.exports={EPSILON:r(2613),create:r(1091),clone:r(3126),angle:r(8192),fromValues:r(2825),copy:r(3990),set:r(1463),equals:r(9922),exactEquals:r(9265),add:r(5632),subtract:r(6843),sub:r(2229),multiply:r(5847),mul:r(4505),divide:r(6690),div:r(4008),min:r(8107),max:r(7417),floor:r(2681),ceil:r(9226),round:r(2447),scale:r(6621),scaleAndAdd:r(8489),distance:r(7056),dist:r(5455),squaredDistance:r(2953),sqrDist:r(6141),length:r(1387),len:r(868),squaredLength:r(3066),sqrLen:r(5486),negate:r(5093),inverse:r(811),normalize:r(3536),dot:r(244),cross:r(5911),lerp:r(6658),random:r(7636),transformMat4:r(5673),transformMat3:r(492),transformQuat:r(264),rotateX:r(6894),rotateY:r(109),rotateZ:r(8692),forEach:r(5137)}},811:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r}},868:function(e,t,r){e.exports=r(1387)},1387:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return Math.sqrt(o*o+a*a+i*i)}},6658:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r}},7417:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r}},8107:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r}},4505:function(e,t,r){e.exports=r(5847)},5847:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r}},5093:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r}},3536:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=a*a+i*i+n*n;return s>0&&(s=1/Math.sqrt(s),r[0]=o[0]*s,r[1]=o[1]*s,r[2]=o[2]*s),r}},7636:function(e){e.exports=t;function t(r,o){o=o||1;var a=Math.random()*2*Math.PI,i=Math.random()*2-1,n=Math.sqrt(1-i*i)*o;return r[0]=Math.cos(a)*n,r[1]=Math.sin(a)*n,r[2]=i*o,r}},6894:function(e){e.exports=t;function t(r,o,a,i){var n=a[1],s=a[2],c=o[1]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=o[0],r[1]=n+c*p-h*v,r[2]=s+c*v+h*p,r}},109:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[2],c=o[0]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+h*v+c*p,r[1]=o[1],r[2]=s+h*p-c*v,r}},8692:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[1],c=o[0]-n,h=o[1]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+c*p-h*v,r[1]=s+c*v+h*p,r[2]=o[2],r}},2447:function(e){e.exports=t;function t(r,o){return r[0]=Math.round(o[0]),r[1]=Math.round(o[1]),r[2]=Math.round(o[2]),r}},6621:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r}},8489:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r}},1463:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o,r[1]=a,r[2]=i,r}},6141:function(e,t,r){e.exports=r(2953)},5486:function(e,t,r){e.exports=r(3066)},2953:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return a*a+i*i+n*n}},3066:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return o*o+a*a+i*i}},2229:function(e,t,r){e.exports=r(6843)},6843:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r}},492:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2];return r[0]=i*a[0]+n*a[3]+s*a[6],r[1]=i*a[1]+n*a[4]+s*a[7],r[2]=i*a[2]+n*a[5]+s*a[8],r}},5673:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[3]*i+a[7]*n+a[11]*s+a[15];return c=c||1,r[0]=(a[0]*i+a[4]*n+a[8]*s+a[12])/c,r[1]=(a[1]*i+a[5]*n+a[9]*s+a[13])/c,r[2]=(a[2]*i+a[6]*n+a[10]*s+a[14])/c,r}},264:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r}},4361:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r[3]=o[3]+a[3],r}},2335:function(e){e.exports=t;function t(r){var o=new Float32Array(4);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o}},2933:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r}},7536:function(e){e.exports=t;function t(){var r=new Float32Array(4);return r[0]=0,r[1]=0,r[2]=0,r[3]=0,r}},4691:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return Math.sqrt(a*a+i*i+n*n+s*s)}},1373:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r[3]=o[3]/a[3],r}},3750:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]+r[3]*o[3]}},3390:function(e){e.exports=t;function t(r,o,a,i){var n=new Float32Array(4);return n[0]=r,n[1]=o,n[2]=a,n[3]=i,n}},9970:function(e,t,r){e.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r[3]=1/o[3],r}},6808:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return Math.sqrt(o*o+a*a+i*i+n*n)}},2573:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r[3]=h+i*(a[3]-h),r}},160:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r[3]=Math.max(o[3],a[3]),r}},2334:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r[3]=Math.min(o[3],a[3]),r}},3576:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r[3]=o[3]*a[3],r}},1498:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r[3]=-o[3],r}},5177:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a*a+i*i+n*n+s*s;return c>0&&(c=1/Math.sqrt(c),r[0]=a*c,r[1]=i*c,r[2]=n*c,r[3]=s*c),r}},9131:function(e,t,r){var o=r(5177),a=r(9288);e.exports=i;function i(n,s){return s=s||1,n[0]=Math.random(),n[1]=Math.random(),n[2]=Math.random(),n[3]=Math.random(),o(n,n),a(n,n,s),n}},9288:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r[3]=o[3]*a,r}},4844:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r[3]=o[3]+a[3]*i,r}},4578:function(e){e.exports=t;function t(r,o,a,i,n){return r[0]=o,r[1]=a,r[2]=i,r[3]=n,r}},7960:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return a*a+i*i+n*n+s*s}},483:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return o*o+a*a+i*i+n*n}},6860:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r[3]=o[3]-a[3],r}},5352:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3];return r[0]=a[0]*i+a[4]*n+a[8]*s+a[12]*c,r[1]=a[1]*i+a[5]*n+a[9]*s+a[13]*c,r[2]=a[2]*i+a[6]*n+a[10]*s+a[14]*c,r[3]=a[3]*i+a[7]*n+a[11]*s+a[15]*c,r}},4041:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r[3]=o[3],r}},1848:function(e,t,r){var o=r(4905),a=r(6468);e.exports=i;function i(n){for(var s=Array.isArray(n)?n:o(n),c=0;c<s.length;c++){var h=s[c];if(h.type==="preprocessor"){var v=h.data.match(/\#define\s+SHADER_NAME(_B64)?\s+(.+)$/);if(v&&v[2]){var p=v[1],T=v[2];return(p?a(T):T).trim()}}}}},5874:function(e,t,r){e.exports=f;var o=r(620),a=r(7827),i=r(6852),n=r(7932),s=r(3508),c=999,h=9999,v=0,p=1,T=2,l=3,_=4,w=5,S=6,E=7,m=8,b=9,d=10,u=11,y=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"];function f(P){var L=0,z=0,F=c,B,O,I=[],N=[],U=0,W=0,Q=1,ue=0,se=0,he=!1,G=!1,$="",J;P=P||{};var Z=i,re=o;P.version==="300 es"&&(Z=s,re=n);for(var ne={},j={},L=0;L<Z.length;L++)ne[Z[L]]=!0;for(var L=0;L<re.length;L++)j[re[L]]=!0;return function(ce){return N=[],ce!==null?ie(ce):fe()};function ee(ce){ce.length&&N.push({type:y[F],data:ce,position:se,line:Q,column:ue})}function ie(ce){L=0,ce.toString&&(ce=ce.toString()),$+=ce.replace(/\r\n/g,`
`),J=$.length;for(var ze;B=$[L],L<J;){switch(ze=L,F){case v:L=Ze();break;case p:L=Ie();break;case T:L=Be();break;case l:L=at();break;case _:L=lt();break;case u:L=et();break;case w:L=Me();break;case h:L=ge();break;case b:L=Ae();break;case c:L=be();break}if(ze!==L)switch($[ze]){case`
`:ue=0,++Q;break;default:++ue;break}}return z+=L,$=$.slice(L),N}function fe(ce){return I.length&&ee(I.join("")),F=d,ee("(eof)"),N}function be(){return I=I.length?[]:I,O==="/"&&B==="*"?(se=z+L-1,F=v,O=B,L+1):O==="/"&&B==="/"?(se=z+L-1,F=p,O=B,L+1):B==="#"?(F=T,se=z+L,L):/\s/.test(B)?(F=b,se=z+L,L):(he=/\d/.test(B),G=/[^\w_]/.test(B),se=z+L,F=he?_:G?l:h,L)}function Ae(){return/[^\s]/g.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Be(){return(B==="\r"||B===`
`)&&O!=="\\"?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Ie(){return Be()}function Ze(){return B==="/"&&O==="*"?(I.push(B),ee(I.join("")),F=c,L+1):(I.push(B),O=B,L+1)}function at(){if(O==="."&&/\d/.test(B))return F=w,L;if(O==="/"&&B==="*")return F=v,L;if(O==="/"&&B==="/")return F=p,L;if(B==="."&&I.length){for(;it(I););return F=w,L}if(B===";"||B===")"||B==="("){if(I.length)for(;it(I););return ee(B),F=c,L+1}var ce=I.length===2&&B!=="=";if(/[\w_\d\s]/.test(B)||ce){for(;it(I););return F=c,L}return I.push(B),O=B,L+1}function it(ce){var ze=0,tt,nt;do{if(tt=a.indexOf(ce.slice(0,ce.length+ze).join("")),nt=a[tt],tt===-1){if(ze--+ce.length>0)continue;nt=ce.slice(0,1).join("")}return ee(nt),se+=nt.length,I=I.slice(nt.length),I.length}while(!0)}function et(){return/[^a-fA-F0-9]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function lt(){return B==="."||/[eE]/.test(B)?(I.push(B),F=w,O=B,L+1):B==="x"&&I.length===1&&I[0]==="0"?(F=u,I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Me(){return B==="f"&&(I.push(B),O=B,L+=1),/[eE]/.test(B)||(B==="-"||B==="+")&&/[eE]/.test(O)?(I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function ge(){if(/[^\d\w_]/.test(B)){var ce=I.join("");return j[ce]?F=m:ne[ce]?F=E:F=S,ee(I.join("")),F=c,L}return I.push(B),O=B,L+1}}},3508:function(e,t,r){var o=r(6852);o=o.slice().filter(function(a){return!/^(gl\_|texture)/.test(a)}),e.exports=o.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(e){e.exports=["abs","acos","all","any","asin","atan","ceil","clamp","cos","cross","dFdx","dFdy","degrees","distance","dot","equal","exp","exp2","faceforward","floor","fract","gl_BackColor","gl_BackLightModelProduct","gl_BackLightProduct","gl_BackMaterial","gl_BackSecondaryColor","gl_ClipPlane","gl_ClipVertex","gl_Color","gl_DepthRange","gl_DepthRangeParameters","gl_EyePlaneQ","gl_EyePlaneR","gl_EyePlaneS","gl_EyePlaneT","gl_Fog","gl_FogCoord","gl_FogFragCoord","gl_FogParameters","gl_FragColor","gl_FragCoord","gl_FragData","gl_FragDepth","gl_FragDepthEXT","gl_FrontColor","gl_FrontFacing","gl_FrontLightModelProduct","gl_FrontLightProduct","gl_FrontMaterial","gl_FrontSecondaryColor","gl_LightModel","gl_LightModelParameters","gl_LightModelProducts","gl_LightProducts","gl_LightSource","gl_LightSourceParameters","gl_MaterialParameters","gl_MaxClipPlanes","gl_MaxCombinedTextureImageUnits","gl_MaxDrawBuffers","gl_MaxFragmentUniformComponents","gl_MaxLights","gl_MaxTextureCoords","gl_MaxTextureImageUnits","gl_MaxTextureUnits","gl_MaxVaryingFloats","gl_MaxVertexAttribs","gl_MaxVertexTextureImageUnits","gl_MaxVertexUniformComponents","gl_ModelViewMatrix","gl_ModelViewMatrixInverse","gl_ModelViewMatrixInverseTranspose","gl_ModelViewMatrixTranspose","gl_ModelViewProjectionMatrix","gl_ModelViewProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixTranspose","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_Normal","gl_NormalMatrix","gl_NormalScale","gl_ObjectPlaneQ","gl_ObjectPlaneR","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_Point","gl_PointCoord","gl_PointParameters","gl_PointSize","gl_Position","gl_ProjectionMatrix","gl_ProjectionMatrixInverse","gl_ProjectionMatrixInverseTranspose","gl_ProjectionMatrixTranspose","gl_SecondaryColor","gl_TexCoord","gl_TextureEnvColor","gl_TextureMatrix","gl_TextureMatrixInverse","gl_TextureMatrixInverseTranspose","gl_TextureMatrixTranspose","gl_Vertex","greaterThan","greaterThanEqual","inversesqrt","length","lessThan","lessThanEqual","log","log2","matrixCompMult","max","min","mix","mod","normalize","not","notEqual","pow","radians","reflect","refract","sign","sin","smoothstep","sqrt","step","tan","texture2D","texture2DLod","texture2DProj","texture2DProjLod","textureCube","textureCubeLod","texture2DLodEXT","texture2DProjLodEXT","textureCubeLodEXT","texture2DGradEXT","texture2DProjGradEXT","textureCubeGradEXT"]},7932:function(e,t,r){var o=r(620);e.exports=o.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(e){e.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},7827:function(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(e,t,r){var o=r(5874);e.exports=a;function a(i,n){var s=o(n),c=[];return c=c.concat(s(i)),c=c.concat(s(null)),c}},3236:function(e){e.exports=function(t){typeof t=="string"&&(t=[t]);for(var r=[].slice.call(arguments,1),o=[],a=0;a<t.length-1;a++)o.push(t[a],r[a]||"");return o.push(t[a]),o.join("")}},7520:function(e,t,r){"use strict";var o=r(9507);function a(){var i=!1;try{var n=Object.defineProperty({},"passive",{get:function(){i=!0}});window.addEventListener("test",null,n),window.removeEventListener("test",null,n)}catch{i=!1}return i}e.exports=o&&a()},3778:function(e,t){t.read=function(r,o,a,i,n){var s,c,h=n*8-i-1,v=(1<<h)-1,p=v>>1,T=-7,l=a?n-1:0,_=a?-1:1,w=r[o+l];for(l+=_,s=w&(1<<-T)-1,w>>=-T,T+=h;T>0;s=s*256+r[o+l],l+=_,T-=8);for(c=s&(1<<-T)-1,s>>=-T,T+=i;T>0;c=c*256+r[o+l],l+=_,T-=8);if(s===0)s=1-p;else{if(s===v)return c?NaN:(w?-1:1)*(1/0);c=c+Math.pow(2,i),s=s-p}return(w?-1:1)*c*Math.pow(2,s-i)},t.write=function(r,o,a,i,n,s){var c,h,v,p=s*8-n-1,T=(1<<p)-1,l=T>>1,_=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,w=i?0:s-1,S=i?1:-1,E=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(h=isNaN(o)?1:0,c=T):(c=Math.floor(Math.log(o)/Math.LN2),o*(v=Math.pow(2,-c))<1&&(c--,v*=2),c+l>=1?o+=_/v:o+=_*Math.pow(2,1-l),o*v>=2&&(c++,v/=2),c+l>=T?(h=0,c=T):c+l>=1?(h=(o*v-1)*Math.pow(2,n),c=c+l):(h=o*Math.pow(2,l-1)*Math.pow(2,n),c=0));n>=8;r[a+w]=h&255,w+=S,h/=256,n-=8);for(c=c<<n|h,p+=n;p>0;r[a+w]=c&255,w+=S,c/=256,p-=8);r[a+w-S]|=E*128}},8954:function(e,t,r){"use strict";e.exports=l;var o=r(3250),a=r(6803).Fw;function i(_,w,S){this.vertices=_,this.adjacent=w,this.boundary=S,this.lastVisited=-1}i.prototype.flip=function(){var _=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=_;var w=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=w};function n(_,w,S){this.vertices=_,this.cell=w,this.index=S}function s(_,w){return a(_.vertices,w.vertices)}function c(_){return function(){var w=this.tuple;return _.apply(this,w)}}function h(_){var w=o[_+1];return w||(w=o),c(w)}var v=[];function p(_,w,S){this.dimension=_,this.vertices=w,this.simplices=S,this.interior=S.filter(function(b){return!b.boundary}),this.tuple=new Array(_+1);for(var E=0;E<=_;++E)this.tuple[E]=this.vertices[E];var m=v[_];m||(m=v[_]=h(_)),this.orient=m}var T=p.prototype;T.handleBoundaryDegeneracy=function(_,w){var S=this.dimension,E=this.vertices.length-1,m=this.tuple,b=this.vertices,d=[_];for(_.lastVisited=-E;d.length>0;){_=d.pop();for(var u=_.adjacent,y=0;y<=S;++y){var f=u[y];if(!(!f.boundary||f.lastVisited<=-E)){for(var P=f.vertices,L=0;L<=S;++L){var z=P[L];z<0?m[L]=w:m[L]=b[z]}var F=this.orient();if(F>0)return f;f.lastVisited=-E,F===0&&d.push(f)}}}return null},T.walk=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=w?this.interior.length*Math.random()|0:this.interior.length-1,u=this.interior[d];e:for(;!u.boundary;){for(var y=u.vertices,f=u.adjacent,P=0;P<=E;++P)b[P]=m[y[P]];u.lastVisited=S;for(var P=0;P<=E;++P){var L=f[P];if(!(L.lastVisited>=S)){var z=b[P];b[P]=_;var F=this.orient();if(b[P]=z,F<0){u=L;continue e}else L.boundary?L.lastVisited=-S:L.lastVisited=S}}return}return u},T.addPeaks=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=this.interior,u=this.simplices,y=[w];w.lastVisited=S,w.vertices[w.vertices.indexOf(-1)]=S,w.boundary=!1,d.push(w);for(var f=[];y.length>0;){var w=y.pop(),P=w.vertices,L=w.adjacent,z=P.indexOf(S);if(!(z<0)){for(var F=0;F<=E;++F)if(F!==z){var B=L[F];if(!(!B.boundary||B.lastVisited>=S)){var O=B.vertices;if(B.lastVisited!==-S){for(var I=0,N=0;N<=E;++N)O[N]<0?(I=N,b[N]=_):b[N]=m[O[N]];var U=this.orient();if(U>0){O[I]=S,B.boundary=!1,d.push(B),y.push(B),B.lastVisited=S;continue}else B.lastVisited=-S}var W=B.adjacent,Q=P.slice(),ue=L.slice(),se=new i(Q,ue,!0);u.push(se);var he=W.indexOf(w);if(!(he<0)){W[he]=se,ue[z]=B,Q[F]=-1,ue[F]=w,L[F]=se,se.flip();for(var N=0;N<=E;++N){var G=Q[N];if(!(G<0||G===S)){for(var $=new Array(E-1),J=0,Z=0;Z<=E;++Z){var re=Q[Z];re<0||Z===N||($[J++]=re)}f.push(new n($,se,N))}}}}}}}f.sort(s);for(var F=0;F+1<f.length;F+=2){var ne=f[F],j=f[F+1],ee=ne.index,ie=j.index;ee<0||ie<0||(ne.cell.adjacent[ne.index]=j.cell,j.cell.adjacent[j.index]=ne.cell)}},T.insert=function(_,w){var S=this.vertices;S.push(_);var E=this.walk(_,w);if(E){for(var m=this.dimension,b=this.tuple,d=0;d<=m;++d){var u=E.vertices[d];u<0?b[d]=_:b[d]=S[u]}var y=this.orient(b);y<0||y===0&&(E=this.handleBoundaryDegeneracy(E,_),!E)||this.addPeaks(_,E)}},T.boundary=function(){for(var _=this.dimension,w=[],S=this.simplices,E=S.length,m=0;m<E;++m){var b=S[m];if(b.boundary){for(var d=new Array(_),u=b.vertices,y=0,f=0,P=0;P<=_;++P)u[P]>=0?d[y++]=u[P]:f=P&1;if(f===(_&1)){var L=d[0];d[0]=d[1],d[1]=L}w.push(d)}}return w};function l(_,w){var S=_.length;if(S===0)throw new Error("Must have at least d+1 points");var E=_[0].length;if(S<=E)throw new Error("Must input at least d+1 points");var m=_.slice(0,E+1),b=o.apply(void 0,m);if(b===0)throw new Error("Input not in general position");for(var d=new Array(E+1),u=0;u<=E;++u)d[u]=u;b<0&&(d[0]=1,d[1]=0);for(var y=new i(d,new Array(E+1),!1),f=y.adjacent,P=new Array(E+2),u=0;u<=E;++u){for(var L=d.slice(),z=0;z<=E;++z)z===u&&(L[z]=-1);var F=L[0];L[0]=L[1],L[1]=F;var B=new i(L,new Array(E+1),!0);f[u]=B,P[u]=B}P[E+1]=y;for(var u=0;u<=E;++u)for(var L=f[u].vertices,O=f[u].adjacent,z=0;z<=E;++z){var I=L[z];if(I<0){O[z]=y;continue}for(var N=0;N<=E;++N)f[N].vertices.indexOf(I)<0&&(O[z]=f[N])}for(var U=new p(E,m,P),W=!!w,u=E+1;u<S;++u)U.insert(_[u],W);return U.boundary()}},3352:function(e,t,r){"use strict";var o=r(2478),a=0,i=1,n=2;e.exports=y;function s(f,P,L,z,F){this.mid=f,this.left=P,this.right=L,this.leftPoints=z,this.rightPoints=F,this.count=(P?P.count:0)+(L?L.count:0)+z.length}var c=s.prototype;function h(f,P){f.mid=P.mid,f.left=P.left,f.right=P.right,f.leftPoints=P.leftPoints,f.rightPoints=P.rightPoints,f.count=P.count}function v(f,P){var L=b(P);f.mid=L.mid,f.left=L.left,f.right=L.right,f.leftPoints=L.leftPoints,f.rightPoints=L.rightPoints,f.count=L.count}function p(f,P){var L=f.intervals([]);L.push(P),v(f,L)}function T(f,P){var L=f.intervals([]),z=L.indexOf(P);return z<0?a:(L.splice(z,1),v(f,L),i)}c.intervals=function(f){return f.push.apply(f,this.leftPoints),this.left&&this.left.intervals(f),this.right&&this.right.intervals(f),f},c.insert=function(f){var P=this.count-this.leftPoints.length;if(this.count+=1,f[1]<this.mid)this.left?4*(this.left.count+1)>3*(P+1)?p(this,f):this.left.insert(f):this.left=b([f]);else if(f[0]>this.mid)this.right?4*(this.right.count+1)>3*(P+1)?p(this,f):this.right.insert(f):this.right=b([f]);else{var L=o.ge(this.leftPoints,f,E),z=o.ge(this.rightPoints,f,m);this.leftPoints.splice(L,0,f),this.rightPoints.splice(z,0,f)}},c.remove=function(f){var P=this.count-this.leftPoints;if(f[1]<this.mid){if(!this.left)return a;var L=this.right?this.right.count:0;if(4*L>3*(P-1))return T(this,f);var z=this.left.remove(f);return z===n?(this.left=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else if(f[0]>this.mid){if(!this.right)return a;var F=this.left?this.left.count:0;if(4*F>3*(P-1))return T(this,f);var z=this.right.remove(f);return z===n?(this.right=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else{if(this.count===1)return this.leftPoints[0]===f?n:a;if(this.leftPoints.length===1&&this.leftPoints[0]===f){if(this.left&&this.right){for(var B=this,O=this.left;O.right;)B=O,O=O.right;if(B===this)O.right=this.right;else{var I=this.left,z=this.right;B.count-=O.count,B.right=O.left,O.left=I,O.right=z}h(this,O),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?h(this,this.left):h(this,this.right);return i}for(var I=o.ge(this.leftPoints,f,E);I<this.leftPoints.length&&this.leftPoints[I][0]===f[0];++I)if(this.leftPoints[I]===f){this.count-=1,this.leftPoints.splice(I,1);for(var z=o.ge(this.rightPoints,f,m);z<this.rightPoints.length&&this.rightPoints[z][1]===f[1];++z)if(this.rightPoints[z]===f)return this.rightPoints.splice(z,1),i}return a}};function l(f,P,L){for(var z=0;z<f.length&&f[z][0]<=P;++z){var F=L(f[z]);if(F)return F}}function _(f,P,L){for(var z=f.length-1;z>=0&&f[z][1]>=P;--z){var F=L(f[z]);if(F)return F}}function w(f,P){for(var L=0;L<f.length;++L){var z=P(f[L]);if(z)return z}}c.queryPoint=function(f,P){if(f<this.mid){if(this.left){var L=this.left.queryPoint(f,P);if(L)return L}return l(this.leftPoints,f,P)}else if(f>this.mid){if(this.right){var L=this.right.queryPoint(f,P);if(L)return L}return _(this.rightPoints,f,P)}else return w(this.leftPoints,P)},c.queryInterval=function(f,P,L){if(f<this.mid&&this.left){var z=this.left.queryInterval(f,P,L);if(z)return z}if(P>this.mid&&this.right){var z=this.right.queryInterval(f,P,L);if(z)return z}return P<this.mid?l(this.leftPoints,P,L):f>this.mid?_(this.rightPoints,f,L):w(this.leftPoints,L)};function S(f,P){return f-P}function E(f,P){var L=f[0]-P[0];return L||f[1]-P[1]}function m(f,P){var L=f[1]-P[1];return L||f[0]-P[0]}function b(f){if(f.length===0)return null;for(var P=[],L=0;L<f.length;++L)P.push(f[L][0],f[L][1]);P.sort(S);for(var z=P[P.length>>1],F=[],B=[],O=[],L=0;L<f.length;++L){var I=f[L];I[1]<z?F.push(I):z<I[0]?B.push(I):O.push(I)}var N=O,U=O.slice();return N.sort(E),U.sort(m),new s(z,b(F),b(B),N,U)}function d(f){this.root=f}var u=d.prototype;u.insert=function(f){this.root?this.root.insert(f):this.root=new s(f[0],null,null,[f],[f])},u.remove=function(f){if(this.root){var P=this.root.remove(f);return P===n&&(this.root=null),P!==a}return!1},u.queryPoint=function(f,P){if(this.root)return this.root.queryPoint(f,P)},u.queryInterval=function(f,P,L){if(f<=P&&this.root)return this.root.queryInterval(f,P,L)},Object.defineProperty(u,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(u,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});function y(f){return!f||f.length===0?new d(null):new d(b(f))}},9507:function(e){e.exports=!0},7163:function(e){e.exports=function(o){return o!=null&&(t(o)||r(o)||!!o._isBuffer)};function t(o){return!!o.constructor&&typeof o.constructor.isBuffer=="function"&&o.constructor.isBuffer(o)}function r(o){return typeof o.readFloatLE=="function"&&typeof o.slice=="function"&&t(o.slice(0,0))}},5219:function(e){"use strict";e.exports=function(t){for(var r=t.length,o,a=0;a<r;a++)if(o=t.charCodeAt(a),(o<9||o>13)&&o!==32&&o!==133&&o!==160&&o!==5760&&o!==6158&&(o<8192||o>8205)&&o!==8232&&o!==8233&&o!==8239&&o!==8287&&o!==8288&&o!==12288&&o!==65279)return!1;return!0}},395:function(e){function t(r,o,a){return r*(1-a)+o*a}e.exports=t},2652:function(e,t,r){var o=r(4335),a=r(6864),i=r(1903),n=r(9921),s=r(7608),c=r(5665),h={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},v=a(),p=a(),T=[0,0,0,0],l=[[0,0,0],[0,0,0],[0,0,0]],_=[0,0,0];e.exports=function(b,d,u,y,f,P){if(d||(d=[0,0,0]),u||(u=[0,0,0]),y||(y=[0,0,0]),f||(f=[0,0,0,1]),P||(P=[0,0,0,1]),!o(v,b)||(i(p,v),p[3]=0,p[7]=0,p[11]=0,p[15]=1,Math.abs(n(p)<1e-8)))return!1;var L=v[3],z=v[7],F=v[11],B=v[12],O=v[13],I=v[14],N=v[15];if(L!==0||z!==0||F!==0){T[0]=L,T[1]=z,T[2]=F,T[3]=N;var U=s(p,p);if(!U)return!1;c(p,p),w(f,T,p)}else f[0]=f[1]=f[2]=0,f[3]=1;if(d[0]=B,d[1]=O,d[2]=I,S(l,v),u[0]=h.length(l[0]),h.normalize(l[0],l[0]),y[0]=h.dot(l[0],l[1]),E(l[1],l[1],l[0],1,-y[0]),u[1]=h.length(l[1]),h.normalize(l[1],l[1]),y[0]/=u[1],y[1]=h.dot(l[0],l[2]),E(l[2],l[2],l[0],1,-y[1]),y[2]=h.dot(l[1],l[2]),E(l[2],l[2],l[1],1,-y[2]),u[2]=h.length(l[2]),h.normalize(l[2],l[2]),y[1]/=u[2],y[2]/=u[2],h.cross(_,l[1],l[2]),h.dot(l[0],_)<0)for(var W=0;W<3;W++)u[W]*=-1,l[W][0]*=-1,l[W][1]*=-1,l[W][2]*=-1;return P[0]=.5*Math.sqrt(Math.max(1+l[0][0]-l[1][1]-l[2][2],0)),P[1]=.5*Math.sqrt(Math.max(1-l[0][0]+l[1][1]-l[2][2],0)),P[2]=.5*Math.sqrt(Math.max(1-l[0][0]-l[1][1]+l[2][2],0)),P[3]=.5*Math.sqrt(Math.max(1+l[0][0]+l[1][1]+l[2][2],0)),l[2][1]>l[1][2]&&(P[0]=-P[0]),l[0][2]>l[2][0]&&(P[1]=-P[1]),l[1][0]>l[0][1]&&(P[2]=-P[2]),!0};function w(m,b,d){var u=b[0],y=b[1],f=b[2],P=b[3];return m[0]=d[0]*u+d[4]*y+d[8]*f+d[12]*P,m[1]=d[1]*u+d[5]*y+d[9]*f+d[13]*P,m[2]=d[2]*u+d[6]*y+d[10]*f+d[14]*P,m[3]=d[3]*u+d[7]*y+d[11]*f+d[15]*P,m}function S(m,b){m[0][0]=b[0],m[0][1]=b[1],m[0][2]=b[2],m[1][0]=b[4],m[1][1]=b[5],m[1][2]=b[6],m[2][0]=b[8],m[2][1]=b[9],m[2][2]=b[10]}function E(m,b,d,u,y){m[0]=b[0]*u+d[0]*y,m[1]=b[1]*u+d[1]*y,m[2]=b[2]*u+d[2]*y}},4335:function(e){e.exports=function(r,o){var a=o[15];if(a===0)return!1;for(var i=1/a,n=0;n<16;n++)r[n]=o[n]*i;return!0}},7442:function(e,t,r){var o=r(6658),a=r(7182),i=r(2652),n=r(9921),s=r(8648),c=T(),h=T(),v=T();e.exports=p;function p(w,S,E,m){if(n(S)===0||n(E)===0)return!1;var b=i(S,c.translate,c.scale,c.skew,c.perspective,c.quaternion),d=i(E,h.translate,h.scale,h.skew,h.perspective,h.quaternion);return!b||!d?!1:(o(v.translate,c.translate,h.translate,m),o(v.skew,c.skew,h.skew,m),o(v.scale,c.scale,h.scale,m),o(v.perspective,c.perspective,h.perspective,m),s(v.quaternion,c.quaternion,h.quaternion,m),a(w,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function T(){return{translate:l(),scale:l(1),skew:l(),perspective:_(),quaternion:_()}}function l(w){return[w||0,w||0,w||0]}function _(){return[0,0,0,1]}},7182:function(e,t,r){var o={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},a=o.create(),i=o.create();e.exports=function(s,c,h,v,p,T){return o.identity(s),o.fromRotationTranslation(s,T,c),s[3]=p[0],s[7]=p[1],s[11]=p[2],s[15]=p[3],o.identity(i),v[2]!==0&&(i[9]=v[2],o.multiply(s,s,i)),v[1]!==0&&(i[9]=0,i[8]=v[1],o.multiply(s,s,i)),v[0]!==0&&(i[8]=0,i[4]=v[0],o.multiply(s,s,i)),o.scale(s,s,h),s}},1811:function(e,t,r){"use strict";var o=r(2478),a=r(7442),i=r(7608),n=r(5567),s=r(2408),c=r(7089),h=r(6582),v=r(7656),p=r(2504),T=r(3536),l=[0,0,0];e.exports=E;function _(m){this._components=m.slice(),this._time=[0],this.prevMatrix=m.slice(),this.nextMatrix=m.slice(),this.computedMatrix=m.slice(),this.computedInverse=m.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}var w=_.prototype;w.recalcMatrix=function(m){var b=this._time,d=o.le(b,m),u=this.computedMatrix;if(!(d<0)){var y=this._components;if(d===b.length-1)for(var f=16*d,P=0;P<16;++P)u[P]=y[f++];else{for(var L=b[d+1]-b[d],f=16*d,z=this.prevMatrix,F=!0,P=0;P<16;++P)z[P]=y[f++];for(var B=this.nextMatrix,P=0;P<16;++P)B[P]=y[f++],F=F&&z[P]===B[P];if(L<1e-6||F)for(var P=0;P<16;++P)u[P]=z[P];else a(u,z,B,(m-b[d])/L)}var O=this.computedUp;O[0]=u[1],O[1]=u[5],O[2]=u[9],T(O,O);var I=this.computedInverse;i(I,u);var N=this.computedEye,U=I[15];N[0]=I[12]/U,N[1]=I[13]/U,N[2]=I[14]/U;for(var W=this.computedCenter,Q=Math.exp(this.computedRadius[0]),P=0;P<3;++P)W[P]=N[P]-u[2+4*P]*Q}},w.idle=function(m){if(!(m<this.lastT())){for(var b=this._components,d=b.length-16,u=0;u<16;++u)b.push(b[d++]);this._time.push(m)}},w.flush=function(m){var b=o.gt(this._time,m)-2;b<0||(this._time.splice(0,b),this._components.splice(0,16*b))},w.lastT=function(){return this._time[this._time.length-1]},w.lookAt=function(m,b,d,u){this.recalcMatrix(m),b=b||this.computedEye,d=d||l,u=u||this.computedUp,this.setMatrix(m,h(this.computedMatrix,b,d,u));for(var y=0,f=0;f<3;++f)y+=Math.pow(d[f]-b[f],2);y=Math.log(Math.sqrt(y)),this.computedRadius[0]=y},w.rotate=function(m,b,d,u){this.recalcMatrix(m);var y=this.computedInverse;b&&s(y,y,b),d&&n(y,y,d),u&&c(y,y,u),this.setMatrix(m,i(this.computedMatrix,y))};var S=[0,0,0];w.pan=function(m,b,d,u){S[0]=-(b||0),S[1]=-(d||0),S[2]=-(u||0),this.recalcMatrix(m);var y=this.computedInverse;v(y,y,S),this.setMatrix(m,i(y,y))},w.translate=function(m,b,d,u){S[0]=b||0,S[1]=d||0,S[2]=u||0,this.recalcMatrix(m);var y=this.computedMatrix;v(y,y,S),this.setMatrix(m,y)},w.setMatrix=function(m,b){if(!(m<this.lastT())){this._time.push(m);for(var d=0;d<16;++d)this._components.push(b[d])}},w.setDistance=function(m,b){this.computedRadius[0]=b},w.setDistanceLimits=function(m,b){var d=this._limits;d[0]=m,d[1]=b},w.getDistanceLimits=function(m){var b=this._limits;return m?(m[0]=b[0],m[1]=b[1],m):b};function E(m){m=m||{};var b=m.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new _(b)}},3090:function(e,t,r){"use strict";e.exports=a;var o=r(3250)[3];function a(i){var n=i.length;if(n<3){for(var _=new Array(n),s=0;s<n;++s)_[s]=s;return n===2&&i[0][0]===i[1][0]&&i[0][1]===i[1][1]?[0]:_}for(var c=new Array(n),s=0;s<n;++s)c[s]=s;c.sort(function(m,b){var d=i[m][0]-i[b][0];return d||i[m][1]-i[b][1]});for(var h=[c[0],c[1]],v=[c[0],c[1]],s=2;s<n;++s){for(var p=c[s],T=i[p],l=h.length;l>1&&o(i[h[l-2]],i[h[l-1]],T)<=0;)l-=1,h.pop();for(h.push(p),l=v.length;l>1&&o(i[v[l-2]],i[v[l-1]],T)>=0;)l-=1,v.pop();v.push(p)}for(var _=new Array(v.length+h.length-2),w=0,s=0,S=h.length;s<S;++s)_[w++]=h[s];for(var E=v.length-2;E>0;--E)_[w++]=v[E];return _}},351:function(e,t,r){"use strict";e.exports=a;var o=r(4687);function a(i,n){n||(n=i,i=window);var s=0,c=0,h=0,v={shift:!1,alt:!1,control:!1,meta:!1},p=!1;function T(f){var P=!1;return"altKey"in f&&(P=P||f.altKey!==v.alt,v.alt=!!f.altKey),"shiftKey"in f&&(P=P||f.shiftKey!==v.shift,v.shift=!!f.shiftKey),"ctrlKey"in f&&(P=P||f.ctrlKey!==v.control,v.control=!!f.ctrlKey),"metaKey"in f&&(P=P||f.metaKey!==v.meta,v.meta=!!f.metaKey),P}function l(f,P){var L=o.x(P),z=o.y(P);"buttons"in P&&(f=P.buttons|0),(f!==s||L!==c||z!==h||T(P))&&(s=f|0,c=L||0,h=z||0,n&&n(s,c,h,v))}function _(f){l(0,f)}function w(){(s||c||h||v.shift||v.alt||v.meta||v.control)&&(c=h=0,s=0,v.shift=v.alt=v.control=v.meta=!1,n&&n(0,0,0,v))}function S(f){T(f)&&n&&n(s,c,h,v)}function E(f){o.buttons(f)===0?l(0,f):l(s,f)}function m(f){l(s|o.buttons(f),f)}function b(f){l(s&~o.buttons(f),f)}function d(){p||(p=!0,i.addEventListener("mousemove",E),i.addEventListener("mousedown",m),i.addEventListener("mouseup",b),i.addEventListener("mouseleave",_),i.addEventListener("mouseenter",_),i.addEventListener("mouseout",_),i.addEventListener("mouseover",_),i.addEventListener("blur",w),i.addEventListener("keyup",S),i.addEventListener("keydown",S),i.addEventListener("keypress",S),i!==window&&(window.addEventListener("blur",w),window.addEventListener("keyup",S),window.addEventListener("keydown",S),window.addEventListener("keypress",S)))}function u(){p&&(p=!1,i.removeEventListener("mousemove",E),i.removeEventListener("mousedown",m),i.removeEventListener("mouseup",b),i.removeEventListener("mouseleave",_),i.removeEventListener("mouseenter",_),i.removeEventListener("mouseout",_),i.removeEventListener("mouseover",_),i.removeEventListener("blur",w),i.removeEventListener("keyup",S),i.removeEventListener("keydown",S),i.removeEventListener("keypress",S),i!==window&&(window.removeEventListener("blur",w),window.removeEventListener("keyup",S),window.removeEventListener("keydown",S),window.removeEventListener("keypress",S)))}d();var y={element:i};return Object.defineProperties(y,{enabled:{get:function(){return p},set:function(f){f?d():u()},enumerable:!0},buttons:{get:function(){return s},enumerable:!0},x:{get:function(){return c},enumerable:!0},y:{get:function(){return h},enumerable:!0},mods:{get:function(){return v},enumerable:!0}}),y}},24:function(e){var t={left:0,top:0};e.exports=r;function r(a,i,n){i=i||a.currentTarget||a.srcElement,Array.isArray(n)||(n=[0,0]);var s=a.clientX||0,c=a.clientY||0,h=o(i);return n[0]=s-h.left,n[1]=c-h.top,n}function o(a){return a===window||a===document||a===document.body?t:a.getBoundingClientRect()}},4687:function(e,t){"use strict";function r(n){if(typeof n=="object"){if("buttons"in n)return n.buttons;if("which"in n){var s=n.which;if(s===2)return 4;if(s===3)return 2;if(s>0)return 1<<s-1}else if("button"in n){var s=n.button;if(s===1)return 4;if(s===2)return 2;if(s>=0)return 1<<s}}return 0}t.buttons=r;function o(n){return n.target||n.srcElement||window}t.element=o;function a(n){if(typeof n=="object"){if("offsetX"in n)return n.offsetX;var s=o(n),c=s.getBoundingClientRect();return n.clientX-c.left}return 0}t.x=a;function i(n){if(typeof n=="object"){if("offsetY"in n)return n.offsetY;var s=o(n),c=s.getBoundingClientRect();return n.clientY-c.top}return 0}t.y=i},8512:function(e,t,r){"use strict";var o=r(665);e.exports=a;function a(i,n,s){typeof i=="function"&&(s=!!n,n=i,i=window);var c=o("ex",i),h=function(v){s&&v.preventDefault();var p=v.deltaX||0,T=v.deltaY||0,l=v.deltaZ||0,_=v.deltaMode,w=1;switch(_){case 1:w=c;break;case 2:w=window.innerHeight;break}if(p*=w,T*=w,l*=w,p||T||l)return n(p,T,l,v)};return i.addEventListener("wheel",h),h}},2640:function(e,t,r){"use strict";var o=r(1888);e.exports=n;var a={"false,0,1":function(c,h,v,p,T){return function(_,w,S,E){var m=_.shape[0]|0,b=_.shape[1]|0,d=_.data,u=_.offset|0,y=_.stride[0]|0,f=_.stride[1]|0,P=u,L,z=-y|0,F=0,B=-f|0,O=0,I=-y-f|0,N=0,U=y|0,W=f-y*m|0,Q=0,ue=0,se=0,he=2*m|0,G=p(he),$=p(he),J=0,Z=0,re=-1,ne=-1,j=0,ee=-m|0,ie=m|0,fe=0,be=-m-1|0,Ae=m-1|0,Be=0,Ie=0,Ze=0;for(Q=0;Q<m;++Q)G[J++]=v(d[P],w,S,E),P+=U;if(P+=W,b>0){if(ue=1,G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,Q=2;Q<m;++Q)L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,N,F,Be,j,w,S,E)),J+=1,P+=U;for(P+=W,J=0,Ze=re,re=ne,ne=Ze,Ze=ee,ee=ie,ie=Ze,Ze=be,be=Ae,Ae=Ze,ue=2;ue<b;++ue){if(G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E)),J+=1,P+=U,Q=2;Q<m;++Q)L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E),Be!==j&&h($[J+re],Ie,N,F,Be,j,w,S,E)),J+=1,P+=U;ue&1&&(J=0),Ze=re,re=ne,ne=Ze,Ze=ee,ee=ie,ie=Ze,Ze=be,be=Ae,Ae=Ze,P+=W}}T($),T(G)}},"false,1,0":function(c,h,v,p,T){return function(_,w,S,E){var m=_.shape[0]|0,b=_.shape[1]|0,d=_.data,u=_.offset|0,y=_.stride[0]|0,f=_.stride[1]|0,P=u,L,z=-y|0,F=0,B=-f|0,O=0,I=-y-f|0,N=0,U=f|0,W=y-f*b|0,Q=0,ue=0,se=0,he=2*b|0,G=p(he),$=p(he),J=0,Z=0,re=-1,ne=-1,j=0,ee=-b|0,ie=b|0,fe=0,be=-b-1|0,Ae=b-1|0,Be=0,Ie=0,Ze=0;for(ue=0;ue<b;++ue)G[J++]=v(d[P],w,S,E),P+=U;if(P+=W,m>0){if(Q=1,G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,ue=2;ue<b;++ue)L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,O,N,j,Be,w,S,E)),J+=1,P+=U;for(P+=W,J=0,Ze=ee,ee=ie,ie=Ze,Ze=re,re=ne,ne=Ze,Ze=be,be=Ae,Ae=Ze,Q=2;Q<m;++Q){if(G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U,ue=2;ue<b;++ue)L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,O,N,j,Be,w,S,E),Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U;Q&1&&(J=0),Ze=ee,ee=ie,ie=Ze,Ze=re,re=ne,ne=Ze,Ze=be,be=Ae,Ae=Ze,P+=W}}T($),T(G)}}};function i(s,c,h,v,p,T){var l=[T,p].join(","),_=a[l];return _(s,c,h,o.mallocUint32,o.freeUint32)}function n(s){function c(w){throw new Error("ndarray-extract-contour: "+w)}typeof s!="object"&&c("Must specify arguments");var h=s.order;Array.isArray(h)||c("Must specify order");var v=s.arrayArguments||1;v<1&&c("Must have at least one array argument");var p=s.scalarArguments||0;p<0&&c("Scalar arg count must be > 0"),typeof s.vertex!="function"&&c("Must specify vertex creation function"),typeof s.cell!="function"&&c("Must specify cell creation function"),typeof s.phase!="function"&&c("Must specify phase function");for(var T=s.getters||[],l=new Array(v),_=0;_<v;++_)T.indexOf(_)>=0?l[_]=!0:l[_]=!1;return i(s.vertex,s.cell,s.phase,p,h,l)}},6199:function(e,t,r){"use strict";var o=r(1338),a={zero:function(E,m,b,d){var u=E[0],y=b[0];d|=0;var f=0,P=y;for(f=0;f<u;++f)m[d]=0,d+=P},fdTemplate1:function(E,m,b,d,u,y,f){var P=E[0],L=b[0],z=y[0],F=-1*L,B=L;d|=0,f|=0;var O=0,I=L,N=z;for(O=0;O<P;++O)u[f]=.5*(m[d+F]-m[d+B]),d+=I,f+=N},fdTemplate2:function(E,m,b,d,u,y,f,P,L,z){var F=E[0],B=E[1],O=b[0],I=b[1],N=y[0],U=y[1],W=L[0],Q=L[1],ue=-1*O,se=O,he=-1*I,G=I;d|=0,f|=0,z|=0;var $=0,J=0,Z=I,re=O-B*I,ne=U,j=N-B*U,ee=Q,ie=W-B*Q;for(J=0;J<F;++J){for($=0;$<B;++$)u[f]=.5*(m[d+ue]-m[d+se]),P[z]=.5*(m[d+he]-m[d+G]),d+=Z,f+=ne,z+=ee;d+=re,f+=j,z+=ie}}},i={cdiff:function(E){var m={};return function(d,u,y){var f=d.dtype,P=d.order,L=u.dtype,z=u.order,F=y.dtype,B=y.order,O=[f,P.join(),L,z.join(),F,B.join()].join(),I=m[O];return I||(m[O]=I=E([f,P,L,z,F,B])),I(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0,y.data,y.stride,y.offset|0)}},zero:function(E){var m={};return function(d){var u=d.dtype,y=d.order,f=[u,y.join()].join(),P=m[f];return P||(m[f]=P=E([u,y])),P(d.shape.slice(0),d.data,d.stride,d.offset|0)}},fdTemplate1:function(E){var m={};return function(d,u){var y=d.dtype,f=d.order,P=u.dtype,L=u.order,z=[y,f.join(),P,L.join()].join(),F=m[z];return F||(m[z]=F=E([y,f,P,L])),F(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0)}},fdTemplate2:function(E){var m={};return function(d,u,y){var f=d.dtype,P=d.order,L=u.dtype,z=u.order,F=y.dtype,B=y.order,O=[f,P.join(),L,z.join(),F,B.join()].join(),I=m[O];return I||(m[O]=I=E([f,P,L,z,F,B])),I(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0,y.data,y.stride,y.offset|0)}}};function n(E){var m=i[E.funcName];return m(s.bind(void 0,E))}function s(E){return a[E.funcName]}function c(E){return n({funcName:E.funcName})}var h={},v={},p={body:"",args:[],thisVars:[],localVars:[]},T=c({funcName:"cdiff"}),l=c({funcName:"zero"});function _(E){return E in h?h[E]:h[E]=c({funcName:"fdTemplate"+E})}function w(E,m,b,d){return function(u,y){var f=y.shape.slice();return f[0]>2&&f[1]>2&&d(y.pick(-1,-1).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,0).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,1).lo(1,1).hi(f[0]-2,f[1]-2)),f[1]>2&&(b(y.pick(0,-1).lo(1).hi(f[1]-2),u.pick(0,-1,1).lo(1).hi(f[1]-2)),m(u.pick(0,-1,0).lo(1).hi(f[1]-2))),f[1]>2&&(b(y.pick(f[0]-1,-1).lo(1).hi(f[1]-2),u.pick(f[0]-1,-1,1).lo(1).hi(f[1]-2)),m(u.pick(f[0]-1,-1,0).lo(1).hi(f[1]-2))),f[0]>2&&(b(y.pick(-1,0).lo(1).hi(f[0]-2),u.pick(-1,0,0).lo(1).hi(f[0]-2)),m(u.pick(-1,0,1).lo(1).hi(f[0]-2))),f[0]>2&&(b(y.pick(-1,f[1]-1).lo(1).hi(f[0]-2),u.pick(-1,f[1]-1,0).lo(1).hi(f[0]-2)),m(u.pick(-1,f[1]-1,1).lo(1).hi(f[0]-2))),u.set(0,0,0,0),u.set(0,0,1,0),u.set(f[0]-1,0,0,0),u.set(f[0]-1,0,1,0),u.set(0,f[1]-1,0,0),u.set(0,f[1]-1,1,0),u.set(f[0]-1,f[1]-1,0,0),u.set(f[0]-1,f[1]-1,1,0),u}}function S(E){var m=E.join(),f=v[m];if(f)return f;for(var b=E.length,d=[T,l],u=1;u<=b;++u)d.push(_(u));var y=w,f=y.apply(void 0,d);return v[m]=f,f}e.exports=function(m,b,d){if(Array.isArray(d)||(typeof d=="string"?d=o(b.dimension,d):d=o(b.dimension,"clamp")),b.size===0)return m;if(b.dimension===0)return m.set(0),m;var u=S(d);return u(m,b)}},4317:function(e){"use strict";function t(n,s){var c=Math.floor(s),h=s-c,v=0<=c&&c<n.shape[0],p=0<=c+1&&c+1<n.shape[0],T=v?+n.get(c):0,l=p?+n.get(c+1):0;return(1-h)*T+h*l}function r(n,s,c){var h=Math.floor(s),v=s-h,p=0<=h&&h<n.shape[0],T=0<=h+1&&h+1<n.shape[0],l=Math.floor(c),_=c-l,w=0<=l&&l<n.shape[1],S=0<=l+1&&l+1<n.shape[1],E=p&&w?n.get(h,l):0,m=p&&S?n.get(h,l+1):0,b=T&&w?n.get(h+1,l):0,d=T&&S?n.get(h+1,l+1):0;return(1-_)*((1-v)*E+v*b)+_*((1-v)*m+v*d)}function o(n,s,c,h){var v=Math.floor(s),p=s-v,T=0<=v&&v<n.shape[0],l=0<=v+1&&v+1<n.shape[0],_=Math.floor(c),w=c-_,S=0<=_&&_<n.shape[1],E=0<=_+1&&_+1<n.shape[1],m=Math.floor(h),b=h-m,d=0<=m&&m<n.shape[2],u=0<=m+1&&m+1<n.shape[2],y=T&&S&&d?n.get(v,_,m):0,f=T&&E&&d?n.get(v,_+1,m):0,P=l&&S&&d?n.get(v+1,_,m):0,L=l&&E&&d?n.get(v+1,_+1,m):0,z=T&&S&&u?n.get(v,_,m+1):0,F=T&&E&&u?n.get(v,_+1,m+1):0,B=l&&S&&u?n.get(v+1,_,m+1):0,O=l&&E&&u?n.get(v+1,_+1,m+1):0;return(1-b)*((1-w)*((1-p)*y+p*P)+w*((1-p)*f+p*L))+b*((1-w)*((1-p)*z+p*B)+w*((1-p)*F+p*O))}function a(n){var s=n.shape.length|0,c=new Array(s),h=new Array(s),v=new Array(s),p=new Array(s),T,l;for(T=0;T<s;++T)l=+arguments[T+1],c[T]=Math.floor(l),h[T]=l-c[T],v[T]=0<=c[T]&&c[T]<n.shape[T],p[T]=0<=c[T]+1&&c[T]+1<n.shape[T];var _=0,w,S,E;e:for(T=0;T<1<<s;++T){for(S=1,E=n.offset,w=0;w<s;++w)if(T&1<<w){if(!p[w])continue e;S*=h[w],E+=n.stride[w]*(c[w]+1)}else{if(!v[w])continue e;S*=1-h[w],E+=n.stride[w]*c[w]}_+=S*n.data[E]}return _}function i(n,s,c,h){switch(n.shape.length){case 0:return 0;case 1:return t(n,s);case 2:return r(n,s,c);case 3:return o(n,s,c,h);default:return a.apply(void 0,arguments)}}e.exports=i,e.exports.d1=t,e.exports.d2=r,e.exports.d3=o},5298:function(e,t){"use strict";var r={"float64,2,1,0":function(){return function(v,p,T,l,_){var w=v[0],S=v[1],E=v[2],m=T[0],b=T[1],d=T[2];l|=0;var u=0,y=0,f=0,P=d,L=b-E*d,z=m-S*b;for(f=0;f<w;++f){for(y=0;y<S;++y){for(u=0;u<E;++u)p[l]/=_,l+=P;l+=L}l+=z}}},"uint8,2,0,1,float64,2,1,0":function(){return function(v,p,T,l,_,w,S,E){var m=v[0],b=v[1],d=v[2],u=T[0],y=T[1],f=T[2],P=w[0],L=w[1],z=w[2];l|=0,S|=0;for(var F=l,B=S,O=v[0]|0;O>0;){O<64?(m=O,O=0):(m=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(b=I,I=0):(b=64,I-=64),l=F+O*u+I*y,S=B+O*P+I*L;var N=0,U=0,W=0,Q=f,ue=u-d*f,se=y-m*u,he=z,G=P-d*z,$=L-m*P;for(W=0;W<b;++W){for(U=0;U<m;++U){for(N=0;N<d;++N)p[l]=_[S]*E,l+=Q,S+=he;l+=ue,S+=G}l+=se,S+=$}}}}},"float32,1,0,float32,1,0":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=T[0],d=T[1],u=w[0],y=w[1];l|=0,S|=0;var f=0,P=0,L=d,z=b-m*d,F=y,B=u-m*y;for(P=0;P<E;++P){for(f=0;f<m;++f)p[l]=_[S],l+=L,S+=F;l+=z,S+=B}}},"float32,1,0,float32,0,1":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=T[0],d=T[1],u=w[0],y=w[1];l|=0,S|=0;for(var f=l,P=S,L=v[1]|0;L>0;){L<64?(m=L,L=0):(m=64,L-=64);for(var z=v[0]|0;z>0;){z<64?(E=z,z=0):(E=64,z-=64),l=f+L*d+z*b,S=P+L*y+z*u;var F=0,B=0,O=d,I=b-m*d,N=y,U=u-m*y;for(B=0;B<E;++B){for(F=0;F<m;++F)p[l]=_[S],l+=O,S+=N;l+=I,S+=U}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=v[2],d=T[0],u=T[1],y=T[2],f=w[0],P=w[1],L=w[2];l|=0,S|=0;for(var z=l,F=S,B=v[2]|0;B>0;){B<64?(b=B,B=0):(b=64,B-=64);for(var O=v[0]|0;O>0;){O<64?(E=O,O=0):(E=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(m=I,I=0):(m=64,I-=64),l=z+B*y+O*d+I*u,S=F+B*L+O*f+I*P;var N=0,U=0,W=0,Q=y,ue=d-b*y,se=u-E*d,he=L,G=f-b*L,$=P-E*f;for(W=0;W<m;++W){for(U=0;U<E;++U){for(N=0;N<b;++N)p[l]=_[S],l+=Q,S+=he;l+=ue,S+=G}l+=se,S+=$}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=v[2],d=T[0],u=T[1],y=T[2],f=w[0],P=w[1],L=w[2];l|=0,S|=0;var z=0,F=0,B=0,O=y,I=d-b*y,N=u-E*d,U=L,W=f-b*L,Q=P-E*f;for(B=0;B<m;++B){for(F=0;F<E;++F){for(z=0;z<b;++z)p[l]=_[S],l+=O,S+=U;l+=I,S+=W}l+=N,S+=Q}}}};function o(h,v){var p=v.join(","),T=r[p];return T()}var a=o,i={mul:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=_.dtype,d=_.order,u=[w,S.join(),E,m.join(),b,d.join()].join(),y=v[u];return y||(v[u]=y=h([w,S,E,m,b,d])),y(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_.data,_.stride,_.offset|0)}},muls:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=[w,S.join(),E,m.join()].join(),d=v[b];return d||(v[b]=d=h([w,S,E,m])),d(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_)}},mulseq:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=[_,w.join()].join(),E=v[S];return E||(v[S]=E=h([_,w])),E(T.shape.slice(0),T.data,T.stride,T.offset|0,l)}},div:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=_.dtype,d=_.order,u=[w,S.join(),E,m.join(),b,d.join()].join(),y=v[u];return y||(v[u]=y=h([w,S,E,m,b,d])),y(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_.data,_.stride,_.offset|0)}},divs:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=[w,S.join(),E,m.join()].join(),d=v[b];return d||(v[b]=d=h([w,S,E,m])),d(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_)}},divseq:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=[_,w.join()].join(),E=v[S];return E||(v[S]=E=h([_,w])),E(T.shape.slice(0),T.data,T.stride,T.offset|0,l)}},assign:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=l.dtype,E=l.order,m=[_,w.join(),S,E.join()].join(),b=v[m];return b||(v[m]=b=h([_,w,S,E])),b(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0)}}};function n(h){var v=i[h.funcName];return v(a.bind(void 0,h))}function s(h){return n({funcName:h.funcName})}var c={mul:"*",div:"/"};(function(){for(var h in c)t[h]=s({funcName:h}),t[h+"s"]=s({funcName:h+"s"}),t[h+"seq"]=s({funcName:h+"seq"})})(),t.assign=s({funcName:"assign"})},9994:function(e,t,r){"use strict";var o=r(9618),a=r(8277);e.exports=function(n,s){for(var c=[],h=n,v=1;Array.isArray(h);)c.push(h.length),v*=h.length,h=h[0];return c.length===0?o():(s||(s=o(new Float64Array(v),c)),a(s,n),s)}},8277:function(e){"use strict";function t(){return function(s,c,h,v,p){var T=s[0],l=s[1],_=s[2],w=h[0],S=h[1],E=h[2],m=[0,0,0];v|=0;var b=0,d=0,u=0,y=E,f=S-_*E,P=w-l*S;for(u=0;u<T;++u){for(d=0;d<l;++d){for(b=0;b<_;++b){{var L=p,z;for(z=0;z<m.length-1;++z)L=L[m[z]];c[v]=L[m[m.length-1]]}v+=y,++m[2]}v+=f,m[2]-=_,++m[1]}v+=P,m[1]-=l,++m[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p){var T=v.dtype,l=v.order,_=[T,l.join()].join(),w=c[_];return w||(c[_]=w=s([T,l])),w(v.shape.slice(0),v.data,v.stride,v.offset|0,p)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"convert"})},7640:function(e,t,r){"use strict";var o=r(1888);function a(p){switch(p){case"uint32":return[o.mallocUint32,o.freeUint32];default:return null}}var i={"uint32,1,0":function(p,T){return function(_,w,S,E,m,b,d,u,y,f,P){var L,z,F,B=_*m+E,O,I=p(u),N,U,W,Q;for(L=_+1;L<=w;++L){for(z=L,B+=m,F=B,N=0,U=B,O=0;O<u;++O)I[N++]=S[U],U+=y;e:for(;z-- >_;){N=0,U=F-m;t:for(O=0;O<u;++O){if(W=S[U],Q=I[N],W<Q)break e;if(W>Q)break t;U+=f,N+=P}for(N=F,U=F-m,O=0;O<u;++O)S[N]=S[U],N+=y,U+=y;F-=m}for(N=F,U=0,O=0;O<u;++O)S[N]=I[U++],N+=y}T(I)}}};function n(p,T){var l=a(T),_=[T,p].join(","),w=i[_];return l?w(l[0],l[1]):w()}var s={"uint32,1,0":function(p,T,l){return function _(w,S,E,m,b,d,u,y,f,P,L){var z=(S-w+1)/6|0,F=w+z,B=S-z,O=w+S>>1,I=O-z,N=O+z,U=F,W=I,Q=O,ue=N,se=B,he=w+1,G=S-1,$=!0,J,Z,re,ne,j,ee,ie,fe,be,Ae=0,Be=0,Ie=0,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur=y,ar=T(ur),Cr=T(ur);at=b*U,it=b*W,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=W,W=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*ue,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*Q,it=b*ue,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=Q,Q=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}for(at=b*U,it=b*W,et=b*Q,lt=b*ue,Me=b*se,ge=b*F,ce=b*O,ze=b*B,Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,tt=lt+jt,nt=Me+jt,Qe=ge+jt,Ct=ce+jt,St=ze+jt,ar[Ot]=E[fe],Cr[Ot]=E[tt],$=$&&ar[Ot]===Cr[Ot],re=E[ie],ne=E[be],j=E[nt],E[Qe]=re,E[Ct]=ne,E[St]=j,++Ot,jt+=f;for(at=b*I,it=b*w,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],jt+=f;for(at=b*N,it=b*S,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],jt+=f;if($)for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie!==0)if(Ie<0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie>0)G--;else if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G;break}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G;break}}}else for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ae=E[ie]-ar[Ot],Ae!==0)break e;Ot+=L,ie+=P}if(Ae<0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else{ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Be=E[ie]-Cr[Ot],Be!==0)break e;Ot+=L,ie+=P}if(Be>0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-Cr[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie>0){if(--G<ee)break;continue}else{ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G}break}}}}for(at=b*w,it=b*(he-1),Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],E[fe]=ar[Ot],++Ot,jt+=f;for(at=b*S,it=b*(G+1),Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],E[fe]=Cr[Ot],++Ot,jt+=f;if(he-2-w<=32?p(w,he-2,E,m,b,d,u,y,f,P,L):_(w,he-2,E,m,b,d,u,y,f,P,L),S-(G+2)<=32?p(G+2,S,E,m,b,d,u,y,f,P,L):_(G+2,S,E,m,b,d,u,y,f,P,L),$){l(ar),l(Cr);return}if(he<F&&G>B){e:for(;;){for(ie=m+he*b,Ot=0,jt=m,Ze=0;Ze<y;++Ze){if(E[ie]!==ar[Ot])break e;++Ot,ie+=f}++he}e:for(;;){for(ie=m+G*b,Ot=0,jt=m,Ze=0;Ze<y;++Ze){if(E[ie]!==Cr[Ot])break e;++Ot,ie+=f}--G}for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ae=E[ie]-ar[Ot],Ae!==0)break e;Ot+=L,ie+=P}if(Ae===0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else{ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Be=E[ie]-Cr[Ot],Be!==0)break e;Ot+=L,ie+=P}if(Be===0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-Cr[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie===0){if(--G<ee)break;continue}else{ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G}break}}}}}l(ar),l(Cr),G-he<=32?p(he,G,E,m,b,d,u,y,f,P,L):_(he,G,E,m,b,d,u,y,f,P,L)}}};function c(p,T,l){var _=a(T),w=[T,p].join(","),S=s[w];return p.length>1&&_?S(l,_[0],_[1]):S(l)}var h={"uint32,1,0":function(p,T){return function(l){var _=l.data,w=l.offset|0,S=l.shape,E=l.stride,m=E[0]|0,b=S[0]|0,d=E[1]|0,u=S[1]|0,y=d,f=d,P=1;b<=32?p(0,b-1,_,w,m,d,b,u,y,f,P):T(0,b-1,_,w,m,d,b,u,y,f,P)}}};function v(p,T){var l=[T,p].join(","),_=h[l],w=n(p,T),S=c(p,T,w);return _(w,S)}e.exports=v},446:function(e,t,r){"use strict";var o=r(7640),a={};function i(n){var s=n.order,c=n.dtype,h=[s,c],v=h.join(":"),p=a[v];return p||(a[v]=p=o(s,c)),p(n),n}e.exports=i},9618:function(e,t,r){var o=r(7163),a=typeof Float64Array<"u";function i(T,l){return T[0]-l[0]}function n(){var T=this.stride,l=new Array(T.length),_;for(_=0;_<l.length;++_)l[_]=[Math.abs(T[_]),_];l.sort(i);var w=new Array(l.length);for(_=0;_<w.length;++_)w[_]=l[_][1];return w}var s={T:function(T){function l(w){this.data=w}var _=l.prototype;return _.dtype=T,_.index=function(){return-1},_.size=0,_.dimension=-1,_.shape=_.stride=_.order=[],_.lo=_.hi=_.transpose=_.step=function(){return new l(this.data)},_.get=_.set=function(){},_.pick=function(){return null},function(S){return new l(S)}},0:function(T,l){function _(S,E){this.data=S,this.offset=E}var w=_.prototype;return w.dtype=T,w.index=function(){return this.offset},w.dimension=0,w.size=1,w.shape=w.stride=w.order=[],w.lo=w.hi=w.transpose=w.step=function(){return new _(this.data,this.offset)},w.pick=function(){return l(this.data)},w.valueOf=w.get=function(){return T==="generic"?this.data.get(this.offset):this.data[this.offset]},w.set=function(E){return T==="generic"?this.data.set(this.offset,E):this.data[this.offset]=E},function(E,m,b,d){return new _(E,d)}},1:function(T,l,_){function w(E,m,b,d){this.data=E,this.shape=[m],this.stride=[b],this.offset=d|0}var S=w.prototype;return S.dtype=T,S.dimension=1,Object.defineProperty(S,"size",{get:function(){return this.shape[0]}}),S.order=[0],S.set=function(m,b){return T==="generic"?this.data.set(this.offset+this.stride[0]*m,b):this.data[this.offset+this.stride[0]*m]=b},S.get=function(m){return T==="generic"?this.data.get(this.offset+this.stride[0]*m):this.data[this.offset+this.stride[0]*m]},S.index=function(m){return this.offset+this.stride[0]*m},S.hi=function(m){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,this.stride[0],this.offset)},S.lo=function(m){var b=this.offset,d=0,u=this.shape[0],y=this.stride[0];return typeof m=="number"&&m>=0&&(d=m|0,b+=y*d,u-=d),new w(this.data,u,y,b)},S.step=function(m){var b=this.shape[0],d=this.stride[0],u=this.offset,y=0,f=Math.ceil;return typeof m=="number"&&(y=m|0,y<0?(u+=d*(b-1),b=f(-b/y)):b=f(b/y),d*=y),new w(this.data,b,d,u)},S.transpose=function(m){m=m===void 0?0:m|0;var b=this.shape,d=this.stride;return new w(this.data,b[m],d[m],this.offset)},S.pick=function(m){var b=[],d=[],u=this.offset;typeof m=="number"&&m>=0?u=u+this.stride[0]*m|0:(b.push(this.shape[0]),d.push(this.stride[0]));var y=l[b.length+1];return y(this.data,b,d,u)},function(m,b,d,u){return new w(m,b[0],d[0],u)}},2:function(T,l,_){function w(E,m,b,d,u,y){this.data=E,this.shape=[m,b],this.stride=[d,u],this.offset=y|0}var S=w.prototype;return S.dtype=T,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(m,b,d){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b,d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]=d},S.get=function(m,b){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]},S.index=function(m,b){return this.offset+this.stride[0]*m+this.stride[1]*b},S.hi=function(m,b){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(m,b){var d=this.offset,u=0,y=this.shape[0],f=this.shape[1],P=this.stride[0],L=this.stride[1];return typeof m=="number"&&m>=0&&(u=m|0,d+=P*u,y-=u),typeof b=="number"&&b>=0&&(u=b|0,d+=L*u,f-=u),new w(this.data,y,f,P,L,d)},S.step=function(m,b){var d=this.shape[0],u=this.shape[1],y=this.stride[0],f=this.stride[1],P=this.offset,L=0,z=Math.ceil;return typeof m=="number"&&(L=m|0,L<0?(P+=y*(d-1),d=z(-d/L)):d=z(d/L),y*=L),typeof b=="number"&&(L=b|0,L<0?(P+=f*(u-1),u=z(-u/L)):u=z(u/L),f*=L),new w(this.data,d,u,y,f,P)},S.transpose=function(m,b){m=m===void 0?0:m|0,b=b===void 0?1:b|0;var d=this.shape,u=this.stride;return new w(this.data,d[m],d[b],u[m],u[b],this.offset)},S.pick=function(m,b){var d=[],u=[],y=this.offset;typeof m=="number"&&m>=0?y=y+this.stride[0]*m|0:(d.push(this.shape[0]),u.push(this.stride[0])),typeof b=="number"&&b>=0?y=y+this.stride[1]*b|0:(d.push(this.shape[1]),u.push(this.stride[1]));var f=l[d.length+1];return f(this.data,d,u,y)},function(m,b,d,u){return new w(m,b[0],b[1],d[0],d[1],u)}},3:function(T,l,_){function w(E,m,b,d,u,y,f,P){this.data=E,this.shape=[m,b,d],this.stride=[u,y,f],this.offset=P|0}var S=w.prototype;return S.dtype=T,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var m=Math.abs(this.stride[0]),b=Math.abs(this.stride[1]),d=Math.abs(this.stride[2]);return m>b?b>d?[2,1,0]:m>d?[1,2,0]:[1,0,2]:m>d?[2,0,1]:d>b?[0,1,2]:[0,2,1]}}),S.set=function(m,b,d,u){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d,u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]=u},S.get=function(m,b,d){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]},S.index=function(m,b,d){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d},S.hi=function(m,b,d){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(m,b,d){var u=this.offset,y=0,f=this.shape[0],P=this.shape[1],L=this.shape[2],z=this.stride[0],F=this.stride[1],B=this.stride[2];return typeof m=="number"&&m>=0&&(y=m|0,u+=z*y,f-=y),typeof b=="number"&&b>=0&&(y=b|0,u+=F*y,P-=y),typeof d=="number"&&d>=0&&(y=d|0,u+=B*y,L-=y),new w(this.data,f,P,L,z,F,B,u)},S.step=function(m,b,d){var u=this.shape[0],y=this.shape[1],f=this.shape[2],P=this.stride[0],L=this.stride[1],z=this.stride[2],F=this.offset,B=0,O=Math.ceil;return typeof m=="number"&&(B=m|0,B<0?(F+=P*(u-1),u=O(-u/B)):u=O(u/B),P*=B),typeof b=="number"&&(B=b|0,B<0?(F+=L*(y-1),y=O(-y/B)):y=O(y/B),L*=B),typeof d=="number"&&(B=d|0,B<0?(F+=z*(f-1),f=O(-f/B)):f=O(f/B),z*=B),new w(this.data,u,y,f,P,L,z,F)},S.transpose=function(m,b,d){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0;var u=this.shape,y=this.stride;return new w(this.data,u[m],u[b],u[d],y[m],y[b],y[d],this.offset)},S.pick=function(m,b,d){var u=[],y=[],f=this.offset;typeof m=="number"&&m>=0?f=f+this.stride[0]*m|0:(u.push(this.shape[0]),y.push(this.stride[0])),typeof b=="number"&&b>=0?f=f+this.stride[1]*b|0:(u.push(this.shape[1]),y.push(this.stride[1])),typeof d=="number"&&d>=0?f=f+this.stride[2]*d|0:(u.push(this.shape[2]),y.push(this.stride[2]));var P=l[u.length+1];return P(this.data,u,y,f)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],d[0],d[1],d[2],u)}},4:function(T,l,_){function w(E,m,b,d,u,y,f,P,L,z){this.data=E,this.shape=[m,b,d,u],this.stride=[y,f,P,L],this.offset=z|0}var S=w.prototype;return S.dtype=T,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:_}),S.set=function(m,b,d,u,y){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u,y):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]=y},S.get=function(m,b,d,u){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]},S.index=function(m,b,d,u){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u},S.hi=function(m,b,d,u){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,typeof u!="number"||u<0?this.shape[3]:u|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(m,b,d,u){var y=this.offset,f=0,P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.stride[0],O=this.stride[1],I=this.stride[2],N=this.stride[3];return typeof m=="number"&&m>=0&&(f=m|0,y+=B*f,P-=f),typeof b=="number"&&b>=0&&(f=b|0,y+=O*f,L-=f),typeof d=="number"&&d>=0&&(f=d|0,y+=I*f,z-=f),typeof u=="number"&&u>=0&&(f=u|0,y+=N*f,F-=f),new w(this.data,P,L,z,F,B,O,I,N,y)},S.step=function(m,b,d,u){var y=this.shape[0],f=this.shape[1],P=this.shape[2],L=this.shape[3],z=this.stride[0],F=this.stride[1],B=this.stride[2],O=this.stride[3],I=this.offset,N=0,U=Math.ceil;return typeof m=="number"&&(N=m|0,N<0?(I+=z*(y-1),y=U(-y/N)):y=U(y/N),z*=N),typeof b=="number"&&(N=b|0,N<0?(I+=F*(f-1),f=U(-f/N)):f=U(f/N),F*=N),typeof d=="number"&&(N=d|0,N<0?(I+=B*(P-1),P=U(-P/N)):P=U(P/N),B*=N),typeof u=="number"&&(N=u|0,N<0?(I+=O*(L-1),L=U(-L/N)):L=U(L/N),O*=N),new w(this.data,y,f,P,L,z,F,B,O,I)},S.transpose=function(m,b,d,u){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0,u=u===void 0?3:u|0;var y=this.shape,f=this.stride;return new w(this.data,y[m],y[b],y[d],y[u],f[m],f[b],f[d],f[u],this.offset)},S.pick=function(m,b,d,u){var y=[],f=[],P=this.offset;typeof m=="number"&&m>=0?P=P+this.stride[0]*m|0:(y.push(this.shape[0]),f.push(this.stride[0])),typeof b=="number"&&b>=0?P=P+this.stride[1]*b|0:(y.push(this.shape[1]),f.push(this.stride[1])),typeof d=="number"&&d>=0?P=P+this.stride[2]*d|0:(y.push(this.shape[2]),f.push(this.stride[2])),typeof u=="number"&&u>=0?P=P+this.stride[3]*u|0:(y.push(this.shape[3]),f.push(this.stride[3]));var L=l[y.length+1];return L(this.data,y,f,P)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],b[3],d[0],d[1],d[2],d[3],u)}},5:function(l,_,w){function S(m,b,d,u,y,f,P,L,z,F,B,O){this.data=m,this.shape=[b,d,u,y,f],this.stride=[P,L,z,F,B],this.offset=O|0}var E=S.prototype;return E.dtype=l,E.dimension=5,Object.defineProperty(E,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(E,"order",{get:w}),E.set=function(b,d,u,y,f,P){return l==="generic"?this.data.set(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f,P):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]=P},E.get=function(b,d,u,y,f){return l==="generic"?this.data.get(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]},E.index=function(b,d,u,y,f){return this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f},E.hi=function(b,d,u,y,f){return new S(this.data,typeof b!="number"||b<0?this.shape[0]:b|0,typeof d!="number"||d<0?this.shape[1]:d|0,typeof u!="number"||u<0?this.shape[2]:u|0,typeof y!="number"||y<0?this.shape[3]:y|0,typeof f!="number"||f<0?this.shape[4]:f|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},E.lo=function(b,d,u,y,f){var P=this.offset,L=0,z=this.shape[0],F=this.shape[1],B=this.shape[2],O=this.shape[3],I=this.shape[4],N=this.stride[0],U=this.stride[1],W=this.stride[2],Q=this.stride[3],ue=this.stride[4];return typeof b=="number"&&b>=0&&(L=b|0,P+=N*L,z-=L),typeof d=="number"&&d>=0&&(L=d|0,P+=U*L,F-=L),typeof u=="number"&&u>=0&&(L=u|0,P+=W*L,B-=L),typeof y=="number"&&y>=0&&(L=y|0,P+=Q*L,O-=L),typeof f=="number"&&f>=0&&(L=f|0,P+=ue*L,I-=L),new S(this.data,z,F,B,O,I,N,U,W,Q,ue,P)},E.step=function(b,d,u,y,f){var P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.shape[4],O=this.stride[0],I=this.stride[1],N=this.stride[2],U=this.stride[3],W=this.stride[4],Q=this.offset,ue=0,se=Math.ceil;return typeof b=="number"&&(ue=b|0,ue<0?(Q+=O*(P-1),P=se(-P/ue)):P=se(P/ue),O*=ue),typeof d=="number"&&(ue=d|0,ue<0?(Q+=I*(L-1),L=se(-L/ue)):L=se(L/ue),I*=ue),typeof u=="number"&&(ue=u|0,ue<0?(Q+=N*(z-1),z=se(-z/ue)):z=se(z/ue),N*=ue),typeof y=="number"&&(ue=y|0,ue<0?(Q+=U*(F-1),F=se(-F/ue)):F=se(F/ue),U*=ue),typeof f=="number"&&(ue=f|0,ue<0?(Q+=W*(B-1),B=se(-B/ue)):B=se(B/ue),W*=ue),new S(this.data,P,L,z,F,B,O,I,N,U,W,Q)},E.transpose=function(b,d,u,y,f){b=b===void 0?0:b|0,d=d===void 0?1:d|0,u=u===void 0?2:u|0,y=y===void 0?3:y|0,f=f===void 0?4:f|0;var P=this.shape,L=this.stride;return new S(this.data,P[b],P[d],P[u],P[y],P[f],L[b],L[d],L[u],L[y],L[f],this.offset)},E.pick=function(b,d,u,y,f){var P=[],L=[],z=this.offset;typeof b=="number"&&b>=0?z=z+this.stride[0]*b|0:(P.push(this.shape[0]),L.push(this.stride[0])),typeof d=="number"&&d>=0?z=z+this.stride[1]*d|0:(P.push(this.shape[1]),L.push(this.stride[1])),typeof u=="number"&&u>=0?z=z+this.stride[2]*u|0:(P.push(this.shape[2]),L.push(this.stride[2])),typeof y=="number"&&y>=0?z=z+this.stride[3]*y|0:(P.push(this.shape[3]),L.push(this.stride[3])),typeof f=="number"&&f>=0?z=z+this.stride[4]*f|0:(P.push(this.shape[4]),L.push(this.stride[4]));var F=_[P.length+1];return F(this.data,P,L,z)},function(b,d,u,y){return new S(b,d[0],d[1],d[2],d[3],d[4],u[0],u[1],u[2],u[3],u[4],y)}}};function c(T,l){var _=l===-1?"T":String(l),w=s[_];return l===-1?w(T):l===0?w(T,v[T][0]):w(T,v[T],n)}function h(T){if(o(T))return"buffer";if(a)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function p(T,l,_,w){if(T===void 0){var u=v.array[0];return u([])}else typeof T=="number"&&(T=[T]);l===void 0&&(l=[T.length]);var S=l.length;if(_===void 0){_=new Array(S);for(var E=S-1,m=1;E>=0;--E)_[E]=m,m*=l[E]}if(w===void 0){w=0;for(var E=0;E<S;++E)_[E]<0&&(w-=(l[E]-1)*_[E])}for(var b=h(T),d=v[b];d.length<=S+1;)d.push(c(b,d.length-1));var u=d[S+1];return u(T,l,_,w)}e.exports=p},1278:function(e,t,r){"use strict";var o=r(2361),a=Math.pow(2,-1074),i=-1>>>0;e.exports=n;function n(s,c){if(isNaN(s)||isNaN(c))return NaN;if(s===c)return s;if(s===0)return c<0?-a:a;var h=o.hi(s),v=o.lo(s);return c>s==s>0?v===i?(h+=1,v=0):v+=1:v===0?(v=i,h-=1):v-=1,o.pack(v,h)}},8406:function(e,t){var r=1e-6,o=1e-6;t.vertexNormals=function(a,i,n){for(var s=i.length,c=new Array(s),h=n===void 0?r:n,v=0;v<s;++v)c[v]=[0,0,0];for(var v=0;v<a.length;++v)for(var p=a[v],T=0,l=p[p.length-1],_=p[0],w=0;w<p.length;++w){T=l,l=_,_=p[(w+1)%p.length];for(var S=i[T],E=i[l],m=i[_],b=new Array(3),d=0,u=new Array(3),y=0,f=0;f<3;++f)b[f]=S[f]-E[f],d+=b[f]*b[f],u[f]=m[f]-E[f],y+=u[f]*u[f];if(d*y>h)for(var P=c[l],L=1/Math.sqrt(d*y),f=0;f<3;++f){var z=(f+1)%3,F=(f+2)%3;P[f]+=L*(u[z]*b[F]-u[F]*b[z])}}for(var v=0;v<s;++v){for(var P=c[v],B=0,f=0;f<3;++f)B+=P[f]*P[f];if(B>h)for(var L=1/Math.sqrt(B),f=0;f<3;++f)P[f]*=L;else for(var f=0;f<3;++f)P[f]=0}return c},t.faceNormals=function(a,i,n){for(var s=a.length,c=new Array(s),h=n===void 0?o:n,v=0;v<s;++v){for(var p=a[v],T=new Array(3),l=0;l<3;++l)T[l]=i[p[l]];for(var _=new Array(3),w=new Array(3),l=0;l<3;++l)_[l]=T[1][l]-T[0][l],w[l]=T[2][l]-T[0][l];for(var S=new Array(3),E=0,l=0;l<3;++l){var m=(l+1)%3,b=(l+2)%3;S[l]=_[m]*w[b]-_[b]*w[m],E+=S[l]*S[l]}E>h?E=1/Math.sqrt(E):E=0;for(var l=0;l<3;++l)S[l]*=E;c[v]=S}return c}},4081:function(e){"use strict";e.exports=t;function t(r,o,a,i,n,s,c,h,v,p){var T=o+s+p;if(l>0){var l=Math.sqrt(T+1);r[0]=.5*(c-v)/l,r[1]=.5*(h-i)/l,r[2]=.5*(a-s)/l,r[3]=.5*l}else{var _=Math.max(o,s,p),l=Math.sqrt(2*_-T+1);o>=_?(r[0]=.5*l,r[1]=.5*(n+a)/l,r[2]=.5*(h+i)/l,r[3]=.5*(c-v)/l):s>=_?(r[0]=.5*(a+n)/l,r[1]=.5*l,r[2]=.5*(v+c)/l,r[3]=.5*(h-i)/l):(r[0]=.5*(i+h)/l,r[1]=.5*(c+v)/l,r[2]=.5*l,r[3]=.5*(a-n)/l)}return r}},9977:function(e,t,r){"use strict";e.exports=l;var o=r(9215),a=r(6582),i=r(7399),n=r(7608),s=r(4081);function c(_,w,S){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2))}function h(_,w,S,E){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2)+Math.pow(E,2))}function v(_,w){var S=w[0],E=w[1],m=w[2],b=w[3],d=h(S,E,m,b);d>1e-6?(_[0]=S/d,_[1]=E/d,_[2]=m/d,_[3]=b/d):(_[0]=_[1]=_[2]=0,_[3]=1)}function p(_,w,S){this.radius=o([S]),this.center=o(w),this.rotation=o(_),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=p.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(_){this.radius.curve(_),this.center.curve(_),this.rotation.curve(_);var w=this.computedRotation;v(w,w);var S=this.computedMatrix;i(S,w);var E=this.computedCenter,m=this.computedEye,b=this.computedUp,d=Math.exp(this.computedRadius[0]);m[0]=E[0]+d*S[2],m[1]=E[1]+d*S[6],m[2]=E[2]+d*S[10],b[0]=S[1],b[1]=S[5],b[2]=S[9];for(var u=0;u<3;++u){for(var y=0,f=0;f<3;++f)y+=S[u+4*f]*m[f];S[12+u]=-y}},T.getMatrix=function(_,w){this.recalcMatrix(_);var S=this.computedMatrix;if(w){for(var E=0;E<16;++E)w[E]=S[E];return w}return S},T.idle=function(_){this.center.idle(_),this.radius.idle(_),this.rotation.idle(_)},T.flush=function(_){this.center.flush(_),this.radius.flush(_),this.rotation.flush(_)},T.pan=function(_,w,S,E){w=w||0,S=S||0,E=E||0,this.recalcMatrix(_);var m=this.computedMatrix,b=m[1],d=m[5],u=m[9],y=c(b,d,u);b/=y,d/=y,u/=y;var f=m[0],P=m[4],L=m[8],z=f*b+P*d+L*u;f-=b*z,P-=d*z,L-=u*z;var F=c(f,P,L);f/=F,P/=F,L/=F;var B=m[2],O=m[6],I=m[10],N=B*b+O*d+I*u,U=B*f+O*P+I*L;B-=N*b+U*f,O-=N*d+U*P,I-=N*u+U*L;var W=c(B,O,I);B/=W,O/=W,I/=W;var Q=f*w+b*S,ue=P*w+d*S,se=L*w+u*S;this.center.move(_,Q,ue,se);var he=Math.exp(this.computedRadius[0]);he=Math.max(1e-4,he+E),this.radius.set(_,Math.log(he))},T.rotate=function(_,w,S,E){this.recalcMatrix(_),w=w||0,S=S||0;var m=this.computedMatrix,b=m[0],d=m[4],u=m[8],y=m[1],f=m[5],P=m[9],L=m[2],z=m[6],F=m[10],B=w*b+S*y,O=w*d+S*f,I=w*u+S*P,N=-(z*I-F*O),U=-(F*B-L*I),W=-(L*O-z*B),Q=Math.sqrt(Math.max(0,1-Math.pow(N,2)-Math.pow(U,2)-Math.pow(W,2))),ue=h(N,U,W,Q);ue>1e-6?(N/=ue,U/=ue,W/=ue,Q/=ue):(N=U=W=0,Q=1);var se=this.computedRotation,he=se[0],G=se[1],$=se[2],J=se[3],Z=he*Q+J*N+G*W-$*U,re=G*Q+J*U+$*N-he*W,ne=$*Q+J*W+he*U-G*N,j=J*Q-he*N-G*U-$*W;if(E){N=L,U=z,W=F;var ee=Math.sin(E)/c(N,U,W);N*=ee,U*=ee,W*=ee,Q=Math.cos(w),Z=Z*Q+j*N+re*W-ne*U,re=re*Q+j*U+ne*N-Z*W,ne=ne*Q+j*W+Z*U-re*N,j=j*Q-Z*N-re*U-ne*W}var ie=h(Z,re,ne,j);ie>1e-6?(Z/=ie,re/=ie,ne/=ie,j/=ie):(Z=re=ne=0,j=1),this.rotation.set(_,Z,re,ne,j)},T.lookAt=function(_,w,S,E){this.recalcMatrix(_),S=S||this.computedCenter,w=w||this.computedEye,E=E||this.computedUp;var m=this.computedMatrix;a(m,w,S,E);var b=this.computedRotation;s(b,m[0],m[1],m[2],m[4],m[5],m[6],m[8],m[9],m[10]),v(b,b),this.rotation.set(_,b[0],b[1],b[2],b[3]);for(var d=0,u=0;u<3;++u)d+=Math.pow(S[u]-w[u],2);this.radius.set(_,.5*Math.log(Math.max(d,1e-6))),this.center.set(_,S[0],S[1],S[2])},T.translate=function(_,w,S,E){this.center.move(_,w||0,S||0,E||0)},T.setMatrix=function(_,w){var S=this.computedRotation;s(S,w[0],w[1],w[2],w[4],w[5],w[6],w[8],w[9],w[10]),v(S,S),this.rotation.set(_,S[0],S[1],S[2],S[3]);var E=this.computedMatrix;n(E,w);var m=E[15];if(Math.abs(m)>1e-6){var b=E[12]/m,d=E[13]/m,u=E[14]/m;this.recalcMatrix(_);var y=Math.exp(this.computedRadius[0]);this.center.set(_,b-E[2]*y,d-E[6]*y,u-E[10]*y),this.radius.idle(_)}else this.center.idle(_),this.radius.idle(_)},T.setDistance=function(_,w){w>0&&this.radius.set(_,Math.log(w))},T.setDistanceLimits=function(_,w){_>0?_=Math.log(_):_=-1/0,w>0?w=Math.log(w):w=1/0,w=Math.max(w,_),this.radius.bounds[0][0]=_,this.radius.bounds[1][0]=w},T.getDistanceLimits=function(_){var w=this.radius.bounds;return _?(_[0]=Math.exp(w[0][0]),_[1]=Math.exp(w[1][0]),_):[Math.exp(w[0][0]),Math.exp(w[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(_){var w=this.lastT(),S=_.center;S&&this.center.set(w,S[0],S[1],S[2]);var E=_.rotation;E&&this.rotation.set(w,E[0],E[1],E[2],E[3]);var m=_.distance;m&&m>0&&this.radius.set(w,Math.log(m)),this.setDistanceLimits(_.zoomMin,_.zoomMax)};function l(_){_=_||{};var w=_.center||[0,0,0],S=_.rotation||[0,0,0,1],E=_.radius||1;w=[].slice.call(w,0,3),S=[].slice.call(S,0,4),v(S,S);var m=new p(S,w,Math.log(E));return m.setDistanceLimits(_.zoomMin,_.zoomMax),("eye"in _||"up"in _)&&m.lookAt(0,_.eye,_.center,_.up),m}},1371:function(e,t,r){"use strict";var o=r(3233);e.exports=function(i,n,s){return s=typeof s<"u"?s+"":" ",o(s,n)+i}},3202:function(e){e.exports=function(r,o){o||(o=[0,""]),r=String(r);var a=parseFloat(r,10);return o[0]=a,o[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",o}},3088:function(e,t,r){"use strict";e.exports=a;var o=r(3140);function a(i,n){for(var s=n.length|0,c=i.length,h=[new Array(s),new Array(s)],v=0;v<s;++v)h[0][v]=[],h[1][v]=[];for(var v=0;v<c;++v){var p=i[v];h[0][p[0]].push(p),h[1][p[1]].push(p)}for(var T=[],v=0;v<s;++v)h[0][v].length+h[1][v].length===0&&T.push([v]);function l(u,y){var f=h[y][u[y]];f.splice(f.indexOf(u),1)}function _(u,y,f){for(var P,L,z,F=0;F<2;++F)if(h[F][y].length>0){P=h[F][y][0],z=F;break}L=P[z^1];for(var B=0;B<2;++B)for(var O=h[B][y],I=0;I<O.length;++I){var N=O[I],U=N[B^1],W=o(n[u],n[y],n[L],n[U]);W>0&&(P=N,L=U,z=B)}return f||P&&l(P,z),L}function w(u,y){var f=h[y][u][0],P=[u];l(f,y);for(var L=f[y^1],z=y;;){for(;L!==u;)P.push(L),L=_(P[P.length-2],L,!1);if(h[0][u].length+h[1][u].length===0)break;var F=P[P.length-1],B=u,O=P[1],I=_(F,B,!0);if(o(n[F],n[B],n[O],n[I])<0)break;P.push(u),L=_(F,B)}return P}function S(u,y){return y[1]===y[y.length-1]}for(var v=0;v<s;++v)for(var E=0;E<2;++E){for(var m=[];h[E][v].length>0;){var b=h[0][v].length,d=w(v,E);S(m,d)?m.push.apply(m,d):(m.length>0&&T.push(m),m=d)}m.length>0&&T.push(m)}return T}},5609:function(e,t,r){"use strict";e.exports=a;var o=r(3134);function a(i,n){for(var s=o(i,n.length),c=new Array(n.length),h=new Array(n.length),v=[],p=0;p<n.length;++p){var T=s[p].length;h[p]=T,c[p]=!0,T<=1&&v.push(p)}for(;v.length>0;){var l=v.pop();c[l]=!1;for(var _=s[l],p=0;p<_.length;++p){var w=_[p];--h[w]===0&&v.push(w)}}for(var S=new Array(n.length),E=[],p=0;p<n.length;++p)if(c[p]){var l=E.length;S[p]=l,E.push(n[p])}else S[p]=-1;for(var m=[],p=0;p<i.length;++p){var b=i[p];c[b[0]]&&c[b[1]]&&m.push([S[b[0]],S[b[1]]])}return[m,E]}},2095:function(e,t,r){"use strict";e.exports=T;var o=r(3134),a=r(3088),i=r(5085),n=r(5250),s=r(8210),c=r(1682),h=r(5609);function v(l,_){for(var w=new Array(l),S=0;S<l;++S)w[S]=_;return w}function p(l){for(var _=new Array(l),w=0;w<l;++w)_[w]=[];return _}function T(l,_){var ee=h(l,_);l=ee[0],_=ee[1];for(var w=_.length,S=l.length,E=o(l,_.length),m=0;m<w;++m)if(E[m].length%2===1)throw new Error("planar-graph-to-polyline: graph must be manifold");var b=a(l,_);function d(Ze){for(var at=Ze.length,it=[0],et=0;et<at;++et){var lt=_[Ze[et]],Me=_[Ze[(et+1)%at]],ge=n(-lt[0],lt[1]),ce=n(-lt[0],Me[1]),ze=n(Me[0],lt[1]),tt=n(Me[0],Me[1]);it=s(it,s(s(ge,ce),s(ze,tt)))}return it[it.length-1]>0}b=b.filter(d);for(var u=b.length,y=new Array(u),f=new Array(u),m=0;m<u;++m){y[m]=m;var P=new Array(u),L=b[m].map(function(at){return _[at]}),z=i([L]),F=0;e:for(var B=0;B<u;++B)if(P[B]=0,m!==B){for(var O=b[B],I=O.length,N=0;N<I;++N){var U=z(_[O[N]]);if(U!==0){U<0&&(P[B]=1,F+=1);continue e}}P[B]=1,F+=1}f[m]=[F,m,P]}f.sort(function(Ze,at){return at[0]-Ze[0]});for(var m=0;m<u;++m)for(var P=f[m],W=P[1],Q=P[2],B=0;B<u;++B)Q[B]&&(y[B]=W);for(var ue=p(u),m=0;m<u;++m)ue[m].push(y[m]),ue[y[m]].push(m);for(var se={},he=v(w,!1),m=0;m<u;++m)for(var O=b[m],I=O.length,B=0;B<I;++B){var G=O[B],$=O[(B+1)%I],J=Math.min(G,$)+":"+Math.max(G,$);if(J in se){var Z=se[J];ue[Z].push(m),ue[m].push(Z),he[G]=he[$]=!0}else se[J]=m}function re(Ze){for(var at=Ze.length,it=0;it<at;++it)if(!he[Ze[it]])return!1;return!0}for(var ne=[],j=v(u,-1),m=0;m<u;++m)y[m]===m&&!re(b[m])?(ne.push(m),j[m]=0):j[m]=-1;for(var ee=[];ne.length>0;){var ie=ne.pop(),fe=ue[ie];c(fe,function(Ze,at){return Ze-at});var be=fe.length,Ae=j[ie],Be;if(Ae===0){var O=b[ie];Be=[O]}for(var m=0;m<be;++m){var Ie=fe[m];if(!(j[Ie]>=0)&&(j[Ie]=Ae^1,ne.push(Ie),Ae===0)){var O=b[Ie];re(O)||(O.reverse(),Be.push(O))}}Ae===0&&ee.push(Be)}return ee}},5085:function(e,t,r){e.exports=_;var o=r(3250)[3],a=r(4209),i=r(3352),n=r(2478);function s(){return!0}function c(w){return function(S,E){var m=w[S];return m?!!m.queryPoint(E,s):!1}}function h(w){for(var S={},E=0;E<w.length;++E){var m=w[E],b=m[0][0],d=m[0][1],u=m[1][1],y=[Math.min(d,u),Math.max(d,u)];b in S?S[b].push(y):S[b]=[y]}for(var f={},P=Object.keys(S),E=0;E<P.length;++E){var L=S[P[E]];f[P[E]]=i(L)}return c(f)}function v(w,S){return function(E){var m=n.le(S,E[0]);if(m<0)return 1;var b=w[m];if(!b)if(m>0&&S[m]===E[0])b=w[m-1];else return 1;for(var d=1;b;){var u=b.key,y=o(E,u[0],u[1]);if(u[0][0]<u[1][0])if(y<0)b=b.left;else if(y>0)d=-1,b=b.right;else return 0;else if(y>0)b=b.left;else if(y<0)d=1,b=b.right;else return 0}return d}}function p(w){return 1}function T(w){return function(E){return w(E[0],E[1])?0:1}}function l(w,S){return function(m){return w(m[0],m[1])?0:S(m)}}function _(w){for(var S=w.length,E=[],m=[],b=0,d=0;d<S;++d)for(var u=w[d],y=u.length,f=y-1,P=0;P<y;f=P++){var L=u[f],z=u[P];L[0]===z[0]?m.push([L,z]):E.push([L,z])}if(E.length===0)return m.length===0?p:T(h(m));var F=a(E),B=v(F.slabs,F.coordinates);return m.length===0?B:l(h(m),B)}},9346:function(e){"use strict";var t=new Float64Array(4),r=new Float64Array(4),o=new Float64Array(4);function a(i,n,s,c,h){t.length<c.length&&(t=new Float64Array(c.length),r=new Float64Array(c.length),o=new Float64Array(c.length));for(var v=0;v<c.length;++v)t[v]=i[v]-c[v],r[v]=n[v]-i[v],o[v]=s[v]-i[v];for(var p=0,T=0,l=0,_=0,w=0,S=0,v=0;v<c.length;++v){var E=r[v],m=o[v],b=t[v];p+=E*E,T+=E*m,l+=m*m,_+=b*E,w+=b*m,S+=b*b}var d=Math.abs(p*l-T*T),u=T*w-l*_,y=T*_-p*w,f;if(u+y<=d)if(u<0)y<0&&_<0?(y=0,-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S)):(u=0,w>=0?(y=0,f=S):-w>=l?(y=1,f=l+2*w+S):(y=-w/l,f=w*y+S));else if(y<0)y=0,_>=0?(u=0,f=S):-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S);else{var P=1/d;u*=P,y*=P,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S}else{var L,z,F,B;u<0?(L=T+_,z=l+w,z>L?(F=z-L,B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(u=0,z<=0?(y=1,f=l+2*w+S):w>=0?(y=0,f=S):(y=-w/l,f=w*y+S))):y<0?(L=T+w,z=p+_,z>L?(F=z-L,B=p-2*T+l,F>=B?(y=1,u=0,f=l+2*w+S):(y=F/B,u=1-y,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(y=0,z<=0?(u=1,f=p+2*_+S):_>=0?(u=0,f=S):(u=-_/p,f=_*u+S))):(F=l+w-T-_,F<=0?(u=0,y=1,f=l+2*w+S):(B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)))}for(var O=1-u-y,v=0;v<c.length;++v)h[v]=O*i[v]+u*n[v]+y*s[v];return f<0?0:f}e.exports=a},8648:function(e,t,r){e.exports=r(783)},2653:function(e,t,r){"use strict";var o=r(3865);e.exports=a;function a(i,n){for(var s=i.length,c=new Array(s),h=0;h<s;++h)c[h]=o(i[h],n[h]);return c}},5838:function(e,t,r){"use strict";e.exports=a;var o=r(7842);function a(i){for(var n=new Array(i.length),s=0;s<i.length;++s)n[s]=o(i[s]);return n}},8987:function(e,t,r){"use strict";var o=r(7842),a=r(6504);e.exports=i;function i(n,s){for(var c=o(s),h=n.length,v=new Array(h),p=0;p<h;++p)v[p]=a(n[p],c);return v}},544:function(e,t,r){"use strict";var o=r(5572);e.exports=a;function a(i,n){for(var s=i.length,c=new Array(s),h=0;h<s;++h)c[h]=o(i[h],n[h]);return c}},5771:function(e,t,r){"use strict";var o=r(8507),a=r(3788),i=r(2419);e.exports=n;function n(s){s.sort(a);for(var c=s.length,h=0,v=0;v<c;++v){var p=s[v],T=i(p);if(T!==0){if(h>0){var l=s[h-1];if(o(p,l)===0&&i(l)!==T){h-=1;continue}}s[h++]=p}}return s.length=h,s}},3233:function(e){"use strict";var t="",r;e.exports=o;function o(a,i){if(typeof a!="string")throw new TypeError("expected a string");if(i===1)return a;if(i===2)return a+a;var n=a.length*i;if(r!==a||typeof r>"u")r=a,t="";else if(t.length>=n)return t.substr(0,n);for(;n>t.length&&i>1;)i&1&&(t+=a),i>>=1,a+=a;return t+=a,t=t.substr(0,n),t}},3025:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(e){"use strict";e.exports=t;function t(r){for(var o=r.length,a=r[r.length-1],i=o,n=o-2;n>=0;--n){var s=a,c=r[n];a=s+c;var h=a-s,v=c-h;v&&(r[--i]=a,a=v)}for(var p=0,n=i;n<o;++n){var s=r[n],c=a;a=s+c;var h=a-s,v=c-h;v&&(r[p++]=v)}return r[p++]=a,r.length=p,r}},2962:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(3012),n=r(7004),s=6;function c(S,E,m,b){return function(u){return b(S(m(u[0][0],u[1][1]),m(-u[0][1],u[1][0])))}}function h(S,E,m,b){return function(u){return b(S(E(S(m(u[1][1],u[2][2]),m(-u[1][2],u[2][1])),u[0][0]),S(E(S(m(u[1][0],u[2][2]),m(-u[1][2],u[2][0])),-u[0][1]),E(S(m(u[1][0],u[2][1]),m(-u[1][1],u[2][0])),u[0][2]))))}}function v(S,E,m,b){return function(u){return b(S(S(E(S(E(S(m(u[2][2],u[3][3]),m(-u[2][3],u[3][2])),u[1][1]),S(E(S(m(u[2][1],u[3][3]),m(-u[2][3],u[3][1])),-u[1][2]),E(S(m(u[2][1],u[3][2]),m(-u[2][2],u[3][1])),u[1][3]))),u[0][0]),E(S(E(S(m(u[2][2],u[3][3]),m(-u[2][3],u[3][2])),u[1][0]),S(E(S(m(u[2][0],u[3][3]),m(-u[2][3],u[3][0])),-u[1][2]),E(S(m(u[2][0],u[3][2]),m(-u[2][2],u[3][0])),u[1][3]))),-u[0][1])),S(E(S(E(S(m(u[2][1],u[3][3]),m(-u[2][3],u[3][1])),u[1][0]),S(E(S(m(u[2][0],u[3][3]),m(-u[2][3],u[3][0])),-u[1][1]),E(S(m(u[2][0],u[3][1]),m(-u[2][1],u[3][0])),u[1][3]))),u[0][2]),E(S(E(S(m(u[2][1],u[3][2]),m(-u[2][2],u[3][1])),u[1][0]),S(E(S(m(u[2][0],u[3][2]),m(-u[2][2],u[3][0])),-u[1][1]),E(S(m(u[2][0],u[3][1]),m(-u[2][1],u[3][0])),u[1][2]))),-u[0][3]))))}}function p(S,E,m,b){return function(u){return b(S(S(E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][2]),S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),-u[2][3]),E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][4]))),u[1][1]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][3]),E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][4]))),-u[1][2])),S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][3]))),-u[1][4]))),u[0][0]),E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][2]),S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),-u[2][3]),E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][3]),E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),u[2][4]))),-u[1][2])),S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][3]))),-u[1][4]))),-u[0][1])),S(E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][3]),E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][3]),E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),u[2][4]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][3]))),-u[1][4]))),u[0][2]),S(E(S(S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][4]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][4]))),u[1][2]),E(S(E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][2]))),-u[1][4]))),-u[0][3]),E(S(S(E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][3]))),u[1][0]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][3]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][3]))),u[1][2]),E(S(E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][2]))),-u[1][3]))),u[0][4])))))}}function T(S){var E=S===2?c:S===3?h:S===4?v:S===5?p:void 0;return E(a,i,o,n)}var l=[function(){return[0]},function(E){return[E[0][0]]}];function _(S,E,m,b,d,u,y,f){return function(L){switch(L.length){case 0:return S(L);case 1:return E(L);case 2:return m(L);case 3:return b(L);case 4:return d(L);case 5:return u(L)}var z=y[L.length];return z||(z=y[L.length]=f(L.length)),z(L)}}function w(){for(;l.length<s;)l.push(T(l.length));e.exports=_.apply(void 0,l.concat([l,T]));for(var S=0;S<l.length;++S)e.exports[S]=l[S]}w()},1944:function(e,t,r){"use strict";var o=r(5250),a=r(8210);e.exports=i;function i(n,s){for(var c=o(n[0],s[0]),h=1;h<n.length;++h)c=a(c,o(n[h],s[h]));return c}},2646:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(8545),n=r(3012),s=6;function c(d){var u=d===3?T:d===4?l:d===5?_:w;return u(a,i,o,n)}function h(){return 0}function v(){return 0}function p(){return 0}function T(d,u,y,f){function P(L,z,F){var B=y(L[0],L[0]),O=f(B,z[0]),I=f(B,F[0]),N=y(z[0],z[0]),U=f(N,L[0]),W=f(N,F[0]),Q=y(F[0],F[0]),ue=f(Q,L[0]),se=f(Q,z[0]),he=d(u(se,W),u(U,O)),G=u(ue,I),$=u(he,G);return $[$.length-1]}return P}function l(d,u,y,f){function P(L,z,F,B){var O=d(y(L[0],L[0]),y(L[1],L[1])),I=f(O,z[0]),N=f(O,F[0]),U=f(O,B[0]),W=d(y(z[0],z[0]),y(z[1],z[1])),Q=f(W,L[0]),ue=f(W,F[0]),se=f(W,B[0]),he=d(y(F[0],F[0]),y(F[1],F[1])),G=f(he,L[0]),$=f(he,z[0]),J=f(he,B[0]),Z=d(y(B[0],B[0]),y(B[1],B[1])),re=f(Z,L[0]),ne=f(Z,z[0]),j=f(Z,F[0]),ee=d(d(f(u(j,J),z[1]),d(f(u(ne,se),-F[1]),f(u($,ue),B[1]))),d(f(u(ne,se),L[1]),d(f(u(re,U),-z[1]),f(u(Q,I),B[1])))),ie=d(d(f(u(j,J),L[1]),d(f(u(re,U),-F[1]),f(u(G,N),B[1]))),d(f(u($,ue),L[1]),d(f(u(G,N),-z[1]),f(u(Q,I),F[1])))),fe=u(ee,ie);return fe[fe.length-1]}return P}function _(d,u,y,f){function P(L,z,F,B,O){var I=d(y(L[0],L[0]),d(y(L[1],L[1]),y(L[2],L[2]))),N=f(I,z[0]),U=f(I,F[0]),W=f(I,B[0]),Q=f(I,O[0]),ue=d(y(z[0],z[0]),d(y(z[1],z[1]),y(z[2],z[2]))),se=f(ue,L[0]),he=f(ue,F[0]),G=f(ue,B[0]),$=f(ue,O[0]),J=d(y(F[0],F[0]),d(y(F[1],F[1]),y(F[2],F[2]))),Z=f(J,L[0]),re=f(J,z[0]),ne=f(J,B[0]),j=f(J,O[0]),ee=d(y(B[0],B[0]),d(y(B[1],B[1]),y(B[2],B[2]))),ie=f(ee,L[0]),fe=f(ee,z[0]),be=f(ee,F[0]),Ae=f(ee,O[0]),Be=d(y(O[0],O[0]),d(y(O[1],O[1]),y(O[2],O[2]))),Ie=f(Be,L[0]),Ze=f(Be,z[0]),at=f(Be,F[0]),it=f(Be,B[0]),et=d(d(d(f(d(f(u(it,Ae),F[1]),d(f(u(at,j),-B[1]),f(u(be,ne),O[1]))),z[2]),d(f(d(f(u(it,Ae),z[1]),d(f(u(Ze,$),-B[1]),f(u(fe,G),O[1]))),-F[2]),f(d(f(u(at,j),z[1]),d(f(u(Ze,$),-F[1]),f(u(re,he),O[1]))),B[2]))),d(f(d(f(u(be,ne),z[1]),d(f(u(fe,G),-F[1]),f(u(re,he),B[1]))),-O[2]),d(f(d(f(u(it,Ae),z[1]),d(f(u(Ze,$),-B[1]),f(u(fe,G),O[1]))),L[2]),f(d(f(u(it,Ae),L[1]),d(f(u(Ie,Q),-B[1]),f(u(ie,W),O[1]))),-z[2])))),d(d(f(d(f(u(Ze,$),L[1]),d(f(u(Ie,Q),-z[1]),f(u(se,N),O[1]))),B[2]),d(f(d(f(u(fe,G),L[1]),d(f(u(ie,W),-z[1]),f(u(se,N),B[1]))),-O[2]),f(d(f(u(be,ne),z[1]),d(f(u(fe,G),-F[1]),f(u(re,he),B[1]))),L[2]))),d(f(d(f(u(be,ne),L[1]),d(f(u(ie,W),-F[1]),f(u(Z,U),B[1]))),-z[2]),d(f(d(f(u(fe,G),L[1]),d(f(u(ie,W),-z[1]),f(u(se,N),B[1]))),F[2]),f(d(f(u(re,he),L[1]),d(f(u(Z,U),-z[1]),f(u(se,N),F[1]))),-B[2]))))),lt=d(d(d(f(d(f(u(it,Ae),F[1]),d(f(u(at,j),-B[1]),f(u(be,ne),O[1]))),L[2]),f(d(f(u(it,Ae),L[1]),d(f(u(Ie,Q),-B[1]),f(u(ie,W),O[1]))),-F[2])),d(f(d(f(u(at,j),L[1]),d(f(u(Ie,Q),-F[1]),f(u(Z,U),O[1]))),B[2]),f(d(f(u(be,ne),L[1]),d(f(u(ie,W),-F[1]),f(u(Z,U),B[1]))),-O[2]))),d(d(f(d(f(u(at,j),z[1]),d(f(u(Ze,$),-F[1]),f(u(re,he),O[1]))),L[2]),f(d(f(u(at,j),L[1]),d(f(u(Ie,Q),-F[1]),f(u(Z,U),O[1]))),-z[2])),d(f(d(f(u(Ze,$),L[1]),d(f(u(Ie,Q),-z[1]),f(u(se,N),O[1]))),F[2]),f(d(f(u(re,he),L[1]),d(f(u(Z,U),-z[1]),f(u(se,N),F[1]))),-O[2])))),Me=u(et,lt);return Me[Me.length-1]}return P}function w(d,u,y,f){function P(L,z,F,B,O,I){var N=d(d(y(L[0],L[0]),y(L[1],L[1])),d(y(L[2],L[2]),y(L[3],L[3]))),U=f(N,z[0]),W=f(N,F[0]),Q=f(N,B[0]),ue=f(N,O[0]),se=f(N,I[0]),he=d(d(y(z[0],z[0]),y(z[1],z[1])),d(y(z[2],z[2]),y(z[3],z[3]))),G=f(he,L[0]),$=f(he,F[0]),J=f(he,B[0]),Z=f(he,O[0]),re=f(he,I[0]),ne=d(d(y(F[0],F[0]),y(F[1],F[1])),d(y(F[2],F[2]),y(F[3],F[3]))),j=f(ne,L[0]),ee=f(ne,z[0]),ie=f(ne,B[0]),fe=f(ne,O[0]),be=f(ne,I[0]),Ae=d(d(y(B[0],B[0]),y(B[1],B[1])),d(y(B[2],B[2]),y(B[3],B[3]))),Be=f(Ae,L[0]),Ie=f(Ae,z[0]),Ze=f(Ae,F[0]),at=f(Ae,O[0]),it=f(Ae,I[0]),et=d(d(y(O[0],O[0]),y(O[1],O[1])),d(y(O[2],O[2]),y(O[3],O[3]))),lt=f(et,L[0]),Me=f(et,z[0]),ge=f(et,F[0]),ce=f(et,B[0]),ze=f(et,I[0]),tt=d(d(y(I[0],I[0]),y(I[1],I[1])),d(y(I[2],I[2]),y(I[3],I[3]))),nt=f(tt,L[0]),Qe=f(tt,z[0]),Ct=f(tt,F[0]),St=f(tt,B[0]),Ot=f(tt,O[0]),jt=d(d(d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),F[2]),f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),-B[2])),d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),O[2]),f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),-I[2]))),z[3]),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-B[2])),d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),O[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-I[2]))),-F[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),O[2]),f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),-I[2]))),B[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),z[2]),f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-I[2]))),-O[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),z[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-F[2])),d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-O[2]))),I[3])),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-B[2])),d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),O[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-I[2]))),L[3]),f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-B[2])),d(f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),O[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-I[2]))),-z[3])))),d(d(d(f(d(d(f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),O[2]),f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),-I[2]))),B[3]),f(d(d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-I[2]))),-O[3])),d(f(d(d(f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-O[2]))),I[3]),f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),z[2]),f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-I[2]))),L[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-I[2]))),-z[3]),f(d(d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-I[2]))),F[3])),d(f(d(d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),L[2]),f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-I[2]))),-B[3]),f(d(d(f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),L[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-z[2])),d(f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-B[2]))),I[3]))))),ur=d(d(d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),F[2]),f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),-B[2])),d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),O[2]),f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),-I[2]))),L[3]),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-B[2])),d(f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),O[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-I[2]))),-F[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),O[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-I[2]))),B[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-I[2]))),-O[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-F[2])),d(f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-O[2]))),I[3])),d(f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),O[2]),f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),-I[2]))),L[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),O[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-I[2]))),-z[3])))),d(d(d(f(d(d(f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),O[2]),f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),-I[2]))),F[3]),f(d(d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),L[2]),f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-I[2]))),-O[3])),d(f(d(d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),L[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-O[2]))),I[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),z[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-F[2])),d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-O[2]))),L[3]))),d(d(f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-F[2])),d(f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-O[2]))),-z[3]),f(d(d(f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-O[2]))),F[3])),d(f(d(d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),L[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-O[2]))),-B[3]),f(d(d(f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),L[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-z[2])),d(f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-B[2]))),O[3]))))),ar=u(jt,ur);return ar[ar.length-1]}return P}var S=[h,v,p];function E(d){var u=S[d.length];return u||(u=S[d.length]=c(d.length)),u.apply(void 0,d)}function m(d,u,y,f,P,L,z,F){function B(O,I,N,U,W,Q){switch(arguments.length){case 0:case 1:return 0;case 2:return f(O,I);case 3:return P(O,I,N);case 4:return L(O,I,N,U);case 5:return z(O,I,N,U,W);case 6:return F(O,I,N,U,W,Q)}for(var ue=new Array(arguments.length),se=0;se<arguments.length;++se)ue[se]=arguments[se];return d(ue)}return B}function b(){for(;S.length<=s;)S.push(c(S.length));e.exports=m.apply(void 0,[E].concat(S));for(var d=0;d<=s;++d)e.exports[d]=S[d]}b()},727:function(e,t,r){"use strict";var o=r(2962),a=6;function i(S){var E=S===2?c:S===3?h:S===4?v:S===5?p:T;return S<6?E(o[S]):E(o)}function n(){return[[0]]}function s(S,E){return[[E[0]],[S[0][0]]]}function c(S){return function(m,b){return[S([[+b[0],+m[0][1]],[+b[1],+m[1][1]]]),S([[+m[0][0],+b[0]],[+m[1][0],+b[1]]]),S(m)]}}function h(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2]],[+b[1],+m[1][1],+m[1][2]],[+b[2],+m[2][1],+m[2][2]]]),S([[+m[0][0],+b[0],+m[0][2]],[+m[1][0],+b[1],+m[1][2]],[+m[2][0],+b[2],+m[2][2]]]),S([[+m[0][0],+m[0][1],+b[0]],[+m[1][0],+m[1][1],+b[1]],[+m[2][0],+m[2][1],+b[2]]]),S(m)]}}function v(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3]],[+b[1],+m[1][1],+m[1][2],+m[1][3]],[+b[2],+m[2][1],+m[2][2],+m[2][3]],[+b[3],+m[3][1],+m[3][2],+m[3][3]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3]],[+m[1][0],+b[1],+m[1][2],+m[1][3]],[+m[2][0],+b[2],+m[2][2],+m[2][3]],[+m[3][0],+b[3],+m[3][2],+m[3][3]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3]],[+m[1][0],+m[1][1],+b[1],+m[1][3]],[+m[2][0],+m[2][1],+b[2],+m[2][3]],[+m[3][0],+m[3][1],+b[3],+m[3][3]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+b[3]]]),S(m)]}}function p(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3],+m[0][4]],[+b[1],+m[1][1],+m[1][2],+m[1][3],+m[1][4]],[+b[2],+m[2][1],+m[2][2],+m[2][3],+m[2][4]],[+b[3],+m[3][1],+m[3][2],+m[3][3],+m[3][4]],[+b[4],+m[4][1],+m[4][2],+m[4][3],+m[4][4]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3],+m[0][4]],[+m[1][0],+b[1],+m[1][2],+m[1][3],+m[1][4]],[+m[2][0],+b[2],+m[2][2],+m[2][3],+m[2][4]],[+m[3][0],+b[3],+m[3][2],+m[3][3],+m[3][4]],[+m[4][0],+b[4],+m[4][2],+m[4][3],+m[4][4]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3],+m[0][4]],[+m[1][0],+m[1][1],+b[1],+m[1][3],+m[1][4]],[+m[2][0],+m[2][1],+b[2],+m[2][3],+m[2][4]],[+m[3][0],+m[3][1],+b[3],+m[3][3],+m[3][4]],[+m[4][0],+m[4][1],+b[4],+m[4][3],+m[4][4]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0],+m[0][4]],[+m[1][0],+m[1][1],+m[1][2],+b[1],+m[1][4]],[+m[2][0],+m[2][1],+m[2][2],+b[2],+m[2][4]],[+m[3][0],+m[3][1],+m[3][2],+b[3],+m[3][4]],[+m[4][0],+m[4][1],+m[4][2],+b[4],+m[4][4]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+b[3]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+b[4]]]),S(m)]}}function T(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3],+m[0][4],+m[0][5]],[+b[1],+m[1][1],+m[1][2],+m[1][3],+m[1][4],+m[1][5]],[+b[2],+m[2][1],+m[2][2],+m[2][3],+m[2][4],+m[2][5]],[+b[3],+m[3][1],+m[3][2],+m[3][3],+m[3][4],+m[3][5]],[+b[4],+m[4][1],+m[4][2],+m[4][3],+m[4][4],+m[4][5]],[+b[5],+m[5][1],+m[5][2],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3],+m[0][4],+m[0][5]],[+m[1][0],+b[1],+m[1][2],+m[1][3],+m[1][4],+m[1][5]],[+m[2][0],+b[2],+m[2][2],+m[2][3],+m[2][4],+m[2][5]],[+m[3][0],+b[3],+m[3][2],+m[3][3],+m[3][4],+m[3][5]],[+m[4][0],+b[4],+m[4][2],+m[4][3],+m[4][4],+m[4][5]],[+m[5][0],+b[5],+m[5][2],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3],+m[0][4],+m[0][5]],[+m[1][0],+m[1][1],+b[1],+m[1][3],+m[1][4],+m[1][5]],[+m[2][0],+m[2][1],+b[2],+m[2][3],+m[2][4],+m[2][5]],[+m[3][0],+m[3][1],+b[3],+m[3][3],+m[3][4],+m[3][5]],[+m[4][0],+m[4][1],+b[4],+m[4][3],+m[4][4],+m[4][5]],[+m[5][0],+m[5][1],+b[5],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0],+m[0][4],+m[0][5]],[+m[1][0],+m[1][1],+m[1][2],+b[1],+m[1][4],+m[1][5]],[+m[2][0],+m[2][1],+m[2][2],+b[2],+m[2][4],+m[2][5]],[+m[3][0],+m[3][1],+m[3][2],+b[3],+m[3][4],+m[3][5]],[+m[4][0],+m[4][1],+m[4][2],+b[4],+m[4][4],+m[4][5]],[+m[5][0],+m[5][1],+m[5][2],+b[5],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+b[0],+m[0][5]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+b[1],+m[1][5]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+b[2],+m[2][5]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+b[3],+m[3][5]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+b[4],+m[4][5]],[+m[5][0],+m[5][1],+m[5][2],+m[5][3],+b[5],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+m[0][4],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+m[1][4],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+m[2][4],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+m[3][4],+b[3]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+m[4][4],+b[4]],[+m[5][0],+m[5][1],+m[5][2],+m[5][3],+m[5][4],+b[5]]]),S(m)]}}var l=[n,s];function _(S,E,m,b,d,u,y,f){return function(L,z){switch(L.length){case 0:return S(L,z);case 1:return E(L,z);case 2:return m(L,z);case 3:return b(L,z);case 4:return d(L,z);case 5:return u(L,z)}var F=y[L.length];return F||(F=y[L.length]=f(L.length)),F(L,z)}}function w(){for(;l.length<a;)l.push(i(l.length));e.exports=_.apply(void 0,l.concat([l,i]));for(var S=0;S<a;++S)e.exports[S]=l[S]}w()},3250:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(3012),n=r(8545),s=5,c=11102230246251565e-32,h=(3+16*c)*c,v=(7+56*c)*c;function p(u,y,f,P){return function(z,F,B){var O=u(u(y(F[1],B[0]),y(-B[1],F[0])),u(y(z[1],F[0]),y(-F[1],z[0]))),I=u(y(z[1],B[0]),y(-B[1],z[0])),N=P(O,I);return N[N.length-1]}}function T(u,y,f,P){return function(z,F,B,O){var I=u(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2])))),N=u(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2])))),U=P(I,N);return U[U.length-1]}}function l(u,y,f,P){return function(z,F,B,O,I){var N=u(u(u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),B[2]),u(f(u(y(B[1],I[0]),y(-I[1],B[0])),-O[2]),f(u(y(B[1],O[0]),y(-O[1],B[0])),I[2]))),F[3]),u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-O[2]),f(u(y(F[1],O[0]),y(-O[1],F[0])),I[2]))),-B[3]),f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),I[2]))),O[3]))),u(f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),-I[3]),u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-O[2]),f(u(y(F[1],O[0]),y(-O[1],F[0])),I[2]))),z[3]),f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-O[2]),f(u(y(z[1],O[0]),y(-O[1],z[0])),I[2]))),-F[3])))),u(u(f(u(f(u(y(F[1],I[0]),y(-I[1],F[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),I[2]))),O[3]),u(f(u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2]))),-I[3]),f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),z[3]))),u(f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),-F[3]),u(f(u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2]))),B[3]),f(u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2]))),-O[3]))))),U=u(u(u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),B[2]),u(f(u(y(B[1],I[0]),y(-I[1],B[0])),-O[2]),f(u(y(B[1],O[0]),y(-O[1],B[0])),I[2]))),z[3]),f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-O[2]),f(u(y(z[1],O[0]),y(-O[1],z[0])),I[2]))),-B[3])),u(f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),I[2]))),O[3]),f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),-I[3]))),u(u(f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),I[2]))),z[3]),f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),I[2]))),-F[3])),u(f(u(f(u(y(F[1],I[0]),y(-I[1],F[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),I[2]))),B[3]),f(u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2]))),-I[3])))),W=P(N,U);return W[W.length-1]}}function _(u){var y=u===3?p:u===4?T:l;return y(a,o,i,n)}var w=_(3),S=_(4),E=[function(){return 0},function(){return 0},function(y,f){return f[0]-y[0]},function(y,f,P){var L=(y[1]-P[1])*(f[0]-P[0]),z=(y[0]-P[0])*(f[1]-P[1]),F=L-z,B;if(L>0){if(z<=0)return F;B=L+z}else if(L<0){if(z>=0)return F;B=-(L+z)}else return F;var O=h*B;return F>=O||F<=-O?F:w(y,f,P)},function(y,f,P,L){var z=y[0]-L[0],F=f[0]-L[0],B=P[0]-L[0],O=y[1]-L[1],I=f[1]-L[1],N=P[1]-L[1],U=y[2]-L[2],W=f[2]-L[2],Q=P[2]-L[2],ue=F*N,se=B*I,he=B*O,G=z*N,$=z*I,J=F*O,Z=U*(ue-se)+W*(he-G)+Q*($-J),re=(Math.abs(ue)+Math.abs(se))*Math.abs(U)+(Math.abs(he)+Math.abs(G))*Math.abs(W)+(Math.abs($)+Math.abs(J))*Math.abs(Q),ne=v*re;return Z>ne||-Z>ne?Z:S(y,f,P,L)}];function m(u){var y=E[u.length];return y||(y=E[u.length]=_(u.length)),y.apply(void 0,u)}function b(u,y,f,P,L,z,F){return function(O,I,N,U,W){switch(arguments.length){case 0:case 1:return 0;case 2:return P(O,I);case 3:return L(O,I,N);case 4:return z(O,I,N,U);case 5:return F(O,I,N,U,W)}for(var Q=new Array(arguments.length),ue=0;ue<arguments.length;++ue)Q[ue]=arguments[ue];return u(Q)}}function d(){for(;E.length<=s;)E.push(_(E.length));e.exports=b.apply(void 0,[m].concat(E));for(var u=0;u<=s;++u)e.exports[u]=E[u]}d()},5382:function(e,t,r){"use strict";var o=r(8210),a=r(3012);e.exports=i;function i(n,s){if(n.length===1)return a(s,n[0]);if(s.length===1)return a(n,s[0]);if(n.length===0||s.length===0)return[0];var c=[0];if(n.length<s.length)for(var h=0;h<n.length;++h)c=o(c,a(s,n[h]));else for(var h=0;h<s.length;++h)c=o(c,a(n,s[h]));return c}},3012:function(e,t,r){"use strict";var o=r(5250),a=r(9362);e.exports=i;function i(n,s){var c=n.length;if(c===1){var h=o(n[0],s);return h[0]?h:[h[1]]}var v=new Array(2*c),p=[.1,.1],T=[.1,.1],l=0;o(n[0],s,p),p[0]&&(v[l++]=p[0]);for(var _=1;_<c;++_){o(n[_],s,T);var w=p[1];a(w,T[0],p),p[0]&&(v[l++]=p[0]);var S=T[1],E=p[1],m=S+E,b=m-S,d=E-b;p[1]=m,d&&(v[l++]=d)}return p[1]&&(v[l++]=p[1]),l===0&&(v[l++]=0),v.length=l,v}},1125:function(e,t,r){"use strict";e.exports=i;var o=r(3250)[3];function a(n,s,c,h){for(var v=0;v<2;++v){var p=n[v],T=s[v],l=Math.min(p,T),_=Math.max(p,T),w=c[v],S=h[v],E=Math.min(w,S),m=Math.max(w,S);if(m<l||_<E)return!1}return!0}function i(n,s,c,h){var v=o(n,c,h),p=o(s,c,h);if(v>0&&p>0||v<0&&p<0)return!1;var T=o(c,n,s),l=o(h,n,s);return T>0&&l>0||T<0&&l<0?!1:v===0&&p===0&&T===0&&l===0?a(n,s,c,h):!0}},8545:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],-a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=-a[p],S=T(w),E,m;_<S?(m=l,v+=1,v<i&&(l=o[v],_=T(l))):(m=w,p+=1,p<n&&(w=-a[p],S=T(w))),v<i&&_<S||p>=n?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=-a[p],S=T(w)));for(var b=E+m,d=b-E,u=m-d,y=u,f=b,P,L,z,F,B;v<i&&p<n;)_<S?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=-a[p],S=T(w))),m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P;for(;v<i;)E=l,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,v+=1,v<i&&(l=o[v]);for(;p<n;)E=w,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,p+=1,p<n&&(w=-a[p]);return y&&(c[h++]=y),f&&(c[h++]=f),h||(c[h++]=0),c.length=h,c}},8210:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=a[p],S=T(w),E,m;_<S?(m=l,v+=1,v<i&&(l=o[v],_=T(l))):(m=w,p+=1,p<n&&(w=a[p],S=T(w))),v<i&&_<S||p>=n?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=a[p],S=T(w)));for(var b=E+m,d=b-E,u=m-d,y=u,f=b,P,L,z,F,B;v<i&&p<n;)_<S?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=a[p],S=T(w))),m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P;for(;v<i;)E=l,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,v+=1,v<i&&(l=o[v]);for(;p<n;)E=w,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,p+=1,p<n&&(w=a[p]);return y&&(c[h++]=y),f&&(c[h++]=f),h||(c[h++]=0),c.length=h,c}},9127:function(e,t,r){"use strict";e.exports=i;var o=r(6204),a=r(5771);function i(n){return a(o(n))}},7765:function(e,t,r){"use strict";e.exports=l;var o=r(9618),a=r(1888),i=r(446),n=r(1570);function s(_){for(var w=_.length,S=0,E=0;E<w;++E)S=Math.max(S,_[E].length)|0;return S-1}function c(_,w){for(var S=_.length,E=a.mallocUint8(S),m=0;m<S;++m)E[m]=_[m]<w|0;return E}function h(_,w){for(var S=_.length,E=w*(w+1)/2*S|0,m=a.mallocUint32(E*2),b=0,d=0;d<S;++d)for(var u=_[d],w=u.length,y=0;y<w;++y)for(var f=0;f<y;++f){var P=u[f],L=u[y];m[b++]=Math.min(P,L)|0,m[b++]=Math.max(P,L)|0}var z=b/2|0;i(o(m,[z,2]));for(var F=2,d=2;d<b;d+=2)m[d-2]===m[d]&&m[d-1]===m[d+1]||(m[F++]=m[d],m[F++]=m[d+1]);return o(m,[F/2|0,2])}function v(_,w,S,E){for(var m=_.data,b=_.shape[0],d=a.mallocDouble(b),u=0,y=0;y<b;++y){var f=m[2*y],P=m[2*y+1];if(S[f]!==S[P]){var L=w[f],z=w[P];m[2*u]=f,m[2*u+1]=P,d[u++]=(z-E)/(z-L)}}return _.shape[0]=u,o(d,[u])}function p(_,w){var S=a.mallocInt32(w*2),E=_.shape[0],m=_.data;S[0]=0;for(var b=0,d=0;d<E;++d){var u=m[2*d];if(u!==b){for(S[2*b+1]=d;++b<u;)S[2*b]=d,S[2*b+1]=d;S[2*b]=d}}for(S[2*b+1]=E;++b<w;)S[2*b]=S[2*b+1]=E;return S}function T(_){for(var w=_.shape[0]|0,S=_.data,E=new Array(w),m=0;m<w;++m)E[m]=[S[2*m],S[2*m+1]];return E}function l(_,w,S,E){S=S||0,typeof E>"u"&&(E=s(_));var m=_.length;if(m===0||E<1)return{cells:[],vertexIds:[],vertexWeights:[]};var b=c(w,+S),d=h(_,E),u=v(d,w,b,+S),y=p(d,w.length|0),f=n(E)(_,d.data,y,b),P=T(d),L=[].slice.call(u.data,0,u.shape[0]);return a.free(b),a.free(d.data),a.free(u.data),a.free(y),{cells:f,vertexIds:P,vertexWeights:L}}},1570:function(e){"use strict";e.exports=r;var t=[function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T)var l=n[T],_=l.length;return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===3){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2);if(w===0||w===7)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[2]),a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0]),a(c,s,l[1],l[2])]);break;case 3:p.push([a(c,s,l[0],l[2]),a(c,s,l[1],l[2])]);break;case 4:p.push([a(c,s,l[2],l[1]),a(c,s,l[2],l[0])]);break;case 5:p.push([a(c,s,l[2],l[1]),a(c,s,l[0],l[1])]);break;case 6:p.push([a(c,s,l[1],l[0]),a(c,s,l[2],l[0])]);break;case 7:break}}else if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===4){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2)+(h[l[3]]<<3);if(w===0||w===15)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1]),a(c,s,l[0],l[2]),a(c,s,l[0],l[3])]);break;case 2:p.push([a(c,s,l[1],l[2]),a(c,s,l[1],l[0]),a(c,s,l[1],l[3])]);break;case 3:p.push([a(c,s,l[1],l[2]),a(c,s,l[0],l[2]),a(c,s,l[0],l[3])],[a(c,s,l[1],l[3]),a(c,s,l[1],l[2]),a(c,s,l[0],l[3])]);break;case 4:p.push([a(c,s,l[2],l[0]),a(c,s,l[2],l[1]),a(c,s,l[2],l[3])]);break;case 5:p.push([a(c,s,l[0],l[1]),a(c,s,l[2],l[1]),a(c,s,l[0],l[3])],[a(c,s,l[2],l[1]),a(c,s,l[2],l[3]),a(c,s,l[0],l[3])]);break;case 6:p.push([a(c,s,l[2],l[0]),a(c,s,l[1],l[0]),a(c,s,l[1],l[3])],[a(c,s,l[2],l[3]),a(c,s,l[2],l[0]),a(c,s,l[1],l[3])]);break;case 7:p.push([a(c,s,l[0],l[3]),a(c,s,l[1],l[3]),a(c,s,l[2],l[3])]);break;case 8:p.push([a(c,s,l[3],l[1]),a(c,s,l[3],l[0]),a(c,s,l[3],l[2])]);break;case 9:p.push([a(c,s,l[3],l[1]),a(c,s,l[0],l[1]),a(c,s,l[0],l[2])],[a(c,s,l[3],l[2]),a(c,s,l[3],l[1]),a(c,s,l[0],l[2])]);break;case 10:p.push([a(c,s,l[1],l[0]),a(c,s,l[3],l[0]),a(c,s,l[1],l[2])],[a(c,s,l[3],l[0]),a(c,s,l[3],l[2]),a(c,s,l[1],l[2])]);break;case 11:p.push([a(c,s,l[1],l[2]),a(c,s,l[0],l[2]),a(c,s,l[3],l[2])]);break;case 12:p.push([a(c,s,l[3],l[0]),a(c,s,l[2],l[0]),a(c,s,l[2],l[1])],[a(c,s,l[3],l[1]),a(c,s,l[3],l[0]),a(c,s,l[2],l[1])]);break;case 13:p.push([a(c,s,l[0],l[1]),a(c,s,l[2],l[1]),a(c,s,l[3],l[1])]);break;case 14:p.push([a(c,s,l[2],l[0]),a(c,s,l[1],l[0]),a(c,s,l[3],l[0])]);break;case 15:break}}else if(_===3){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2);if(w===0||w===7)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[2]),a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0]),a(c,s,l[1],l[2])]);break;case 3:p.push([a(c,s,l[0],l[2]),a(c,s,l[1],l[2])]);break;case 4:p.push([a(c,s,l[2],l[1]),a(c,s,l[2],l[0])]);break;case 5:p.push([a(c,s,l[2],l[1]),a(c,s,l[0],l[1])]);break;case 6:p.push([a(c,s,l[1],l[0]),a(c,s,l[2],l[0])]);break;case 7:break}}else if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i}];function r(o){return t[o]()}},6803:function(e,t,r){"use strict";var o,a=r(8828),i=r(1755);function n(y){for(var f=0,P=Math.max,L=0,z=y.length;L<z;++L)f=P(f,y[L].length);return f-1}o=n;function s(y){for(var f=-1,P=Math.max,L=0,z=y.length;L<z;++L)for(var F=y[L],B=0,O=F.length;B<O;++B)f=P(f,F[B]);return f+1}o=s;function c(y){for(var f=new Array(y.length),P=0,L=y.length;P<L;++P)f[P]=y[P].slice(0);return f}o=c;function h(y,f){var P=y.length,L=y.length-f.length,z=Math.min;if(L)return L;switch(P){case 0:return 0;case 1:return y[0]-f[0];case 2:var N=y[0]+y[1]-f[0]-f[1];return N||z(y[0],y[1])-z(f[0],f[1]);case 3:var F=y[0]+y[1],B=f[0]+f[1];if(N=F+y[2]-(B+f[2]),N)return N;var O=z(y[0],y[1]),I=z(f[0],f[1]),N=z(O,y[2])-z(I,f[2]);return N||z(O+y[2],F)-z(I+f[2],B);default:var U=y.slice(0);U.sort();var W=f.slice(0);W.sort();for(var Q=0;Q<P;++Q)if(L=U[Q]-W[Q],L)return L;return 0}}t.Fw=h;function v(y,f){return h(y[0],f[0])}function p(y,f){if(f){for(var P=y.length,L=new Array(P),z=0;z<P;++z)L[z]=[y[z],f[z]];L.sort(v);for(var z=0;z<P;++z)y[z]=L[z][0],f[z]=L[z][1];return y}else return y.sort(h),y}o=p;function T(y){if(y.length===0)return[];for(var f=1,P=y.length,L=1;L<P;++L){var z=y[L];if(h(z,y[L-1])){if(L===f){f++;continue}y[f++]=z}}return y.length=f,y}o=T;function l(y,f){for(var P=0,L=y.length-1,z=-1;P<=L;){var F=P+L>>1,B=h(y[F],f);B<=0?(B===0&&(z=F),P=F+1):B>0&&(L=F-1)}return z}o=l;function _(y,f){for(var P=new Array(y.length),L=0,z=P.length;L<z;++L)P[L]=[];for(var F=[],L=0,B=f.length;L<B;++L)for(var O=f[L],I=O.length,N=1,U=1<<I;N<U;++N){F.length=a.popCount(N);for(var W=0,Q=0;Q<I;++Q)N&1<<Q&&(F[W++]=O[Q]);var ue=l(y,F);if(!(ue<0))for(;P[ue++].push(L),!(ue>=y.length||h(y[ue],F)!==0););}return P}o=_;function w(y,f){if(!f)return _(T(E(y,0)),y,0);for(var P=new Array(f),L=0;L<f;++L)P[L]=[];for(var L=0,z=y.length;L<z;++L)for(var F=y[L],B=0,O=F.length;B<O;++B)P[F[B]].push(L);return P}o=w;function S(y){for(var f=[],P=0,L=y.length;P<L;++P)for(var z=y[P],F=z.length|0,B=1,O=1<<F;B<O;++B){for(var I=[],N=0;N<F;++N)B>>>N&1&&I.push(z[N]);f.push(I)}return p(f)}o=S;function E(y,f){if(f<0)return[];for(var P=[],L=(1<<f+1)-1,z=0;z<y.length;++z)for(var F=y[z],B=L;B<1<<F.length;B=a.nextCombination(B)){for(var O=new Array(f+1),I=0,N=0;N<F.length;++N)B&1<<N&&(O[I++]=F[N]);P.push(O)}return p(P)}o=E;function m(y){for(var f=[],P=0,L=y.length;P<L;++P)for(var z=y[P],F=0,B=z.length;F<B;++F){for(var O=new Array(z.length-1),I=0,N=0;I<B;++I)I!==F&&(O[N++]=z[I]);f.push(O)}return p(f)}o=m;function b(y,f){for(var P=new i(f),L=0;L<y.length;++L)for(var z=y[L],F=0;F<z.length;++F)for(var B=F+1;B<z.length;++B)P.link(z[F],z[B]);for(var O=[],I=P.ranks,L=0;L<I.length;++L)I[L]=-1;for(var L=0;L<y.length;++L){var N=P.find(y[L][0]);I[N]<0?(I[N]=O.length,O.push([y[L].slice(0)])):O[I[N]].push(y[L].slice(0))}return O}function d(y){for(var f=T(p(E(y,0))),P=new i(f.length),L=0;L<y.length;++L)for(var z=y[L],F=0;F<z.length;++F)for(var B=l(f,[z[F]]),O=F+1;O<z.length;++O)P.link(B,l(f,[z[O]]));for(var I=[],N=P.ranks,L=0;L<N.length;++L)N[L]=-1;for(var L=0;L<y.length;++L){var U=P.find(l(f,[y[L][0]]));N[U]<0?(N[U]=I.length,I.push([y[L].slice(0)])):I[N[U]].push(y[L].slice(0))}return I}function u(y,f){return f?b(y,f):d(y)}o=u},3105:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<<r-1,t.sign=function(i){return(i>0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i<n)},t.max=function(i,n){return i^(i^n)&-(i<n)},t.isPow2=function(i){return!(i&i-1)&&!!i},t.log2=function(i){var n,s;return n=(i>65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<<h&255}})(a),t.reverse=function(i){return a[i&255]<<24|a[i>>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},2014:function(e,t,r){"use strict";"use restrict";var o=r(3105),a=r(4623);function i(u){for(var y=0,f=Math.max,P=0,L=u.length;P<L;++P)y=f(y,u[P].length);return y-1}t.dimension=i;function n(u){for(var y=-1,f=Math.max,P=0,L=u.length;P<L;++P)for(var z=u[P],F=0,B=z.length;F<B;++F)y=f(y,z[F]);return y+1}t.countVertices=n;function s(u){for(var y=new Array(u.length),f=0,P=u.length;f<P;++f)y[f]=u[f].slice(0);return y}t.cloneCells=s;function c(u,y){var f=u.length,P=u.length-y.length,L=Math.min;if(P)return P;switch(f){case 0:return 0;case 1:return u[0]-y[0];case 2:var I=u[0]+u[1]-y[0]-y[1];return I||L(u[0],u[1])-L(y[0],y[1]);case 3:var z=u[0]+u[1],F=y[0]+y[1];if(I=z+u[2]-(F+y[2]),I)return I;var B=L(u[0],u[1]),O=L(y[0],y[1]),I=L(B,u[2])-L(O,y[2]);return I||L(B+u[2],z)-L(O+y[2],F);default:var N=u.slice(0);N.sort();var U=y.slice(0);U.sort();for(var W=0;W<f;++W)if(P=N[W]-U[W],P)return P;return 0}}t.compareCells=c;function h(u,y){return c(u[0],y[0])}function v(u,y){if(y){for(var f=u.length,P=new Array(f),L=0;L<f;++L)P[L]=[u[L],y[L]];P.sort(h);for(var L=0;L<f;++L)u[L]=P[L][0],y[L]=P[L][1];return u}else return u.sort(c),u}t.normalize=v;function p(u){if(u.length===0)return[];for(var y=1,f=u.length,P=1;P<f;++P){var L=u[P];if(c(L,u[P-1])){if(P===y){y++;continue}u[y++]=L}}return u.length=y,u}t.unique=p;function T(u,y){for(var f=0,P=u.length-1,L=-1;f<=P;){var z=f+P>>1,F=c(u[z],y);F<=0?(F===0&&(L=z),f=z+1):F>0&&(P=z-1)}return L}t.findCell=T;function l(u,y){for(var f=new Array(u.length),P=0,L=f.length;P<L;++P)f[P]=[];for(var z=[],P=0,F=y.length;P<F;++P)for(var B=y[P],O=B.length,I=1,N=1<<O;I<N;++I){z.length=o.popCount(I);for(var U=0,W=0;W<O;++W)I&1<<W&&(z[U++]=B[W]);var Q=T(u,z);if(!(Q<0))for(;f[Q++].push(P),!(Q>=u.length||c(u[Q],z)!==0););}return f}t.incidence=l;function _(u,y){if(!y)return l(p(S(u,0)),u,0);for(var f=new Array(y),P=0;P<y;++P)f[P]=[];for(var P=0,L=u.length;P<L;++P)for(var z=u[P],F=0,B=z.length;F<B;++F)f[z[F]].push(P);return f}t.dual=_;function w(u){for(var y=[],f=0,P=u.length;f<P;++f)for(var L=u[f],z=L.length|0,F=1,B=1<<z;F<B;++F){for(var O=[],I=0;I<z;++I)F>>>I&1&&O.push(L[I]);y.push(O)}return v(y)}t.explode=w;function S(u,y){if(y<0)return[];for(var f=[],P=(1<<y+1)-1,L=0;L<u.length;++L)for(var z=u[L],F=P;F<1<<z.length;F=o.nextCombination(F)){for(var B=new Array(y+1),O=0,I=0;I<z.length;++I)F&1<<I&&(B[O++]=z[I]);f.push(B)}return v(f)}t.skeleton=S;function E(u){for(var y=[],f=0,P=u.length;f<P;++f)for(var L=u[f],z=0,F=L.length;z<F;++z){for(var B=new Array(L.length-1),O=0,I=0;O<F;++O)O!==z&&(B[I++]=L[O]);y.push(B)}return v(y)}t.boundary=E;function m(u,y){for(var f=new a(y),P=0;P<u.length;++P)for(var L=u[P],z=0;z<L.length;++z)for(var F=z+1;F<L.length;++F)f.link(L[z],L[F]);for(var B=[],O=f.ranks,P=0;P<O.length;++P)O[P]=-1;for(var P=0;P<u.length;++P){var I=f.find(u[P][0]);O[I]<0?(O[I]=B.length,B.push([u[P].slice(0)])):B[O[I]].push(u[P].slice(0))}return B}function b(u){for(var y=p(v(S(u,0))),f=new a(y.length),P=0;P<u.length;++P)for(var L=u[P],z=0;z<L.length;++z)for(var F=T(y,[L[z]]),B=z+1;B<L.length;++B)f.link(F,T(y,[L[B]]));for(var O=[],I=f.ranks,P=0;P<I.length;++P)I[P]=-1;for(var P=0;P<u.length;++P){var N=f.find(T(y,[u[P][0]]));I[N]<0?(I[N]=O.length,O.push([u[P].slice(0)])):O[I[N]].push(u[P].slice(0))}return O}function d(u,y){return y?m(u,y):b(u)}t.connectedComponents=d},4623:function(e){"use strict";"use restrict";e.exports=t;function t(r){this.roots=new Array(r),this.ranks=new Array(r);for(var o=0;o<r;++o)this.roots[o]=o,this.ranks[o]=0}t.prototype.length=function(){return this.roots.length},t.prototype.makeSet=function(){var r=this.roots.length;return this.roots.push(r),this.ranks.push(0),r},t.prototype.find=function(r){for(var o=this.roots;o[r]!==r;){var a=o[r];o[r]=o[a],r=a}return r},t.prototype.link=function(r,o){var a=this.find(r),i=this.find(o);if(a!==i){var n=this.ranks,s=this.roots,c=n[a],h=n[i];c<h?s[a]=i:h<c?s[i]=a:(s[i]=a,++n[a])}}},5878:function(e,t,r){"use strict";e.exports=n;var o=r(3250),a=r(2014);function i(s,c,h){var v=Math.abs(o(s,c,h)),p=Math.sqrt(Math.pow(c[0]-h[0],2)+Math.pow(c[1]-h[1],2));return v/p}function n(s,c,h){for(var v=c.length,p=s.length,T=new Array(v),l=new Array(v),_=new Array(v),w=new Array(v),S=0;S<v;++S)T[S]=l[S]=-1,_[S]=1/0,w[S]=!1;for(var S=0;S<p;++S){var E=s[S];if(E.length!==2)throw new Error("Input must be a graph");var m=E[1],b=E[0];l[b]!==-1?l[b]=-2:l[b]=m,T[m]!==-1?T[m]=-2:T[m]=b}function d(G){if(w[G])return 1/0;var $=T[G],J=l[G];return $<0||J<0?1/0:i(c[G],c[$],c[J])}function u(G,$){var J=O[G],Z=O[$];O[G]=Z,O[$]=J,I[J]=$,I[Z]=G}function y(G){return _[O[G]]}function f(G){return G&1?G-1>>1:(G>>1)-1}function P(G){for(var $=y(G);;){var J=$,Z=2*G+1,re=2*(G+1),ne=G;if(Z<U){var j=y(Z);j<J&&(ne=Z,J=j)}if(re<U){var ee=y(re);ee<J&&(ne=re)}if(ne===G)return G;u(G,ne),G=ne}}function L(G){for(var $=y(G);G>0;){var J=f(G);if(J>=0){var Z=y(J);if($<Z){u(G,J),G=J;continue}}return G}}function z(){if(U>0){var G=O[0];return u(0,U-1),U-=1,P(0),G}return-1}function F(G,$){var J=O[G];return _[J]===$?G:(_[J]=-1/0,L(G),z(),_[J]=$,U+=1,L(U-1))}function B(G){if(!w[G]){w[G]=!0;var $=T[G],J=l[G];T[J]>=0&&(T[J]=$),l[$]>=0&&(l[$]=J),I[$]>=0&&F(I[$],d($)),I[J]>=0&&F(I[J],d(J))}}for(var O=[],I=new Array(v),S=0;S<v;++S){var N=_[S]=d(S);N<1/0?(I[S]=O.length,O.push(S)):I[S]=-1}for(var U=O.length,S=U>>1;S>=0;--S)P(S);for(;;){var W=z();if(W<0||_[W]>h)break;B(W)}for(var Q=[],S=0;S<v;++S)w[S]||(I[S]=Q.length,Q.push(c[S].slice()));var ue=Q.length;function se(G,$){if(G[$]<0)return $;var J=$,Z=$;do{var re=G[Z];if(!w[Z]||re<0||re===Z||(Z=re,re=G[Z],!w[Z]||re<0||re===Z))break;Z=re,J=G[J]}while(J!==Z);for(var ne=$;ne!==Z;ne=G[ne])G[ne]=Z;return Z}var he=[];return s.forEach(function(G){var $=se(T,G[0]),J=se(l,G[1]);if($>=0&&J>=0&&$!==J){var Z=I[$],re=I[J];Z!==re&&he.push([Z,re])}}),a.unique(a.normalize(he)),{positions:Q,edges:he}}},1303:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){var c,h;if(s[0][0]<s[1][0])c=s[0],h=s[1];else if(s[0][0]>s[1][0])c=s[1],h=s[0];else{var v=Math.min(n[0][1],n[1][1]),p=Math.max(n[0][1],n[1][1]),T=Math.min(s[0][1],s[1][1]),l=Math.max(s[0][1],s[1][1]);return p<T?p-T:v>l?v-l:p-l}var _,w;n[0][1]<n[1][1]?(_=n[0],w=n[1]):(_=n[1],w=n[0]);var S=o(h,c,_);return S||(S=o(h,c,w),S)?S:w-h}function i(n,s){var c,h;if(s[0][0]<s[1][0])c=s[0],h=s[1];else if(s[0][0]>s[1][0])c=s[1],h=s[0];else return a(s,n);var v,p;if(n[0][0]<n[1][0])v=n[0],p=n[1];else if(n[0][0]>n[1][0])v=n[1],p=n[0];else return-a(n,s);var T=o(c,h,p),l=o(c,h,v);if(T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;if(T=o(p,v,h),l=o(p,v,c),T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;return h[0]-p[0]}},4209:function(e,t,r){"use strict";e.exports=l;var o=r(2478),a=r(3840),i=r(3250),n=r(1303);function s(_,w,S){this.slabs=_,this.coordinates=w,this.horizontal=S}var c=s.prototype;function h(_,w){return _.y-w}function v(_,w){for(var S=null;_;){var E=_.key,m,b;E[0][0]<E[1][0]?(m=E[0],b=E[1]):(m=E[1],b=E[0]);var d=i(m,b,w);if(d<0)_=_.left;else if(d>0)if(w[0]!==E[1][0])S=_,_=_.right;else{var u=v(_.right,w);if(u)return u;_=_.left}else{if(w[0]!==E[1][0])return _;var u=v(_.right,w);if(u)return u;_=_.left}}return S}c.castUp=function(_){var w=o.le(this.coordinates,_[0]);if(w<0)return-1;var S=this.slabs[w],E=v(this.slabs[w],_),m=-1;if(E&&(m=E.value),this.coordinates[w]===_[0]){var b=null;if(E&&(b=E.key),w>0){var d=v(this.slabs[w-1],_);d&&(b?n(d.key,b)>0&&(b=d.key,m=d.value):(m=d.value,b=d.key))}var u=this.horizontal[w];if(u.length>0){var y=o.ge(u,_[1],h);if(y<u.length){var f=u[y];if(_[1]===f.y){if(f.closed)return f.index;for(;y<u.length-1&&u[y+1].y===_[1];)if(y=y+1,f=u[y],f.closed)return f.index;if(f.y===_[1]&&!f.start){if(y=y+1,y>=u.length)return m;f=u[y]}}if(f.start)if(b){var P=i(b[0],b[1],[_[0],f.y]);b[0][0]>b[1][0]&&(P=-P),P>0&&(m=f.index)}else m=f.index;else f.y!==_[1]&&(m=f.index)}}}return m};function p(_,w,S,E){this.y=_,this.index=w,this.start=S,this.closed=E}function T(_,w,S,E){this.x=_,this.segment=w,this.create=S,this.index=E}function l(_){for(var w=_.length,S=2*w,E=new Array(S),m=0;m<w;++m){var b=_[m],d=b[0][0]<b[1][0];E[2*m]=new T(b[0][0],b,d,m),E[2*m+1]=new T(b[1][0],b,!d,m)}E.sort(function(O,I){var N=O.x-I.x;return N||(N=O.create-I.create,N)?N:Math.min(O.segment[0][1],O.segment[1][1])-Math.min(I.segment[0][1],I.segment[1][1])});for(var u=a(n),y=[],f=[],P=[],L=-1/0,m=0;m<S;){for(var z=E[m].x,F=[];m<S;){var B=E[m];if(B.x!==z)break;m+=1,B.segment[0][0]===B.x&&B.segment[1][0]===B.x?B.create&&(B.segment[0][1]<B.segment[1][1]?(F.push(new p(B.segment[0][1],B.index,!0,!0)),F.push(new p(B.segment[1][1],B.index,!1,!1))):(F.push(new p(B.segment[1][1],B.index,!0,!1)),F.push(new p(B.segment[0][1],B.index,!1,!0)))):B.create?u=u.insert(B.segment,B.index):u=u.remove(B.segment)}y.push(u.root),f.push(z),P.push(F)}return new s(y,f,P)}},5202:function(e,t,r){"use strict";var o=r(1944),a=r(8210);e.exports=s,e.exports.positive=c,e.exports.negative=h;function i(v,p){var T=a(o(v,p),[p[p.length-1]]);return T[T.length-1]}function n(v,p,T,l){var _=l-p,w=-p/_;w<0?w=0:w>1&&(w=1);for(var S=1-w,E=v.length,m=new Array(E),b=0;b<E;++b)m[b]=w*v[b]+S*T[b];return m}function s(v,p){for(var T=[],l=[],_=i(v[v.length-1],p),w=v[v.length-1],S=v[0],E=0;E<v.length;++E,w=S){S=v[E];var m=i(S,p);if(_<0&&m>0||_>0&&m<0){var b=n(w,m,S,_);T.push(b),l.push(b.slice())}m<0?l.push(S.slice()):m>0?T.push(S.slice()):(T.push(S.slice()),l.push(S.slice())),_=m}return{positive:T,negative:l}}function c(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S<v.length;++S,_=w){w=v[S];var E=i(w,p);(l<0&&E>0||l>0&&E<0)&&T.push(n(_,E,w,l)),E>=0&&T.push(w.slice()),l=E}return T}function h(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S<v.length;++S,_=w){w=v[S];var E=i(w,p);(l<0&&E>0||l>0&&E<0)&&T.push(n(_,E,w,l)),E<=0&&T.push(w.slice()),l=E}return T}},3387:function(e,t,r){var o;(function(){"use strict";var a={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function i(v){return s(h(v),arguments)}function n(v,p){return i.apply(null,[v].concat(p||[]))}function s(v,p){var T=1,l=v.length,_,w="",S,E,m,b,d,u,y,f;for(S=0;S<l;S++)if(typeof v[S]=="string")w+=v[S];else if(typeof v[S]=="object"){if(m=v[S],m.keys)for(_=p[T],E=0;E<m.keys.length;E++){if(_==null)throw new Error(i('[sprintf] Cannot access property "%s" of undefined value "%s"',m.keys[E],m.keys[E-1]));_=_[m.keys[E]]}else m.param_no?_=p[m.param_no]:_=p[T++];if(a.not_type.test(m.type)&&a.not_primitive.test(m.type)&&_ instanceof Function&&(_=_()),a.numeric_arg.test(m.type)&&typeof _!="number"&&isNaN(_))throw new TypeError(i("[sprintf] expecting number but found %T",_));switch(a.number.test(m.type)&&(y=_>=0),m.type){case"b":_=parseInt(_,10).toString(2);break;case"c":_=String.fromCharCode(parseInt(_,10));break;case"d":case"i":_=parseInt(_,10);break;case"j":_=JSON.stringify(_,null,m.width?parseInt(m.width):0);break;case"e":_=m.precision?parseFloat(_).toExponential(m.precision):parseFloat(_).toExponential();break;case"f":_=m.precision?parseFloat(_).toFixed(m.precision):parseFloat(_);break;case"g":_=m.precision?String(Number(_.toPrecision(m.precision))):parseFloat(_);break;case"o":_=(parseInt(_,10)>>>0).toString(8);break;case"s":_=String(_),_=m.precision?_.substring(0,m.precision):_;break;case"t":_=String(!!_),_=m.precision?_.substring(0,m.precision):_;break;case"T":_=Object.prototype.toString.call(_).slice(8,-1).toLowerCase(),_=m.precision?_.substring(0,m.precision):_;break;case"u":_=parseInt(_,10)>>>0;break;case"v":_=_.valueOf(),_=m.precision?_.substring(0,m.precision):_;break;case"x":_=(parseInt(_,10)>>>0).toString(16);break;case"X":_=(parseInt(_,10)>>>0).toString(16).toUpperCase();break}a.json.test(m.type)?w+=_:(a.number.test(m.type)&&(!y||m.sign)?(f=y?"+":"-",_=_.toString().replace(a.sign,"")):f="",d=m.pad_char?m.pad_char==="0"?"0":m.pad_char.charAt(1):" ",u=m.width-(f+_).length,b=m.width&&u>0?d.repeat(u):"",w+=m.align?f+_+b:d==="0"?f+b+_:b+f+_)}return w}var c=Object.create(null);function h(v){if(c[v])return c[v];for(var p=v,T,l=[],_=0;p;){if((T=a.text.exec(p))!==null)l.push(T[0]);else if((T=a.modulo.exec(p))!==null)l.push("%");else if((T=a.placeholder.exec(p))!==null){if(T[2]){_|=1;var w=[],S=T[2],E=[];if((E=a.key.exec(S))!==null)for(w.push(E[1]);(S=S.substring(E[0].length))!=="";)if((E=a.key_access.exec(S))!==null)w.push(E[1]);else if((E=a.index_access.exec(S))!==null)w.push(E[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=w}else _|=2;if(_===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");l.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");p=p.substring(T[0].length)}return c[v]=l}t.sprintf=i,t.vsprintf=n,typeof window<"u"&&(window.sprintf=i,window.vsprintf=n,o=function(){return{sprintf:i,vsprintf:n}}.call(t,r,t,e),o!==void 0&&(e.exports=o))})()},3711:function(e,t,r){"use strict";e.exports=h;var o=r(2640),a=r(781),i={"2d":function(v,p,T){var l=v({order:p,scalarArguments:3,getters:T==="generic"?[0]:void 0,phase:function(w,S,E,m){return w>m|0},vertex:function(w,S,E,m,b,d,u,y,f,P,L,z,F){var B=(u<<0)+(y<<1)+(f<<2)+(P<<3)|0;if(!(B===0||B===15))switch(B){case 0:L.push([w-.5,S-.5]);break;case 1:L.push([w-.25-.25*(m+E-2*F)/(E-m),S-.25-.25*(b+E-2*F)/(E-b)]);break;case 2:L.push([w-.75-.25*(-m-E+2*F)/(m-E),S-.25-.25*(d+m-2*F)/(m-d)]);break;case 3:L.push([w-.5,S-.5-.5*(b+E+d+m-4*F)/(E-b+m-d)]);break;case 4:L.push([w-.25-.25*(d+b-2*F)/(b-d),S-.75-.25*(-b-E+2*F)/(b-E)]);break;case 5:L.push([w-.5-.5*(m+E+d+b-4*F)/(E-m+b-d),S-.5]);break;case 6:L.push([w-.5-.25*(-m-E+d+b)/(m-E+b-d),S-.5-.25*(-b-E+d+m)/(b-E+m-d)]);break;case 7:L.push([w-.75-.25*(d+b-2*F)/(b-d),S-.75-.25*(d+m-2*F)/(m-d)]);break;case 8:L.push([w-.75-.25*(-d-b+2*F)/(d-b),S-.75-.25*(-d-m+2*F)/(d-m)]);break;case 9:L.push([w-.5-.25*(m+E+-d-b)/(E-m+d-b),S-.5-.25*(b+E+-d-m)/(E-b+d-m)]);break;case 10:L.push([w-.5-.5*(-m-E+-d-b+4*F)/(m-E+d-b),S-.5]);break;case 11:L.push([w-.25-.25*(-d-b+2*F)/(d-b),S-.75-.25*(b+E-2*F)/(E-b)]);break;case 12:L.push([w-.5,S-.5-.5*(-b-E+-d-m+4*F)/(b-E+d-m)]);break;case 13:L.push([w-.75-.25*(m+E-2*F)/(E-m),S-.25-.25*(-d-m+2*F)/(d-m)]);break;case 14:L.push([w-.25-.25*(-m-E+2*F)/(m-E),S-.25-.25*(-b-E+2*F)/(b-E)]);break;case 15:L.push([w-.5,S-.5]);break}},cell:function(w,S,E,m,b,d,u,y,f){b?y.push([w,S]):y.push([S,w])}});return function(_,w){var S=[],E=[];return l(_,S,E,w),{positions:S,cells:E}}}};function n(v,p){var T=v.length+"d",l=i[T];if(l)return l(o,v,p)}function s(v,p){for(var T=a(v,p),l=T.length,_=new Array(l),w=new Array(l),S=0;S<l;++S)_[S]=[T[S]],w[S]=[S];return{positions:_,cells:w}}var c={};function h(v,_){if(v.dimension<=0)return{positions:[],cells:[]};if(v.dimension===1)return s(v,_);var T=v.order.join()+"-"+v.dtype,l=c[T],_=+_||0;return l||(l=c[T]=n(v.order,v.dtype)),l(v,_)}},665:function(e,t,r){"use strict";var o=r(3202);e.exports=s;var a=96;function i(c,h){var v=o(getComputedStyle(c).getPropertyValue(h));return v[0]*s(v[1],c)}function n(c,h){var v=document.createElement("div");v.style["font-size"]="128"+c,h.appendChild(v);var p=i(v,"font-size")/128;return h.removeChild(v),p}function s(c,h){switch(h=h||document.body,c=(c||"px").trim().toLowerCase(),(h===window||h===document)&&(h=document.body),c){case"%":return h.clientHeight/100;case"ch":case"ex":return n(c,h);case"em":return i(h,"font-size");case"rem":return i(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return a;case"cm":return a/2.54;case"mm":return a/25.4;case"pt":return a/72;case"pc":return a/6}return 1}},7261:function(e,t,r){"use strict";e.exports=w;var o=r(9215),a=r(7608),i=r(6079),n=r(5911),s=r(3536),c=r(244);function h(S,E,m){return Math.sqrt(Math.pow(S,2)+Math.pow(E,2)+Math.pow(m,2))}function v(S){return Math.min(1,Math.max(-1,S))}function p(S){var E=Math.abs(S[0]),m=Math.abs(S[1]),b=Math.abs(S[2]),d=[0,0,0];E>Math.max(m,b)?d[2]=1:m>Math.max(E,b)?d[0]=1:d[1]=1;for(var u=0,y=0,f=0;f<3;++f)u+=S[f]*S[f],y+=d[f]*S[f];for(var f=0;f<3;++f)d[f]-=y/u*S[f];return s(d,d),d}function T(S,E,m,b,d,u,y,f){this.center=o(m),this.up=o(b),this.right=o(d),this.radius=o([u]),this.angle=o([y,f]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,E),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var P=0;P<16;++P)this.computedMatrix[P]=.5;this.recalcMatrix(0)}var l=T.prototype;l.setDistanceLimits=function(S,E){S>0?S=Math.log(S):S=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=E},l.getDistanceLimits=function(S){var E=this.radius.bounds[0];return S?(S[0]=Math.exp(E[0][0]),S[1]=Math.exp(E[1][0]),S):[Math.exp(E[0][0]),Math.exp(E[1][0])]},l.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var E=this.computedUp,m=this.computedRight,b=0,d=0,u=0;u<3;++u)d+=E[u]*m[u],b+=E[u]*E[u];for(var y=Math.sqrt(b),f=0,u=0;u<3;++u)m[u]-=E[u]*d/b,f+=m[u]*m[u],E[u]/=y;for(var P=Math.sqrt(f),u=0;u<3;++u)m[u]/=P;var L=this.computedToward;n(L,E,m),s(L,L);for(var z=Math.exp(this.computedRadius[0]),F=this.computedAngle[0],B=this.computedAngle[1],O=Math.cos(F),I=Math.sin(F),N=Math.cos(B),U=Math.sin(B),W=this.computedCenter,Q=O*N,ue=I*N,se=U,he=-O*U,G=-I*U,$=N,J=this.computedEye,Z=this.computedMatrix,u=0;u<3;++u){var re=Q*m[u]+ue*L[u]+se*E[u];Z[4*u+1]=he*m[u]+G*L[u]+$*E[u],Z[4*u+2]=re,Z[4*u+3]=0}var ne=Z[1],j=Z[5],ee=Z[9],ie=Z[2],fe=Z[6],be=Z[10],Ae=j*be-ee*fe,Be=ee*ie-ne*be,Ie=ne*fe-j*ie,Ze=h(Ae,Be,Ie);Ae/=Ze,Be/=Ze,Ie/=Ze,Z[0]=Ae,Z[4]=Be,Z[8]=Ie;for(var u=0;u<3;++u)J[u]=W[u]+Z[2+4*u]*z;for(var u=0;u<3;++u){for(var f=0,at=0;at<3;++at)f+=Z[u+4*at]*J[at];Z[12+u]=-f}Z[15]=1},l.getMatrix=function(S,E){this.recalcMatrix(S);var m=this.computedMatrix;if(E){for(var b=0;b<16;++b)E[b]=m[b];return E}return m};var _=[0,0,0];l.rotate=function(S,E,m,b){if(this.angle.move(S,E,m),b){this.recalcMatrix(S);var d=this.computedMatrix;_[0]=d[2],_[1]=d[6],_[2]=d[10];for(var u=this.computedUp,y=this.computedRight,f=this.computedToward,P=0;P<3;++P)d[4*P]=u[P],d[4*P+1]=y[P],d[4*P+2]=f[P];i(d,d,b,_);for(var P=0;P<3;++P)u[P]=d[4*P],y[P]=d[4*P+1];this.up.set(S,u[0],u[1],u[2]),this.right.set(S,y[0],y[1],y[2])}},l.pan=function(S,E,m,b){E=E||0,m=m||0,b=b||0,this.recalcMatrix(S);var d=this.computedMatrix,u=Math.exp(this.computedRadius[0]),y=d[1],f=d[5],P=d[9],L=h(y,f,P);y/=L,f/=L,P/=L;var z=d[0],F=d[4],B=d[8],O=z*y+F*f+B*P;z-=y*O,F-=f*O,B-=P*O;var I=h(z,F,B);z/=I,F/=I,B/=I;var N=z*E+y*m,U=F*E+f*m,W=B*E+P*m;this.center.move(S,N,U,W);var Q=Math.exp(this.computedRadius[0]);Q=Math.max(1e-4,Q+b),this.radius.set(S,Math.log(Q))},l.translate=function(S,E,m,b){this.center.move(S,E||0,m||0,b||0)},l.setMatrix=function(S,E,m,b){var d=1;typeof m=="number"&&(d=m|0),(d<0||d>3)&&(d=1);var u=(d+2)%3,y=(d+1)%3;E||(this.recalcMatrix(S),E=this.computedMatrix);var f=E[d],P=E[d+4],L=E[d+8];if(b){var F=Math.abs(f),B=Math.abs(P),O=Math.abs(L),I=Math.max(F,B,O);F===I?(f=f<0?-1:1,P=L=0):O===I?(L=L<0?-1:1,f=P=0):(P=P<0?-1:1,f=L=0)}else{var z=h(f,P,L);f/=z,P/=z,L/=z}var N=E[u],U=E[u+4],W=E[u+8],Q=N*f+U*P+W*L;N-=f*Q,U-=P*Q,W-=L*Q;var ue=h(N,U,W);N/=ue,U/=ue,W/=ue;var se=P*W-L*U,he=L*N-f*W,G=f*U-P*N,$=h(se,he,G);se/=$,he/=$,G/=$,this.center.jump(S,ge,ce,ze),this.radius.idle(S),this.up.jump(S,f,P,L),this.right.jump(S,N,U,W);var J,Z;if(d===2){var re=E[1],ne=E[5],j=E[9],ee=re*N+ne*U+j*W,ie=re*se+ne*he+j*G;Be<0?J=-Math.PI/2:J=Math.PI/2,Z=Math.atan2(ie,ee)}else{var fe=E[2],be=E[6],Ae=E[10],Be=fe*f+be*P+Ae*L,Ie=fe*N+be*U+Ae*W,Ze=fe*se+be*he+Ae*G;J=Math.asin(v(Be)),Z=Math.atan2(Ze,Ie)}this.angle.jump(S,Z,J),this.recalcMatrix(S);var at=E[2],it=E[6],et=E[10],lt=this.computedMatrix;a(lt,E);var Me=lt[15],ge=lt[12]/Me,ce=lt[13]/Me,ze=lt[14]/Me,tt=Math.exp(this.computedRadius[0]);this.center.jump(S,ge-at*tt,ce-it*tt,ze-et*tt)},l.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},l.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},l.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},l.setDistance=function(S,E){E>0&&this.radius.set(S,Math.log(E))},l.lookAt=function(S,E,m,b){this.recalcMatrix(S),E=E||this.computedEye,m=m||this.computedCenter,b=b||this.computedUp;var d=b[0],u=b[1],y=b[2],f=h(d,u,y);if(!(f<1e-6)){d/=f,u/=f,y/=f;var P=E[0]-m[0],L=E[1]-m[1],z=E[2]-m[2],F=h(P,L,z);if(!(F<1e-6)){P/=F,L/=F,z/=F;var B=this.computedRight,O=B[0],I=B[1],N=B[2],U=d*O+u*I+y*N;O-=U*d,I-=U*u,N-=U*y;var W=h(O,I,N);if(!(W<.01&&(O=u*z-y*L,I=y*P-d*z,N=d*L-u*P,W=h(O,I,N),W<1e-6))){O/=W,I/=W,N/=W,this.up.set(S,d,u,y),this.right.set(S,O,I,N),this.center.set(S,m[0],m[1],m[2]),this.radius.set(S,Math.log(F));var Q=u*N-y*I,ue=y*O-d*N,se=d*I-u*O,he=h(Q,ue,se);Q/=he,ue/=he,se/=he;var G=d*P+u*L+y*z,$=O*P+I*L+N*z,J=Q*P+ue*L+se*z,Z=Math.asin(v(G)),re=Math.atan2(J,$),ne=this.angle._state,j=ne[ne.length-1],ee=ne[ne.length-2];j=j%(2*Math.PI);var ie=Math.abs(j+2*Math.PI-re),fe=Math.abs(j-re),be=Math.abs(j-2*Math.PI-re);ie<fe&&(j+=2*Math.PI),be<fe&&(j-=2*Math.PI),this.angle.jump(this.angle.lastT(),j,ee),this.angle.set(S,re,Z)}}}};function w(S){S=S||{};var E=S.center||[0,0,0],m=S.up||[0,1,0],b=S.right||p(m),d=S.radius||1,u=S.theta||0,y=S.phi||0;if(E=[].slice.call(E,0,3),m=[].slice.call(m,0,3),s(m,m),b=[].slice.call(b,0,3),s(b,b),"eye"in S){var f=S.eye,P=[f[0]-E[0],f[1]-E[1],f[2]-E[2]];n(b,P,m),h(b[0],b[1],b[2])<1e-6?b=p(m):s(b,b),d=h(P[0],P[1],P[2]);var L=c(m,P)/d,z=c(b,P)/d;y=Math.acos(L),u=Math.acos(z)}return d=Math.log(d),new T(S.zoomMin,S.zoomMax,E,m,b,d,u,y)}},5250:function(e){"use strict";e.exports=r;var t=+(Math.pow(2,27)+1);function r(o,a,i){var n=o*a,s=t*o,c=s-o,h=s-c,v=o-h,p=t*a,T=p-a,l=p-T,_=a-l,w=n-h*l,S=w-v*l,E=S-h*_,m=v*_-E;return i?(i[0]=m,i[1]=n,i):[m,n]}},9362:function(e){"use strict";e.exports=t;function t(r,o,a){var i=r+o,n=i-r,s=i-n,c=o-n,h=r-s;return a?(a[0]=h+c,a[1]=i,a):[h+c,i]}},1888:function(e,t,r){"use strict";var o=r(8828),a=r(1338),i=r(4793).hp;r.g.__TYPEDARRAY_POOL||(r.g.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),BIGUINT64:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),BIGINT64:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var n=typeof Uint8ClampedArray<"u",s=typeof BigUint64Array<"u",c=typeof BigInt64Array<"u",h=r.g.__TYPEDARRAY_POOL;h.UINT8C||(h.UINT8C=a([32,0])),h.BIGUINT64||(h.BIGUINT64=a([32,0])),h.BIGINT64||(h.BIGINT64=a([32,0])),h.BUFFER||(h.BUFFER=a([32,0]));var v=h.DATA,p=h.BUFFER;t.free=function(O){if(i.isBuffer(O))p[o.log2(O.length)].push(O);else{if(Object.prototype.toString.call(O)!=="[object ArrayBuffer]"&&(O=O.buffer),!O)return;var I=O.length||O.byteLength,N=o.log2(I)|0;v[N].push(O)}};function T(B){if(B){var O=B.length||B.byteLength,I=o.log2(O);v[I].push(B)}}function l(B){T(B.buffer)}t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=l,t.freeArrayBuffer=T,t.freeBuffer=function(O){p[o.log2(O.length)].push(O)},t.malloc=function(O,I){if(I===void 0||I==="arraybuffer")return _(O);switch(I){case"uint8":return w(O);case"uint16":return S(O);case"uint32":return E(O);case"int8":return m(O);case"int16":return b(O);case"int32":return d(O);case"float":case"float32":return u(O);case"double":case"float64":return y(O);case"uint8_clamped":return f(O);case"bigint64":return L(O);case"biguint64":return P(O);case"buffer":return F(O);case"data":case"dataview":return z(O);default:return null}return null};function _(O){var O=o.nextPow2(O),I=o.log2(O),N=v[I];return N.length>0?N.pop():new ArrayBuffer(O)}t.mallocArrayBuffer=_;function w(B){return new Uint8Array(_(B),0,B)}t.mallocUint8=w;function S(B){return new Uint16Array(_(2*B),0,B)}t.mallocUint16=S;function E(B){return new Uint32Array(_(4*B),0,B)}t.mallocUint32=E;function m(B){return new Int8Array(_(B),0,B)}t.mallocInt8=m;function b(B){return new Int16Array(_(2*B),0,B)}t.mallocInt16=b;function d(B){return new Int32Array(_(4*B),0,B)}t.mallocInt32=d;function u(B){return new Float32Array(_(4*B),0,B)}t.mallocFloat32=t.mallocFloat=u;function y(B){return new Float64Array(_(8*B),0,B)}t.mallocFloat64=t.mallocDouble=y;function f(B){return n?new Uint8ClampedArray(_(B),0,B):w(B)}t.mallocUint8Clamped=f;function P(B){return s?new BigUint64Array(_(8*B),0,B):null}t.mallocBigUint64=P;function L(B){return c?new BigInt64Array(_(8*B),0,B):null}t.mallocBigInt64=L;function z(B){return new DataView(_(B),0,B)}t.mallocDataView=z;function F(B){B=o.nextPow2(B);var O=o.log2(B),I=p[O];return I.length>0?I.pop():new i(B)}t.mallocBuffer=F,t.clearCache=function(){for(var O=0;O<32;++O)h.UINT8[O].length=0,h.UINT16[O].length=0,h.UINT32[O].length=0,h.INT8[O].length=0,h.INT16[O].length=0,h.INT32[O].length=0,h.FLOAT[O].length=0,h.DOUBLE[O].length=0,h.BIGUINT64[O].length=0,h.BIGINT64[O].length=0,h.UINT8C[O].length=0,v[O].length=0,p[O].length=0}},1755:function(e){"use strict";"use restrict";e.exports=t;function t(o){this.roots=new Array(o),this.ranks=new Array(o);for(var a=0;a<o;++a)this.roots[a]=a,this.ranks[a]=0}var r=t.prototype;Object.defineProperty(r,"length",{get:function(){return this.roots.length}}),r.makeSet=function(){var o=this.roots.length;return this.roots.push(o),this.ranks.push(0),o},r.find=function(o){for(var a=o,i=this.roots;i[o]!==o;)o=i[o];for(;i[a]!==o;){var n=i[a];i[a]=o,a=n}return o},r.link=function(o,a){var i=this.find(o),n=this.find(a);if(i!==n){var s=this.ranks,c=this.roots,h=s[i],v=s[n];h<v?c[i]=n:v<h?c[n]=i:(c[n]=i,++s[i])}}},1682:function(e){"use strict";function t(a,i){for(var n=1,s=a.length,c=a[0],h=a[0],v=1;v<s;++v)if(h=c,c=a[v],i(c,h)){if(v===n){n++;continue}a[n++]=c}return a.length=n,a}function r(a){for(var i=1,n=a.length,s=a[0],c=a[0],h=1;h<n;++h,c=s)if(c=s,s=a[h],s!==c){if(h===i){i++;continue}a[i++]=s}return a.length=i,a}function o(a,i,n){return a.length===0?a:i?(n||a.sort(i),t(a,i)):(n||a.sort(),r(a))}e.exports=o},4359:function(e,t,r){"use strict";e.exports=n;var o=r(7718),a=null,i=null;typeof document<"u"&&(a=document.createElement("canvas"),a.width=8192,a.height=1024,i=a.getContext("2d"));function n(s,c){return(typeof c!="object"||c===null)&&(c={}),o(s,c.canvas||a,c.context||i,c)}},7718:function(e,t,r){e.exports=L,e.exports.processPixels=P;var o=r(3711),a=r(9618),i=r(5878),n=r(332),s=r(2538),c=r(2095),h="b",v="b|",p="i",T="i|",l="sup",_="+",w="+1",S="sub",E="-",m="-1";function b(z,F,B,O){for(var I="<"+z+">",N="</"+z+">",U=I.length,W=N.length,Q=F[0]===_||F[0]===E,ue=0,se=-W;ue>-1&&(ue=B.indexOf(I,ue),!(ue===-1||(se=B.indexOf(N,ue+U),se===-1)||se<=ue));){for(var he=ue;he<se+W;++he)if(he<ue+U||he>=se)O[he]=null,B=B.substr(0,he)+" "+B.substr(he+1);else if(O[he]!==null){var G=O[he].indexOf(F[0]);G===-1?O[he]+=F:Q&&(O[he]=O[he].substr(0,G+1)+(1+parseInt(O[he][G+1]))+O[he].substr(G+2))}var $=ue+U,J=B.substr($,se-$),Z=J.indexOf(I);Z!==-1?ue=Z:ue=se+W}return O}function d(z,F,B){for(var O=F.textAlign||"start",I=F.textBaseline||"alphabetic",N=[1<<30,1<<30],U=[0,0],W=z.length,Q=0;Q<W;++Q)for(var ue=z[Q],se=0;se<2;++se)N[se]=Math.min(N[se],ue[se])|0,U[se]=Math.max(U[se],ue[se])|0;var he=0;switch(O){case"center":he=-.5*(N[0]+U[0]);break;case"right":case"end":he=-U[0];break;case"left":case"start":he=-N[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+O+"'")}var G=0;switch(I){case"hanging":case"top":G=-N[1];break;case"middle":G=-.5*(N[1]+U[1]);break;case"alphabetic":case"ideographic":G=-3*B;break;case"bottom":G=-U[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+I+"'")}var $=1/B;return"lineHeight"in F?$*=+F.lineHeight:"width"in F?$=F.width/(U[0]-N[0]):"height"in F&&($=F.height/(U[1]-N[1])),z.map(function(J){return[$*(J[0]+he),$*(J[1]+G)]})}function u(z,F,B,O,I,N){B=B.replace(/\n/g,""),N.breaklines===!0?B=B.replace(/\<br\>/g,`
`):B=B.replace(/\<br\>/g," ");var U="",W=[];for(j=0;j<B.length;++j)W[j]=U;N.bolds===!0&&(W=b(h,v,B,W)),N.italics===!0&&(W=b(p,T,B,W)),N.superscripts===!0&&(W=b(l,w,B,W)),N.subscripts===!0&&(W=b(S,m,B,W));var Q=[],ue="";for(j=0;j<B.length;++j)W[j]!==null&&(ue+=B[j],Q.push(W[j]));var se=ue.split(`
`),he=se.length,G=Math.round(I*O),$=O,J=O*2,Z=0,re=he*G+J;z.height<re&&(z.height=re),F.fillStyle="#000",F.fillRect(0,0,z.width,z.height),F.fillStyle="#fff";var ne,j,ee,ie,fe,be=0,Ae="";function Be(){if(Ae!==""){var ce=F.measureText(Ae).width;F.fillText(Ae,$+ee,J+ie),ee+=ce}}function Ie(){return""+Math.round(fe)+"px "}function Ze(ce,ze){var tt=""+F.font;if(N.subscripts===!0){var nt=ce.indexOf(E),Qe=ze.indexOf(E),Ct=nt>-1?parseInt(ce[1+nt]):0,St=Qe>-1?parseInt(ze[1+Qe]):0;Ct!==St&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,St-Ct),tt=tt.replace("?px ",Ie())),ie+=.25*G*(St-Ct)}if(N.superscripts===!0){var Ot=ce.indexOf(_),jt=ze.indexOf(_),ur=Ot>-1?parseInt(ce[1+Ot]):0,ar=jt>-1?parseInt(ze[1+jt]):0;ur!==ar&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,ar-ur),tt=tt.replace("?px ",Ie())),ie-=.25*G*(ar-ur)}if(N.bolds===!0){var Cr=ce.indexOf(v)>-1,vr=ze.indexOf(v)>-1;!Cr&&vr&&(_r?tt=tt.replace("italic ","italic bold "):tt="bold "+tt),Cr&&!vr&&(tt=tt.replace("bold ",""))}if(N.italics===!0){var _r=ce.indexOf(T)>-1,yt=ze.indexOf(T)>-1;!_r&&yt&&(tt="italic "+tt),_r&&!yt&&(tt=tt.replace("italic ",""))}F.font=tt}for(ne=0;ne<he;++ne){var at=se[ne]+`
`;for(ee=0,ie=ne*G,fe=O,Ae="",j=0;j<at.length;++j){var it=j+be<Q.length?Q[j+be]:Q[Q.length-1];U===it?Ae+=at[j]:(Be(),Ae=at[j],it!==void 0&&(Ze(U,it),U=it))}Be(),be+=at.length;var et=Math.round(ee+2*$)|0;Z<et&&(Z=et)}var lt=Z,Me=J+G*he,ge=a(F.getImageData(0,0,lt,Me).data,[Me,lt,4]);return ge.pick(-1,-1,0).transpose(1,0)}function y(z,F){var B=o(z,128);return F?i(B.cells,B.positions,.25):{edges:B.cells,positions:B.positions}}function f(z,F,B,O){var I=y(z,O),N=d(I.positions,F,B),U=I.edges,W=F.orientation==="ccw";if(n(N,U),F.polygons||F.polygon||F.polyline){for(var Q=c(U,N),ue=new Array(Q.length),se=0;se<Q.length;++se){for(var he=Q[se],G=new Array(he.length),$=0;$<he.length;++$){for(var J=he[$],Z=new Array(J.length),re=0;re<J.length;++re)Z[re]=N[J[re]].slice();W&&Z.reverse(),G[$]=Z}ue[se]=G}return ue}else return F.triangles||F.triangulate||F.triangle?{cells:s(N,U,{delaunay:!1,exterior:!1,interior:!0}),positions:N}:{edges:U,positions:N}}function P(z,F,B){try{return f(z,F,B,!0)}catch{}try{return f(z,F,B,!1)}catch{}return F.polygons||F.polyline||F.polygon?[]:F.triangles||F.triangulate||F.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function L(z,F,B,O){var I=64,N=1.25,U={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};O&&(O.size&&O.size>0&&(I=O.size),O.lineSpacing&&O.lineSpacing>0&&(N=O.lineSpacing),O.styletags&&O.styletags.breaklines&&(U.breaklines=!!O.styletags.breaklines),O.styletags&&O.styletags.bolds&&(U.bolds=!!O.styletags.bolds),O.styletags&&O.styletags.italics&&(U.italics=!!O.styletags.italics),O.styletags&&O.styletags.subscripts&&(U.subscripts=!!O.styletags.subscripts),O.styletags&&O.styletags.superscripts&&(U.superscripts=!!O.styletags.superscripts)),B.font=[O.fontStyle,O.fontVariant,O.fontWeight,I+"px",O.font].filter(function(Q){return Q}).join(" "),B.textAlign="start",B.textBaseline="alphabetic",B.direction="ltr";var W=u(F,B,z,I,N,U);return P(W,O,I)}},1538:function(e){(function(){"use strict";if(typeof ses<"u"&&ses.ok&&!ses.ok())return;function r(f){f.permitHostObjects___&&f.permitHostObjects___(r)}typeof ses<"u"&&(ses.weakMapPermitHostObjects=r);var o=!1;if(typeof WeakMap=="function"){var a=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var i=new a,n=Object.freeze({});if(i.set(n,1),i.get(n)!==1)o=!0;else{e.exports=WeakMap;return}}}var s=Object.prototype.hasOwnProperty,c=Object.getOwnPropertyNames,h=Object.defineProperty,v=Object.isExtensible,p="weakmap:",T=p+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var l=new ArrayBuffer(25),_=new Uint8Array(l);crypto.getRandomValues(_),T=p+"rand:"+Array.prototype.map.call(_,function(f){return(f%36).toString(36)}).join("")+"___"}function w(f){return!(f.substr(0,p.length)==p&&f.substr(f.length-3)==="___")}if(h(Object,"getOwnPropertyNames",{value:function(P){return c(P).filter(w)}}),"getPropertyNames"in Object){var S=Object.getPropertyNames;h(Object,"getPropertyNames",{value:function(P){return S(P).filter(w)}})}function E(f){if(f!==Object(f))throw new TypeError("Not an object: "+f);var P=f[T];if(P&&P.key===f)return P;if(v(f)){P={key:f};try{return h(f,T,{value:P,writable:!1,enumerable:!1,configurable:!1}),P}catch{return}}}(function(){var f=Object.freeze;h(Object,"freeze",{value:function(F){return E(F),f(F)}});var P=Object.seal;h(Object,"seal",{value:function(F){return E(F),P(F)}});var L=Object.preventExtensions;h(Object,"preventExtensions",{value:function(F){return E(F),L(F)}})})();function m(f){return f.prototype=null,Object.freeze(f)}var b=!1;function d(){!b&&typeof console<"u"&&(b=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var u=0,y=function(){this instanceof y||d();var f=[],P=[],L=u++;function z(I,N){var U,W=E(I);return W?L in W?W[L]:N:(U=f.indexOf(I),U>=0?P[U]:N)}function F(I){var N=E(I);return N?L in N:f.indexOf(I)>=0}function B(I,N){var U,W=E(I);return W?W[L]=N:(U=f.indexOf(I),U>=0?P[U]=N:(U=f.length,P[U]=N,f[U]=I)),this}function O(I){var N=E(I),U,W;return N?L in N&&delete N[L]:(U=f.indexOf(I),U<0?!1:(W=f.length-1,f[U]=void 0,P[U]=P[W],f[U]=f[W],f.length=W,P.length=W,!0))}return Object.create(y.prototype,{get___:{value:m(z)},has___:{value:m(F)},set___:{value:m(B)},delete___:{value:m(O)}})};y.prototype=Object.create(Object.prototype,{get:{value:function(P,L){return this.get___(P,L)},writable:!0,configurable:!0},has:{value:function(P){return this.has___(P)},writable:!0,configurable:!0},set:{value:function(P,L){return this.set___(P,L)},writable:!0,configurable:!0},delete:{value:function(P){return this.delete___(P)},writable:!0,configurable:!0}}),typeof a=="function"?function(){o&&typeof Proxy<"u"&&(Proxy=void 0);function f(){this instanceof y||d();var P=new a,L=void 0,z=!1;function F(N,U){return L?P.has(N)?P.get(N):L.get___(N,U):P.get(N,U)}function B(N){return P.has(N)||(L?L.has___(N):!1)}var O;o?O=function(N,U){return P.set(N,U),P.has(N)||(L||(L=new y),L.set(N,U)),this}:O=function(N,U){if(z)try{P.set(N,U)}catch{L||(L=new y),L.set___(N,U)}else P.set(N,U);return this};function I(N){var U=!!P.delete(N);return L&&L.delete___(N)||U}return Object.create(y.prototype,{get___:{value:m(F)},has___:{value:m(B)},set___:{value:m(O)},delete___:{value:m(I)},permitHostObjects___:{value:m(function(N){if(N===r)z=!0;else throw new Error("bogus call to permitHostObjects___")})}})}f.prototype=y.prototype,e.exports=f,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),e.exports=y)})()},236:function(e,t,r){var o=r(8284);e.exports=a;function a(){var i={};return function(n){if((typeof n!="object"||n===null)&&typeof n!="function")throw new Error("Weakmap-shim: Key must be object");var s=n.valueOf(i);return s&&s.identity===i?s:o(n,i)}}},8284:function(e){e.exports=t;function t(r,o){var a={identity:o},i=r.valueOf;return Object.defineProperty(r,"valueOf",{value:function(n){return n!==o?i.apply(this,arguments):a},writable:!0}),a}},606:function(e,t,r){var o=r(236);e.exports=a;function a(){var i=o();return{get:function(n,s){var c=i(n);return c.hasOwnProperty("value")?c.value:s},set:function(n,s){return i(n).value=s,this},has:function(n){return"value"in i(n)},delete:function(n){return delete i(n).value}}}},3349:function(e){"use strict";function t(){return function(s,c,h,v,p,T){var l=s[0],_=h[0],w=[0],S=_;v|=0;var E=0,m=_;for(E=0;E<l;++E){{var b=c[v]-T,d=c[v+S]-T;b>=0!=d>=0&&p.push(w[0]+.5+.5*(b+d)/(b-d))}v+=m,++w[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p,T){var l=v.dtype,_=v.order,w=[l,_.join()].join(),S=c[w];return S||(c[w]=S=s([l,_])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,p,T)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"zeroCrossings"})},781:function(e,t,r){"use strict";e.exports=a;var o=r(3349);function a(i,n){var s=[];return n=+n||0,o(i.hi(i.shape[0]-1),s,n),s}},7790:function(){}},x={};function A(e){var t=x[e];if(t!==void 0)return t.exports;var r=x[e]={id:e,loaded:!1,exports:{}};return g[e].call(r.exports,r,r.exports,A),r.loaded=!0,r.exports}(function(){A.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()})(),function(){A.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e}}();var M=A(1964);H.exports=M})()}}),d5=Ye({"node_modules/color-name/index.js"(X,H){"use strict";H.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),EN=Ye({"node_modules/color-normalize/node_modules/color-parse/index.js"(X,H){"use strict";var g=d5();H.exports=A;var x={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function A(M){var e,t=[],r=1,o;if(typeof M=="string")if(M=M.toLowerCase(),g[M])t=g[M].slice(),o="rgb";else if(M==="transparent")r=0,o="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(M)){var a=M.slice(1),i=a.length,n=i<=4;r=1,n?(t=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],i===4&&(r=parseInt(a[3]+a[3],16)/255)):(t=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],i===8&&(r=parseInt(a[6]+a[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),o="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(M)){var s=e[1],c=s==="rgb",a=s.replace(/a$/,"");o=a;var i=a==="cmyk"?4:a==="gray"?1:3;t=e[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(p,T){if(/%$/.test(p))return T===i?parseFloat(p)/100:a==="rgb"?parseFloat(p)*255/100:parseFloat(p);if(a[T]==="h"){if(/deg$/.test(p))return parseFloat(p);if(x[p]!==void 0)return x[p]}return parseFloat(p)}),s===a&&t.push(1),r=c||t[i]===void 0?1:t[i],t=t.slice(0,i)}else M.length>10&&/[0-9](?:\s|\/)/.test(M)&&(t=M.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),o=M.match(/([a-z])/ig).join("").toLowerCase());else isNaN(M)?Array.isArray(M)||M.length?(t=[M[0],M[1],M[2]],o="rgb",r=M.length===4?M[3]:1):M instanceof Object&&(M.r!=null||M.red!=null||M.R!=null?(o="rgb",t=[M.r||M.red||M.R||0,M.g||M.green||M.G||0,M.b||M.blue||M.B||0]):(o="hsl",t=[M.h||M.hue||M.H||0,M.s||M.saturation||M.S||0,M.l||M.lightness||M.L||M.b||M.brightness]),r=M.a||M.alpha||M.opacity||1,M.opacity!=null&&(r/=100)):(o="rgb",t=[M>>>16,(M&65280)>>>8,M&255]);return{space:o,values:t,alpha:r}}}}),kN=Ye({"node_modules/color-normalize/node_modules/color-rgba/index.js"(X,H){"use strict";var g=EN();H.exports=function(M){Array.isArray(M)&&M.raw&&(M=String.raw.apply(null,arguments));var e,t,r,o=g(M);if(!o.space)return[];var a=[0,0,0],i=o.space[0]==="h"?[360,100,100]:[255,255,255];return e=Array(3),e[0]=Math.min(Math.max(o.values[0],a[0]),i[0]),e[1]=Math.min(Math.max(o.values[1],a[1]),i[1]),e[2]=Math.min(Math.max(o.values[2],a[2]),i[2]),o.space[0]==="h"&&(e=x(e)),e.push(Math.min(Math.max(o.alpha,0),1)),e};function x(A){var M=A[0]/360,e=A[1]/100,t=A[2]/100,r,o,a,i,n,s=0;if(e===0)return n=t*255,[n,n,n];for(o=t<.5?t*(1+e):t+e-t*e,r=2*t-o,i=[0,0,0];s<3;)a=M+1/3*-(s-1),a<0?a++:a>1&&a--,n=6*a<1?r+(o-r)*6*a:2*a<1?o:3*a<2?r+(o-r)*(2/3-a)*6:r,i[s++]=n*255;return i}}}),dx=Ye({"node_modules/clamp/index.js"(X,H){H.exports=g;function g(x,A,M){return A<M?x<A?A:x>M?M:x:x<M?M:x>A?A:x}}}),$3=Ye({"node_modules/dtype/index.js"(X,H){H.exports=function(g){switch(g){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}}}),hg=Ye({"node_modules/color-normalize/index.js"(X,H){"use strict";var g=kN(),x=dx(),A=$3();H.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var o=A(r),a=new o(4),i=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=g(t),t[0]/=255,t[1]/=255,t[2]/=255),M(t)?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:255,i&&(a[0]/=255,a[1]/=255,a[2]/=255,a[3]/=255),a):(i?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:1):(a[0]=x(Math.floor(t[0]*255),0,255),a[1]=x(Math.floor(t[1]*255),0,255),a[2]=x(Math.floor(t[2]*255),0,255),a[3]=t[3]==null?255:x(Math.floor(t[3]*255),0,255)),a)};function M(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}}}),Qv=Ye({"src/lib/str2rgbarray.js"(X,H){"use strict";var g=hg();function x(A){return A?g(A):[0,0,0,1]}H.exports=x}}),em=Ye({"src/lib/gl_format_color.js"(X,H){"use strict";var g=jo(),x=bh(),A=hg(),M=Su(),e=Gf().defaultLine,t=xp().isArrayOrTypedArray,r=A(e),o=1;function a(h,v){var p=h;return p[3]*=v,p}function i(h){if(g(h))return r;var v=A(h);return v.length?v:r}function n(h){return g(h)?h:o}function s(h,v,p){var T=h.color;T&&T._inputArray&&(T=T._inputArray);var l=t(T),_=t(v),w=M.extractOpts(h),S=[],E,m,b,d,u;if(w.colorscale!==void 0?E=M.makeColorScaleFuncFromTrace(h):E=i,l?m=function(f,P){return f[P]===void 0?r:A(E(f[P]))}:m=i,_?b=function(f,P){return f[P]===void 0?o:n(f[P])}:b=n,l||_)for(var y=0;y<p;y++)d=m(T,y),u=b(v,y),S[y]=a(d,u);else S=a(A(T),v);return S}function c(h){var v=M.extractOpts(h),p=v.colorscale;return v.reversescale&&(p=M.flipScale(v.colorscale)),p.map(function(T){var l=T[0],_=x(T[1]),w=_.toRgb();return{index:l,rgb:[w.r,w.g,w.b,w.a]}})}H.exports={formatColor:s,parseColorScale:c}}}),v5=Ye({"src/constants/gl3d_dashes.js"(X,H){"use strict";H.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}}}),Q3=Ye({"src/constants/gl3d_markers.js"(X,H){"use strict";H.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}}}),CN=Ye({"src/traces/scatter3d/calc_errors.js"(X,H){"use strict";var g=Hn();function x(e,t,r,o){if(!t||!t.visible)return null;for(var a=g.getComponentMethod("errorbars","makeComputeError")(t),i=new Array(e.length),n=0;n<e.length;n++){var s=a(+e[n],n);if(o.type==="log"){var c=o.c2l(e[n]),h=e[n]-s[0],v=e[n]+s[1];if(i[n]=[(o.c2l(h,!0)-c)*r,(o.c2l(v,!0)-c)*r],h>0){var p=o.c2l(h);o._lowerLogErrorBound||(o._lowerLogErrorBound=p),o._lowerErrorBound=Math.min(o._lowerLogErrorBound,p)}}else i[n]=[-s[0]*r,s[1]*r]}return i}function A(e){for(var t=0;t<e.length;t++)if(e[t])return e[t].length;return 0}function M(e,t,r){var o=[x(e.x,e.error_x,t[0],r.xaxis),x(e.y,e.error_y,t[1],r.yaxis),x(e.z,e.error_z,t[2],r.zaxis)],a=A(o);if(a===0)return null;for(var i=new Array(a),n=0;n<a;n++){for(var s=[[0,0,0],[0,0,0]],c=0;c<3;c++)if(o[c])for(var h=0;h<2;h++)s[h][c]=o[c][n][h];i[n]=s}return i}H.exports=M}}),LN=Ye({"src/traces/scatter3d/convert.js"(X,H){"use strict";var g=Gh().gl_line3d,x=Gh().gl_scatter3d,A=Gh().gl_error3d,M=Gh().gl_mesh3d,e=Gh().delaunay_triangulate,t=ta(),r=Qv(),o=em().formatColor,a=t1(),i=v5(),n=Q3(),s=Co(),c=Qp().appendArrayPointValue,h=CN();function v(P,L){this.scene=P,this.uid=L,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var p=v.prototype;p.handlePick=function(P){if(P.object&&(P.object===this.linePlot||P.object===this.delaunayMesh||P.object===this.textMarkers||P.object===this.scatterPlot)){var L=P.index=P.data.index;return P.object.highlight&&P.object.highlight(null),this.scatterPlot&&(P.object=this.scatterPlot,this.scatterPlot.highlight(P.data)),P.textLabel="",this.textLabels&&(t.isArrayOrTypedArray(this.textLabels)?(this.textLabels[L]||this.textLabels[L]===0)&&(P.textLabel=this.textLabels[L]):P.textLabel=this.textLabels),P.traceCoordinate=[this.data.x[L],this.data.y[L],this.data.z[L]],!0}};function T(P,L,z){var F=(z+1)%3,B=(z+2)%3,O=[],I=[],N;for(N=0;N<P.length;++N){var U=P[N];isNaN(U[F])||!isFinite(U[F])||isNaN(U[B])||!isFinite(U[B])||(O.push([U[F],U[B]]),I.push(N))}var W=e(O);for(N=0;N<W.length;++N)for(var Q=W[N],ue=0;ue<Q.length;++ue)Q[ue]=I[Q[ue]];return{positions:P,cells:W,meshColor:L}}function l(P){for(var L=[0,0,0],z=[[0,0,0],[0,0,0],[0,0,0]],F=[1,1,1],B=0;B<3;B++){var O=P[B];O&&O.copy_zstyle!==!1&&P[2].visible!==!1&&(O=P[2]),!(!O||!O.visible)&&(L[B]=O.width/2,z[B]=r(O.color),F[B]=O.thickness)}return{capSize:L,color:z,lineWidth:F}}function _(P){return P==null?0:P.indexOf("left")>-1?-1:P.indexOf("right")>-1?1:0}function w(P){return P==null?0:P.indexOf("top")>-1?-1:P.indexOf("bottom")>-1?1:0}function S(P){var L=0,z=0,F=[L,z];if(Array.isArray(P))for(var B=0;B<P.length;B++)F[B]=[L,z],P[B]&&(F[B][0]=_(P[B]),F[B][1]=w(P[B]));else F[0]=_(P),F[1]=w(P);return F}function E(P,L){return L(P*4)}function m(P){return n[P]}function b(P,L,z,F,B){var O=null;if(t.isArrayOrTypedArray(P)){O=[];for(var I=0;I<L;I++)P[I]===void 0?O[I]=F:O[I]=z(P[I],B)}else O=z(P,t.identity);return O}function d(P,L){var z=[],F=P.fullSceneLayout,B=P.dataScale,O=F.xaxis,I=F.yaxis,N=F.zaxis,U=L.marker,W=L.line,Q=L.x||[],ue=L.y||[],se=L.z||[],he=Q.length,G=L.xcalendar,$=L.ycalendar,J=L.zcalendar,Z,re,ne,j,ee,ie;for(ee=0;ee<he;ee++)Z=O.d2l(Q[ee],0,G)*B[0],re=I.d2l(ue[ee],0,$)*B[1],ne=N.d2l(se[ee],0,J)*B[2],z[ee]=[Z,re,ne];if(Array.isArray(L.text))ie=L.text;else if(t.isTypedArray(L.text))ie=Array.from(L.text);else if(L.text!==void 0)for(ie=new Array(he),ee=0;ee<he;ee++)ie[ee]=L.text;function fe(nt,Qe){var Ct=F[nt];return s.tickText(Ct,Ct.d2l(Qe),!0).text}var be=L.texttemplate;if(be){var Ae=P.fullLayout,Be=Ae._d3locale,Ie=Array.isArray(be),Ze=Ie?Math.min(be.length,he):he,at=Ie?function(nt){return be[nt]}:function(){return be};for(ie=new Array(Ze),ee=0;ee<Ze;ee++){var it={x:Q[ee],y:ue[ee],z:se[ee]},et={xLabel:fe("xaxis",Q[ee]),yLabel:fe("yaxis",ue[ee]),zLabel:fe("zaxis",se[ee])},lt={};c(lt,L,ee);var Me=L._meta||{};ie[ee]=t.texttemplateString(at(ee),et,Be,lt,it,Me)}}if(j={position:z,mode:L.mode,text:ie},"line"in L&&(j.lineColor=o(W,1,he),j.lineWidth=W.width,j.lineDashes=W.dash),"marker"in L){var ge=a(L);j.scatterColor=o(U,1,he),j.scatterSize=b(U.size,he,E,20,ge),j.scatterMarker=b(U.symbol,he,m,"\u25CF"),j.scatterLineWidth=U.line.width,j.scatterLineColor=o(U.line,1,he),j.scatterAngle=0}"textposition"in L&&(j.textOffset=S(L.textposition),j.textColor=o(L.textfont,1,he),j.textSize=b(L.textfont.size,he,t.identity,12),j.textFontFamily=L.textfont.family,j.textFontWeight=L.textfont.weight,j.textFontStyle=L.textfont.style,j.textFontVariant=L.textfont.variant,j.textAngle=0);var ce=["x","y","z"];for(j.project=[!1,!1,!1],j.projectScale=[1,1,1],j.projectOpacity=[1,1,1],ee=0;ee<3;++ee){var ze=L.projection[ce[ee]];(j.project[ee]=ze.show)&&(j.projectOpacity[ee]=ze.opacity,j.projectScale[ee]=ze.scale)}j.errorBounds=h(L,B,F);var tt=l([L.error_x,L.error_y,L.error_z]);return j.errorColor=tt.color,j.errorLineWidth=tt.lineWidth,j.errorCapSize=tt.capSize,j.delaunayAxis=L.surfaceaxis,j.delaunayColor=r(L.surfacecolor),j}function u(P){if(t.isArrayOrTypedArray(P)){var L=P[0];return t.isArrayOrTypedArray(L)&&(P=L),"rgb("+P.slice(0,3).map(function(z){return Math.round(z*255)})+")"}return null}function y(P){return t.isArrayOrTypedArray(P)?P.length===4&&typeof P[0]=="number"?u(P):P.map(u):null}p.update=function(P){var L=this.scene.glplot.gl,z,F,B,O,I=i.solid;this.data=P;var N=d(this.scene,P);"mode"in N&&(this.mode=N.mode),"lineDashes"in N&&N.lineDashes in i&&(I=i[N.lineDashes]),this.color=y(N.scatterColor)||y(N.lineColor),this.dataPoints=N.position,z={gl:this.scene.glplot.gl,position:N.position,color:N.lineColor,lineWidth:N.lineWidth||1,dashes:I[0],dashScale:I[1],opacity:P.opacity,connectGaps:P.connectgaps},this.mode.indexOf("lines")!==-1?this.linePlot?this.linePlot.update(z):(this.linePlot=g(z),this.linePlot._trace=this,this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var U=P.opacity;if(P.marker&&P.marker.opacity!==void 0&&(U*=P.marker.opacity),F={gl:this.scene.glplot.gl,position:N.position,color:N.scatterColor,size:N.scatterSize,glyph:N.scatterMarker,opacity:U,orthographic:!0,lineWidth:N.scatterLineWidth,lineColor:N.scatterLineColor,project:N.project,projectScale:N.projectScale,projectOpacity:N.projectOpacity},this.mode.indexOf("markers")!==-1?this.scatterPlot?this.scatterPlot.update(F):(this.scatterPlot=x(F),this.scatterPlot._trace=this,this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),O={gl:this.scene.glplot.gl,position:N.position,glyph:N.text,color:N.textColor,size:N.textSize,angle:N.textAngle,alignment:N.textOffset,font:N.textFontFamily,fontWeight:N.textFontWeight,fontStyle:N.textFontStyle,fontVariant:N.textFontVariant,orthographic:!0,lineWidth:0,project:!1,opacity:P.opacity},this.textLabels=P.hovertext||P.text,this.mode.indexOf("text")!==-1?this.textMarkers?this.textMarkers.update(O):(this.textMarkers=x(O),this.textMarkers._trace=this,this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),B={gl:this.scene.glplot.gl,position:N.position,color:N.errorColor,error:N.errorBounds,lineWidth:N.errorLineWidth,capSize:N.errorCapSize,opacity:P.opacity},this.errorBars?N.errorBounds?this.errorBars.update(B):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):N.errorBounds&&(this.errorBars=A(B),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),N.delaunayAxis>=0){var W=T(N.position,N.delaunayColor,N.delaunayAxis);W.opacity=P.opacity,this.delaunayMesh?this.delaunayMesh.update(W):(W.gl=L,this.delaunayMesh=M(W),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},p.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function f(P,L){var z=new v(P,L.uid);return z.update(L),z}H.exports=f}}),m5=Ye({"src/traces/scatter3d/attributes.js"(X,H){"use strict";var g=Pc(),x=Au(),A=tu(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Pl(),o=v5(),a=Q3(),i=Oo().extendFlat,n=Ou().overrideAll,s=Km(),c=g.line,h=g.marker,v=h.line,p=i({width:c.width,dash:{valType:"enumerated",values:s(o),dflt:"solid"}},A("line"));function T(_){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var l=H.exports=n({x:g.x,y:g.y,z:{valType:"data_array"},text:i({},g.text,{}),texttemplate:t({},{}),hovertext:i({},g.hovertext,{}),hovertemplate:e(),xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z"),mode:i({},g.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:T("x"),y:T("y"),z:T("z")},connectgaps:g.connectgaps,line:p,marker:i({symbol:{valType:"enumerated",values:s(a),dflt:"circle",arrayOk:!0},size:i({},h.size,{dflt:8}),sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,opacity:i({},h.opacity,{arrayOk:!1}),colorbar:h.colorbar,line:i({width:i({},v.width,{arrayOk:!1})},A("marker.line"))},A("marker")),textposition:i({},g.textposition,{dflt:"top center"}),textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:r.opacity,hoverinfo:i({},r.hoverinfo)},"calc","nested");l.x.editType=l.y.editType=l.z.editType="calc+clearAxisTypes"}}),PN=Ye({"src/traces/scatter3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=uu(),M=md(),e=Dd(),t=zd(),r=m5();H.exports=function(i,n,s,c){function h(E,m){return x.coerce(i,n,r,E,m)}var v=o(i,n,h,c);if(!v){n.visible=!1;return}h("text"),h("hovertext"),h("hovertemplate"),h("xhoverformat"),h("yhoverformat"),h("zhoverformat"),h("mode"),A.hasMarkers(n)&&M(i,n,s,c,h,{noSelect:!0,noAngle:!0}),A.hasLines(n)&&(h("connectgaps"),e(i,n,s,c,h)),A.hasText(n)&&(h("texttemplate"),t(i,n,c,h,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var p=(n.line||{}).color,T=(n.marker||{}).color;h("surfaceaxis")>=0&&h("surfacecolor",p||T);for(var l=["x","y","z"],_=0;_<3;++_){var w="projection."+l[_];h(w+".show")&&(h(w+".opacity"),h(w+".scale"))}var S=g.getComponentMethod("errorbars","supplyDefaults");S(i,n,p||T||s,{axis:"z"}),S(i,n,p||T||s,{axis:"y",inherit:"z"}),S(i,n,p||T||s,{axis:"x",inherit:"z"})};function o(a,i,n,s){var c=0,h=n("x"),v=n("y"),p=n("z"),T=g.getComponentMethod("calendars","handleTraceDefaults");return T(a,i,["x","y","z"],s),h&&v&&p&&(c=Math.min(h.length,v.length,p.length),i._length=i._xlength=i._ylength=i._zlength=c),c}}}),IN=Ye({"src/traces/scatter3d/calc.js"(X,H){"use strict";var g=Av(),x=Fd();H.exports=function(M,e){var t=[{x:!1,y:!1,trace:e,t:{}}];return g(t,e),x(M,e),t}}}),RN=Ye({"node_modules/get-canvas-context/index.js"(X,H){H.exports=g;function g(x,A){if(typeof x!="string")throw new TypeError("must specify type string");if(A=A||{},typeof document>"u"&&!A.canvas)return null;var M=A.canvas||document.createElement("canvas");typeof A.width=="number"&&(M.width=A.width),typeof A.height=="number"&&(M.height=A.height);var e=A,t;try{var r=[x];x.indexOf("webgl")===0&&r.push("experimental-"+x);for(var o=0;o<r.length;o++)if(t=M.getContext(r[o],e),t)return t}catch{t=null}return t||null}}}),DN=Ye({"node_modules/webgl-context/index.js"(X,H){var g=RN();H.exports=function(A){return g("webgl",A)}}}),g5=Ye({"src/lib/show_no_webgl_msg.js"(X,H){"use strict";var g=Fn(),x=function(){};H.exports=function(M){for(var e in M)typeof M[e]=="function"&&(M[e]=x);M.destroy=function(){M.container.parentNode.removeChild(M.container)};var t=document.createElement("div");t.className="no-webgl",t.style.cursor="pointer",t.style.fontSize="24px",t.style.color=g.defaults[0],t.style.position="absolute",t.style.left=t.style.top="0px",t.style.width=t.style.height="100%",t.style["background-color"]=g.lightLine,t.style["z-index"]=30;var r=document.createElement("p");return r.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",r.style.position="relative",r.style.top="50%",r.style.left="50%",r.style.height="30%",r.style.width="50%",r.style.margin="-15% 0 0 -25%",t.appendChild(r),M.container.appendChild(t),M.container.style.background="#FFFFFF",M.container.onclick=function(){window.open("https://get.webgl.org")},!1}}}),zN=Ye({"src/plots/gl3d/layout/convert.js"(X,H){"use strict";var g=Qv(),x=ta(),A=["xaxis","yaxis","zaxis"];function M(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var e=M.prototype;e.merge=function(r,o){for(var a=this,i=0;i<3;++i){var n=o[A[i]];if(!n.visible){a.tickEnable[i]=!1,a.labelEnable[i]=!1,a.lineEnable[i]=!1,a.lineTickEnable[i]=!1,a.gridEnable[i]=!1,a.zeroEnable[i]=!1,a.backgroundEnable[i]=!1;continue}a.labels[i]=r._meta?x.templateString(n.title.text,r._meta):n.title.text,"font"in n.title&&(n.title.font.color&&(a.labelColor[i]=g(n.title.font.color)),n.title.font.family&&(a.labelFont[i]=n.title.font.family),n.title.font.size&&(a.labelSize[i]=n.title.font.size),n.title.font.weight&&(a.labelFontWeight[i]=n.title.font.weight),n.title.font.style&&(a.labelFontStyle[i]=n.title.font.style),n.title.font.variant&&(a.labelFontVariant[i]=n.title.font.variant)),"showline"in n&&(a.lineEnable[i]=n.showline),"linecolor"in n&&(a.lineColor[i]=g(n.linecolor)),"linewidth"in n&&(a.lineWidth[i]=n.linewidth),"showgrid"in n&&(a.gridEnable[i]=n.showgrid),"gridcolor"in n&&(a.gridColor[i]=g(n.gridcolor)),"gridwidth"in n&&(a.gridWidth[i]=n.gridwidth),n.type==="log"?a.zeroEnable[i]=!1:"zeroline"in n&&(a.zeroEnable[i]=n.zeroline),"zerolinecolor"in n&&(a.zeroLineColor[i]=g(n.zerolinecolor)),"zerolinewidth"in n&&(a.zeroLineWidth[i]=n.zerolinewidth),"ticks"in n&&n.ticks?a.lineTickEnable[i]=!0:a.lineTickEnable[i]=!1,"ticklen"in n&&(a.lineTickLength[i]=a._defaultLineTickLength[i]=n.ticklen),"tickcolor"in n&&(a.lineTickColor[i]=g(n.tickcolor)),"tickwidth"in n&&(a.lineTickWidth[i]=n.tickwidth),"tickangle"in n&&(a.tickAngle[i]=n.tickangle==="auto"?-3600:Math.PI*-n.tickangle/180),"showticklabels"in n&&(a.tickEnable[i]=n.showticklabels),"tickfont"in n&&(n.tickfont.color&&(a.tickColor[i]=g(n.tickfont.color)),n.tickfont.family&&(a.tickFont[i]=n.tickfont.family),n.tickfont.size&&(a.tickSize[i]=n.tickfont.size),n.tickfont.weight&&(a.tickFontWeight[i]=n.tickfont.weight),n.tickfont.style&&(a.tickFontStyle[i]=n.tickfont.style),n.tickfont.variant&&(a.tickFontVariant[i]=n.tickfont.variant)),"mirror"in n?["ticks","all","allticks"].indexOf(n.mirror)!==-1?(a.lineTickMirror[i]=!0,a.lineMirror[i]=!0):n.mirror===!0?(a.lineTickMirror[i]=!1,a.lineMirror[i]=!0):(a.lineTickMirror[i]=!1,a.lineMirror[i]=!1):a.lineMirror[i]=!1,"showbackground"in n&&n.showbackground!==!1?(a.backgroundEnable[i]=!0,a.backgroundColor[i]=g(n.backgroundcolor)):a.backgroundEnable[i]=!1}};function t(r,o){var a=new M;return a.merge(r,o),a}H.exports=t}}),FN=Ye({"src/plots/gl3d/layout/spikes.js"(X,H){"use strict";var g=Qv(),x=["xaxis","yaxis","zaxis"];function A(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var M=A.prototype;M.merge=function(t){for(var r=0;r<3;++r){var o=t[x[r]];if(!o.visible){this.enabled[r]=!1,this.drawSides[r]=!1;continue}this.enabled[r]=o.showspikes,this.colors[r]=g(o.spikecolor),this.drawSides[r]=o.spikesides,this.lineWidth[r]=o.spikethickness}};function e(t){var r=new A;return r.merge(t),r}H.exports=e}}),ON=Ye({"src/plots/gl3d/layout/tick_marks.js"(X,H){"use strict";H.exports=t;var g=Co(),x=ta(),A=["xaxis","yaxis","zaxis"],M=[0,0,0];function e(r){for(var o=new Array(3),a=0;a<3;++a){for(var i=r[a],n=new Array(i.length),s=0;s<i.length;++s)n[s]=i[s].x;o[a]=n}return o}function t(r){for(var o=r.axesOptions,a=r.glplot.axesPixels,i=r.fullSceneLayout,n=[[],[],[]],s=0;s<3;++s){var c=i[A[s]];if(c._length=(a[s].hi-a[s].lo)*a[s].pixelsPerDataUnit/r.dataScale[s],Math.abs(c._length)===1/0||isNaN(c._length))n[s]=[];else{c._input_range=c.range.slice(),c.range[0]=a[s].lo/r.dataScale[s],c.range[1]=a[s].hi/r.dataScale[s],c._m=1/(r.dataScale[s]*a[s].pixelsPerDataUnit),c.range[0]===c.range[1]&&(c.range[0]-=1,c.range[1]+=1);var h=c.tickmode;if(c.tickmode==="auto"){c.tickmode="linear";var v=c.nticks||x.constrain(c._length/40,4,9);g.autoTicks(c,Math.abs(c.range[1]-c.range[0])/v)}for(var p=g.calcTicks(c,{msUTC:!0}),T=0;T<p.length;++T)p[T].x=p[T].x*r.dataScale[s],c.type==="date"&&(p[T].text=p[T].text.replace(/\<br\>/g," "));n[s]=p,c.tickmode=h}}o.ticks=n;for(var s=0;s<3;++s){M[s]=.5*(r.glplot.bounds[0][s]+r.glplot.bounds[1][s]);for(var T=0;T<2;++T)o.bounds[T][s]=r.glplot.bounds[T][s]}r.contourLevels=e(n)}}}),BN=Ye({"src/plots/gl3d/scene.js"(X,H){"use strict";var g=Gh().gl_plot3d,x=g.createCamera,A=g.createScene,M=DN(),e=_2(),t=Hn(),r=ta(),o=r.preserveDrawingBuffer(),a=Co(),i=Lc(),n=Qv(),s=g5(),c=BS(),h=zN(),v=FN(),p=ON(),T=Yd().applyAutorangeOptions,l,_,w=!1;function S(z,F){var B=document.createElement("div"),O=z.container;this.graphDiv=z.graphDiv;var I=document.createElementNS("http://www.w3.org/2000/svg","svg");I.style.position="absolute",I.style.top=I.style.left="0px",I.style.width=I.style.height="100%",I.style["z-index"]=20,I.style["pointer-events"]="none",B.appendChild(I),this.svgContainer=I,B.id=z.id,B.style.position="absolute",B.style.top=B.style.left="0px",B.style.width=B.style.height="100%",O.appendChild(B),this.fullLayout=F,this.id=z.id||"scene",this.fullSceneLayout=F[this.id],this.plotArgs=[[],{},{}],this.axesOptions=h(F,F[this.id]),this.spikeOptions=v(F[this.id]),this.container=B,this.staticMode=!!z.staticPlot,this.pixelRatio=this.pixelRatio||z.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=t.getComponentMethod("annotations3d","convert"),this.drawAnnotations=t.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var E=S.prototype;E.prepareOptions=function(){var z=this,F={canvas:z.canvas,gl:z.gl,glOptions:{preserveDrawingBuffer:o,premultipliedAlpha:!0,antialias:!0},container:z.container,axes:z.axesOptions,spikes:z.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:z.camera,pixelRatio:z.pixelRatio};if(z.staticMode){if(!_&&(l=document.createElement("canvas"),_=M({canvas:l,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!_))throw new Error("error creating static canvas/context for image server");F.gl=_,F.canvas=l}return F};var m=!0;E.tryCreatePlot=function(){var z=this,F=z.prepareOptions(),B=!0;try{z.glplot=A(F)}catch{if(z.staticMode||!m||o)B=!1;else{r.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{o=F.glOptions.preserveDrawingBuffer=!0,z.glplot=A(F)}catch{o=F.glOptions.preserveDrawingBuffer=!1,B=!1}}}return m=!1,B},E.initializeGLCamera=function(){var z=this,F=z.fullSceneLayout.camera,B=F.projection.type==="orthographic";z.camera=x(z.container,{center:[F.center.x,F.center.y,F.center.z],eye:[F.eye.x,F.eye.y,F.eye.z],up:[F.up.x,F.up.y,F.up.z],_ortho:B,zoomMin:.01,zoomMax:100,mode:"orbit"})},E.initializeGLPlot=function(){var z=this;z.initializeGLCamera();var F=z.tryCreatePlot();if(!F)return s(z);z.traces={},z.make4thDimension();var B=z.graphDiv,O=B.layout,I=function(){var U={};return z.isCameraChanged(O)&&(U[z.id+".camera"]=z.getCamera()),z.isAspectChanged(O)&&(U[z.id+".aspectratio"]=z.glplot.getAspectratio(),O[z.id].aspectmode!=="manual"&&(z.fullSceneLayout.aspectmode=O[z.id].aspectmode=U[z.id+".aspectmode"]="manual")),U},N=function(U){if(U.fullSceneLayout.dragmode!==!1){var W=I();U.saveLayout(O),U.graphDiv.emit("plotly_relayout",W)}};return z.glplot.canvas&&(z.glplot.canvas.addEventListener("mouseup",function(){N(z)}),z.glplot.canvas.addEventListener("touchstart",function(){w=!0}),z.glplot.canvas.addEventListener("wheel",function(U){if(B._context._scrollZoom.gl3d){if(z.camera._ortho){var W=U.deltaX>U.deltaY?1.1:.9090909090909091,Q=z.glplot.getAspectratio();z.glplot.setAspectratio({x:W*Q.x,y:W*Q.y,z:W*Q.z})}N(z)}},e?{passive:!1}:!1),z.glplot.canvas.addEventListener("mousemove",function(){if(z.fullSceneLayout.dragmode!==!1&&z.camera.mouseListener.buttons!==0){var U=I();z.graphDiv.emit("plotly_relayouting",U)}}),z.staticMode||z.glplot.canvas.addEventListener("webglcontextlost",function(U){B&&B.emit&&B.emit("plotly_webglcontextlost",{event:U,layer:z.id})},!1)),z.glplot.oncontextloss=function(){z.recoverContext()},z.glplot.onrender=function(){z.render()},!0},E.render=function(){var z=this,F=z.graphDiv,B,O=z.svgContainer,I=z.container.getBoundingClientRect();F._fullLayout._calcInverseTransform(F);var N=F._fullLayout._invScaleX,U=F._fullLayout._invScaleY,W=I.width*N,Q=I.height*U;O.setAttributeNS(null,"viewBox","0 0 "+W+" "+Q),O.setAttributeNS(null,"width",W),O.setAttributeNS(null,"height",Q),p(z),z.glplot.axes.update(z.axesOptions);for(var ue=Object.keys(z.traces),se=null,he=z.glplot.selection,G=0;G<ue.length;++G)B=z.traces[ue[G]],B.data.hoverinfo!=="skip"&&B.handlePick(he)&&(se=B),B.setContourLevels&&B.setContourLevels();function $(Ze,at,it){var et=z.fullSceneLayout[Ze+"axis"];return et.type!=="log"&&(at=et.d2l(at)),a.hoverLabelText(et,at,it)}if(se!==null){var J=c(z.glplot.cameraParams,he.dataCoordinate);B=se.data;var Z=F._fullData[B.index],re=he.index,ne={xLabel:$("x",he.traceCoordinate[0],B.xhoverformat),yLabel:$("y",he.traceCoordinate[1],B.yhoverformat),zLabel:$("z",he.traceCoordinate[2],B.zhoverformat)},j=i.castHoverinfo(Z,z.fullLayout,re),ee=(j||"").split("+"),ie=j&&j==="all";!Z.hovertemplate&&!ie&&(ee.indexOf("x")===-1&&(ne.xLabel=void 0),ee.indexOf("y")===-1&&(ne.yLabel=void 0),ee.indexOf("z")===-1&&(ne.zLabel=void 0),ee.indexOf("text")===-1&&(he.textLabel=void 0),ee.indexOf("name")===-1&&(se.name=void 0));var fe,be=[];B.type==="cone"||B.type==="streamtube"?(ne.uLabel=$("x",he.traceCoordinate[3],B.uhoverformat),(ie||ee.indexOf("u")!==-1)&&be.push("u: "+ne.uLabel),ne.vLabel=$("y",he.traceCoordinate[4],B.vhoverformat),(ie||ee.indexOf("v")!==-1)&&be.push("v: "+ne.vLabel),ne.wLabel=$("z",he.traceCoordinate[5],B.whoverformat),(ie||ee.indexOf("w")!==-1)&&be.push("w: "+ne.wLabel),ne.normLabel=he.traceCoordinate[6].toPrecision(3),(ie||ee.indexOf("norm")!==-1)&&be.push("norm: "+ne.normLabel),B.type==="streamtube"&&(ne.divergenceLabel=he.traceCoordinate[7].toPrecision(3),(ie||ee.indexOf("divergence")!==-1)&&be.push("divergence: "+ne.divergenceLabel)),he.textLabel&&be.push(he.textLabel),fe=be.join("<br>")):B.type==="isosurface"||B.type==="volume"?(ne.valueLabel=a.hoverLabelText(z._mockAxis,z._mockAxis.d2l(he.traceCoordinate[3]),B.valuehoverformat),be.push("value: "+ne.valueLabel),he.textLabel&&be.push(he.textLabel),fe=be.join("<br>")):fe=he.textLabel;var Ae={x:he.traceCoordinate[0],y:he.traceCoordinate[1],z:he.traceCoordinate[2],data:Z._input,fullData:Z,curveNumber:Z.index,pointNumber:re};i.appendArrayPointValue(Ae,Z,re),B._module.eventData&&(Ae=Z._module.eventData(Ae,he,Z,{},re));var Be={points:[Ae]};if(z.fullSceneLayout.hovermode){var Ie=[];i.loneHover({trace:Z,x:(.5+.5*J[0]/J[3])*W,y:(.5-.5*J[1]/J[3])*Q,xLabel:ne.xLabel,yLabel:ne.yLabel,zLabel:ne.zLabel,text:fe,name:se.name,color:i.castHoverOption(Z,re,"bgcolor")||se.color,borderColor:i.castHoverOption(Z,re,"bordercolor"),fontFamily:i.castHoverOption(Z,re,"font.family"),fontSize:i.castHoverOption(Z,re,"font.size"),fontColor:i.castHoverOption(Z,re,"font.color"),nameLength:i.castHoverOption(Z,re,"namelength"),textAlign:i.castHoverOption(Z,re,"align"),hovertemplate:r.castOption(Z,re,"hovertemplate"),hovertemplateLabels:r.extendFlat({},Ae,ne),eventData:[Ae]},{container:O,gd:F,inOut_bbox:Ie}),Ae.bbox=Ie[0]}he.distance<5&&(he.buttons||w)?F.emit("plotly_click",Be):F.emit("plotly_hover",Be),this.oldEventData=Be}else i.loneUnhover(O),this.oldEventData&&F.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;z.drawAnnotations(z)},E.recoverContext=function(){var z=this;z.glplot.dispose();var F=function(){if(z.glplot.gl.isContextLost()){requestAnimationFrame(F);return}if(!z.initializeGLPlot()){r.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}z.plot.apply(z,z.plotArgs)};requestAnimationFrame(F)};var b=["xaxis","yaxis","zaxis"];function d(z,F,B){for(var O=z.fullSceneLayout,I=0;I<3;I++){var N=b[I],U=N.charAt(0),W=O[N],Q=F[U],ue=F[U+"calendar"],se=F["_"+U+"length"];if(!r.isArrayOrTypedArray(Q))B[0][I]=Math.min(B[0][I],0),B[1][I]=Math.max(B[1][I],se-1);else for(var he,G=0;G<(se||Q.length);G++)if(r.isArrayOrTypedArray(Q[G]))for(var $=0;$<Q[G].length;++$)he=W.d2l(Q[G][$],0,ue),!isNaN(he)&&isFinite(he)&&(B[0][I]=Math.min(B[0][I],he),B[1][I]=Math.max(B[1][I],he));else he=W.d2l(Q[G],0,ue),!isNaN(he)&&isFinite(he)&&(B[0][I]=Math.min(B[0][I],he),B[1][I]=Math.max(B[1][I],he))}}function u(z,F){for(var B=z.fullSceneLayout,O=B.annotations||[],I=0;I<3;I++)for(var N=b[I],U=N.charAt(0),W=B[N],Q=0;Q<O.length;Q++){var ue=O[Q];if(ue.visible){var se=W.r2l(ue[U]);!isNaN(se)&&isFinite(se)&&(F[0][I]=Math.min(F[0][I],se),F[1][I]=Math.max(F[1][I],se))}}}E.plot=function(z,F,B){var O=this;if(O.plotArgs=[z,F,B],!O.glplot.contextLost){var I,N,U,W,Q,ue,se=F[O.id],he=B[O.id];O.fullLayout=F,O.fullSceneLayout=se,O.axesOptions.merge(F,se),O.spikeOptions.merge(se),O.setViewport(se),O.updateFx(se.dragmode,se.hovermode),O.camera.enableWheel=O.graphDiv._context._scrollZoom.gl3d,O.glplot.setClearColor(n(se.bgcolor)),O.setConvert(Q),z?Array.isArray(z)||(z=[z]):z=[];var G=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(U=0;U<z.length;++U)I=z[U],!(I.visible!==!0||I._length===0)&&d(this,I,G);u(this,G);var $=[1,1,1];for(W=0;W<3;++W)G[1][W]===G[0][W]?$[W]=1:$[W]=1/(G[1][W]-G[0][W]);for(O.dataScale=$,O.convertAnnotations(this),U=0;U<z.length;++U)I=z[U],!(I.visible!==!0||I._length===0)&&(N=O.traces[I.uid],N?N.data.type===I.type?N.update(I):(N.dispose(),N=I._module.plot(this,I),O.traces[I.uid]=N):(N=I._module.plot(this,I),O.traces[I.uid]=N),N.name=I.name);var J=Object.keys(O.traces);e:for(U=0;U<J.length;++U){for(W=0;W<z.length;++W)if(z[W].uid===J[U]&&z[W].visible===!0&&z[W]._length!==0)continue e;N=O.traces[J[U]],N.dispose(),delete O.traces[J[U]]}O.glplot.objects.sort(function(Qe,Ct){return Qe._trace.data.index-Ct._trace.data.index});var Z=[[0,0,0],[0,0,0]],re=[],ne={};for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type,ue in ne?(ne[ue].acc*=$[U],ne[ue].count+=1):ne[ue]={acc:$[U],count:1};var j;if(Q.autorange){Z[0][U]=1/0,Z[1][U]=-1/0;var ee=O.glplot.objects,ie=O.fullSceneLayout.annotations||[],fe=Q._name.charAt(0);for(W=0;W<ee.length;W++){var be=ee[W],Ae=be.bounds,Be=be._trace.data._pad||0;be.constructor.name==="ErrorBars"&&Q._lowerLogErrorBound?Z[0][U]=Math.min(Z[0][U],Q._lowerLogErrorBound):Z[0][U]=Math.min(Z[0][U],Ae[0][U]/$[U]-Be),Z[1][U]=Math.max(Z[1][U],Ae[1][U]/$[U]+Be)}for(W=0;W<ie.length;W++){var Ie=ie[W];if(Ie.visible){var Ze=Q.r2l(Ie[fe]);Z[0][U]=Math.min(Z[0][U],Ze),Z[1][U]=Math.max(Z[1][U],Ze)}}if("rangemode"in Q&&Q.rangemode==="tozero"&&(Z[0][U]=Math.min(Z[0][U],0),Z[1][U]=Math.max(Z[1][U],0)),Z[0][U]>Z[1][U])Z[0][U]=-1,Z[1][U]=1;else{var at=Z[1][U]-Z[0][U];Z[0][U]-=at/32,Z[1][U]+=at/32}if(j=[Z[0][U],Z[1][U]],j=T(j,Q),Z[0][U]=j[0],Z[1][U]=j[1],Q.isReversed()){var it=Z[0][U];Z[0][U]=Z[1][U],Z[1][U]=it}}else j=Q.range,Z[0][U]=Q.r2l(j[0]),Z[1][U]=Q.r2l(j[1]);Z[0][U]===Z[1][U]&&(Z[0][U]-=1,Z[1][U]+=1),re[U]=Z[1][U]-Z[0][U],Q.range=[Z[0][U],Z[1][U]],Q.limitRange(),O.glplot.setBounds(U,{min:Q.range[0]*$[U],max:Q.range[1]*$[U]})}var et,lt=se.aspectmode;if(lt==="cube")et=[1,1,1];else if(lt==="manual"){var Me=se.aspectratio;et=[Me.x,Me.y,Me.z]}else if(lt==="auto"||lt==="data"){var ge=[1,1,1];for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type;var ce=ne[ue];ge[U]=Math.pow(ce.acc,1/ce.count)/$[U]}lt==="data"||Math.max.apply(null,ge)/Math.min.apply(null,ge)<=4?et=ge:et=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");se.aspectratio.x=he.aspectratio.x=et[0],se.aspectratio.y=he.aspectratio.y=et[1],se.aspectratio.z=he.aspectratio.z=et[2],O.glplot.setAspectratio(se.aspectratio),O.viewInitial.aspectratio||(O.viewInitial.aspectratio={x:se.aspectratio.x,y:se.aspectratio.y,z:se.aspectratio.z}),O.viewInitial.aspectmode||(O.viewInitial.aspectmode=se.aspectmode);var ze=se.domain||null,tt=F._size||null;if(ze&&tt){var nt=O.container.style;nt.position="absolute",nt.left=tt.l+ze.x[0]*tt.w+"px",nt.top=tt.t+(1-ze.y[1])*tt.h+"px",nt.width=tt.w*(ze.x[1]-ze.x[0])+"px",nt.height=tt.h*(ze.y[1]-ze.y[0])+"px"}O.glplot.redraw()}},E.destroy=function(){var z=this;z.glplot&&(z.camera.mouseListener.enabled=!1,z.container.removeEventListener("wheel",z.camera.wheelListener),z.camera=null,z.glplot.dispose(),z.container.parentNode.removeChild(z.container),z.glplot=null)};function y(z){return[[z.eye.x,z.eye.y,z.eye.z],[z.center.x,z.center.y,z.center.z],[z.up.x,z.up.y,z.up.z]]}function f(z){return{up:{x:z.up[0],y:z.up[1],z:z.up[2]},center:{x:z.center[0],y:z.center[1],z:z.center[2]},eye:{x:z.eye[0],y:z.eye[1],z:z.eye[2]},projection:{type:z._ortho===!0?"orthographic":"perspective"}}}E.getCamera=function(){var z=this;return z.camera.view.recalcMatrix(z.camera.view.lastT()),f(z.camera)},E.setViewport=function(z){var F=this,B=z.camera;F.camera.lookAt.apply(this,y(B)),F.glplot.setAspectratio(z.aspectratio);var O=B.projection.type==="orthographic",I=F.camera._ortho;O!==I&&(F.glplot.redraw(),F.glplot.clearRGBA(),F.glplot.dispose(),F.initializeGLPlot())},E.isCameraChanged=function(z){var F=this,B=F.getCamera(),O=r.nestedProperty(z,F.id+".camera"),I=O.get();function N(ue,se,he,G){var $=["up","center","eye"],J=["x","y","z"];return se[$[he]]&&ue[$[he]][J[G]]===se[$[he]][J[G]]}var U=!1;if(I===void 0)U=!0;else{for(var W=0;W<3;W++)for(var Q=0;Q<3;Q++)if(!N(B,I,W,Q)){U=!0;break}(!I.projection||B.projection&&B.projection.type!==I.projection.type)&&(U=!0)}return U},E.isAspectChanged=function(z){var F=this,B=F.glplot.getAspectratio(),O=r.nestedProperty(z,F.id+".aspectratio"),I=O.get();return I===void 0||I.x!==B.x||I.y!==B.y||I.z!==B.z},E.saveLayout=function(z){var F=this,B=F.fullLayout,O,I,N,U,W,Q,ue=F.isCameraChanged(z),se=F.isAspectChanged(z),he=ue||se;if(he){var G={};if(ue&&(O=F.getCamera(),I=r.nestedProperty(z,F.id+".camera"),N=I.get(),G[F.id+".camera"]=N),se&&(U=F.glplot.getAspectratio(),W=r.nestedProperty(z,F.id+".aspectratio"),Q=W.get(),G[F.id+".aspectratio"]=Q),t.call("_storeDirectGUIEdit",z,B._preGUI,G),ue){I.set(O);var $=r.nestedProperty(B,F.id+".camera");$.set(O)}if(se){W.set(U);var J=r.nestedProperty(B,F.id+".aspectratio");J.set(U),F.glplot.redraw()}}return he},E.updateFx=function(z,F){var B=this,O=B.camera;if(O)if(z==="orbit")O.mode="orbit",O.keyBindingMode="rotate";else if(z==="turntable"){O.up=[0,0,1],O.mode="turntable",O.keyBindingMode="rotate";var I=B.graphDiv,N=I._fullLayout,U=B.fullSceneLayout.camera,W=U.up.x,Q=U.up.y,ue=U.up.z;if(ue/Math.sqrt(W*W+Q*Q+ue*ue)<.999){var se=B.id+".camera.up",he={x:0,y:0,z:1},G={};G[se]=he;var $=I.layout;t.call("_storeDirectGUIEdit",$,N._preGUI,G),U.up=he,r.nestedProperty($,se).set(he)}}else O.keyBindingMode=z;B.fullSceneLayout.hovermode=F};function P(z,F,B){for(var O=0,I=B-1;O<I;++O,--I)for(var N=0;N<F;++N)for(var U=0;U<4;++U){var W=4*(F*O+N)+U,Q=4*(F*I+N)+U,ue=z[W];z[W]=z[Q],z[Q]=ue}}function L(z,F,B){for(var O=0;O<B;++O)for(var I=0;I<F;++I){var N=4*(F*O+I),U=z[N+3];if(U>0)for(var W=255/U,Q=0;Q<3;++Q)z[N+Q]=Math.min(W*z[N+Q],255)}}E.toImage=function(z){var F=this;z||(z="png"),F.staticMode&&F.container.appendChild(l),F.glplot.redraw();var B=F.glplot.gl,O=B.drawingBufferWidth,I=B.drawingBufferHeight;B.bindFramebuffer(B.FRAMEBUFFER,null);var N=new Uint8Array(O*I*4);B.readPixels(0,0,O,I,B.RGBA,B.UNSIGNED_BYTE,N),P(N,O,I),L(N,O,I);var U=document.createElement("canvas");U.width=O,U.height=I;var W=U.getContext("2d",{willReadFrequently:!0}),Q=W.createImageData(O,I);Q.data.set(N),W.putImageData(Q,0,0);var ue;switch(z){case"jpeg":ue=U.toDataURL("image/jpeg");break;case"webp":ue=U.toDataURL("image/webp");break;default:ue=U.toDataURL("image/png")}return F.staticMode&&F.container.removeChild(l),ue},E.setConvert=function(){for(var z=this,F=0;F<3;F++){var B=z.fullSceneLayout[b[F]];a.setConvert(B,z.fullLayout),B.setScale=r.noop}},E.make4thDimension=function(){var z=this,F=z.graphDiv,B=F._fullLayout;z._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},a.setConvert(z._mockAxis,B)},H.exports=S}}),NN=Ye({"src/plots/gl3d/layout/attributes.js"(X,H){"use strict";H.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}}}),y5=Ye({"src/plots/gl3d/layout/axis_attributes.js"(X,H){"use strict";var g=Fn(),x=Vh(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({visible:x.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:g.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:x.color,categoryorder:x.categoryorder,categoryarray:x.categoryarray,title:{text:x.title.text,font:x.title.font},type:A({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorange:x.autorange,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},rangemode:x.rangemode,minallowed:x.minallowed,maxallowed:x.maxallowed,range:A({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,mirror:x.mirror,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,tickfont:x.tickfont,tickangle:x.tickangle,tickprefix:x.tickprefix,showtickprefix:x.showtickprefix,ticksuffix:x.ticksuffix,showticksuffix:x.showticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickformat:x.tickformat,tickformatstops:x.tickformatstops,hoverformat:x.hoverformat,showline:x.showline,linecolor:x.linecolor,linewidth:x.linewidth,showgrid:x.showgrid,gridcolor:A({},x.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:x.gridwidth,zeroline:x.zeroline,zerolinecolor:x.zerolinecolor,zerolinewidth:x.zerolinewidth},"plot","from-root")}}),_5=Ye({"src/plots/gl3d/layout/layout_attributes.js"(X,H){"use strict";var g=y5(),x=Wu().attributes,A=Oo().extendFlat,M=ta().counterRegex;function e(t,r,o){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:o,editType:"camera"},editType:"camera"}}H.exports={_arrayAttrRegexps:[M("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:A(e(0,0,1),{}),center:A(e(0,0,0),{}),eye:A(e(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:x({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:g,yaxis:g,zaxis:g,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}}}),UN=Ye({"src/plots/gl3d/layout/axis_defaults.js"(X,H){"use strict";var g=bh().mix,x=ta(),A=cl(),M=y5(),e=FS(),t=R_(),r=["xaxis","yaxis","zaxis"],o=100*136/187;H.exports=function(i,n,s){var c,h;function v(l,_){return x.coerce(c,h,M,l,_)}for(var p=0;p<r.length;p++){var T=r[p];c=i[T]||{},h=A.newContainer(n,T),h._id=T[0]+s.scene,h._name=T,e(c,h,v,s),t(c,h,v,{font:s.font,letter:T[0],data:s.data,showGrid:!0,noAutotickangles:!0,noTicklabelindex:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,noInsiderange:!0,bgColor:s.bgColor,calendar:s.calendar},s.fullLayout),v("gridcolor",g(h.color,s.bgColor,o).toRgbString()),v("title.text",T[0]),h.setScale=x.noop,v("showspikes")&&(v("spikesides"),v("spikethickness"),v("spikecolor",h.color)),v("showaxeslabels"),v("showbackground")&&v("backgroundcolor")}}}}),jN=Ye({"src/plots/gl3d/layout/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Hn(),M=ig(),e=UN(),t=_5(),r=jh().getSubplotData,o="gl3d";H.exports=function(n,s,c){var h=s._basePlotModules.length>1;function v(p){if(!h){var T=g.validate(n[p],t[p]);if(T)return n[p]}}M(n,s,c,{type:o,attributes:t,handleDefaults:a,fullLayout:s,font:s.font,fullData:c,getDfltFromLayout:v,autotypenumbersDflt:s.autotypenumbers,paper_bgcolor:s.paper_bgcolor,calendar:s.calendar})};function a(i,n,s,c){for(var h=s("bgcolor"),v=x.combine(h,c.paper_bgcolor),p=["up","center","eye"],T=0;T<p.length;T++)s("camera."+p[T]+".x"),s("camera."+p[T]+".y"),s("camera."+p[T]+".z");s("camera.projection.type");var l=!!s("aspectratio.x")&&!!s("aspectratio.y")&&!!s("aspectratio.z"),_=l?"manual":"auto",w=s("aspectmode",_);l||(i.aspectratio=n.aspectratio={x:1,y:1,z:1},w==="manual"&&(n.aspectmode="auto"),i.aspectmode=n.aspectmode);var S=r(c.fullData,o,c.id);e(i,n,{font:c.font,scene:c.id,data:S,bgColor:v,calendar:c.calendar,autotypenumbersDflt:c.autotypenumbersDflt,fullLayout:c.fullLayout}),A.getComponentMethod("annotations3d","handleDefaults")(i,n,c);var E=c.getDfltFromLayout("dragmode");if(E!==!1&&!E)if(E="orbit",i.camera&&i.camera.up){var m=i.camera.up.x,b=i.camera.up.y,d=i.camera.up.z;d!==0&&(!m||!b||!d||d/Math.sqrt(m*m+b*b+d*d)>.999)&&(E="turntable")}else E="turntable";s("dragmode",E),s("hovermode",c.getDfltFromLayout("hovermode"))}}}),pg=Ye({"src/plots/gl3d/index.js"(X){"use strict";var H=Ou().overrideAll,g=Zm(),x=BN(),A=jh().getSubplotData,M=ta(),e=vd(),t="gl3d",r="scene";X.name=t,X.attr=r,X.idRoot=r,X.idRegex=X.attrRegex=M.counterRegex("scene"),X.attributes=NN(),X.layoutAttributes=_5(),X.baseLayoutAttrOverrides=H({hoverlabel:g.hoverlabel},"plot","nested"),X.supplyLayoutDefaults=jN(),X.plot=function(a){for(var i=a._fullLayout,n=a._fullData,s=i._subplots[t],c=0;c<s.length;c++){var h=s[c],v=A(n,t,h),p=i[h],T=p.camera,l=p._scene;l||(l=new x({id:h,graphDiv:a,container:a.querySelector(".gl-container"),staticPlot:a._context.staticPlot,plotGlPixelRatio:a._context.plotGlPixelRatio,camera:T},i),p._scene=l),l.viewInitial||(l.viewInitial={up:{x:T.up.x,y:T.up.y,z:T.up.z},eye:{x:T.eye.x,y:T.eye.y,z:T.eye.z},center:{x:T.center.x,y:T.center.y,z:T.center.z}}),l.plot(v,i,a.layout)}},X.clean=function(o,a,i,n){for(var s=n._subplots[t]||[],c=0;c<s.length;c++){var h=s[c];!a[h]&&n[h]._scene&&(n[h]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(".annotation-"+h).remove())}},X.toSVG=function(o){for(var a=o._fullLayout,i=a._subplots[t],n=a._size,s=0;s<i.length;s++){var c=a[i[s]],h=c.domain,v=c._scene,p=v.toImage("png"),T=a._glimages.append("svg:image");T.attr({xmlns:e.svg,"xlink:href":p,x:n.l+n.w*h.x[0],y:n.t+n.h*(1-h.y[1]),width:n.w*(h.x[1]-h.x[0]),height:n.h*(h.y[1]-h.y[0]),preserveAspectRatio:"none"}),v.destroy()}},X.cleanId=function(a){if(a.match(/^scene[0-9]*$/)){var i=a.substr(5);return i==="1"&&(i=""),r+i}},X.updateFx=function(o){for(var a=o._fullLayout,i=a._subplots[t],n=0;n<i.length;n++){var s=a[i[n]]._scene;s.updateFx(a.dragmode,a.hovermode)}}}}),VN=Ye({"src/traces/scatter3d/index.js"(X,H){"use strict";H.exports={plot:LN(),attributes:m5(),markerSymbols:Q3(),supplyDefaults:PN(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:IN(),moduleType:"trace",name:"scatter3d",basePlotModule:pg(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}}}),qN=Ye({"lib/scatter3d.js"(X,H){"use strict";H.exports=VN()}}),vx=Ye({"src/traces/surface/attributes.js"(X,H){"use strict";var g=Fn(),x=tu(),A=Cc().axisHoverFormat,M=xs().hovertemplateAttrs,e=Pl(),t=Oo().extendFlat,r=Ou().overrideAll;function o(n){return{valType:"boolean",dflt:!1}}function a(n){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:o("x"),y:o("y"),z:o("z")},color:{valType:"color",dflt:g.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:g.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var i=H.exports=r(t({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:M(),xhoverformat:A("x"),yhoverformat:A("y"),zhoverformat:A("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},x("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:a("x"),y:a("y"),z:a("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05},roughness:{valType:"number",min:0,max:1,dflt:.5},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:t({},e.hoverinfo),showlegend:t({},e.showlegend,{dflt:!1})}),"calc","nested");i.x.editType=i.y.editType=i.z.editType="calc+clearAxisTypes"}}),x5=Ye({"src/traces/surface/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=vx(),e=.1;function t(i,n){for(var s=[],c=32,h=0;h<c;h++){var v=h/(c-1),p=n+(1-n)*(1-Math.pow(Math.sin(i*v*Math.PI),2));s.push([v,Math.max(0,Math.min(1,p))])}return s}function r(i){var n=0;if(!Array.isArray(i)||i.length<2||!i[0]||!i[i.length-1]||+i[0][0]!=0||+i[i.length-1][0]!=1)return!1;for(var s=0;s<i.length;s++){var c=i[s];if(c.length!==2||+c[0]<n)return!1;n=+c[0]}return!0}function o(i,n,s,c){var h,v;function p(u,y){return x.coerce(i,n,M,u,y)}var T=p("x"),l=p("y"),_=p("z");if(!_||!_.length||T&&T.length<1||l&&l.length<1){n.visible=!1;return}n._xlength=Array.isArray(T)&&x.isArrayOrTypedArray(T[0])?_.length:_[0].length,n._ylength=_.length;var w=g.getComponentMethod("calendars","handleTraceDefaults");w(i,n,["x","y","z"],c),p("text"),p("hovertext"),p("hovertemplate"),p("xhoverformat"),p("yhoverformat"),p("zhoverformat"),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lightposition.x","lightposition.y","lightposition.z","hidesurface","connectgaps","opacity"].forEach(function(u){p(u)});var S=p("surfacecolor"),E=["x","y","z"];for(h=0;h<3;++h){var m="contours."+E[h],b=p(m+".show"),d=p(m+".highlight");if(b||d)for(v=0;v<3;++v)p(m+".project."+E[v]);b&&(p(m+".color"),p(m+".width"),p(m+".usecolormap")),d&&(p(m+".highlightcolor"),p(m+".highlightwidth")),p(m+".start"),p(m+".end"),p(m+".size")}A(i,n,c,p,{prefix:"",cLetter:"c"}),a(i,n,c,p),n._length=null}function a(i,n,s,c){var h=c("opacityscale");h==="max"?n.opacityscale=[[0,e],[1,1]]:h==="min"?n.opacityscale=[[0,1],[1,e]]:h==="extremes"?n.opacityscale=t(1,e):r(h)||(n.opacityscale=void 0)}H.exports={supplyDefaults:o,opacityscaleDefaults:a}}}),HN=Ye({"src/traces/surface/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.surfacecolor?g(A,M,{vals:M.surfacecolor,containerStr:"",cLetter:"c"}):g(A,M,{vals:M.z,containerStr:"",cLetter:"c"})}}}),GN=Ye({"src/traces/surface/convert.js"(X,H){"use strict";var g=Gh().gl_surface3d,x=Gh().ndarray,A=Gh().ndarray_linear_interpolate.d2,M=Y2(),e=K2(),t=ta().isArrayOrTypedArray,r=em().parseColorScale,o=Qv(),a=Su().extractOpts;function i(y,f,P){this.scene=y,this.uid=P,this.surface=f,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var n=i.prototype;n.getXat=function(y,f,P,L){var z=t(this.data.x)?t(this.data.x[0])?this.data.x[f][y]:this.data.x[y]:y;return P===void 0?z:L.d2l(z,0,P)},n.getYat=function(y,f,P,L){var z=t(this.data.y)?t(this.data.y[0])?this.data.y[f][y]:this.data.y[f]:f;return P===void 0?z:L.d2l(z,0,P)},n.getZat=function(y,f,P,L){var z=this.data.z[f][y];return z===null&&this.data.connectgaps&&this.data._interpolatedZ&&(z=this.data._interpolatedZ[f][y]),P===void 0?z:L.d2l(z,0,P)},n.handlePick=function(y){if(y.object===this.surface){var f=(y.data.index[0]-1)/this.dataScaleX-1,P=(y.data.index[1]-1)/this.dataScaleY-1,L=Math.max(Math.min(Math.round(f),this.data.z[0].length-1),0),z=Math.max(Math.min(Math.round(P),this.data._ylength-1),0);y.index=[L,z],y.traceCoordinate=[this.getXat(L,z),this.getYat(L,z),this.getZat(L,z)],y.dataCoordinate=[this.getXat(L,z,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(L,z,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(L,z,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var F=0;F<3;F++){var B=y.dataCoordinate[F];B!=null&&(y.dataCoordinate[F]*=this.scene.dataScale[F])}var O=this.data.hovertext||this.data.text;return t(O)&&O[z]&&O[z][L]!==void 0?y.textLabel=O[z][L]:O?y.textLabel=O:y.textLabel="",y.data.dataCoordinate=y.dataCoordinate.slice(),this.surface.highlight(y.data),this.scene.glplot.spikes.position=y.dataCoordinate,!0}};function s(y){var f=y[0].rgb,P=y[y.length-1].rgb;return f[0]===P[0]&&f[1]===P[1]&&f[2]===P[2]&&f[3]===P[3]}var c=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function h(y,f){if(y<f)return 0;for(var P=0;Math.floor(y%f)===0;)y/=f,P++;return P}function v(y){for(var f=[],P=0;P<c.length;P++){var L=c[P];f.push(h(y,L))}return f}function p(y){for(var f=v(y),P=y,L=0;L<c.length;L++)if(f[L]>0){P=c[L];break}return P}function T(y,f){if(!(y<1||f<1)){for(var P=v(y),L=v(f),z=1,F=0;F<c.length;F++)z*=Math.pow(c[F],Math.max(P[F],L[F]));return z}}function l(y){if(y.length!==0){for(var f=1,P=0;P<y.length;P++)f=T(f,y[P]);return f}}n.calcXnums=function(y){var f,P=[];for(f=1;f<y;f++){var L=this.getXat(f-1,0),z=this.getXat(f,0);z!==L&&L!==void 0&&L!==null&&z!==void 0&&z!==null?P[f-1]=Math.abs(z-L):P[f-1]=0}var F=0;for(f=1;f<y;f++)F+=P[f-1];for(f=1;f<y;f++)P[f-1]===0?P[f-1]=1:P[f-1]=Math.round(F/P[f-1]);return P},n.calcYnums=function(y){var f,P=[];for(f=1;f<y;f++){var L=this.getYat(0,f-1),z=this.getYat(0,f);z!==L&&L!==void 0&&L!==null&&z!==void 0&&z!==null?P[f-1]=Math.abs(z-L):P[f-1]=0}var F=0;for(f=1;f<y;f++)F+=P[f-1];for(f=1;f<y;f++)P[f-1]===0?P[f-1]=1:P[f-1]=Math.round(F/P[f-1]);return P};var _=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],w=_[9],S=_[13];n.estimateScale=function(y,f){for(var P=f===0?this.calcXnums(y):this.calcYnums(y),L=1+l(P);L<w;)L*=2;for(;L>S;)L--,L/=p(L),L++,L<w&&(L=S);var z=Math.round(L/y);return z>1?z:1};function E(y,f,P){var L=P[8]+P[2]*f[0]+P[5]*f[1];return y[0]=(P[6]+P[0]*f[0]+P[3]*f[1])/L,y[1]=(P[7]+P[1]*f[0]+P[4]*f[1])/L,y}function m(y,f,P){return b(y,f,E,P),y}function b(y,f,P,L){for(var z=[0,0],F=y.shape[0],B=y.shape[1],O=0;O<F;O++)for(var I=0;I<B;I++)P(z,[O,I],L),y.set(O,I,A(f,z[0],z[1]));return y}n.refineCoords=function(y){for(var f=this.dataScaleX,P=this.dataScaleY,L=y[0].shape[0],z=y[0].shape[1],F=Math.floor(y[0].shape[0]*f+1)|0,B=Math.floor(y[0].shape[1]*P+1)|0,O=1+L+1,I=1+z+1,N=x(new Float32Array(O*I),[O,I]),U=[1/f,0,0,0,1/P,0,0,0,1],W=0;W<y.length;++W){this.surface.padField(N,y[W]);var Q=x(new Float32Array(F*B),[F,B]);m(Q,N,U),y[W]=Q}};function d(y,f){for(var P=!1,L=0;L<y.length;L++)if(f===y[L]){P=!0;break}P===!1&&y.push(f)}n.setContourLevels=function(){var y=[[],[],[]],f=[!1,!1,!1],P=!1,L,z,F;for(L=0;L<3;++L)if(this.showContour[L]&&(P=!0,this.contourSize[L]>0&&this.contourStart[L]!==null&&this.contourEnd[L]!==null&&this.contourEnd[L]>this.contourStart[L]))for(f[L]=!0,z=this.contourStart[L];z<this.contourEnd[L];z+=this.contourSize[L])F=z*this.scene.dataScale[L],d(y[L],F);if(P){var B=[[],[],[]];for(L=0;L<3;++L)this.showContour[L]&&(B[L]=f[L]?y[L]:this.scene.contourLevels[L]);this.surface.update({levels:B})}},n.update=function(y){var f=this.scene,P=f.fullSceneLayout,L=this.surface,z=r(y),F=f.dataScale,B=y.z[0].length,O=y._ylength,I=f.contourLevels;this.data=y;var N,U,W,Q,ue=[];for(N=0;N<3;N++)for(ue[N]=[],U=0;U<B;U++)ue[N][U]=[];for(U=0;U<B;U++)for(W=0;W<O;W++)ue[0][U][W]=this.getXat(U,W,y.xcalendar,P.xaxis),ue[1][U][W]=this.getYat(U,W,y.ycalendar,P.yaxis),ue[2][U][W]=this.getZat(U,W,y.zcalendar,P.zaxis);if(y.connectgaps)for(y._emptypoints=e(ue[2]),M(ue[2],y._emptypoints),y._interpolatedZ=[],U=0;U<B;U++)for(y._interpolatedZ[U]=[],W=0;W<O;W++)y._interpolatedZ[U][W]=ue[2][U][W];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q==null?ue[N][U][W]=NaN:Q=ue[N][U][W]*=F[N];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q!=null&&(this.minValues[N]>Q&&(this.minValues[N]=Q),this.maxValues[N]<Q&&(this.maxValues[N]=Q));for(N=0;N<3;N++)this.objectOffset[N]=.5*(this.minValues[N]+this.maxValues[N]);for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q!=null&&(ue[N][U][W]-=this.objectOffset[N]);var se=[x(new Float32Array(B*O),[B,O]),x(new Float32Array(B*O),[B,O]),x(new Float32Array(B*O),[B,O])];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)se[N].set(U,W,ue[N][U][W]);ue=[];var he={colormap:z,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!y.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacityscale:y.opacityscale,opacity:y.opacity},G=a(y);if(he.intensityBounds=[G.min,G.max],y.surfacecolor){var $=x(new Float32Array(B*O),[B,O]);for(U=0;U<B;U++)for(W=0;W<O;W++)$.set(U,W,y.surfacecolor[W][U]);se.push($)}else he.intensityBounds[0]*=F[2],he.intensityBounds[1]*=F[2];(S<se[0].shape[0]||S<se[0].shape[1])&&(this.refineData=!1),this.refineData===!0&&(this.dataScaleX=this.estimateScale(se[0].shape[0],0),this.dataScaleY=this.estimateScale(se[0].shape[1],1),(this.dataScaleX!==1||this.dataScaleY!==1)&&this.refineCoords(se)),y.surfacecolor&&(he.intensity=se.pop());var J=[!0,!0,!0],Z=["x","y","z"];for(N=0;N<3;++N){var re=y.contours[Z[N]];J[N]=re.highlight,he.showContour[N]=re.show||re.highlight,he.showContour[N]&&(he.contourProject[N]=[re.project.x,re.project.y,re.project.z],re.show?(this.showContour[N]=!0,he.levels[N]=I[N],L.highlightColor[N]=he.contourColor[N]=o(re.color),re.usecolormap?L.highlightTint[N]=he.contourTint[N]=0:L.highlightTint[N]=he.contourTint[N]=1,he.contourWidth[N]=re.width,this.contourStart[N]=re.start,this.contourEnd[N]=re.end,this.contourSize[N]=re.size):(this.showContour[N]=!1,this.contourStart[N]=null,this.contourEnd[N]=null,this.contourSize[N]=0),re.highlight&&(he.dynamicColor[N]=o(re.highlightcolor),he.dynamicWidth[N]=re.highlightwidth))}s(z)&&(he.vertexColor=!0),he.objectOffset=this.objectOffset,he.coords=se,L.update(he),L.visible=y.visible,L.enableDynamic=J,L.enableHighlight=J,L.snapToData=!0,"lighting"in y&&(L.ambientLight=y.lighting.ambient,L.diffuseLight=y.lighting.diffuse,L.specularLight=y.lighting.specular,L.roughness=y.lighting.roughness,L.fresnel=y.lighting.fresnel),"lightposition"in y&&(L.lightPosition=[y.lightposition.x,y.lightposition.y,y.lightposition.z])},n.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()};function u(y,f){var P=y.glplot.gl,L=g({gl:P}),z=new i(y,L,f.uid);return L._trace=z,z.update(f),y.glplot.add(L),z}H.exports=u}}),WN=Ye({"src/traces/surface/index.js"(X,H){"use strict";H.exports={attributes:vx(),supplyDefaults:x5().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:HN(),plot:GN(),moduleType:"trace",name:"surface",basePlotModule:pg(),categories:["gl3d","2dMap","showLegend"],meta:{}}}}),ZN=Ye({"lib/surface.js"(X,H){"use strict";H.exports=WN()}}),A1=Ye({"src/traces/mesh3d/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=vx(),e=Pl(),t=Oo().extendFlat;H.exports=t({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"}),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},g("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:M.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:t({},M.contours.x.show,{}),color:M.contours.x.color,width:M.contours.x.width,editType:"calc"},lightposition:{x:t({},M.lightposition.x,{dflt:1e5}),y:t({},M.lightposition.y,{dflt:1e5}),z:t({},M.lightposition.z,{dflt:0}),editType:"calc"},lighting:t({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc"},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc"},editType:"calc"},M.lighting),hoverinfo:t({},e.hoverinfo,{editType:"calc"}),showlegend:t({},e.showlegend,{dflt:!1})})}}),eT=Ye({"src/traces/isosurface/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r=Ou().overrideAll;function o(n){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function a(n){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var i=H.exports=r(t({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:o("x"),y:o("y"),z:o("z")},caps:{x:a("x"),y:a("y"),z:a("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:A(),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),valuehoverformat:x("value",1),showlegend:t({},e.showlegend,{dflt:!1})},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:M.opacity,lightposition:M.lightposition,lighting:M.lighting,flatshading:M.flatshading,contour:M.contour,hoverinfo:t({},e.hoverinfo)}),"calc","nested");i.flatshading.dflt=!0,i.lighting.facenormalsepsilon.dflt=0,i.x.editType=i.y.editType=i.z.editType=i.value.editType="calc+clearAxisTypes"}}),b5=Ye({"src/traces/isosurface/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=eT(),M=sh();function e(r,o,a,i){function n(s,c){return g.coerce(r,o,A,s,c)}t(r,o,a,i,n)}function t(r,o,a,i,n){var s=n("isomin"),c=n("isomax");c!=null&&s!==void 0&&s!==null&&s>c&&(o.isomin=null,o.isomax=null);var h=n("x"),v=n("y"),p=n("z"),T=n("value");if(!h||!h.length||!v||!v.length||!p||!p.length||!T||!T.length){o.visible=!1;return}var l=x.getComponentMethod("calendars","handleTraceDefaults");l(r,o,["x","y","z"],i),n("valuehoverformat"),["x","y","z"].forEach(function(E){n(E+"hoverformat");var m="caps."+E,b=n(m+".show");b&&n(m+".fill");var d="slices."+E,u=n(d+".show");u&&(n(d+".fill"),n(d+".locations"))});var _=n("spaceframe.show");_&&n("spaceframe.fill");var w=n("surface.show");w&&(n("surface.count"),n("surface.fill"),n("surface.pattern"));var S=n("contour.show");S&&(n("contour.color"),n("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(E){n(E)}),M(r,o,i,n,{prefix:"",cLetter:"c"}),o._length=null}H.exports={supplyDefaults:e,supplyIsoDefaults:t}}}),tT=Ye({"src/traces/streamtube/calc.js"(X,H){"use strict";var g=ta(),x=jp();function A(r,o){o._len=Math.min(o.u.length,o.v.length,o.w.length,o.x.length,o.y.length,o.z.length),o._u=t(o.u,o._len),o._v=t(o.v,o._len),o._w=t(o.w,o._len),o._x=t(o.x,o._len),o._y=t(o.y,o._len),o._z=t(o.z,o._len);var a=M(o);o._gridFill=a.fill,o._Xs=a.Xs,o._Ys=a.Ys,o._Zs=a.Zs,o._len=a.len;var i=0,n,s,c;o.starts&&(n=t(o.starts.x||[]),s=t(o.starts.y||[]),c=t(o.starts.z||[]),i=Math.min(n.length,s.length,c.length)),o._startsX=n||[],o._startsY=s||[],o._startsZ=c||[];var h=0,v=1/0,p;for(p=0;p<o._len;p++){var T=o._u[p],l=o._v[p],_=o._w[p],w=Math.sqrt(T*T+l*l+_*_);h=Math.max(h,w),v=Math.min(v,w)}for(x(r,o,{vals:[v,h],containerStr:"",cLetter:"c"}),p=0;p<i;p++){var S=n[p];a.xMax=Math.max(a.xMax,S),a.xMin=Math.min(a.xMin,S);var E=s[p];a.yMax=Math.max(a.yMax,E),a.yMin=Math.min(a.yMin,E);var m=c[p];a.zMax=Math.max(a.zMax,m),a.zMin=Math.min(a.zMin,m)}o._slen=i,o._normMax=h,o._xbnds=[a.xMin,a.xMax],o._ybnds=[a.yMin,a.yMax],o._zbnds=[a.zMin,a.zMax]}function M(r){var o=r._x,a=r._y,i=r._z,n=r._len,s,c,h,v=-1/0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S="",E,m,b,d,u,y,f,P,L;for(n&&(d=o[0],y=a[0],P=i[0]),n>1&&(u=o[n-1],f=a[n-1],L=i[n-1]),s=0;s<n;s++)v=Math.max(v,o[s]),p=Math.min(p,o[s]),T=Math.max(T,a[s]),l=Math.min(l,a[s]),_=Math.max(_,i[s]),w=Math.min(w,i[s]),!E&&o[s]!==d&&(E=!0,S+="x"),!m&&a[s]!==y&&(m=!0,S+="y"),!b&&i[s]!==P&&(b=!0,S+="z");E||(S+="x"),m||(S+="y"),b||(S+="z");var z=e(r._x),F=e(r._y),B=e(r._z);S=S.replace("x",(d>u?"-":"+")+"x"),S=S.replace("y",(y>f?"-":"+")+"y"),S=S.replace("z",(P>L?"-":"+")+"z");var O=function(){n=0,z=[],F=[],B=[]};(!n||n<z.length*F.length*B.length)&&O();var I=function(be){return be==="x"?o:be==="y"?a:i},N=function(be){return be==="x"?z:be==="y"?F:B},U=function(be){return be[n-1]<be[0]?-1:1},W=I(S[1]),Q=I(S[3]),ue=I(S[5]),se=N(S[1]).length,he=N(S[3]).length,G=N(S[5]).length,$=!1,J=function(be,Ae,Be){return se*(he*be+Ae)+Be},Z=U(I(S[1])),re=U(I(S[3])),ne=U(I(S[5]));for(s=0;s<G-1;s++){for(c=0;c<he-1;c++){for(h=0;h<se-1;h++){var j=J(s,c,h),ee=J(s,c,h+1),ie=J(s,c+1,h),fe=J(s+1,c,h);if((!(W[j]*Z<W[ee]*Z)||!(Q[j]*re<Q[ie]*re)||!(ue[j]*ne<ue[fe]*ne))&&($=!0),$)break}if($)break}if($)break}return $&&(g.warn("Encountered arbitrary coordinates! Unable to input data grid."),O()),{xMin:p,yMin:l,zMin:w,xMax:v,yMax:T,zMax:_,Xs:z,Ys:F,Zs:B,len:n,fill:S}}function e(r){return g.distinctVals(r).vals}function t(r,o){if(o===void 0&&(o=r.length),g.isTypedArray(r))return r.subarray(0,o);for(var a=[],i=0;i<o;i++)a[i]=+r[i];return a}H.exports={calc:A,filter:t,processGrid:M}}}),w5=Ye({"src/traces/isosurface/calc.js"(X,H){"use strict";var g=jp(),x=tT().processGrid,A=tT().filter;H.exports=function(e,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=A(t.x,t._len),t._y=A(t.y,t._len),t._z=A(t.z,t._len),t._value=A(t.value,t._len);var r=x(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;for(var o=1/0,a=-1/0,i=0;i<t._len;i++){var n=t._value[i];o=Math.min(o,n),a=Math.max(a,n)}t._minValues=o,t._maxValues=a,t._vMin=t.isomin===void 0||t.isomin===null?o:t.isomin,t._vMax=t.isomax===void 0||t.isomax===null?a:t.isomax,g(e,t,{vals:[t._vMin,t._vMax],containerStr:"",cLetter:"c"})}}}),S1=Ye({"src/plots/gl3d/zip3.js"(X,H){"use strict";H.exports=function(x,A,M,e){e=e||x.length;for(var t=new Array(e),r=0;r<e;r++)t[r]=[x[r],A[r],M[r]];return t}}}),rT=Ye({"src/traces/isosurface/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=function(c,h){for(var v=h.length-1;v>0;v--){var p=Math.min(h[v],h[v-1]),T=Math.max(h[v],h[v-1]);if(T>p&&p<c&&c<=T)return{id:v,distRatio:(T-c)/(T-p)}}return{id:0,distRatio:0}};function o(c,h,v){this.scene=c,this.uid=v,this.mesh=h,this.name="",this.data=null,this.showContour=!1}var a=o.prototype;a.handlePick=function(c){if(c.object===this.mesh){var h=c.data.index,v=this.data._meshX[h],p=this.data._meshY[h],T=this.data._meshZ[h],l=this.data._Ys.length,_=this.data._Zs.length,w=r(v,this.data._Xs).id,S=r(p,this.data._Ys).id,E=r(T,this.data._Zs).id,m=c.index=E+_*S+_*l*w;c.traceCoordinate=[this.data._meshX[m],this.data._meshY[m],this.data._meshZ[m],this.data._value[m]];var b=this.data.hovertext||this.data.text;return A(b)&&b[m]!==void 0?c.textLabel=b[m]:b&&(c.textLabel=b),!0}},a.update=function(c){var h=this.scene,v=h.fullSceneLayout;this.data=n(c);function p(S,E,m,b){return E.map(function(d){return S.d2l(d,0,b)*m})}var T=t(p(v.xaxis,c._meshX,h.dataScale[0],c.xcalendar),p(v.yaxis,c._meshY,h.dataScale[1],c.ycalendar),p(v.zaxis,c._meshZ,h.dataScale[2],c.zcalendar)),l=t(c._meshI,c._meshJ,c._meshK),_={positions:T,cells:l,lightPosition:[c.lightposition.x,c.lightposition.y,c.lightposition.z],ambient:c.lighting.ambient,diffuse:c.lighting.diffuse,specular:c.lighting.specular,roughness:c.lighting.roughness,fresnel:c.lighting.fresnel,vertexNormalsEpsilon:c.lighting.vertexnormalsepsilon,faceNormalsEpsilon:c.lighting.facenormalsepsilon,opacity:c.opacity,contourEnable:c.contour.show,contourColor:M(c.contour.color).slice(0,3),contourWidth:c.contour.width,useFacetNormals:c.flatshading},w=e(c);_.vertexIntensity=c._meshIntensity,_.vertexIntensityBounds=[w.min,w.max],_.colormap=x(c),this.mesh.update(_)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var i=["xyz","xzy","yxz","yzx","zxy","zyx"];function n(c){c._meshI=[],c._meshJ=[],c._meshK=[];var h=c.surface.show,v=c.spaceframe.show,p=c.surface.fill,T=c.spaceframe.fill,l=!1,_=!1,w=0,S,E,m=c._Xs,b=c._Ys,d=c._Zs,u=m.length,y=b.length,f=d.length,P=i.indexOf(c._gridFill.replace(/-/g,"").replace(/\+/g,"")),L=function(yt,Fe,Ke){switch(P){case 5:return Ke+f*Fe+f*y*yt;case 4:return Ke+f*yt+f*u*Fe;case 3:return Fe+y*Ke+y*f*yt;case 2:return Fe+y*yt+y*u*Ke;case 1:return yt+u*Ke+u*f*Fe;default:return yt+u*Fe+u*y*Ke}},z=c._minValues,F=c._maxValues,B=c._vMin,O=c._vMax,I,N,U,W;function Q(yt,Fe,Ke){for(var Ne=W.length,Ee=E;Ee<Ne;Ee++)if(yt===I[Ee]&&Fe===N[Ee]&&Ke===U[Ee])return Ee;return-1}function ue(){E=S}function se(){I=[],N=[],U=[],W=[],S=0,ue()}function he(yt,Fe,Ke,Ne){return I.push(yt),N.push(Fe),U.push(Ke),W.push(Ne),S++,S-1}function G(yt,Fe,Ke){return c._meshI.push(yt),c._meshJ.push(Fe),c._meshK.push(Ke),w++,w-1}function $(yt,Fe,Ke){for(var Ne=[],Ee=0;Ee<yt.length;Ee++)Ne[Ee]=(yt[Ee]+Fe[Ee]+Ke[Ee])/3;return Ne}function J(yt,Fe,Ke){for(var Ne=[],Ee=0;Ee<yt.length;Ee++)Ne[Ee]=yt[Ee]*(1-Ke)+Ke*Fe[Ee];return Ne}var Z;function re(yt){Z=yt}function ne(yt,Fe){var Ke=yt[0],Ne=yt[1],Ee=yt[2],Ve=$(Ke,Ne,Ee),ke=Math.sqrt(1-Z),Te=J(Ve,Ke,ke),Le=J(Ve,Ne,ke),rt=J(Ve,Ee,ke),dt=Fe[0],xt=Fe[1],It=Fe[2];return{xyzv:[[Ke,Ne,Le],[Le,Te,Ke],[Ne,Ee,rt],[rt,Le,Ne],[Ee,Ke,Te],[Te,rt,Ee]],abc:[[dt,xt,-1],[-1,-1,dt],[xt,It,-1],[-1,-1,xt],[It,dt,-1],[-1,-1,It]]}}function j(yt,Fe){return yt==="all"||yt===null?!0:yt.indexOf(Fe)>-1}function ee(yt,Fe){return yt===null?Fe:yt}function ie(yt,Fe,Ke){ue();var Ne=[Fe],Ee=[Ke];if(Z>=1)Ne=[Fe],Ee=[Ke];else if(Z>0){var Ve=ne(Fe,Ke);Ne=Ve.xyzv,Ee=Ve.abc}for(var ke=0;ke<Ne.length;ke++){Fe=Ne[ke],Ke=Ee[ke];for(var Te=[],Le=0;Le<3;Le++){var rt=Fe[Le][0],dt=Fe[Le][1],xt=Fe[Le][2],It=Fe[Le][3],Bt=Ke[Le]>-1?Ke[Le]:Q(rt,dt,xt);Bt>-1?Te[Le]=Bt:Te[Le]=he(rt,dt,xt,ee(yt,It))}G(Te[0],Te[1],Te[2])}}function fe(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(2,3,0)}function be(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(3,0,1),Ne(2,3,0),Ne(1,2,3)}function Ae(yt,Fe,Ke,Ne){var Ee=yt[3];Ee<Ke&&(Ee=Ke),Ee>Ne&&(Ee=Ne);for(var Ve=(yt[3]-Ee)/(yt[3]-Fe[3]+1e-9),ke=[],Te=0;Te<4;Te++)ke[Te]=(1-Ve)*yt[Te]+Ve*Fe[Te];return ke}function Be(yt,Fe,Ke){return yt>=Fe&&yt<=Ke}function Ie(yt){var Fe=.001*(O-B);return yt>=B-Fe&&yt<=O+Fe}function Ze(yt){for(var Fe=[],Ke=0;Ke<4;Ke++){var Ne=yt[Ke];Fe.push([c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne]])}return Fe}var at=3;function it(yt,Fe,Ke,Ne,Ee,Ve){Ve||(Ve=1),Ke=[-1,-1,-1];var ke=!1,Te=[Be(Fe[0][3],Ne,Ee),Be(Fe[1][3],Ne,Ee),Be(Fe[2][3],Ne,Ee)];if(!Te[0]&&!Te[1]&&!Te[2])return!1;var Le=function(dt,xt,It){return Ie(xt[0][3])&&Ie(xt[1][3])&&Ie(xt[2][3])?(ie(dt,xt,It),!0):Ve<at?it(dt,xt,It,B,O,++Ve):!1};if(Te[0]&&Te[1]&&Te[2])return Le(yt,Fe,Ke)||ke;var rt=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(dt){if(Te[dt[0]]&&Te[dt[1]]&&!Te[dt[2]]){var xt=Fe[dt[0]],It=Fe[dt[1]],Bt=Fe[dt[2]],Gt=Ae(Bt,xt,Ne,Ee),Kt=Ae(Bt,It,Ne,Ee);ke=Le(yt,[Kt,Gt,xt],[-1,-1,Ke[dt[0]]])||ke,ke=Le(yt,[xt,It,Kt],[Ke[dt[0]],Ke[dt[1]],-1])||ke,rt=!0}}),rt||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(dt){if(Te[dt[0]]&&!Te[dt[1]]&&!Te[dt[2]]){var xt=Fe[dt[0]],It=Fe[dt[1]],Bt=Fe[dt[2]],Gt=Ae(It,xt,Ne,Ee),Kt=Ae(Bt,xt,Ne,Ee);ke=Le(yt,[Kt,Gt,xt],[-1,-1,Ke[dt[0]]])||ke,rt=!0}}),ke}function et(yt,Fe,Ke,Ne){var Ee=!1,Ve=Ze(Fe),ke=[Be(Ve[0][3],Ke,Ne),Be(Ve[1][3],Ke,Ne),Be(Ve[2][3],Ke,Ne),Be(Ve[3][3],Ke,Ne)];if(!ke[0]&&!ke[1]&&!ke[2]&&!ke[3])return Ee;if(ke[0]&&ke[1]&&ke[2]&&ke[3])return _&&(Ee=be(yt,Ve,Fe)||Ee),Ee;var Te=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(Le){if(ke[Le[0]]&&ke[Le[1]]&&ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]];if(_)Ee=ie(yt,[rt,dt,xt],[Fe[Le[0]],Fe[Le[1]],Fe[Le[2]]])||Ee;else{var Bt=Ae(It,rt,Ke,Ne),Gt=Ae(It,dt,Ke,Ne),Kt=Ae(It,xt,Ke,Ne);Ee=ie(null,[Bt,Gt,Kt],[-1,-1,-1])||Ee}Te=!0}}),Te||([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach(function(Le){if(ke[Le[0]]&&ke[Le[1]]&&!ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]],Bt=Ae(xt,rt,Ke,Ne),Gt=Ae(xt,dt,Ke,Ne),Kt=Ae(It,dt,Ke,Ne),sr=Ae(It,rt,Ke,Ne);_?(Ee=ie(yt,[rt,sr,Bt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[dt,Gt,Kt],[Fe[Le[1]],-1,-1])||Ee):Ee=fe(null,[Bt,Gt,Kt,sr],[-1,-1,-1,-1])||Ee,Te=!0}}),Te)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(Le){if(ke[Le[0]]&&!ke[Le[1]]&&!ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]],Bt=Ae(dt,rt,Ke,Ne),Gt=Ae(xt,rt,Ke,Ne),Kt=Ae(It,rt,Ke,Ne);_?(Ee=ie(yt,[rt,Bt,Gt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[rt,Gt,Kt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[rt,Kt,Bt],[Fe[Le[0]],-1,-1])||Ee):Ee=ie(null,[Bt,Gt,Kt],[-1,-1,-1])||Ee,Te=!0}}),Ee}function lt(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt){var xt=!1;return l&&(j(yt,"A")&&(xt=et(null,[Fe,Ke,Ne,Ve],rt,dt)||xt),j(yt,"B")&&(xt=et(null,[Ke,Ne,Ee,Le],rt,dt)||xt),j(yt,"C")&&(xt=et(null,[Ke,Ve,ke,Le],rt,dt)||xt),j(yt,"D")&&(xt=et(null,[Ne,Ve,Te,Le],rt,dt)||xt),j(yt,"E")&&(xt=et(null,[Ke,Ne,Ve,Le],rt,dt)||xt)),_&&(xt=et(yt,[Ke,Ne,Ve,Le],rt,dt)||xt),xt}function Me(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){return[Te[0]===!0?!0:it(yt,Ze([Fe,Ke,Ne]),[Fe,Ke,Ne],Ve,ke),Te[1]===!0?!0:it(yt,Ze([Ne,Ee,Fe]),[Ne,Ee,Fe],Ve,ke)]}function ge(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le){return Te?Me(yt,Fe,Ke,Ee,Ne,Ve,ke,Le):Me(yt,Ke,Ee,Ne,Fe,Ve,ke,Le)}function ce(yt,Fe,Ke,Ne,Ee,Ve,ke){var Te=!1,Le,rt,dt,xt,It=function(){Te=it(yt,[Le,rt,dt],[-1,-1,-1],Ee,Ve)||Te,Te=it(yt,[dt,xt,Le],[-1,-1,-1],Ee,Ve)||Te},Bt=ke[0],Gt=ke[1],Kt=ke[2];return Bt&&(Le=J(Ze([L(Fe,Ke-0,Ne-0)])[0],Ze([L(Fe-1,Ke-0,Ne-0)])[0],Bt),rt=J(Ze([L(Fe,Ke-0,Ne-1)])[0],Ze([L(Fe-1,Ke-0,Ne-1)])[0],Bt),dt=J(Ze([L(Fe,Ke-1,Ne-1)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Bt),xt=J(Ze([L(Fe,Ke-1,Ne-0)])[0],Ze([L(Fe-1,Ke-1,Ne-0)])[0],Bt),It()),Gt&&(Le=J(Ze([L(Fe-0,Ke,Ne-0)])[0],Ze([L(Fe-0,Ke-1,Ne-0)])[0],Gt),rt=J(Ze([L(Fe-0,Ke,Ne-1)])[0],Ze([L(Fe-0,Ke-1,Ne-1)])[0],Gt),dt=J(Ze([L(Fe-1,Ke,Ne-1)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Gt),xt=J(Ze([L(Fe-1,Ke,Ne-0)])[0],Ze([L(Fe-1,Ke-1,Ne-0)])[0],Gt),It()),Kt&&(Le=J(Ze([L(Fe-0,Ke-0,Ne)])[0],Ze([L(Fe-0,Ke-0,Ne-1)])[0],Kt),rt=J(Ze([L(Fe-0,Ke-1,Ne)])[0],Ze([L(Fe-0,Ke-1,Ne-1)])[0],Kt),dt=J(Ze([L(Fe-1,Ke-1,Ne)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Kt),xt=J(Ze([L(Fe-1,Ke-0,Ne)])[0],Ze([L(Fe-1,Ke-0,Ne-1)])[0],Kt),It()),Te}function ze(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt){var It=yt;return xt?(l&&yt==="even"&&(It=null),lt(It,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt)):(l&&yt==="odd"&&(It=null),lt(It,Le,Te,ke,Ve,Ee,Ne,Ke,Fe,rt,dt))}function tt(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<f;rt++)for(var dt=1;dt<y;dt++)Ve.push(ge(yt,L(Le,dt-1,rt-1),L(Le,dt-1,rt),L(Le,dt,rt-1),L(Le,dt,rt),Ke,Ne,(Le+dt+rt)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function nt(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<u;rt++)for(var dt=1;dt<f;dt++)Ve.push(ge(yt,L(rt-1,Le,dt-1),L(rt,Le,dt-1),L(rt-1,Le,dt),L(rt,Le,dt),Ke,Ne,(rt+Le+dt)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function Qe(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<y;rt++)for(var dt=1;dt<u;dt++)Ve.push(ge(yt,L(dt-1,rt-1,Le),L(dt-1,rt,Le),L(dt,rt-1,Le),L(dt,rt,Le),Ke,Ne,(dt+rt+Le)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function Ct(yt,Fe,Ke){for(var Ne=1;Ne<f;Ne++)for(var Ee=1;Ee<y;Ee++)for(var Ve=1;Ve<u;Ve++)ze(yt,L(Ve-1,Ee-1,Ne-1),L(Ve-1,Ee-1,Ne),L(Ve-1,Ee,Ne-1),L(Ve-1,Ee,Ne),L(Ve,Ee-1,Ne-1),L(Ve,Ee-1,Ne),L(Ve,Ee,Ne-1),L(Ve,Ee,Ne),Fe,Ke,(Ve+Ee+Ne)%2)}function St(yt,Fe,Ke){_=!0,Ct(yt,Fe,Ke),_=!1}function Ot(yt,Fe,Ke){l=!0,Ct(yt,Fe,Ke),l=!1}function jt(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<f;dt++)for(var xt=1;xt<y;xt++)ke.push(ce(yt,rt,xt,dt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function ur(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<u;dt++)for(var xt=1;xt<f;xt++)ke.push(ce(yt,dt,rt,xt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function ar(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<y;dt++)for(var xt=1;xt<u;xt++)ke.push(ce(yt,xt,dt,rt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function Cr(yt,Fe){for(var Ke=[],Ne=yt;Ne<Fe;Ne++)Ke.push(Ne);return Ke}function vr(){for(var yt=0;yt<u;yt++)for(var Fe=0;Fe<y;Fe++)for(var Ke=0;Ke<f;Ke++){var Ne=L(yt,Fe,Ke);he(c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne])}}function _r(){se(),vr();var yt=null;if(v&&T&&(re(T),St(yt,B,O)),h&&p){re(p);for(var Fe=c.surface.pattern,Ke=c.surface.count,Ne=0;Ne<Ke;Ne++){var Ee=Ke===1?.5:Ne/(Ke-1),Ve=(1-Ee)*B+Ee*O,ke=Math.abs(Ve-z),Te=Math.abs(Ve-F),Le=ke>Te?[z,Ve]:[Ve,F];Ot(Fe,Le[0],Le[1])}}var rt=[[Math.min(B,F),Math.max(B,F)],[Math.min(z,O),Math.max(z,O)]];["x","y","z"].forEach(function(dt){for(var xt=[],It=0;It<rt.length;It++){var Bt=0,Gt=rt[It][0],Kt=rt[It][1],sr=c.slices[dt];if(sr.show&&sr.fill){re(sr.fill);var sa=[],Aa=[],La=[];if(sr.locations.length)for(var ka=0;ka<sr.locations.length;ka++){var Ga=r(sr.locations[ka],dt==="x"?m:dt==="y"?b:d);Ga.distRatio===0?sa.push(Ga.id):Ga.id>0&&(Aa.push(Ga.id),dt==="x"?La.push([Ga.distRatio,0,0]):dt==="y"?La.push([0,Ga.distRatio,0]):La.push([0,0,Ga.distRatio]))}else dt==="x"?sa=Cr(1,u-1):dt==="y"?sa=Cr(1,y-1):sa=Cr(1,f-1);Aa.length>0&&(dt==="x"?xt[Bt]=jt(yt,Aa,Gt,Kt,La,xt[Bt]):dt==="y"?xt[Bt]=ur(yt,Aa,Gt,Kt,La,xt[Bt]):xt[Bt]=ar(yt,Aa,Gt,Kt,La,xt[Bt]),Bt++),sa.length>0&&(dt==="x"?xt[Bt]=tt(yt,sa,Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,sa,Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,sa,Gt,Kt,xt[Bt]),Bt++)}var Ma=c.caps[dt];Ma.show&&Ma.fill&&(re(Ma.fill),dt==="x"?xt[Bt]=tt(yt,[0,u-1],Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,[0,y-1],Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,[0,f-1],Gt,Kt,xt[Bt]),Bt++)}}),w===0&&se(),c._meshX=I,c._meshY=N,c._meshZ=U,c._meshIntensity=W,c._Xs=m,c._Ys=b,c._Zs=d}return _r(),c}function s(c,h){var v=c.glplot.gl,p=g({gl:v}),T=new o(c,p,h.uid);return p._trace=T,T.update(h),c.glplot.add(p),T}H.exports={findNearestOnAxis:r,generateIsoMeshes:n,createIsosurfaceTrace:s}}}),XN=Ye({"src/traces/isosurface/index.js"(X,H){"use strict";H.exports={attributes:eT(),supplyDefaults:b5().supplyDefaults,calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:rT().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),YN=Ye({"lib/isosurface.js"(X,H){"use strict";H.exports=XN()}}),T5=Ye({"src/traces/volume/attributes.js"(X,H){"use strict";var g=tu(),x=eT(),A=vx(),M=Pl(),e=Oo().extendFlat,t=Ou().overrideAll,r=H.exports=t(e({x:x.x,y:x.y,z:x.z,value:x.value,isomin:x.isomin,isomax:x.isomax,surface:x.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:x.slices,caps:x.caps,text:x.text,hovertext:x.hovertext,xhoverformat:x.xhoverformat,yhoverformat:x.yhoverformat,zhoverformat:x.zhoverformat,valuehoverformat:x.valuehoverformat,hovertemplate:x.hovertemplate},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:x.colorbar,opacity:x.opacity,opacityscale:A.opacityscale,lightposition:x.lightposition,lighting:x.lighting,flatshading:x.flatshading,contour:x.contour,hoverinfo:e({},M.hoverinfo),showlegend:e({},M.showlegend,{dflt:!1})}),"calc","nested");r.x.editType=r.y.editType=r.z.editType=r.value.editType="calc+clearAxisTypes"}}),KN=Ye({"src/traces/volume/defaults.js"(X,H){"use strict";var g=ta(),x=T5(),A=b5().supplyIsoDefaults,M=x5().opacityscaleDefaults;H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(t,r,o,a,i),M(t,r,a,i)}}}),JN=Ye({"src/traces/volume/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=rT().findNearestOnAxis,o=rT().generateIsoMeshes;function a(s,c,h){this.scene=s,this.uid=h,this.mesh=c,this.name="",this.data=null,this.showContour=!1}var i=a.prototype;i.handlePick=function(s){if(s.object===this.mesh){var c=s.data.index,h=this.data._meshX[c],v=this.data._meshY[c],p=this.data._meshZ[c],T=this.data._Ys.length,l=this.data._Zs.length,_=r(h,this.data._Xs).id,w=r(v,this.data._Ys).id,S=r(p,this.data._Zs).id,E=s.index=S+l*w+l*T*_;s.traceCoordinate=[this.data._meshX[E],this.data._meshY[E],this.data._meshZ[E],this.data._value[E]];var m=this.data.hovertext||this.data.text;return A(m)&&m[E]!==void 0?s.textLabel=m[E]:m&&(s.textLabel=m),!0}},i.update=function(s){var c=this.scene,h=c.fullSceneLayout;this.data=o(s);function v(w,S,E,m){return S.map(function(b){return w.d2l(b,0,m)*E})}var p=t(v(h.xaxis,s._meshX,c.dataScale[0],s.xcalendar),v(h.yaxis,s._meshY,c.dataScale[1],s.ycalendar),v(h.zaxis,s._meshZ,c.dataScale[2],s.zcalendar)),T=t(s._meshI,s._meshJ,s._meshK),l={positions:p,cells:T,lightPosition:[s.lightposition.x,s.lightposition.y,s.lightposition.z],ambient:s.lighting.ambient,diffuse:s.lighting.diffuse,specular:s.lighting.specular,roughness:s.lighting.roughness,fresnel:s.lighting.fresnel,vertexNormalsEpsilon:s.lighting.vertexnormalsepsilon,faceNormalsEpsilon:s.lighting.facenormalsepsilon,opacity:s.opacity,opacityscale:s.opacityscale,contourEnable:s.contour.show,contourColor:M(s.contour.color).slice(0,3),contourWidth:s.contour.width,useFacetNormals:s.flatshading},_=e(s);l.vertexIntensity=s._meshIntensity,l.vertexIntensityBounds=[_.min,_.max],l.colormap=x(s),this.mesh.update(l)},i.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function n(s,c){var h=s.glplot.gl,v=g({gl:h}),p=new a(s,v,c.uid);return v._trace=p,p.update(c),s.glplot.add(v),p}H.exports=n}}),$N=Ye({"src/traces/volume/index.js"(X,H){"use strict";H.exports={attributes:T5(),supplyDefaults:KN(),calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:JN(),moduleType:"trace",name:"volume",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),QN=Ye({"lib/volume.js"(X,H){"use strict";H.exports=$N()}}),eU=Ye({"src/traces/mesh3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=A1();H.exports=function(t,r,o,a){function i(v,p){return x.coerce(t,r,M,v,p)}function n(v){var p=v.map(function(T){var l=i(T);return l&&x.isArrayOrTypedArray(l)?l:null});return p.every(function(T){return T&&T.length===p[0].length})&&p}var s=n(["x","y","z"]);if(!s){r.visible=!1;return}if(n(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var c=g.getComponentMethod("calendars","handleTraceDefaults");c(t,r,["x","y","z"],a),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(v){i(v)});var h=i("contour.show");h&&(i("contour.color"),i("contour.width")),"intensity"in t?(i("intensity"),i("intensitymode"),A(t,r,a,i,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?i("facecolor"):"vertexcolor"in t?i("vertexcolor"):i("color",o)),i("text"),i("hovertext"),i("hovertemplate"),i("xhoverformat"),i("yhoverformat"),i("zhoverformat"),r._length=null}}}),tU=Ye({"src/traces/mesh3d/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.intensity&&g(A,M,{vals:M.intensity,containerStr:"",cLetter:"c"})}}}),rU=Ye({"src/traces/mesh3d/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=Gh().delaunay_triangulate,A=Gh().alpha_shape,M=Gh().convex_hull,e=em().parseColorScale,t=ta().isArrayOrTypedArray,r=Qv(),o=Su().extractOpts,a=S1();function i(l,_,w){this.scene=l,this.uid=w,this.mesh=_,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var n=i.prototype;n.handlePick=function(l){if(l.object===this.mesh){var _=l.index=l.data.index;l.data._cellCenter?l.traceCoordinate=l.data.dataCoordinate:l.traceCoordinate=[this.data.x[_],this.data.y[_],this.data.z[_]];var w=this.data.hovertext||this.data.text;return t(w)&&w[_]!==void 0?l.textLabel=w[_]:w&&(l.textLabel=w),!0}};function s(l){for(var _=[],w=l.length,S=0;S<w;S++)_[S]=r(l[S]);return _}function c(l,_,w,S){for(var E=[],m=_.length,b=0;b<m;b++)E[b]=l.d2l(_[b],0,S)*w;return E}function h(l){for(var _=[],w=l.length,S=0;S<w;S++)_[S]=Math.round(l[S]);return _}function v(l,_){for(var w=["x","y","z"].indexOf(l),S=[],E=_.length,m=0;m<E;m++)S[m]=[_[m][(w+1)%3],_[m][(w+2)%3]];return x(S)}function p(l,_){for(var w=l.length,S=0;S<w;S++)if(l[S]<=-.5||l[S]>=_-.5)return!1;return!0}n.update=function(l){var _=this.scene,w=_.fullSceneLayout;this.data=l;var S=l.x.length,E=a(c(w.xaxis,l.x,_.dataScale[0],l.xcalendar),c(w.yaxis,l.y,_.dataScale[1],l.ycalendar),c(w.zaxis,l.z,_.dataScale[2],l.zcalendar)),m;if(l.i&&l.j&&l.k){if(l.i.length!==l.j.length||l.j.length!==l.k.length||!p(l.i,S)||!p(l.j,S)||!p(l.k,S))return;m=a(h(l.i),h(l.j),h(l.k))}else l.alphahull===0?m=M(E):l.alphahull>0?m=A(l.alphahull,E):m=v(l.delaunayaxis,E);var b={positions:E,cells:m,lightPosition:[l.lightposition.x,l.lightposition.y,l.lightposition.z],ambient:l.lighting.ambient,diffuse:l.lighting.diffuse,specular:l.lighting.specular,roughness:l.lighting.roughness,fresnel:l.lighting.fresnel,vertexNormalsEpsilon:l.lighting.vertexnormalsepsilon,faceNormalsEpsilon:l.lighting.facenormalsepsilon,opacity:l.opacity,contourEnable:l.contour.show,contourColor:r(l.contour.color).slice(0,3),contourWidth:l.contour.width,useFacetNormals:l.flatshading};if(l.intensity){var d=o(l);this.color="#fff";var u=l.intensitymode;b[u+"Intensity"]=l.intensity,b[u+"IntensityBounds"]=[d.min,d.max],b.colormap=e(l)}else l.vertexcolor?(this.color=l.vertexcolor[0],b.vertexColors=s(l.vertexcolor)):l.facecolor?(this.color=l.facecolor[0],b.cellColors=s(l.facecolor)):(this.color=l.color,b.meshColor=r(l.color));this.mesh.update(b)},n.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function T(l,_){var w=l.glplot.gl,S=g({gl:w}),E=new i(l,S,_.uid);return S._trace=E,E.update(_),l.glplot.add(S),E}H.exports=T}}),aU=Ye({"src/traces/mesh3d/index.js"(X,H){"use strict";H.exports={attributes:A1(),supplyDefaults:eU(),calc:tU(),colorbar:{min:"cmin",max:"cmax"},plot:rU(),moduleType:"trace",name:"mesh3d",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),iU=Ye({"lib/mesh3d.js"(X,H){"use strict";H.exports=aU()}}),A5=Ye({"src/traces/cone/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["norm"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),nU=Ye({"src/traces/cone/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=A5();H.exports=function(e,t,r,o){function a(T,l){return g.coerce(e,t,A,T,l)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}var p=a("sizemode");a("sizeref",p==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),oU=Ye({"src/traces/cone/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){for(var e=M.u,t=M.v,r=M.w,o=Math.min(M.x.length,M.y.length,M.z.length,e.length,t.length,r.length),a=-1/0,i=1/0,n=0;n<o;n++){var s=e[n],c=t[n],h=r[n],v=Math.sqrt(s*s+c*c+h*h);a=Math.max(a,v),i=Math.min(i,v)}M._len=o,M._normMax=a,g(A,M,{vals:[i,a],containerStr:"",cLetter:"c"})}}}),sU=Ye({"src/traces/cone/convert.js"(X,H){"use strict";var g=Gh().gl_cone3d,x=Gh().gl_cone3d.createConeMesh,A=ta().simpleMap,M=em().parseColorScale,e=Su().extractOpts,t=ta().isArrayOrTypedArray,r=S1();function o(v,p){this.scene=v,this.uid=p,this.mesh=null,this.data=null}var a=o.prototype;a.handlePick=function(v){if(v.object===this.mesh){var p=v.index=v.data.index,T=this.data.x[p],l=this.data.y[p],_=this.data.z[p],w=this.data.u[p],S=this.data.v[p],E=this.data.w[p];v.traceCoordinate=[T,l,_,w,S,E,Math.sqrt(w*w+S*S+E*E)];var m=this.data.hovertext||this.data.text;return t(m)&&m[p]!==void 0?v.textLabel=m[p]:m&&(v.textLabel=m),!0}};var i={xaxis:0,yaxis:1,zaxis:2},n={tip:1,tail:0,cm:.25,center:.5},s={tip:1,tail:1,cm:.75,center:.5};function c(v,p){var T=v.fullSceneLayout,l=v.dataScale,_={};function w(d,u){var y=T[u],f=l[i[u]];return A(d,function(P){return y.d2l(P)*f})}_.vectors=r(w(p.u,"xaxis"),w(p.v,"yaxis"),w(p.w,"zaxis"),p._len),_.positions=r(w(p.x,"xaxis"),w(p.y,"yaxis"),w(p.z,"zaxis"),p._len);var S=e(p);_.colormap=M(p),_.vertexIntensityBounds=[S.min/p._normMax,S.max/p._normMax],_.coneOffset=n[p.anchor];var E=p.sizemode;E==="scaled"?_.coneSize=p.sizeref||.5:E==="absolute"?_.coneSize=p.sizeref&&p._normMax?p.sizeref/p._normMax:.5:E==="raw"&&(_.coneSize=p.sizeref),_.coneSizemode=E;var m=g(_),b=p.lightposition;return m.lightPosition=[b.x,b.y,b.z],m.ambient=p.lighting.ambient,m.diffuse=p.lighting.diffuse,m.specular=p.lighting.specular,m.roughness=p.lighting.roughness,m.fresnel=p.lighting.fresnel,m.opacity=p.opacity,p._pad=s[p.anchor]*m.vectorScale*m.coneScale*p._normMax,m}a.update=function(v){this.data=v;var p=c(this.scene,v);this.mesh.update(p)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function h(v,p){var T=v.glplot.gl,l=c(v,p),_=x(T,l),w=new o(v,p.uid);return w.mesh=_,w.data=p,_._trace=w,v.glplot.add(_),w}H.exports=h}}),lU=Ye({"src/traces/cone/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"cone",basePlotModule:pg(),categories:["gl3d","showLegend"],attributes:A5(),supplyDefaults:nU(),colorbar:{min:"cmin",max:"cmax"},calc:oU(),plot:sU(),eventData:function(g,x){return g.norm=x.traceCoordinate[6],g},meta:{}}}}),uU=Ye({"lib/cone.js"(X,H){"use strict";H.exports=lU()}}),S5=Ye({"src/traces/streamtube/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),cU=Ye({"src/traces/streamtube/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=S5();H.exports=function(e,t,r,o){function a(p,T){return g.coerce(e,t,A,p,T)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),fU=Ye({"src/traces/streamtube/convert.js"(X,H){"use strict";var g=Gh().gl_streamtube3d,x=g.createTubeMesh,A=ta(),M=em().parseColorScale,e=Su().extractOpts,t=S1(),r={xaxis:0,yaxis:1,zaxis:2};function o(h,v){this.scene=h,this.uid=v,this.mesh=null,this.data=null}var a=o.prototype;a.handlePick=function(h){var v=this.scene.fullSceneLayout,p=this.scene.dataScale;function T(w,S){var E=v[S],m=p[r[S]];return E.l2c(w)/m}if(h.object===this.mesh){var l=h.data.position,_=h.data.velocity;return h.traceCoordinate=[T(l[0],"xaxis"),T(l[1],"yaxis"),T(l[2],"zaxis"),T(_[0],"xaxis"),T(_[1],"yaxis"),T(_[2],"zaxis"),h.data.intensity*this.data._normMax,h.data.divergence],h.textLabel=this.data.hovertext||this.data.text,!0}};function i(h){var v=h.length,p;return v>2?p=h.slice(1,v-1):v===2?p=[(h[0]+h[1])/2]:p=h,p}function n(h){var v=h.length;return v===1?[.5,.5]:[h[1]-h[0],h[v-1]-h[v-2]]}function s(h,v){var p=h.fullSceneLayout,T=h.dataScale,l=v._len,_={};function w(he,G){var $=p[G],J=T[r[G]];return A.simpleMap(he,function(Z){return $.d2l(Z)*J})}if(_.vectors=t(w(v._u,"xaxis"),w(v._v,"yaxis"),w(v._w,"zaxis"),l),!l)return{positions:[],cells:[]};var S=w(v._Xs,"xaxis"),E=w(v._Ys,"yaxis"),m=w(v._Zs,"zaxis");_.meshgrid=[S,E,m],_.gridFill=v._gridFill;var b=v._slen;if(b)_.startingPositions=t(w(v._startsX,"xaxis"),w(v._startsY,"yaxis"),w(v._startsZ,"zaxis"));else{for(var d=E[0],u=i(S),y=i(m),f=new Array(u.length*y.length),P=0,L=0;L<u.length;L++)for(var z=0;z<y.length;z++)f[P++]=[u[L],d,y[z]];_.startingPositions=f}_.colormap=M(v),_.tubeSize=v.sizeref,_.maxLength=v.maxdisplayed;var F=w(v._xbnds,"xaxis"),B=w(v._ybnds,"yaxis"),O=w(v._zbnds,"zaxis"),I=n(S),N=n(E),U=n(m),W=[[F[0]-I[0],B[0]-N[0],O[0]-U[0]],[F[1]+I[1],B[1]+N[1],O[1]+U[1]]],Q=g(_,W),ue=e(v);Q.vertexIntensityBounds=[ue.min/v._normMax,ue.max/v._normMax];var se=v.lightposition;return Q.lightPosition=[se.x,se.y,se.z],Q.ambient=v.lighting.ambient,Q.diffuse=v.lighting.diffuse,Q.specular=v.lighting.specular,Q.roughness=v.lighting.roughness,Q.fresnel=v.lighting.fresnel,Q.opacity=v.opacity,v._pad=Q.tubeScale*v.sizeref*2,Q}a.update=function(h){this.data=h;var v=s(this.scene,h);this.mesh.update(v)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function c(h,v){var p=h.glplot.gl,T=s(h,v),l=x(p,T),_=new o(h,v.uid);return _.mesh=l,_.data=v,l._trace=_,h.glplot.add(l),_}H.exports=c}}),hU=Ye({"src/traces/streamtube/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"streamtube",basePlotModule:pg(),categories:["gl3d","showLegend"],attributes:S5(),supplyDefaults:cU(),colorbar:{min:"cmin",max:"cmax"},calc:tT().calc,plot:fU(),eventData:function(g,x){return g.tubex=g.x,g.tubey=g.y,g.tubez=g.z,g.tubeu=x.traceCoordinate[3],g.tubev=x.traceCoordinate[4],g.tubew=x.traceCoordinate[5],g.norm=x.traceCoordinate[6],g.divergence=x.traceCoordinate[7],delete g.x,delete g.y,delete g.z,g},meta:{}}}}),pU=Ye({"lib/streamtube.js"(X,H){"use strict";H.exports=hU()}}),p0=Ye({"src/traces/scattergeo/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=Ou().overrideAll,i=M.marker,n=M.line,s=i.line;H.exports=a({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:o({},M.hovertext,{}),textfont:M.textfont,textposition:M.textposition,line:{color:n.color,width:n.width,dash:r},connectgaps:M.connectgaps,marker:o({symbol:i.symbol,opacity:i.opacity,angle:i.angle,angleref:o({},i.angleref,{values:["previous","up","north"]}),standoff:i.standoff,size:i.size,sizeref:i.sizeref,sizemin:i.sizemin,sizemode:i.sizemode,colorbar:i.colorbar,line:o({width:s.width},t("marker.line")),gradient:i.gradient},t("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:A(),selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:g()},"calc","nested")}}),dU=Ye({"src/traces/scattergeo/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=p0();H.exports=function(a,i,n,s){function c(S,E){return g.coerce(a,i,r,S,E)}var h=c("locations"),v;if(h&&h.length){var p=c("geojson"),T;(typeof p=="string"&&p!==""||g.isPlainObject(p))&&(T="geojson-id");var l=c("locationmode",T);l==="geojson-id"&&c("featureidkey"),v=h.length}else{var _=c("lon")||[],w=c("lat")||[];v=Math.min(_.length,w.length)}if(!v){i.visible=!1;return}i._length=v,c("text"),c("hovertext"),c("hovertemplate"),c("mode"),x.hasMarkers(i)&&A(a,i,n,s,c,{gradient:!0}),x.hasLines(i)&&(M(a,i,n,s,c),c("connectgaps")),x.hasText(i)&&(c("texttemplate"),e(a,i,s,c)),c("fill"),i.fill!=="none"&&t(a,i,n,c),g.coerceSelectionMarkerOpacity(i,c)}}}),vU=Ye({"src/traces/scattergeo/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.geo]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),aT=Ye({"src/traces/scattergeo/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Fd(),M=Av(),e=Od(),t=ta().isArrayOrTypedArray,r=ta()._;function o(a){return a&&typeof a=="string"}H.exports=function(i,n){var s=t(n.locations),c=s?n.locations.length:n._length,h=new Array(c),v;n.geojson?v=function(S){return o(S)||g(S)}:v=o;for(var p=0;p<c;p++){var T=h[p]={};if(s){var l=n.locations[p];T.loc=v(l)?l:null}else{var _=n.lon[p],w=n.lat[p];g(_)&&g(w)?T.lonlat=[+_,+w]:T.lonlat=[x,x]}}return M(h,n),A(i,n),e(h,n),c&&(h[0].t={labels:{lat:r(i,"lat:")+" ",lon:r(i,"lon:")+" "}}),h}}}),mx=Ye({"src/plots/geo/constants.js"(X){"use strict";X.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"},X.axesNames=["lonaxis","lataxis"],X.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360},X.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180},X.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]}},X.clipPad=.001,X.precision=.1,X.landColor="#F0DC82",X.waterColor="#3399FF",X.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"},X.sphereSVG={type:"Sphere"},X.fillLayers={ocean:1,land:1,lakes:1},X.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},X.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"],X.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"],X.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}}}),M5=Ye({"node_modules/topojson-client/dist/topojson-client.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.topojson=g.topojson||{}))})(X,function(g){"use strict";function x(w){return w}function A(w){if(w==null)return x;var S,E,m=w.scale[0],b=w.scale[1],d=w.translate[0],u=w.translate[1];return function(y,f){f||(S=E=0);var P=2,L=y.length,z=new Array(L);for(z[0]=(S+=y[0])*m+d,z[1]=(E+=y[1])*b+u;P<L;)z[P]=y[P],++P;return z}}function M(w){var S=A(w.transform),E,m=1/0,b=m,d=-m,u=-m;function y(P){P=S(P),P[0]<m&&(m=P[0]),P[0]>d&&(d=P[0]),P[1]<b&&(b=P[1]),P[1]>u&&(u=P[1])}function f(P){switch(P.type){case"GeometryCollection":P.geometries.forEach(f);break;case"Point":y(P.coordinates);break;case"MultiPoint":P.coordinates.forEach(y);break}}w.arcs.forEach(function(P){for(var L=-1,z=P.length,F;++L<z;)F=S(P[L],L),F[0]<m&&(m=F[0]),F[0]>d&&(d=F[0]),F[1]<b&&(b=F[1]),F[1]>u&&(u=F[1])});for(E in w.objects)f(w.objects[E]);return[m,b,d,u]}function e(w,S){for(var E,m=w.length,b=m-S;b<--m;)E=w[b],w[b++]=w[m],w[m]=E}function t(w,S){return typeof S=="string"&&(S=w.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(E){return r(w,E)})}:r(w,S)}function r(w,S){var E=S.id,m=S.bbox,b=S.properties==null?{}:S.properties,d=o(w,S);return E==null&&m==null?{type:"Feature",properties:b,geometry:d}:m==null?{type:"Feature",id:E,properties:b,geometry:d}:{type:"Feature",id:E,bbox:m,properties:b,geometry:d}}function o(w,S){var E=A(w.transform),m=w.arcs;function b(L,z){z.length&&z.pop();for(var F=m[L<0?~L:L],B=0,O=F.length;B<O;++B)z.push(E(F[B],B));L<0&&e(z,O)}function d(L){return E(L)}function u(L){for(var z=[],F=0,B=L.length;F<B;++F)b(L[F],z);return z.length<2&&z.push(z[0]),z}function y(L){for(var z=u(L);z.length<4;)z.push(z[0]);return z}function f(L){return L.map(y)}function P(L){var z=L.type,F;switch(z){case"GeometryCollection":return{type:z,geometries:L.geometries.map(P)};case"Point":F=d(L.coordinates);break;case"MultiPoint":F=L.coordinates.map(d);break;case"LineString":F=u(L.arcs);break;case"MultiLineString":F=L.arcs.map(u);break;case"Polygon":F=f(L.arcs);break;case"MultiPolygon":F=L.arcs.map(f);break;default:return null}return{type:z,coordinates:F}}return P(S)}function a(w,S){var E={},m={},b={},d=[],u=-1;S.forEach(function(P,L){var z=w.arcs[P<0?~P:P],F;z.length<3&&!z[1][0]&&!z[1][1]&&(F=S[++u],S[u]=P,S[L]=F)}),S.forEach(function(P){var L=y(P),z=L[0],F=L[1],B,O;if(B=b[z])if(delete b[B.end],B.push(P),B.end=F,O=m[F]){delete m[O.start];var I=O===B?B:B.concat(O);m[I.start=B.start]=b[I.end=O.end]=I}else m[B.start]=b[B.end]=B;else if(B=m[F])if(delete m[B.start],B.unshift(P),B.start=z,O=b[z]){delete b[O.end];var N=O===B?B:O.concat(B);m[N.start=O.start]=b[N.end=B.end]=N}else m[B.start]=b[B.end]=B;else B=[P],m[B.start=z]=b[B.end=F]=B});function y(P){var L=w.arcs[P<0?~P:P],z=L[0],F;return w.transform?(F=[0,0],L.forEach(function(B){F[0]+=B[0],F[1]+=B[1]})):F=L[L.length-1],P<0?[F,z]:[z,F]}function f(P,L){for(var z in P){var F=P[z];delete L[F.start],delete F.start,delete F.end,F.forEach(function(B){E[B<0?~B:B]=1}),d.push(F)}}return f(b,m),f(m,b),S.forEach(function(P){E[P<0?~P:P]||d.push([P])}),d}function i(w){return o(w,n.apply(this,arguments))}function n(w,S,E){var m,b,d;if(arguments.length>1)m=s(w,S,E);else for(b=0,m=new Array(d=w.arcs.length);b<d;++b)m[b]=b;return{type:"MultiLineString",arcs:a(w,m)}}function s(w,S,E){var m=[],b=[],d;function u(z){var F=z<0?~z:z;(b[F]||(b[F]=[])).push({i:z,g:d})}function y(z){z.forEach(u)}function f(z){z.forEach(y)}function P(z){z.forEach(f)}function L(z){switch(d=z,z.type){case"GeometryCollection":z.geometries.forEach(L);break;case"LineString":y(z.arcs);break;case"MultiLineString":case"Polygon":f(z.arcs);break;case"MultiPolygon":P(z.arcs);break}}return L(S),b.forEach(E==null?function(z){m.push(z[0].i)}:function(z){E(z[0].g,z[z.length-1].g)&&m.push(z[0].i)}),m}function c(w){for(var S=-1,E=w.length,m,b=w[E-1],d=0;++S<E;)m=b,b=w[S],d+=m[0]*b[1]-m[1]*b[0];return Math.abs(d)}function h(w){return o(w,v.apply(this,arguments))}function v(w,S){var E={},m=[],b=[];S.forEach(d);function d(f){switch(f.type){case"GeometryCollection":f.geometries.forEach(d);break;case"Polygon":u(f.arcs);break;case"MultiPolygon":f.arcs.forEach(u);break}}function u(f){f.forEach(function(P){P.forEach(function(L){(E[L=L<0?~L:L]||(E[L]=[])).push(f)})}),m.push(f)}function y(f){return c(o(w,{type:"Polygon",arcs:[f]}).coordinates[0])}return m.forEach(function(f){if(!f._){var P=[],L=[f];for(f._=1,b.push(P);f=L.pop();)P.push(f),f.forEach(function(z){z.forEach(function(F){E[F<0?~F:F].forEach(function(B){B._||(B._=1,L.push(B))})})})}}),m.forEach(function(f){delete f._}),{type:"MultiPolygon",arcs:b.map(function(f){var P=[],L;if(f.forEach(function(I){I.forEach(function(N){N.forEach(function(U){E[U<0?~U:U].length<2&&P.push(U)})})}),P=a(w,P),(L=P.length)>1)for(var z=1,F=y(P[0]),B,O;z<L;++z)(B=y(P[z]))>F&&(O=P[0],P[0]=P[z],P[z]=O,F=B);return P}).filter(function(f){return f.length>0})}}function p(w,S){for(var E=0,m=w.length;E<m;){var b=E+m>>>1;w[b]<S?E=b+1:m=b}return E}function T(w){var S={},E=w.map(function(){return[]});function m(I,N){I.forEach(function(U){U<0&&(U=~U);var W=S[U];W?W.push(N):S[U]=[N]})}function b(I,N){I.forEach(function(U){m(U,N)})}function d(I,N){I.type==="GeometryCollection"?I.geometries.forEach(function(U){d(U,N)}):I.type in u&&u[I.type](I.arcs,N)}var u={LineString:m,MultiLineString:b,Polygon:b,MultiPolygon:function(I,N){I.forEach(function(U){b(U,N)})}};w.forEach(d);for(var y in S)for(var f=S[y],P=f.length,L=0;L<P;++L)for(var z=L+1;z<P;++z){var F=f[L],B=f[z],O;(O=E[F])[y=p(O,B)]!==B&&O.splice(y,0,B),(O=E[B])[y=p(O,F)]!==F&&O.splice(y,0,F)}return E}function l(w){if(w==null)return x;var S,E,m=w.scale[0],b=w.scale[1],d=w.translate[0],u=w.translate[1];return function(y,f){f||(S=E=0);var P=2,L=y.length,z=new Array(L),F=Math.round((y[0]-d)/m),B=Math.round((y[1]-u)/b);for(z[0]=F-S,S=F,z[1]=B-E,E=B;P<L;)z[P]=y[P],++P;return z}}function _(w,S){if(w.transform)throw new Error("already quantized");if(!S||!S.scale){if(!((u=Math.floor(S))>=2))throw new Error("n must be \u22652");f=w.bbox||M(w);var E=f[0],m=f[1],b=f[2],d=f[3],u;S={scale:[b-E?(b-E)/(u-1):1,d-m?(d-m)/(u-1):1],translate:[E,m]}}else f=w.bbox;var y=l(S),f,P,L=w.objects,z={};function F(I){return y(I)}function B(I){var N;switch(I.type){case"GeometryCollection":N={type:"GeometryCollection",geometries:I.geometries.map(B)};break;case"Point":N={type:"Point",coordinates:F(I.coordinates)};break;case"MultiPoint":N={type:"MultiPoint",coordinates:I.coordinates.map(F)};break;default:return I}return I.id!=null&&(N.id=I.id),I.bbox!=null&&(N.bbox=I.bbox),I.properties!=null&&(N.properties=I.properties),N}function O(I){var N=0,U=1,W=I.length,Q,ue=new Array(W);for(ue[0]=y(I[0],0);++N<W;)((Q=y(I[N],N))[0]||Q[1])&&(ue[U++]=Q);return U===1&&(ue[U++]=[0,0]),ue.length=U,ue}for(P in L)z[P]=B(L[P]);return{type:"Topology",bbox:f,transform:S,objects:z,arcs:w.arcs.map(O)}}g.bbox=M,g.feature=t,g.merge=h,g.mergeArcs=v,g.mesh=i,g.meshArcs=n,g.neighbors=T,g.quantize=_,g.transform=A,g.untransform=l,Object.defineProperty(g,"__esModule",{value:!0})})}}),iT=Ye({"src/lib/topojson_utils.js"(X,H){"use strict";var g=H.exports={},x=mx().locationmodeToLayer,A=M5().feature;g.getTopojsonName=function(M){return[M.scope.replace(/ /g,"-"),"_",M.resolution.toString(),"m"].join("")},g.getTopojsonPath=function(M,e){return M+e+".json"},g.getTopojsonFeatures=function(M,e){var t=x[M.locationmode],r=e.objects[t];return A(e,r).features}}}),dg=Ye({"src/lib/geojson_utils.js"(X){"use strict";var H=ks().BADNUM;X.calcTraceToLineCoords=function(g){for(var x=g[0].trace,A=x.connectgaps,M=[],e=[],t=0;t<g.length;t++){var r=g[t],o=r.lonlat;o[0]!==H?e.push(o):!A&&e.length>0&&(M.push(e),e=[])}return e.length>0&&M.push(e),M},X.makeLine=function(g){return g.length===1?{type:"LineString",coordinates:g[0]}:{type:"MultiLineString",coordinates:g}},X.makePolygon=function(g){if(g.length===1)return{type:"Polygon",coordinates:g};for(var x=new Array(g.length),A=0;A<g.length;A++)x[A]=[g[A]];return{type:"MultiPolygon",coordinates:x}},X.makeBlank=function(){return{type:"Point",coordinates:[]}}}}),mU=Ye({"node_modules/country-regex/index.js"(X,H){H.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}}}),nT=Ye({"node_modules/@turf/helpers/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=63710088e-1,g={centimeters:H*100,centimetres:H*100,degrees:360/(2*Math.PI),feet:H*3.28084,inches:H*39.37,kilometers:H/1e3,kilometres:H/1e3,meters:H,metres:H,miles:H/1609.344,millimeters:H*1e3,millimetres:H*1e3,nauticalmiles:H/1852,radians:1,yards:H*1.0936},x={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function A(L,z,F={}){let B={type:"Feature"};return(F.id===0||F.id)&&(B.id=F.id),F.bbox&&(B.bbox=F.bbox),B.properties=z||{},B.geometry=L,B}function M(L,z,F={}){switch(L){case"Point":return e(z).geometry;case"LineString":return a(z).geometry;case"Polygon":return r(z).geometry;case"MultiPoint":return c(z).geometry;case"MultiLineString":return s(z).geometry;case"MultiPolygon":return h(z).geometry;default:throw new Error(L+" is invalid")}}function e(L,z,F={}){if(!L)throw new Error("coordinates is required");if(!Array.isArray(L))throw new Error("coordinates must be an Array");if(L.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!u(L[0])||!u(L[1]))throw new Error("coordinates must contain numbers");return A({type:"Point",coordinates:L},z,F)}function t(L,z,F={}){return n(L.map(B=>e(B,z)),F)}function r(L,z,F={}){for(let O of L){if(O.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(O[O.length-1].length!==O[0].length)throw new Error("First and last Position are not equivalent.");for(let I=0;I<O[O.length-1].length;I++)if(O[O.length-1][I]!==O[0][I])throw new Error("First and last Position are not equivalent.")}return A({type:"Polygon",coordinates:L},z,F)}function o(L,z,F={}){return n(L.map(B=>r(B,z)),F)}function a(L,z,F={}){if(L.length<2)throw new Error("coordinates must be an array of two or more positions");return A({type:"LineString",coordinates:L},z,F)}function i(L,z,F={}){return n(L.map(B=>a(B,z)),F)}function n(L,z={}){let F={type:"FeatureCollection"};return z.id&&(F.id=z.id),z.bbox&&(F.bbox=z.bbox),F.features=L,F}function s(L,z,F={}){return A({type:"MultiLineString",coordinates:L},z,F)}function c(L,z,F={}){return A({type:"MultiPoint",coordinates:L},z,F)}function h(L,z,F={}){return A({type:"MultiPolygon",coordinates:L},z,F)}function v(L,z,F={}){return A({type:"GeometryCollection",geometries:L},z,F)}function p(L,z=0){if(z&&!(z>=0))throw new Error("precision must be a positive number");let F=Math.pow(10,z||0);return Math.round(L*F)/F}function T(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L*F}function l(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L/F}function _(L,z){return E(l(L,z))}function w(L){let z=L%360;return z<0&&(z+=360),z}function S(L){return L=L%360,L>0?L>180?L-360:L:L<-180?L+360:L}function E(L){return L%(2*Math.PI)*180/Math.PI}function m(L){return L%360*Math.PI/180}function b(L,z="kilometers",F="kilometers"){if(!(L>=0))throw new Error("length must be a positive number");return T(l(L,z),F)}function d(L,z="meters",F="kilometers"){if(!(L>=0))throw new Error("area must be a positive number");let B=x[z];if(!B)throw new Error("invalid original units");let O=x[F];if(!O)throw new Error("invalid final units");return L/B*O}function u(L){return!isNaN(L)&&L!==null&&!Array.isArray(L)}function y(L){return L!==null&&typeof L=="object"&&!Array.isArray(L)}function f(L){if(!L)throw new Error("bbox is required");if(!Array.isArray(L))throw new Error("bbox must be an Array");if(L.length!==4&&L.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");L.forEach(z=>{if(!u(z))throw new Error("bbox must only contain numbers")})}function P(L){if(!L)throw new Error("id is required");if(["string","number"].indexOf(typeof L)===-1)throw new Error("id must be a number or a string")}X.areaFactors=x,X.azimuthToBearing=S,X.bearingToAzimuth=w,X.convertArea=d,X.convertLength=b,X.degreesToRadians=m,X.earthRadius=H,X.factors=g,X.feature=A,X.featureCollection=n,X.geometry=M,X.geometryCollection=v,X.isNumber=u,X.isObject=y,X.lengthToDegrees=_,X.lengthToRadians=l,X.lineString=a,X.lineStrings=i,X.multiLineString=s,X.multiPoint=c,X.multiPolygon=h,X.point=e,X.points=t,X.polygon=r,X.polygons=o,X.radiansToDegrees=E,X.radiansToLength=T,X.round=p,X.validateBBox=f,X.validateId=P}}),oT=Ye({"node_modules/@turf/meta/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT();function g(l,_,w){if(l!==null)for(var S,E,m,b,d,u,y,f=0,P=0,L,z=l.type,F=z==="FeatureCollection",B=z==="Feature",O=F?l.features.length:1,I=0;I<O;I++){y=F?l.features[I].geometry:B?l.geometry:l,L=y?y.type==="GeometryCollection":!1,d=L?y.geometries.length:1;for(var N=0;N<d;N++){var U=0,W=0;if(b=L?y.geometries[N]:y,b!==null){u=b.coordinates;var Q=b.type;switch(f=w&&(Q==="Polygon"||Q==="MultiPolygon")?1:0,Q){case null:break;case"Point":if(_(u,P,I,U,W)===!1)return!1;P++,U++;break;case"LineString":case"MultiPoint":for(S=0;S<u.length;S++){if(_(u[S],P,I,U,W)===!1)return!1;P++,Q==="MultiPoint"&&U++}Q==="LineString"&&U++;break;case"Polygon":case"MultiLineString":for(S=0;S<u.length;S++){for(E=0;E<u[S].length-f;E++){if(_(u[S][E],P,I,U,W)===!1)return!1;P++}Q==="MultiLineString"&&U++,Q==="Polygon"&&W++}Q==="Polygon"&&U++;break;case"MultiPolygon":for(S=0;S<u.length;S++){for(W=0,E=0;E<u[S].length;E++){for(m=0;m<u[S][E].length-f;m++){if(_(u[S][E][m],P,I,U,W)===!1)return!1;P++}W++}U++}break;case"GeometryCollection":for(S=0;S<b.geometries.length;S++)if(g(b.geometries[S],_,w)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function x(l,_,w,S){var E=w;return g(l,function(m,b,d,u,y){b===0&&w===void 0?E=m:E=_(E,m,b,d,u,y)},S),E}function A(l,_){var w;switch(l.type){case"FeatureCollection":for(w=0;w<l.features.length&&_(l.features[w].properties,w)!==!1;w++);break;case"Feature":_(l.properties,0);break}}function M(l,_,w){var S=w;return A(l,function(E,m){m===0&&w===void 0?S=E:S=_(S,E,m)}),S}function e(l,_){if(l.type==="Feature")_(l,0);else if(l.type==="FeatureCollection")for(var w=0;w<l.features.length&&_(l.features[w],w)!==!1;w++);}function t(l,_,w){var S=w;return e(l,function(E,m){m===0&&w===void 0?S=E:S=_(S,E,m)}),S}function r(l){var _=[];return g(l,function(w){_.push(w)}),_}function o(l,_){var w,S,E,m,b,d,u,y,f,P,L=0,z=l.type==="FeatureCollection",F=l.type==="Feature",B=z?l.features.length:1;for(w=0;w<B;w++){for(d=z?l.features[w].geometry:F?l.geometry:l,y=z?l.features[w].properties:F?l.properties:{},f=z?l.features[w].bbox:F?l.bbox:void 0,P=z?l.features[w].id:F?l.id:void 0,u=d?d.type==="GeometryCollection":!1,b=u?d.geometries.length:1,E=0;E<b;E++){if(m=u?d.geometries[E]:d,m===null){if(_(null,L,y,f,P)===!1)return!1;continue}switch(m.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(_(m,L,y,f,P)===!1)return!1;break}case"GeometryCollection":{for(S=0;S<m.geometries.length;S++)if(_(m.geometries[S],L,y,f,P)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}L++}}function a(l,_,w){var S=w;return o(l,function(E,m,b,d,u){m===0&&w===void 0?S=E:S=_(S,E,m,b,d,u)}),S}function i(l,_){o(l,function(w,S,E,m,b){var d=w===null?null:w.type;switch(d){case null:case"Point":case"LineString":case"Polygon":return _(H.feature.call(void 0,w,E,{bbox:m,id:b}),S,0)===!1?!1:void 0}var u;switch(d){case"MultiPoint":u="Point";break;case"MultiLineString":u="LineString";break;case"MultiPolygon":u="Polygon";break}for(var y=0;y<w.coordinates.length;y++){var f=w.coordinates[y],P={type:u,coordinates:f};if(_(H.feature.call(void 0,P,E),S,y)===!1)return!1}})}function n(l,_,w){var S=w;return i(l,function(E,m,b){m===0&&b===0&&w===void 0?S=E:S=_(S,E,m,b)}),S}function s(l,_){i(l,function(w,S,E){var m=0;if(w.geometry){var b=w.geometry.type;if(!(b==="Point"||b==="MultiPoint")){var d,u=0,y=0,f=0;if(g(w,function(P,L,z,F,B){if(d===void 0||S>u||F>y||B>f){d=P,u=S,y=F,f=B,m=0;return}var O=H.lineString.call(void 0,[d,P],w.properties);if(_(O,S,E,B,m)===!1)return!1;m++,d=P})===!1)return!1}}})}function c(l,_,w){var S=w,E=!1;return s(l,function(m,b,d,u,y){E===!1&&w===void 0?S=m:S=_(S,m,b,d,u,y),E=!0}),S}function h(l,_){if(!l)throw new Error("geojson is required");i(l,function(w,S,E){if(w.geometry!==null){var m=w.geometry.type,b=w.geometry.coordinates;switch(m){case"LineString":if(_(w,S,E,0,0)===!1)return!1;break;case"Polygon":for(var d=0;d<b.length;d++)if(_(H.lineString.call(void 0,b[d],w.properties),S,E,d)===!1)return!1;break}}})}function v(l,_,w){var S=w;return h(l,function(E,m,b,d){m===0&&w===void 0?S=E:S=_(S,E,m,b,d)}),S}function p(l,_){if(_=_||{},!H.isObject.call(void 0,_))throw new Error("options is invalid");var w=_.featureIndex||0,S=_.multiFeatureIndex||0,E=_.geometryIndex||0,m=_.segmentIndex||0,b=_.properties,d;switch(l.type){case"FeatureCollection":w<0&&(w=l.features.length+w),b=b||l.features[w].properties,d=l.features[w].geometry;break;case"Feature":b=b||l.properties,d=l.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":d=l;break;default:throw new Error("geojson is invalid")}if(d===null)return null;var u=d.coordinates;switch(d.type){case"Point":case"MultiPoint":return null;case"LineString":return m<0&&(m=u.length+m-1),H.lineString.call(void 0,[u[m],u[m+1]],b,_);case"Polygon":return E<0&&(E=u.length+E),m<0&&(m=u[E].length+m-1),H.lineString.call(void 0,[u[E][m],u[E][m+1]],b,_);case"MultiLineString":return S<0&&(S=u.length+S),m<0&&(m=u[S].length+m-1),H.lineString.call(void 0,[u[S][m],u[S][m+1]],b,_);case"MultiPolygon":return S<0&&(S=u.length+S),E<0&&(E=u[S].length+E),m<0&&(m=u[S][E].length-m-1),H.lineString.call(void 0,[u[S][E][m],u[S][E][m+1]],b,_)}throw new Error("geojson is invalid")}function T(l,_){if(_=_||{},!H.isObject.call(void 0,_))throw new Error("options is invalid");var w=_.featureIndex||0,S=_.multiFeatureIndex||0,E=_.geometryIndex||0,m=_.coordIndex||0,b=_.properties,d;switch(l.type){case"FeatureCollection":w<0&&(w=l.features.length+w),b=b||l.features[w].properties,d=l.features[w].geometry;break;case"Feature":b=b||l.properties,d=l.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":d=l;break;default:throw new Error("geojson is invalid")}if(d===null)return null;var u=d.coordinates;switch(d.type){case"Point":return H.point.call(void 0,u,b,_);case"MultiPoint":return S<0&&(S=u.length+S),H.point.call(void 0,u[S],b,_);case"LineString":return m<0&&(m=u.length+m),H.point.call(void 0,u[m],b,_);case"Polygon":return E<0&&(E=u.length+E),m<0&&(m=u[E].length+m),H.point.call(void 0,u[E][m],b,_);case"MultiLineString":return S<0&&(S=u.length+S),m<0&&(m=u[S].length+m),H.point.call(void 0,u[S][m],b,_);case"MultiPolygon":return S<0&&(S=u.length+S),E<0&&(E=u[S].length+E),m<0&&(m=u[S][E].length-m),H.point.call(void 0,u[S][E][m],b,_)}throw new Error("geojson is invalid")}X.coordAll=r,X.coordEach=g,X.coordReduce=x,X.featureEach=e,X.featureReduce=t,X.findPoint=T,X.findSegment=p,X.flattenEach=i,X.flattenReduce=n,X.geomEach=o,X.geomReduce=a,X.lineEach=h,X.lineReduce=v,X.propEach=A,X.propReduce=M,X.segmentEach=s,X.segmentReduce=c}}),gU=Ye({"node_modules/@turf/area/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(a){return g.geomReduce.call(void 0,a,(i,n)=>i+A(n),0)}function A(a){let i=0,n;switch(a.type){case"Polygon":return M(a.coordinates);case"MultiPolygon":for(n=0;n<a.coordinates.length;n++)i+=M(a.coordinates[n]);return i;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function M(a){let i=0;if(a&&a.length>0){i+=Math.abs(r(a[0]));for(let n=1;n<a.length;n++)i-=Math.abs(r(a[n]))}return i}var e=H.earthRadius*H.earthRadius/2,t=Math.PI/180;function r(a){let i=a.length-1;if(i<=2)return 0;let n=0,s=0;for(;s<i;){let c=a[s],h=a[s+1===i?0:s+1],v=a[s+2>=i?(s+2)%i:s+2],p=c[0]*t,T=h[1]*t,l=v[0]*t;n+=(l-p)*Math.sin(T),s++}return n*e}var o=x;X.area=x,X.default=o}}),yU=Ye({"node_modules/@turf/centroid/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(M,e={}){let t=0,r=0,o=0;return g.coordEach.call(void 0,M,function(a){t+=a[0],r+=a[1],o++},!0),H.point.call(void 0,[t/o,r/o],e.properties)}var A=x;X.centroid=x,X.default=A}}),_U=Ye({"node_modules/@turf/bbox/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=oT();function g(A,M={}){if(A.bbox!=null&&M.recompute!==!0)return A.bbox;let e=[1/0,1/0,-1/0,-1/0];return H.coordEach.call(void 0,A,t=>{e[0]>t[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]<t[0]&&(e[2]=t[0]),e[3]<t[1]&&(e[3]=t[1])}),e}var x=g;X.bbox=g,X.default=x}}),vg=Ye({"src/lib/geo_location_utils.js"(X,H){"use strict";var g=_n(),x=mU(),{area:A}=gU(),{centroid:M}=yU(),{bbox:e}=_U(),t=T_(),r=Ym(),o=Zv(),a=__(),i=C_(),n=Object.keys(x),s={"ISO-3":t,"USA-states":t,"country names":c};function c(S){for(var E=0;E<n.length;E++){var m=n[E],b=new RegExp(x[m]);if(b.test(S.trim().toLowerCase()))return m}return r.log("Unrecognized country name: "+S+"."),!1}function h(S,E,m){if(!E||typeof E!="string")return!1;var b=s[S](E),d,u,y;if(b){if(S==="USA-states")for(d=[],y=0;y<m.length;y++)u=m[y],u.properties&&u.properties.gu&&u.properties.gu==="USA"&&d.push(u);else d=m;for(y=0;y<d.length;y++)if(u=d[y],u.id===b)return u;r.log(["Location with id",b,"does not have a matching topojson feature at this resolution."].join(" "))}return!1}function v(S){var E=S.geometry,m=E.coordinates,b=S.id,d=[],u,y,f,P;function L(z){for(var F=0;F<z.length-1;F++)if(z[F][0]>0&&z[F+1][0]<0)return F;return null}switch(b==="RUS"||b==="FJI"?u=function(z){var F;if(L(z)===null)F=z;else for(F=new Array(z.length),P=0;P<z.length;P++)F[P]=[z[P][0]<0?z[P][0]+360:z[P][0],z[P][1]];d.push(i.tester(F))}:b==="ATA"?u=function(z){var F=L(z);if(F===null)return d.push(i.tester(z));var B=new Array(z.length+1),O=0;for(P=0;P<z.length;P++)P>F?B[O++]=[z[P][0]+360,z[P][1]]:P===F?(B[O++]=z[P],B[O++]=[z[P][0],-90]):B[O++]=z[P];var I=i.tester(B);I.pts.pop(),d.push(I)}:u=function(z){d.push(i.tester(z))},E.type){case"MultiPolygon":for(y=0;y<m.length;y++)for(f=0;f<m[y].length;f++)u(m[y][f]);break;case"Polygon":for(y=0;y<m.length;y++)u(m[y]);break}return d}function p(S){var E=S.geojson,m=window.PlotlyGeoAssets||{},b=typeof E=="string"?m[E]:E;return o(b)?b:(r.error("Oops ... something went wrong when fetching "+E),!1)}function T(S){var E=S[0].trace,m=p(E);if(!m)return!1;var b={},d=[],u;for(u=0;u<E._length;u++){var y=S[u];(y.loc||y.loc===0)&&(b[y.loc]=y)}function f(z){var F=a(z,E.featureidkey||"id").get(),B=b[F];if(B){var O=z.geometry;if(O.type==="Polygon"||O.type==="MultiPolygon"){var I={type:"Feature",id:F,geometry:O,properties:{}};I.geometry.coordinates.length>0?I.properties.ct=l(I):I.properties.ct=[NaN,NaN],B.fIn=z,B.fOut=I,d.push(I)}else r.log(["Location",B.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete b[F]}switch(m.type){case"FeatureCollection":var P=m.features;for(u=0;u<P.length;u++)f(P[u]);break;case"Feature":f(m);break;default:return r.warn(["Invalid GeoJSON type",(m.type||"none")+".","Traces with locationmode *geojson-id* only support","*FeatureCollection* and *Feature* types."].join(" ")),!1}for(var L in b)r.log(["Location *"+L+"*","does not have a matching feature with id-key","*"+E.featureidkey+"*."].join(" "));return d}function l(S){var E=S.geometry,m;if(E.type==="MultiPolygon")for(var b=E.coordinates,d=0,u=0;u<b.length;u++){var y={type:"Polygon",coordinates:b[u]},f=A(y);f>d&&(d=f,m=y)}else m=E;return M(m).geometry.coordinates}function _(S){var E=window.PlotlyGeoAssets||{},m=[];function b(P){return new Promise(function(L,z){g.json(P,function(F,B){if(F){delete E[P];var O=F.status===404?'GeoJSON at URL "'+P+'" does not exist.':"Unexpected error while fetching from "+P;return z(new Error(O))}return E[P]=B,L(B)})})}function d(P){return new Promise(function(L,z){var F=0,B=setInterval(function(){if(E[P]&&E[P]!=="pending")return clearInterval(B),L(E[P]);if(F>100)return clearInterval(B),z("Unexpected error while fetching from "+P);F++},50)})}for(var u=0;u<S.length;u++){var y=S[u][0].trace,f=y.geojson;typeof f=="string"&&(E[f]?E[f]==="pending"&&m.push(d(f)):(E[f]="pending",m.push(b(f))))}return m}function w(S){return e(S)}H.exports={locationToFeature:h,feature2polygons:v,getTraceGeojson:p,extractTraceFeature:T,fetchTraceGeoData:_,computeBbox:w}}}),E5=Ye({"src/traces/scattergeo/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=ed(),e=M.stylePoints,t=M.styleText;H.exports=function(a,i){i&&r(a,i)};function r(o,a){var i=a[0].trace,n=a[0].node3;n.style("opacity",a[0].trace.opacity),e(n,i,o),t(n,i,o),n.selectAll("path.js-line").style("fill","none").each(function(s){var c=g.select(this),h=s.trace,v=h.line||{};c.call(A.stroke,v.color).call(x.dashLine,v.dash||"",v.width||0),h.fill!=="none"&&c.call(A.fill,h.fillcolor)})}}}),k5=Ye({"src/traces/scattergeo/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=iT().getTopojsonFeatures,M=dg(),e=vg(),t=Yd().findExtremes,r=ks().BADNUM,o=Bd().calcMarkerSize,a=uu(),i=E5();function n(c,h,v){var p=h.layers.frontplot.select(".scatterlayer"),T=x.makeTraceGroups(p,v,"trace scattergeo");function l(_,w){_.lonlat[0]===r&&g.select(w).remove()}T.selectAll("*").remove(),T.each(function(_){var w=g.select(this),S=_[0].trace;if(a.hasLines(S)||S.fill!=="none"){var E=M.calcTraceToLineCoords(_),m=S.fill!=="none"?M.makePolygon(E):M.makeLine(E);w.selectAll("path.js-line").data([{geojson:m,trace:S}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}a.hasMarkers(S)&&w.selectAll("path.point").data(x.identity).enter().append("path").classed("point",!0).each(function(b){l(b,this)}),a.hasText(S)&&w.selectAll("g").data(x.identity).enter().append("g").append("text").each(function(b){l(b,this)}),i(c,_)})}function s(c,h){var v=c[0].trace,p=h[v.geo],T=p._subplot,l=v._length,_,w;if(x.isArrayOrTypedArray(v.locations)){var S=v.locationmode,E=S==="geojson-id"?e.extractTraceFeature(c):A(v,T.topojson);for(_=0;_<l;_++){w=c[_];var m=S==="geojson-id"?w.fOut:e.locationToFeature(S,w.loc,E);w.lonlat=m?m.properties.ct:[r,r]}}var b={padded:!0},d,u;if(p.fitbounds==="geojson"&&v.locationmode==="geojson-id"){var y=e.computeBbox(e.getTraceGeojson(v));d=[y[0],y[2]],u=[y[1],y[3]]}else{for(d=new Array(l),u=new Array(l),_=0;_<l;_++)w=c[_],d[_]=w.lonlat[0],u[_]=w.lonlat[1];b.ppad=o(v,l)}v._extremes.lon=t(p.lonaxis._ax,d,b),v._extremes.lat=t(p.lataxis._ax,u,b)}H.exports={calcGeoJSON:s,plot:n}}}),xU=Ye({"src/traces/scattergeo/hover.js"(X,H){"use strict";var g=Lc(),x=ks().BADNUM,A=s1(),M=ta().fillText,e=p0();H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.xa,h=o.ya,v=o.subplot,p=v.projection.isLonLatOverEdges,T=v.project;function l(d){var u=d.lonlat;if(u[0]===x||p(u))return 1/0;var y=T(u),f=T([a,i]),P=Math.abs(y[0]-f[0]),L=Math.abs(y[1]-f[1]),z=Math.max(3,d.mrc||0);return Math.max(Math.sqrt(P*P+L*L)-z,1-3/z)}if(g.getClosest(n,l,o),o.index!==!1){var _=n[o.index],w=_.lonlat,S=[c.c2p(w),h.c2p(w)],E=_.mrc||1;o.x0=S[0]-E,o.x1=S[0]+E,o.y0=S[1]-E,o.y1=S[1]+E,o.loc=_.loc,o.lon=w[0],o.lat=w[1];var m={};m[s.geo]={_subplot:v};var b=s._module.formatLabels(_,s,m);return o.lonLabel=b.lonLabel,o.latLabel=b.latLabel,o.color=A(s,_),o.extraText=t(s,_,o,n[0].t.labels),o.hovertemplate=s.hovertemplate,[o]}};function t(r,o,a,i){if(r.hovertemplate)return;var n=o.hi||r.hoverinfo,s=n==="all"?e.hoverinfo.flags:n.split("+"),c=s.indexOf("location")!==-1&&Array.isArray(r.locations),h=s.indexOf("lon")!==-1,v=s.indexOf("lat")!==-1,p=s.indexOf("text")!==-1,T=[];function l(_){return _+"\xB0"}return c?T.push(o.loc):h&&v?T.push("("+l(a.latLabel)+", "+l(a.lonLabel)+")"):h?T.push(i.lon+l(a.lonLabel)):v&&T.push(i.lat+l(a.latLabel)),p&&M(o,r,T),T.join("<br>")}}}),bU=Ye({"src/traces/scattergeo/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.lon=A.lon,x.lat=A.lat,x.location=A.loc?A.loc:null;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x}}}),wU=Ye({"src/traces/scattergeo/select.js"(X,H){"use strict";var g=uu(),x=ks().BADNUM;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n,s,c,h,v,p=!g.hasMarkers(i)&&!g.hasText(i);if(p)return[];if(e===!1)for(v=0;v<t.length;v++)t[v].selected=0;else for(v=0;v<t.length;v++)n=t[v],s=n.lonlat,s[0]!==x&&(c=r.c2p(s),h=o.c2p(s),e.contains([c,h],null,v,M)?(a.push({pointNumber:v,lon:s[0],lat:s[1]}),n.selected=1):n.selected=0);return a}}}),gx=Ye({"node_modules/d3-array/dist/d3-array.js"(X,H){(function(g,x){x(typeof X=="object"&&typeof H<"u"?X:g.d3=g.d3||{})})(X,function(g){"use strict";function x(J,Z){return J<Z?-1:J>Z?1:J>=Z?0:NaN}function A(J){return J.length===1&&(J=M(J)),{left:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne<j;){var ee=ne+j>>>1;J(Z[ee],re)<0?ne=ee+1:j=ee}return ne},right:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne<j;){var ee=ne+j>>>1;J(Z[ee],re)>0?j=ee:ne=ee+1}return ne}}}function M(J){return function(Z,re){return x(J(Z),re)}}var e=A(x),t=e.right,r=e.left;function o(J,Z){Z==null&&(Z=a);for(var re=0,ne=J.length-1,j=J[0],ee=new Array(ne<0?0:ne);re<ne;)ee[re]=Z(j,j=J[++re]);return ee}function a(J,Z){return[J,Z]}function i(J,Z,re){var ne=J.length,j=Z.length,ee=new Array(ne*j),ie,fe,be,Ae;for(re==null&&(re=a),ie=be=0;ie<ne;++ie)for(Ae=J[ie],fe=0;fe<j;++fe,++be)ee[be]=re(Ae,Z[fe]);return ee}function n(J,Z){return Z<J?-1:Z>J?1:Z>=J?0:NaN}function s(J){return J===null?NaN:+J}function c(J,Z){var re=J.length,ne=0,j=-1,ee=0,ie,fe,be=0;if(Z==null)for(;++j<re;)isNaN(ie=s(J[j]))||(fe=ie-ee,ee+=fe/++ne,be+=fe*(ie-ee));else for(;++j<re;)isNaN(ie=s(Z(J[j],j,J)))||(fe=ie-ee,ee+=fe/++ne,be+=fe*(ie-ee));if(ne>1)return be/(ne-1)}function h(J,Z){var re=c(J,Z);return re&&Math.sqrt(re)}function v(J,Z){var re=J.length,ne=-1,j,ee,ie;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=ie=j;++ne<re;)(j=J[ne])!=null&&(ee>j&&(ee=j),ie<j&&(ie=j))}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=ie=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&(ee>j&&(ee=j),ie<j&&(ie=j));return[ee,ie]}var p=Array.prototype,T=p.slice,l=p.map;function _(J){return function(){return J}}function w(J){return J}function S(J,Z,re){J=+J,Z=+Z,re=(j=arguments.length)<2?(Z=J,J=0,1):j<3?1:+re;for(var ne=-1,j=Math.max(0,Math.ceil((Z-J)/re))|0,ee=new Array(j);++ne<j;)ee[ne]=J+ne*re;return ee}var E=Math.sqrt(50),m=Math.sqrt(10),b=Math.sqrt(2);function d(J,Z,re){var ne,j=-1,ee,ie,fe;if(Z=+Z,J=+J,re=+re,J===Z&&re>0)return[J];if((ne=Z<J)&&(ee=J,J=Z,Z=ee),(fe=u(J,Z,re))===0||!isFinite(fe))return[];if(fe>0)for(J=Math.ceil(J/fe),Z=Math.floor(Z/fe),ie=new Array(ee=Math.ceil(Z-J+1));++j<ee;)ie[j]=(J+j)*fe;else for(J=Math.floor(J*fe),Z=Math.ceil(Z*fe),ie=new Array(ee=Math.ceil(J-Z+1));++j<ee;)ie[j]=(J-j)/fe;return ne&&ie.reverse(),ie}function u(J,Z,re){var ne=(Z-J)/Math.max(0,re),j=Math.floor(Math.log(ne)/Math.LN10),ee=ne/Math.pow(10,j);return j>=0?(ee>=E?10:ee>=m?5:ee>=b?2:1)*Math.pow(10,j):-Math.pow(10,-j)/(ee>=E?10:ee>=m?5:ee>=b?2:1)}function y(J,Z,re){var ne=Math.abs(Z-J)/Math.max(0,re),j=Math.pow(10,Math.floor(Math.log(ne)/Math.LN10)),ee=ne/j;return ee>=E?j*=10:ee>=m?j*=5:ee>=b&&(j*=2),Z<J?-j:j}function f(J){return Math.ceil(Math.log(J.length)/Math.LN2)+1}function P(){var J=w,Z=v,re=f;function ne(j){var ee,ie=j.length,fe,be=new Array(ie);for(ee=0;ee<ie;++ee)be[ee]=J(j[ee],ee,j);var Ae=Z(be),Be=Ae[0],Ie=Ae[1],Ze=re(be,Be,Ie);Array.isArray(Ze)||(Ze=y(Be,Ie,Ze),Ze=S(Math.ceil(Be/Ze)*Ze,Ie,Ze));for(var at=Ze.length;Ze[0]<=Be;)Ze.shift(),--at;for(;Ze[at-1]>Ie;)Ze.pop(),--at;var it=new Array(at+1),et;for(ee=0;ee<=at;++ee)et=it[ee]=[],et.x0=ee>0?Ze[ee-1]:Be,et.x1=ee<at?Ze[ee]:Ie;for(ee=0;ee<ie;++ee)fe=be[ee],Be<=fe&&fe<=Ie&&it[t(Ze,fe,0,at)].push(j[ee]);return it}return ne.value=function(j){return arguments.length?(J=typeof j=="function"?j:_(j),ne):J},ne.domain=function(j){return arguments.length?(Z=typeof j=="function"?j:_([j[0],j[1]]),ne):Z},ne.thresholds=function(j){return arguments.length?(re=typeof j=="function"?j:Array.isArray(j)?_(T.call(j)):_(j),ne):re},ne}function L(J,Z,re){if(re==null&&(re=s),!!(ne=J.length)){if((Z=+Z)<=0||ne<2)return+re(J[0],0,J);if(Z>=1)return+re(J[ne-1],ne-1,J);var ne,j=(ne-1)*Z,ee=Math.floor(j),ie=+re(J[ee],ee,J),fe=+re(J[ee+1],ee+1,J);return ie+(fe-ie)*(j-ee)}}function z(J,Z,re){return J=l.call(J,s).sort(x),Math.ceil((re-Z)/(2*(L(J,.75)-L(J,.25))*Math.pow(J.length,-1/3)))}function F(J,Z,re){return Math.ceil((re-Z)/(3.5*h(J)*Math.pow(J.length,-1/3)))}function B(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=j;++ne<re;)(j=J[ne])!=null&&j>ee&&(ee=j)}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&j>ee&&(ee=j);return ee}function O(J,Z){var re=J.length,ne=re,j=-1,ee,ie=0;if(Z==null)for(;++j<re;)isNaN(ee=s(J[j]))?--ne:ie+=ee;else for(;++j<re;)isNaN(ee=s(Z(J[j],j,J)))?--ne:ie+=ee;if(ne)return ie/ne}function I(J,Z){var re=J.length,ne=-1,j,ee=[];if(Z==null)for(;++ne<re;)isNaN(j=s(J[ne]))||ee.push(j);else for(;++ne<re;)isNaN(j=s(Z(J[ne],ne,J)))||ee.push(j);return L(ee.sort(x),.5)}function N(J){for(var Z=J.length,re,ne=-1,j=0,ee,ie;++ne<Z;)j+=J[ne].length;for(ee=new Array(j);--Z>=0;)for(ie=J[Z],re=ie.length;--re>=0;)ee[--j]=ie[re];return ee}function U(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=j;++ne<re;)(j=J[ne])!=null&&ee>j&&(ee=j)}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&ee>j&&(ee=j);return ee}function W(J,Z){for(var re=Z.length,ne=new Array(re);re--;)ne[re]=J[Z[re]];return ne}function Q(J,Z){if(re=J.length){var re,ne=0,j=0,ee,ie=J[j];for(Z==null&&(Z=x);++ne<re;)(Z(ee=J[ne],ie)<0||Z(ie,ie)!==0)&&(ie=ee,j=ne);if(Z(ie,ie)===0)return j}}function ue(J,Z,re){for(var ne=(re??J.length)-(Z=Z==null?0:+Z),j,ee;ne;)ee=Math.random()*ne--|0,j=J[ne+Z],J[ne+Z]=J[ee+Z],J[ee+Z]=j;return J}function se(J,Z){var re=J.length,ne=-1,j,ee=0;if(Z==null)for(;++ne<re;)(j=+J[ne])&&(ee+=j);else for(;++ne<re;)(j=+Z(J[ne],ne,J))&&(ee+=j);return ee}function he(J){if(!(ee=J.length))return[];for(var Z=-1,re=U(J,G),ne=new Array(re);++Z<re;)for(var j=-1,ee,ie=ne[Z]=new Array(ee);++j<ee;)ie[j]=J[j][Z];return ne}function G(J){return J.length}function $(){return he(arguments)}g.bisect=t,g.bisectRight=t,g.bisectLeft=r,g.ascending=x,g.bisector=A,g.cross=i,g.descending=n,g.deviation=h,g.extent=v,g.histogram=P,g.thresholdFreedmanDiaconis=z,g.thresholdScott=F,g.thresholdSturges=f,g.max=B,g.mean=O,g.median=I,g.merge=N,g.min=U,g.pairs=o,g.permute=W,g.quantile=L,g.range=S,g.scan=Q,g.shuffle=ue,g.sum=se,g.ticks=d,g.tickIncrement=u,g.tickStep=y,g.transpose=he,g.variance=c,g.zip=$,Object.defineProperty(g,"__esModule",{value:!0})})}}),C5=Ye({"node_modules/d3-geo/dist/d3-geo.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(){return new M}function M(){this.reset()}M.prototype={constructor:M,reset:function(){this.s=this.t=0},add:function(Zt){t(e,Zt,this.t),t(this,e.s,this.s),this.s?this.t+=e.t:this.s=e.t},valueOf:function(){return this.s}};var e=new M;function t(Zt,fr,Yr){var qr=Zt.s=fr+Yr,ba=qr-fr,Ka=qr-ba;Zt.t=fr-Ka+(Yr-ba)}var r=1e-6,o=1e-12,a=Math.PI,i=a/2,n=a/4,s=a*2,c=180/a,h=a/180,v=Math.abs,p=Math.atan,T=Math.atan2,l=Math.cos,_=Math.ceil,w=Math.exp,S=Math.log,E=Math.pow,m=Math.sin,b=Math.sign||function(Zt){return Zt>0?1:Zt<0?-1:0},d=Math.sqrt,u=Math.tan;function y(Zt){return Zt>1?0:Zt<-1?a:Math.acos(Zt)}function f(Zt){return Zt>1?i:Zt<-1?-i:Math.asin(Zt)}function P(Zt){return(Zt=m(Zt/2))*Zt}function L(){}function z(Zt,fr){Zt&&B.hasOwnProperty(Zt.type)&&B[Zt.type](Zt,fr)}var F={Feature:function(Zt,fr){z(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr<ba;)z(Yr[qr].geometry,fr)}},B={Sphere:function(Zt,fr){fr.sphere()},Point:function(Zt,fr){Zt=Zt.coordinates,fr.point(Zt[0],Zt[1],Zt[2])},MultiPoint:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)Zt=Yr[qr],fr.point(Zt[0],Zt[1],Zt[2])},LineString:function(Zt,fr){O(Zt.coordinates,fr,0)},MultiLineString:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)O(Yr[qr],fr,0)},Polygon:function(Zt,fr){I(Zt.coordinates,fr)},MultiPolygon:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)I(Yr[qr],fr)},GeometryCollection:function(Zt,fr){for(var Yr=Zt.geometries,qr=-1,ba=Yr.length;++qr<ba;)z(Yr[qr],fr)}};function O(Zt,fr,Yr){var qr=-1,ba=Zt.length-Yr,Ka;for(fr.lineStart();++qr<ba;)Ka=Zt[qr],fr.point(Ka[0],Ka[1],Ka[2]);fr.lineEnd()}function I(Zt,fr){var Yr=-1,qr=Zt.length;for(fr.polygonStart();++Yr<qr;)O(Zt[Yr],fr,1);fr.polygonEnd()}function N(Zt,fr){Zt&&F.hasOwnProperty(Zt.type)?F[Zt.type](Zt,fr):z(Zt,fr)}var U=A(),W=A(),Q,ue,se,he,G,$={point:L,lineStart:L,lineEnd:L,polygonStart:function(){U.reset(),$.lineStart=J,$.lineEnd=Z},polygonEnd:function(){var Zt=+U;W.add(Zt<0?s+Zt:Zt),this.lineStart=this.lineEnd=this.point=L},sphere:function(){W.add(s)}};function J(){$.point=re}function Z(){ne(Q,ue)}function re(Zt,fr){$.point=ne,Q=Zt,ue=fr,Zt*=h,fr*=h,se=Zt,he=l(fr=fr/2+n),G=m(fr)}function ne(Zt,fr){Zt*=h,fr*=h,fr=fr/2+n;var Yr=Zt-se,qr=Yr>=0?1:-1,ba=qr*Yr,Ka=l(fr),oi=m(fr),yi=G*oi,ki=he*Ka+yi*l(ba),Bi=yi*qr*m(ba);U.add(T(Bi,ki)),se=Zt,he=Ka,G=oi}function j(Zt){return W.reset(),N(Zt,$),W*2}function ee(Zt){return[T(Zt[1],Zt[0]),f(Zt[2])]}function ie(Zt){var fr=Zt[0],Yr=Zt[1],qr=l(Yr);return[qr*l(fr),qr*m(fr),m(Yr)]}function fe(Zt,fr){return Zt[0]*fr[0]+Zt[1]*fr[1]+Zt[2]*fr[2]}function be(Zt,fr){return[Zt[1]*fr[2]-Zt[2]*fr[1],Zt[2]*fr[0]-Zt[0]*fr[2],Zt[0]*fr[1]-Zt[1]*fr[0]]}function Ae(Zt,fr){Zt[0]+=fr[0],Zt[1]+=fr[1],Zt[2]+=fr[2]}function Be(Zt,fr){return[Zt[0]*fr,Zt[1]*fr,Zt[2]*fr]}function Ie(Zt){var fr=d(Zt[0]*Zt[0]+Zt[1]*Zt[1]+Zt[2]*Zt[2]);Zt[0]/=fr,Zt[1]/=fr,Zt[2]/=fr}var Ze,at,it,et,lt,Me,ge,ce,ze=A(),tt,nt,Qe={point:Ct,lineStart:Ot,lineEnd:jt,polygonStart:function(){Qe.point=ur,Qe.lineStart=ar,Qe.lineEnd=Cr,ze.reset(),$.polygonStart()},polygonEnd:function(){$.polygonEnd(),Qe.point=Ct,Qe.lineStart=Ot,Qe.lineEnd=jt,U<0?(Ze=-(it=180),at=-(et=90)):ze>r?et=90:ze<-r&&(at=-90),nt[0]=Ze,nt[1]=it},sphere:function(){Ze=-(it=180),at=-(et=90)}};function Ct(Zt,fr){tt.push(nt=[Ze=Zt,it=Zt]),fr<at&&(at=fr),fr>et&&(et=fr)}function St(Zt,fr){var Yr=ie([Zt*h,fr*h]);if(ce){var qr=be(ce,Yr),ba=[qr[1],-qr[0],0],Ka=be(ba,qr);Ie(Ka),Ka=ee(Ka);var oi=Zt-lt,yi=oi>0?1:-1,ki=Ka[0]*c*yi,Bi,li=v(oi)>180;li^(yi*lt<ki&&ki<yi*Zt)?(Bi=Ka[1]*c,Bi>et&&(et=Bi)):(ki=(ki+360)%360-180,li^(yi*lt<ki&&ki<yi*Zt)?(Bi=-Ka[1]*c,Bi<at&&(at=Bi)):(fr<at&&(at=fr),fr>et&&(et=fr))),li?Zt<lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt):it>=Ze?(Zt<Ze&&(Ze=Zt),Zt>it&&(it=Zt)):Zt>lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt)}else tt.push(nt=[Ze=Zt,it=Zt]);fr<at&&(at=fr),fr>et&&(et=fr),ce=Yr,lt=Zt}function Ot(){Qe.point=St}function jt(){nt[0]=Ze,nt[1]=it,Qe.point=Ct,ce=null}function ur(Zt,fr){if(ce){var Yr=Zt-lt;ze.add(v(Yr)>180?Yr+(Yr>0?360:-360):Yr)}else Me=Zt,ge=fr;$.point(Zt,fr),St(Zt,fr)}function ar(){$.lineStart()}function Cr(){ur(Me,ge),$.lineEnd(),v(ze)>r&&(Ze=-(it=180)),nt[0]=Ze,nt[1]=it,ce=null}function vr(Zt,fr){return(fr-=Zt)<0?fr+360:fr}function _r(Zt,fr){return Zt[0]-fr[0]}function yt(Zt,fr){return Zt[0]<=Zt[1]?Zt[0]<=fr&&fr<=Zt[1]:fr<Zt[0]||Zt[1]<fr}function Fe(Zt){var fr,Yr,qr,ba,Ka,oi,yi;if(et=it=-(Ze=at=1/0),tt=[],N(Zt,Qe),Yr=tt.length){for(tt.sort(_r),fr=1,qr=tt[0],Ka=[qr];fr<Yr;++fr)ba=tt[fr],yt(qr,ba[0])||yt(qr,ba[1])?(vr(qr[0],ba[1])>vr(qr[0],qr[1])&&(qr[1]=ba[1]),vr(ba[0],qr[1])>vr(qr[0],qr[1])&&(qr[0]=ba[0])):Ka.push(qr=ba);for(oi=-1/0,Yr=Ka.length-1,fr=0,qr=Ka[Yr];fr<=Yr;qr=ba,++fr)ba=Ka[fr],(yi=vr(qr[1],ba[0]))>oi&&(oi=yi,Ze=ba[0],it=qr[1])}return tt=nt=null,Ze===1/0||at===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ze,at],[it,et]]}var Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa={sphere:L,point:La,lineStart:Ga,lineEnd:ni,polygonStart:function(){Aa.lineStart=Wt,Aa.lineEnd=zt},polygonEnd:function(){Aa.lineStart=Ga,Aa.lineEnd=ni}};function La(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);ka(Yr*l(Zt),Yr*m(Zt),m(fr))}function ka(Zt,fr,Yr){++Ke,Ee+=(Zt-Ee)/Ke,Ve+=(fr-Ve)/Ke,ke+=(Yr-ke)/Ke}function Ga(){Aa.point=Ma}function Ma(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),Aa.point=Ua,ka(Kt,sr,sa)}function Ua(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=T(d((oi=sr*Ka-sa*ba)*oi+(oi=sa*qr-Kt*Ka)*oi+(oi=Kt*ba-sr*qr)*oi),Kt*qr+sr*ba+sa*Ka);Ne+=oi,Te+=oi*(Kt+(Kt=qr)),Le+=oi*(sr+(sr=ba)),rt+=oi*(sa+(sa=Ka)),ka(Kt,sr,sa)}function ni(){Aa.point=La}function Wt(){Aa.point=Vt}function zt(){Ut(Bt,Gt),Aa.point=La}function Vt(Zt,fr){Bt=Zt,Gt=fr,Zt*=h,fr*=h,Aa.point=Ut;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),ka(Kt,sr,sa)}function Ut(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=sr*Ka-sa*ba,yi=sa*qr-Kt*Ka,ki=Kt*ba-sr*qr,Bi=d(oi*oi+yi*yi+ki*ki),li=f(Bi),_i=Bi&&-li/Bi;dt+=_i*oi,xt+=_i*yi,It+=_i*ki,Ne+=li,Te+=li*(Kt+(Kt=qr)),Le+=li*(sr+(sr=ba)),rt+=li*(sa+(sa=Ka)),ka(Kt,sr,sa)}function xr(Zt){Ke=Ne=Ee=Ve=ke=Te=Le=rt=dt=xt=It=0,N(Zt,Aa);var fr=dt,Yr=xt,qr=It,ba=fr*fr+Yr*Yr+qr*qr;return ba<o&&(fr=Te,Yr=Le,qr=rt,Ne<r&&(fr=Ee,Yr=Ve,qr=ke),ba=fr*fr+Yr*Yr+qr*qr,ba<o)?[NaN,NaN]:[T(Yr,fr)*c,f(qr/d(ba))*c]}function Zr(Zt){return function(){return Zt}}function pa(Zt,fr){function Yr(qr,ba){return qr=Zt(qr,ba),fr(qr[0],qr[1])}return Zt.invert&&fr.invert&&(Yr.invert=function(qr,ba){return qr=fr.invert(qr,ba),qr&&Zt.invert(qr[0],qr[1])}),Yr}function Xr(Zt,fr){return[v(Zt)>a?Zt+Math.round(-Zt/s)*s:Zt,fr]}Xr.invert=Xr;function Ea(Zt,fr,Yr){return(Zt%=s)?fr||Yr?pa(qa(Zt),ya(fr,Yr)):qa(Zt):fr||Yr?ya(fr,Yr):Xr}function Fa(Zt){return function(fr,Yr){return fr+=Zt,[fr>a?fr-s:fr<-a?fr+s:fr,Yr]}}function qa(Zt){var fr=Fa(Zt);return fr.invert=Fa(-Zt),fr}function ya(Zt,fr){var Yr=l(Zt),qr=m(Zt),ba=l(fr),Ka=m(fr);function oi(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*Yr+li*qr;return[T(_i*ba-ti*Ka,li*Yr-vi*qr),f(ti*ba+_i*Ka)]}return oi.invert=function(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*ba-_i*Ka;return[T(_i*ba+vi*Ka,li*Yr+ti*qr),f(ti*Yr-li*qr)]},oi}function $a(Zt){Zt=Ea(Zt[0]*h,Zt[1]*h,Zt.length>2?Zt[2]*h:0);function fr(Yr){return Yr=Zt(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr}return fr.invert=function(Yr){return Yr=Zt.invert(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr},fr}function mt(Zt,fr,Yr,qr,ba,Ka){if(Yr){var oi=l(fr),yi=m(fr),ki=qr*Yr;ba==null?(ba=fr+qr*s,Ka=fr-ki/2):(ba=gt(oi,ba),Ka=gt(oi,Ka),(qr>0?ba<Ka:ba>Ka)&&(ba+=qr*s));for(var Bi,li=ba;qr>0?li>Ka:li<Ka;li-=ki)Bi=ee([oi,-yi*l(li),-yi*m(li)]),Zt.point(Bi[0],Bi[1])}}function gt(Zt,fr){fr=ie(fr),fr[0]-=Zt,Ie(fr);var Yr=y(-fr[1]);return((-fr[2]<0?-Yr:Yr)+s-r)%s}function Er(){var Zt=Zr([0,0]),fr=Zr(90),Yr=Zr(6),qr,ba,Ka={point:oi};function oi(ki,Bi){qr.push(ki=ba(ki,Bi)),ki[0]*=c,ki[1]*=c}function yi(){var ki=Zt.apply(this,arguments),Bi=fr.apply(this,arguments)*h,li=Yr.apply(this,arguments)*h;return qr=[],ba=Ea(-ki[0]*h,-ki[1]*h,0).invert,mt(Ka,Bi,li,1),ki={type:"Polygon",coordinates:[qr]},qr=ba=null,ki}return yi.center=function(ki){return arguments.length?(Zt=typeof ki=="function"?ki:Zr([+ki[0],+ki[1]]),yi):Zt},yi.radius=function(ki){return arguments.length?(fr=typeof ki=="function"?ki:Zr(+ki),yi):fr},yi.precision=function(ki){return arguments.length?(Yr=typeof ki=="function"?ki:Zr(+ki),yi):Yr},yi}function kr(){var Zt=[],fr;return{point:function(Yr,qr,ba){fr.push([Yr,qr,ba])},lineStart:function(){Zt.push(fr=[])},lineEnd:L,rejoin:function(){Zt.length>1&&Zt.push(Zt.pop().concat(Zt.shift()))},result:function(){var Yr=Zt;return Zt=[],fr=null,Yr}}}function br(Zt,fr){return v(Zt[0]-fr[0])<r&&v(Zt[1]-fr[1])<r}function Tr(Zt,fr,Yr,qr){this.x=Zt,this.z=fr,this.o=Yr,this.e=qr,this.v=!1,this.n=this.p=null}function Mr(Zt,fr,Yr,qr,ba){var Ka=[],oi=[],yi,ki;if(Zt.forEach(function(rn){if(!((Kn=rn.length-1)<=0)){var Kn,Wn=rn[0],Jn=rn[Kn],no;if(br(Wn,Jn)){if(!Wn[2]&&!Jn[2]){for(ba.lineStart(),yi=0;yi<Kn;++yi)ba.point((Wn=rn[yi])[0],Wn[1]);ba.lineEnd();return}Jn[0]+=2*r}Ka.push(no=new Tr(Wn,rn,null,!0)),oi.push(no.o=new Tr(Wn,null,no,!1)),Ka.push(no=new Tr(Jn,rn,null,!1)),oi.push(no.o=new Tr(Jn,null,no,!0))}}),!!Ka.length){for(oi.sort(fr),Fr(Ka),Fr(oi),yi=0,ki=oi.length;yi<ki;++yi)oi[yi].e=Yr=!Yr;for(var Bi=Ka[0],li,_i;;){for(var vi=Bi,ti=!0;vi.v;)if((vi=vi.n)===Bi)return;li=vi.z,ba.lineStart();do{if(vi.v=vi.o.v=!0,vi.e){if(ti)for(yi=0,ki=li.length;yi<ki;++yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.n.x,1,ba);vi=vi.n}else{if(ti)for(li=vi.p.z,yi=li.length-1;yi>=0;--yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.p.x,-1,ba);vi=vi.p}vi=vi.o,li=vi.z,ti=!ti}while(!vi.v);ba.lineEnd()}}}function Fr(Zt){if(fr=Zt.length){for(var fr,Yr=0,qr=Zt[0],ba;++Yr<fr;)qr.n=ba=Zt[Yr],ba.p=qr,qr=ba;qr.n=ba=Zt[0],ba.p=qr}}var Lr=A();function Jr(Zt){return v(Zt[0])<=a?Zt[0]:b(Zt[0])*((v(Zt[0])+a)%s-a)}function oa(Zt,fr){var Yr=Jr(fr),qr=fr[1],ba=m(qr),Ka=[m(Yr),-l(Yr),0],oi=0,yi=0;Lr.reset(),ba===1?qr=i+r:ba===-1&&(qr=-i-r);for(var ki=0,Bi=Zt.length;ki<Bi;++ki)if(_i=(li=Zt[ki]).length)for(var li,_i,vi=li[_i-1],ti=Jr(vi),rn=vi[1]/2+n,Kn=m(rn),Wn=l(rn),Jn=0;Jn<_i;++Jn,ti=en,Kn=co,Wn=Wo,vi=no){var no=li[Jn],en=Jr(no),Ri=no[1]/2+n,co=m(Ri),Wo=l(Ri),bs=en-ti,Xs=bs>=0?1:-1,Ms=Xs*bs,Hs=Ms>a,vs=Kn*co;if(Lr.add(T(vs*Xs*m(Ms),Wn*Wo+vs*l(Ms))),oi+=Hs?bs+Xs*s:bs,Hs^ti>=Yr^en>=Yr){var Il=be(ie(vi),ie(no));Ie(Il);var fl=be(Ka,Il);Ie(fl);var tl=(Hs^bs>=0?-1:1)*f(fl[2]);(qr>tl||qr===tl&&(Il[0]||Il[1]))&&(yi+=Hs^bs>=0?1:-1)}}return(oi<-r||oi<r&&Lr<-r)^yi&1}function ca(Zt,fr,Yr,qr){return function(ba){var Ka=fr(ba),oi=kr(),yi=fr(oi),ki=!1,Bi,li,_i,vi={point:ti,lineStart:Kn,lineEnd:Wn,polygonStart:function(){vi.point=Jn,vi.lineStart=no,vi.lineEnd=en,li=[],Bi=[]},polygonEnd:function(){vi.point=ti,vi.lineStart=Kn,vi.lineEnd=Wn,li=x.merge(li);var Ri=oa(Bi,qr);li.length?(ki||(ba.polygonStart(),ki=!0),Mr(li,ir,Ri,Yr,ba)):Ri&&(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Yr(null,null,1,ba),ba.lineEnd()),ki&&(ba.polygonEnd(),ki=!1),li=Bi=null},sphere:function(){ba.polygonStart(),ba.lineStart(),Yr(null,null,1,ba),ba.lineEnd(),ba.polygonEnd()}};function ti(Ri,co){Zt(Ri,co)&&ba.point(Ri,co)}function rn(Ri,co){Ka.point(Ri,co)}function Kn(){vi.point=rn,Ka.lineStart()}function Wn(){vi.point=ti,Ka.lineEnd()}function Jn(Ri,co){_i.push([Ri,co]),yi.point(Ri,co)}function no(){yi.lineStart(),_i=[]}function en(){Jn(_i[0][0],_i[0][1]),yi.lineEnd();var Ri=yi.clean(),co=oi.result(),Wo,bs=co.length,Xs,Ms,Hs;if(_i.pop(),Bi.push(_i),_i=null,!!bs){if(Ri&1){if(Ms=co[0],(Xs=Ms.length-1)>0){for(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Wo=0;Wo<Xs;++Wo)ba.point((Hs=Ms[Wo])[0],Hs[1]);ba.lineEnd()}return}bs>1&&Ri&2&&co.push(co.pop().concat(co.shift())),li.push(co.filter(kt))}}return vi}}function kt(Zt){return Zt.length>1}function ir(Zt,fr){return((Zt=Zt.x)[0]<0?Zt[1]-i-r:i-Zt[1])-((fr=fr.x)[0]<0?fr[1]-i-r:i-fr[1])}var mr=ca(function(){return!0},$r,Ba,[-a,-i]);function $r(Zt){var fr=NaN,Yr=NaN,qr=NaN,ba;return{lineStart:function(){Zt.lineStart(),ba=1},point:function(Ka,oi){var yi=Ka>0?a:-a,ki=v(Ka-fr);v(ki-a)<r?(Zt.point(fr,Yr=(Yr+oi)/2>0?i:-i),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),Zt.point(Ka,Yr),ba=0):qr!==yi&&ki>=a&&(v(fr-qr)<r&&(fr-=qr*r),v(Ka-yi)<r&&(Ka-=yi*r),Yr=ma(fr,Yr,Ka,oi),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),ba=0),Zt.point(fr=Ka,Yr=oi),qr=yi},lineEnd:function(){Zt.lineEnd(),fr=Yr=NaN},clean:function(){return 2-ba}}}function ma(Zt,fr,Yr,qr){var ba,Ka,oi=m(Zt-Yr);return v(oi)>r?p((m(fr)*(Ka=l(qr))*m(Yr)-m(qr)*(ba=l(fr))*m(Zt))/(ba*Ka*oi)):(fr+qr)/2}function Ba(Zt,fr,Yr,qr){var ba;if(Zt==null)ba=Yr*i,qr.point(-a,ba),qr.point(0,ba),qr.point(a,ba),qr.point(a,0),qr.point(a,-ba),qr.point(0,-ba),qr.point(-a,-ba),qr.point(-a,0),qr.point(-a,ba);else if(v(Zt[0]-fr[0])>r){var Ka=Zt[0]<fr[0]?a:-a;ba=Yr*Ka/2,qr.point(-Ka,ba),qr.point(0,ba),qr.point(Ka,ba)}else qr.point(fr[0],fr[1])}function Ca(Zt){var fr=l(Zt),Yr=6*h,qr=fr>0,ba=v(fr)>r;function Ka(li,_i,vi,ti){mt(ti,Zt,Yr,vi,li,_i)}function oi(li,_i){return l(li)*l(_i)>fr}function yi(li){var _i,vi,ti,rn,Kn;return{lineStart:function(){rn=ti=!1,Kn=1},point:function(Wn,Jn){var no=[Wn,Jn],en,Ri=oi(Wn,Jn),co=qr?Ri?0:Bi(Wn,Jn):Ri?Bi(Wn+(Wn<0?a:-a),Jn):0;if(!_i&&(rn=ti=Ri)&&li.lineStart(),Ri!==ti&&(en=ki(_i,no),(!en||br(_i,en)||br(no,en))&&(no[2]=1)),Ri!==ti)Kn=0,Ri?(li.lineStart(),en=ki(no,_i),li.point(en[0],en[1])):(en=ki(_i,no),li.point(en[0],en[1],2),li.lineEnd()),_i=en;else if(ba&&_i&&qr^Ri){var Wo;!(co&vi)&&(Wo=ki(no,_i,!0))&&(Kn=0,qr?(li.lineStart(),li.point(Wo[0][0],Wo[0][1]),li.point(Wo[1][0],Wo[1][1]),li.lineEnd()):(li.point(Wo[1][0],Wo[1][1]),li.lineEnd(),li.lineStart(),li.point(Wo[0][0],Wo[0][1],3)))}Ri&&(!_i||!br(_i,no))&&li.point(no[0],no[1]),_i=no,ti=Ri,vi=co},lineEnd:function(){ti&&li.lineEnd(),_i=null},clean:function(){return Kn|(rn&&ti)<<1}}}function ki(li,_i,vi){var ti=ie(li),rn=ie(_i),Kn=[1,0,0],Wn=be(ti,rn),Jn=fe(Wn,Wn),no=Wn[0],en=Jn-no*no;if(!en)return!vi&&li;var Ri=fr*Jn/en,co=-fr*no/en,Wo=be(Kn,Wn),bs=Be(Kn,Ri),Xs=Be(Wn,co);Ae(bs,Xs);var Ms=Wo,Hs=fe(bs,Ms),vs=fe(Ms,Ms),Il=Hs*Hs-vs*(fe(bs,bs)-1);if(!(Il<0)){var fl=d(Il),tl=Be(Ms,(-Hs-fl)/vs);if(Ae(tl,bs),tl=ee(tl),!vi)return tl;var Ln=li[0],Ao=_i[0],js=li[1],Ts=_i[1],nu;Ao<Ln&&(nu=Ln,Ln=Ao,Ao=nu);var Pu=Ao-Ln,ec=v(Pu-a)<r,tf=ec||Pu<r;if(!ec&&Ts<js&&(nu=js,js=Ts,Ts=nu),tf?ec?js+Ts>0^tl[1]<(v(tl[0]-Ln)<r?js:Ts):js<=tl[1]&&tl[1]<=Ts:Pu>a^(Ln<=tl[0]&&tl[0]<=Ao)){var yu=Be(Ms,(-Hs+fl)/vs);return Ae(yu,bs),[tl,ee(yu)]}}}function Bi(li,_i){var vi=qr?Zt:a-Zt,ti=0;return li<-vi?ti|=1:li>vi&&(ti|=2),_i<-vi?ti|=4:_i>vi&&(ti|=8),ti}return ca(oi,yi,Ka,qr?[0,-Zt]:[-a,Zt-a])}function da(Zt,fr,Yr,qr,ba,Ka){var oi=Zt[0],yi=Zt[1],ki=fr[0],Bi=fr[1],li=0,_i=1,vi=ki-oi,ti=Bi-yi,rn;if(rn=Yr-oi,!(!vi&&rn>0)){if(rn/=vi,vi<0){if(rn<li)return;rn<_i&&(_i=rn)}else if(vi>0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=ba-oi,!(!vi&&rn<0)){if(rn/=vi,vi<0){if(rn>_i)return;rn>li&&(li=rn)}else if(vi>0){if(rn<li)return;rn<_i&&(_i=rn)}if(rn=qr-yi,!(!ti&&rn>0)){if(rn/=ti,ti<0){if(rn<li)return;rn<_i&&(_i=rn)}else if(ti>0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=Ka-yi,!(!ti&&rn<0)){if(rn/=ti,ti<0){if(rn>_i)return;rn>li&&(li=rn)}else if(ti>0){if(rn<li)return;rn<_i&&(_i=rn)}return li>0&&(Zt[0]=oi+li*vi,Zt[1]=yi+li*ti),_i<1&&(fr[0]=oi+_i*vi,fr[1]=yi+_i*ti),!0}}}}}var Sa=1e9,Ti=-Sa;function ai(Zt,fr,Yr,qr){function ba(Bi,li){return Zt<=Bi&&Bi<=Yr&&fr<=li&&li<=qr}function Ka(Bi,li,_i,vi){var ti=0,rn=0;if(Bi==null||(ti=oi(Bi,_i))!==(rn=oi(li,_i))||ki(Bi,li)<0^_i>0)do vi.point(ti===0||ti===3?Zt:Yr,ti>1?qr:fr);while((ti=(ti+_i+4)%4)!==rn);else vi.point(li[0],li[1])}function oi(Bi,li){return v(Bi[0]-Zt)<r?li>0?0:3:v(Bi[0]-Yr)<r?li>0?2:1:v(Bi[1]-fr)<r?li>0?1:0:li>0?3:2}function yi(Bi,li){return ki(Bi.x,li.x)}function ki(Bi,li){var _i=oi(Bi,1),vi=oi(li,1);return _i!==vi?_i-vi:_i===0?li[1]-Bi[1]:_i===1?Bi[0]-li[0]:_i===2?Bi[1]-li[1]:li[0]-Bi[0]}return function(Bi){var li=Bi,_i=kr(),vi,ti,rn,Kn,Wn,Jn,no,en,Ri,co,Wo,bs={point:Xs,lineStart:Il,lineEnd:fl,polygonStart:Hs,polygonEnd:vs};function Xs(Ln,Ao){ba(Ln,Ao)&&li.point(Ln,Ao)}function Ms(){for(var Ln=0,Ao=0,js=ti.length;Ao<js;++Ao)for(var Ts=ti[Ao],nu=1,Pu=Ts.length,ec=Ts[0],tf,yu,Bc=ec[0],Iu=ec[1];nu<Pu;++nu)tf=Bc,yu=Iu,ec=Ts[nu],Bc=ec[0],Iu=ec[1],yu<=qr?Iu>qr&&(Bc-tf)*(qr-yu)>(Iu-yu)*(Zt-tf)&&++Ln:Iu<=qr&&(Bc-tf)*(qr-yu)<(Iu-yu)*(Zt-tf)&&--Ln;return Ln}function Hs(){li=_i,vi=[],ti=[],Wo=!0}function vs(){var Ln=Ms(),Ao=Wo&&Ln,js=(vi=x.merge(vi)).length;(Ao||js)&&(Bi.polygonStart(),Ao&&(Bi.lineStart(),Ka(null,null,1,Bi),Bi.lineEnd()),js&&Mr(vi,yi,Ln,Ka,Bi),Bi.polygonEnd()),li=Bi,vi=ti=rn=null}function Il(){bs.point=tl,ti&&ti.push(rn=[]),co=!0,Ri=!1,no=en=NaN}function fl(){vi&&(tl(Kn,Wn),Jn&&Ri&&_i.rejoin(),vi.push(_i.result())),bs.point=Xs,Ri&&li.lineEnd()}function tl(Ln,Ao){var js=ba(Ln,Ao);if(ti&&rn.push([Ln,Ao]),co)Kn=Ln,Wn=Ao,Jn=js,co=!1,js&&(li.lineStart(),li.point(Ln,Ao));else if(js&&Ri)li.point(Ln,Ao);else{var Ts=[no=Math.max(Ti,Math.min(Sa,no)),en=Math.max(Ti,Math.min(Sa,en))],nu=[Ln=Math.max(Ti,Math.min(Sa,Ln)),Ao=Math.max(Ti,Math.min(Sa,Ao))];da(Ts,nu,Zt,fr,Yr,qr)?(Ri||(li.lineStart(),li.point(Ts[0],Ts[1])),li.point(nu[0],nu[1]),js||li.lineEnd(),Wo=!1):js&&(li.lineStart(),li.point(Ln,Ao),Wo=!1)}no=Ln,en=Ao,Ri=js}return bs}}function an(){var Zt=0,fr=0,Yr=960,qr=500,ba,Ka,oi;return oi={stream:function(yi){return ba&&Ka===yi?ba:ba=ai(Zt,fr,Yr,qr)(Ka=yi)},extent:function(yi){return arguments.length?(Zt=+yi[0][0],fr=+yi[0][1],Yr=+yi[1][0],qr=+yi[1][1],ba=Ka=null,oi):[[Zt,fr],[Yr,qr]]}}}var sn=A(),Mn,On,$n,Cn={sphere:L,point:L,lineStart:Lo,lineEnd:L,polygonStart:L,polygonEnd:L};function Lo(){Cn.point=Jo,Cn.lineEnd=Xi}function Xi(){Cn.point=Cn.lineEnd=L}function Jo(Zt,fr){Zt*=h,fr*=h,Mn=Zt,On=m(fr),$n=l(fr),Cn.point=zo}function zo(Zt,fr){Zt*=h,fr*=h;var Yr=m(fr),qr=l(fr),ba=v(Zt-Mn),Ka=l(ba),oi=m(ba),yi=qr*oi,ki=$n*Yr-On*qr*Ka,Bi=On*Yr+$n*qr*Ka;sn.add(T(d(yi*yi+ki*ki),Bi)),Mn=Zt,On=Yr,$n=qr}function as(Zt){return sn.reset(),N(Zt,Cn),+sn}var Pn=[null,null],go={type:"LineString",coordinates:Pn};function In(Zt,fr){return Pn[0]=Zt,Pn[1]=fr,as(go)}var Do={Feature:function(Zt,fr){return Qo(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr<ba;)if(Qo(Yr[qr].geometry,fr))return!0;return!1}},Ho={Sphere:function(){return!0},Point:function(Zt,fr){return Xn(Zt.coordinates,fr)},MultiPoint:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(Xn(Yr[qr],fr))return!0;return!1},LineString:function(Zt,fr){return po(Zt.coordinates,fr)},MultiLineString:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(po(Yr[qr],fr))return!0;return!1},Polygon:function(Zt,fr){return ys(Zt.coordinates,fr)},MultiPolygon:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(ys(Yr[qr],fr))return!0;return!1},GeometryCollection:function(Zt,fr){for(var Yr=Zt.geometries,qr=-1,ba=Yr.length;++qr<ba;)if(Qo(Yr[qr],fr))return!0;return!1}};function Qo(Zt,fr){return Zt&&Ho.hasOwnProperty(Zt.type)?Ho[Zt.type](Zt,fr):!1}function Xn(Zt,fr){return In(Zt,fr)===0}function po(Zt,fr){for(var Yr,qr,ba,Ka=0,oi=Zt.length;Ka<oi;Ka++){if(qr=In(Zt[Ka],fr),qr===0||Ka>0&&(ba=In(Zt[Ka],Zt[Ka-1]),ba>0&&Yr<=ba&&qr<=ba&&(Yr+qr-ba)*(1-Math.pow((Yr-qr)/ba,2))<o*ba))return!0;Yr=qr}return!1}function ys(Zt,fr){return!!oa(Zt.map(Is),Fs(fr))}function Is(Zt){return Zt=Zt.map(Fs),Zt.pop(),Zt}function Fs(Zt){return[Zt[0]*h,Zt[1]*h]}function $o(Zt,fr){return(Zt&&Do.hasOwnProperty(Zt.type)?Do[Zt.type]:Qo)(Zt,fr)}function fi(Zt,fr,Yr){var qr=x.range(Zt,fr-r,Yr).concat(fr);return function(ba){return qr.map(function(Ka){return[ba,Ka]})}}function mn(Zt,fr,Yr){var qr=x.range(Zt,fr-r,Yr).concat(fr);return function(ba){return qr.map(function(Ka){return[Ka,ba]})}}function ol(){var Zt,fr,Yr,qr,ba,Ka,oi,yi,ki=10,Bi=ki,li=90,_i=360,vi,ti,rn,Kn,Wn=2.5;function Jn(){return{type:"MultiLineString",coordinates:no()}}function no(){return x.range(_(qr/li)*li,Yr,li).map(rn).concat(x.range(_(yi/_i)*_i,oi,_i).map(Kn)).concat(x.range(_(fr/ki)*ki,Zt,ki).filter(function(en){return v(en%li)>r}).map(vi)).concat(x.range(_(Ka/Bi)*Bi,ba,Bi).filter(function(en){return v(en%_i)>r}).map(ti))}return Jn.lines=function(){return no().map(function(en){return{type:"LineString",coordinates:en}})},Jn.outline=function(){return{type:"Polygon",coordinates:[rn(qr).concat(Kn(oi).slice(1),rn(Yr).reverse().slice(1),Kn(yi).reverse().slice(1))]}},Jn.extent=function(en){return arguments.length?Jn.extentMajor(en).extentMinor(en):Jn.extentMinor()},Jn.extentMajor=function(en){return arguments.length?(qr=+en[0][0],Yr=+en[1][0],yi=+en[0][1],oi=+en[1][1],qr>Yr&&(en=qr,qr=Yr,Yr=en),yi>oi&&(en=yi,yi=oi,oi=en),Jn.precision(Wn)):[[qr,yi],[Yr,oi]]},Jn.extentMinor=function(en){return arguments.length?(fr=+en[0][0],Zt=+en[1][0],Ka=+en[0][1],ba=+en[1][1],fr>Zt&&(en=fr,fr=Zt,Zt=en),Ka>ba&&(en=Ka,Ka=ba,ba=en),Jn.precision(Wn)):[[fr,Ka],[Zt,ba]]},Jn.step=function(en){return arguments.length?Jn.stepMajor(en).stepMinor(en):Jn.stepMinor()},Jn.stepMajor=function(en){return arguments.length?(li=+en[0],_i=+en[1],Jn):[li,_i]},Jn.stepMinor=function(en){return arguments.length?(ki=+en[0],Bi=+en[1],Jn):[ki,Bi]},Jn.precision=function(en){return arguments.length?(Wn=+en,vi=fi(Ka,ba,90),ti=mn(fr,Zt,Wn),rn=fi(yi,oi,90),Kn=mn(qr,Yr,Wn),Jn):Wn},Jn.extentMajor([[-180,-90+r],[180,90-r]]).extentMinor([[-180,-80-r],[180,80+r]])}function Os(){return ol()()}function so(Zt,fr){var Yr=Zt[0]*h,qr=Zt[1]*h,ba=fr[0]*h,Ka=fr[1]*h,oi=l(qr),yi=m(qr),ki=l(Ka),Bi=m(Ka),li=oi*l(Yr),_i=oi*m(Yr),vi=ki*l(ba),ti=ki*m(ba),rn=2*f(d(P(Ka-qr)+oi*ki*P(ba-Yr))),Kn=m(rn),Wn=rn?function(Jn){var no=m(Jn*=rn)/Kn,en=m(rn-Jn)/Kn,Ri=en*li+no*vi,co=en*_i+no*ti,Wo=en*yi+no*Bi;return[T(co,Ri)*c,T(Wo,d(Ri*Ri+co*co))*c]}:function(){return[Yr*c,qr*c]};return Wn.distance=rn,Wn}function Ns(Zt){return Zt}var fs=A(),al=A(),vl,ji,To,Yn,_s={point:L,lineStart:L,lineEnd:L,polygonStart:function(){_s.lineStart=Yo,_s.lineEnd=Zu},polygonEnd:function(){_s.lineStart=_s.lineEnd=_s.point=L,fs.add(v(al)),al.reset()},result:function(){var Zt=fs/2;return fs.reset(),Zt}};function Yo(){_s.point=Nn}function Nn(Zt,fr){_s.point=Wl,vl=To=Zt,ji=Yn=fr}function Wl(Zt,fr){al.add(Yn*Zt-To*fr),To=Zt,Yn=fr}function Zu(){Wl(vl,ji)}var ml=1/0,Bu=ml,El=-ml,qs=El,Jl={point:Nu,lineStart:L,lineEnd:L,polygonStart:L,polygonEnd:L,result:function(){var Zt=[[ml,Bu],[El,qs]];return El=qs=-(Bu=ml=1/0),Zt}};function Nu(Zt,fr){Zt<ml&&(ml=Zt),Zt>El&&(El=Zt),fr<Bu&&(Bu=fr),fr>qs&&(qs=fr)}var Ic=0,Xu=0,Th=0,bf=0,Rs=0,Yc=0,If=0,Zl=0,yl=0,oc,_c,Zs,_l,Bs={point:$s,lineStart:sc,lineEnd:Qs,polygonStart:function(){Bs.lineStart=fp,Bs.lineEnd=es},polygonEnd:function(){Bs.point=$s,Bs.lineStart=sc,Bs.lineEnd=Qs},result:function(){var Zt=yl?[If/yl,Zl/yl]:Yc?[bf/Yc,Rs/Yc]:Th?[Ic/Th,Xu/Th]:[NaN,NaN];return Ic=Xu=Th=bf=Rs=Yc=If=Zl=yl=0,Zt}};function $s(Zt,fr){Ic+=Zt,Xu+=fr,++Th}function sc(){Bs.point=zl}function zl(Zt,fr){Bs.point=Yu,$s(Zs=Zt,_l=fr)}function Yu(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,$s(Zs=Zt,_l=fr)}function Qs(){Bs.point=$s}function fp(){Bs.point=Wh}function es(){Ss(oc,_c)}function Wh(Zt,fr){Bs.point=Ss,$s(oc=Zs=Zt,_c=_l=fr)}function Ss(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,ba=_l*Zt-Zs*fr,If+=ba*(Zs+Zt),Zl+=ba*(_l+fr),yl+=ba*3,$s(Zs=Zt,_l=fr)}function So(Zt){this._context=Zt}So.prototype={_radius:4.5,pointRadius:function(Zt){return this._radius=Zt,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._context.moveTo(Zt,fr),this._point=1;break}case 1:{this._context.lineTo(Zt,fr);break}default:{this._context.moveTo(Zt+this._radius,fr),this._context.arc(Zt,fr,this._radius,0,s);break}}},result:L};var hf=A(),Ku,cu,Zf,Rc,pf,Fl={point:L,lineStart:function(){Fl.point=lh},lineEnd:function(){Ku&&Xf(cu,Zf),Fl.point=L},polygonStart:function(){Ku=!0},polygonEnd:function(){Ku=null},result:function(){var Zt=+hf;return hf.reset(),Zt}};function lh(Zt,fr){Fl.point=Xf,cu=Rc=Zt,Zf=pf=fr}function Xf(Zt,fr){Rc-=Zt,pf-=fr,hf.add(d(Rc*Rc+pf*pf)),Rc=Zt,pf=fr}function Rf(){this._string=[]}Rf.prototype={_radius:4.5,_circle:Kc(4.5),pointRadius:function(Zt){return(Zt=+Zt)!==this._radius&&(this._radius=Zt,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._string.push("M",Zt,",",fr),this._point=1;break}case 1:{this._string.push("L",Zt,",",fr);break}default:{this._circle==null&&(this._circle=Kc(this._radius)),this._string.push("M",Zt,",",fr,this._circle);break}}},result:function(){if(this._string.length){var Zt=this._string.join("");return this._string=[],Zt}else return null}};function Kc(Zt){return"m0,"+Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+-2*Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+2*Zt+"z"}function Yf(Zt,fr){var Yr=4.5,qr,ba;function Ka(oi){return oi&&(typeof Yr=="function"&&ba.pointRadius(+Yr.apply(this,arguments)),N(oi,qr(ba))),ba.result()}return Ka.area=function(oi){return N(oi,qr(_s)),_s.result()},Ka.measure=function(oi){return N(oi,qr(Fl)),Fl.result()},Ka.bounds=function(oi){return N(oi,qr(Jl)),Jl.result()},Ka.centroid=function(oi){return N(oi,qr(Bs)),Bs.result()},Ka.projection=function(oi){return arguments.length?(qr=oi==null?(Zt=null,Ns):(Zt=oi).stream,Ka):Zt},Ka.context=function(oi){return arguments.length?(ba=oi==null?(fr=null,new Rf):new So(fr=oi),typeof Yr!="function"&&ba.pointRadius(Yr),Ka):fr},Ka.pointRadius=function(oi){return arguments.length?(Yr=typeof oi=="function"?oi:(ba.pointRadius(+oi),+oi),Ka):Yr},Ka.projection(Zt).context(fr)}function uh(Zt){return{stream:Ju(Zt)}}function Ju(Zt){return function(fr){var Yr=new Df;for(var qr in Zt)Yr[qr]=Zt[qr];return Yr.stream=fr,Yr}}function Df(){}Df.prototype={constructor:Df,point:function(Zt,fr){this.stream.point(Zt,fr)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Dc(Zt,fr,Yr){var qr=Zt.clipExtent&&Zt.clipExtent();return Zt.scale(150).translate([0,0]),qr!=null&&Zt.clipExtent(null),N(Yr,Zt.stream(Jl)),fr(Jl.result()),qr!=null&&Zt.clipExtent(qr),Zt}function Jc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=fr[1][0]-fr[0][0],Ka=fr[1][1]-fr[0][1],oi=Math.min(ba/(qr[1][0]-qr[0][0]),Ka/(qr[1][1]-qr[0][1])),yi=+fr[0][0]+(ba-oi*(qr[1][0]+qr[0][0]))/2,ki=+fr[0][1]+(Ka-oi*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*oi).translate([yi,ki])},Yr)}function Eu(Zt,fr,Yr){return Jc(Zt,[[0,0],fr],Yr)}function wf(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][0]-qr[0][0]),oi=(ba-Ka*(qr[1][0]+qr[0][0]))/2,yi=-Ka*qr[0][1];Zt.scale(150*Ka).translate([oi,yi])},Yr)}function zc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][1]-qr[0][1]),oi=-Ka*qr[0][0],yi=(ba-Ka*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*Ka).translate([oi,yi])},Yr)}var Us=16,Kf=l(30*h);function Zh(Zt,fr){return+fr?df(Zt,fr):ch(Zt)}function ch(Zt){return Ju({point:function(fr,Yr){fr=Zt(fr,Yr),this.stream.point(fr[0],fr[1])}})}function df(Zt,fr){function Yr(qr,ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn){var Jn=Bi-qr,no=li-ba,en=Jn*Jn+no*no;if(en>4*fr&&Kn--){var Ri=oi+vi,co=yi+ti,Wo=ki+rn,bs=d(Ri*Ri+co*co+Wo*Wo),Xs=f(Wo/=bs),Ms=v(v(Wo)-1)<r||v(Ka-_i)<r?(Ka+_i)/2:T(co,Ri),Hs=Zt(Ms,Xs),vs=Hs[0],Il=Hs[1],fl=vs-qr,tl=Il-ba,Ln=no*fl-Jn*tl;(Ln*Ln/en>fr||v((Jn*fl+no*tl)/en-.5)>.3||oi*vi+yi*ti+ki*rn<Kf)&&(Yr(qr,ba,Ka,oi,yi,ki,vs,Il,Ms,Ri/=bs,co/=bs,Wo,Kn,Wn),Wn.point(vs,Il),Yr(vs,Il,Ms,Ri,co,Wo,Bi,li,_i,vi,ti,rn,Kn,Wn))}}return function(qr){var ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn={point:Jn,lineStart:no,lineEnd:Ri,polygonStart:function(){qr.polygonStart(),Wn.lineStart=co},polygonEnd:function(){qr.polygonEnd(),Wn.lineStart=no}};function Jn(Xs,Ms){Xs=Zt(Xs,Ms),qr.point(Xs[0],Xs[1])}function no(){_i=NaN,Wn.point=en,qr.lineStart()}function en(Xs,Ms){var Hs=ie([Xs,Ms]),vs=Zt(Xs,Ms);Yr(_i,vi,li,ti,rn,Kn,_i=vs[0],vi=vs[1],li=Xs,ti=Hs[0],rn=Hs[1],Kn=Hs[2],Us,qr),qr.point(_i,vi)}function Ri(){Wn.point=Jn,qr.lineEnd()}function co(){no(),Wn.point=Wo,Wn.lineEnd=bs}function Wo(Xs,Ms){en(ba=Xs,Ms),Ka=_i,oi=vi,yi=ti,ki=rn,Bi=Kn,Wn.point=en}function bs(){Yr(_i,vi,li,ti,rn,Kn,Ka,oi,ba,yi,ki,Bi,Us,qr),Wn.lineEnd=Ri,Ri()}return Wn}}var Ah=Ju({point:function(Zt,fr){this.stream.point(Zt*h,fr*h)}});function ku(Zt){return Ju({point:function(fr,Yr){var qr=Zt(fr,Yr);return this.stream.point(qr[0],qr[1])}})}function fh(Zt,fr,Yr,qr,ba){function Ka(oi,yi){return oi*=qr,yi*=ba,[fr+Zt*oi,Yr-Zt*yi]}return Ka.invert=function(oi,yi){return[(oi-fr)/Zt*qr,(Yr-yi)/Zt*ba]},Ka}function ru(Zt,fr,Yr,qr,ba,Ka){var oi=l(Ka),yi=m(Ka),ki=oi*Zt,Bi=yi*Zt,li=oi/Zt,_i=yi/Zt,vi=(yi*Yr-oi*fr)/Zt,ti=(yi*fr+oi*Yr)/Zt;function rn(Kn,Wn){return Kn*=qr,Wn*=ba,[ki*Kn-Bi*Wn+fr,Yr-Bi*Kn-ki*Wn]}return rn.invert=function(Kn,Wn){return[qr*(li*Kn-_i*Wn+vi),ba*(ti-_i*Kn-li*Wn)]},rn}function Cu(Zt){return xc(function(){return Zt})()}function xc(Zt){var fr,Yr=150,qr=480,ba=250,Ka=0,oi=0,yi=0,ki=0,Bi=0,li,_i=0,vi=1,ti=1,rn=null,Kn=mr,Wn=null,Jn,no,en,Ri=Ns,co=.5,Wo,bs,Xs,Ms,Hs;function vs(Ln){return Xs(Ln[0]*h,Ln[1]*h)}function Il(Ln){return Ln=Xs.invert(Ln[0],Ln[1]),Ln&&[Ln[0]*c,Ln[1]*c]}vs.stream=function(Ln){return Ms&&Hs===Ln?Ms:Ms=Ah(ku(li)(Kn(Wo(Ri(Hs=Ln)))))},vs.preclip=function(Ln){return arguments.length?(Kn=Ln,rn=void 0,tl()):Kn},vs.postclip=function(Ln){return arguments.length?(Ri=Ln,Wn=Jn=no=en=null,tl()):Ri},vs.clipAngle=function(Ln){return arguments.length?(Kn=+Ln?Ca(rn=Ln*h):(rn=null,mr),tl()):rn*c},vs.clipExtent=function(Ln){return arguments.length?(Ri=Ln==null?(Wn=Jn=no=en=null,Ns):ai(Wn=+Ln[0][0],Jn=+Ln[0][1],no=+Ln[1][0],en=+Ln[1][1]),tl()):Wn==null?null:[[Wn,Jn],[no,en]]},vs.scale=function(Ln){return arguments.length?(Yr=+Ln,fl()):Yr},vs.translate=function(Ln){return arguments.length?(qr=+Ln[0],ba=+Ln[1],fl()):[qr,ba]},vs.center=function(Ln){return arguments.length?(Ka=Ln[0]%360*h,oi=Ln[1]%360*h,fl()):[Ka*c,oi*c]},vs.rotate=function(Ln){return arguments.length?(yi=Ln[0]%360*h,ki=Ln[1]%360*h,Bi=Ln.length>2?Ln[2]%360*h:0,fl()):[yi*c,ki*c,Bi*c]},vs.angle=function(Ln){return arguments.length?(_i=Ln%360*h,fl()):_i*c},vs.reflectX=function(Ln){return arguments.length?(vi=Ln?-1:1,fl()):vi<0},vs.reflectY=function(Ln){return arguments.length?(ti=Ln?-1:1,fl()):ti<0},vs.precision=function(Ln){return arguments.length?(Wo=Zh(bs,co=Ln*Ln),tl()):d(co)},vs.fitExtent=function(Ln,Ao){return Jc(vs,Ln,Ao)},vs.fitSize=function(Ln,Ao){return Eu(vs,Ln,Ao)},vs.fitWidth=function(Ln,Ao){return wf(vs,Ln,Ao)},vs.fitHeight=function(Ln,Ao){return zc(vs,Ln,Ao)};function fl(){var Ln=ru(Yr,0,0,vi,ti,_i).apply(null,fr(Ka,oi)),Ao=(_i?ru:fh)(Yr,qr-Ln[0],ba-Ln[1],vi,ti,_i);return li=Ea(yi,ki,Bi),bs=pa(fr,Ao),Xs=pa(li,bs),Wo=Zh(bs,co),tl()}function tl(){return Ms=Hs=null,vs}return function(){return fr=Zt.apply(this,arguments),vs.invert=fr.invert&&Il,fl()}}function kl(Zt){var fr=0,Yr=a/3,qr=xc(Zt),ba=qr(fr,Yr);return ba.parallels=function(Ka){return arguments.length?qr(fr=Ka[0]*h,Yr=Ka[1]*h):[fr*c,Yr*c]},ba}function Fc(Zt){var fr=l(Zt);function Yr(qr,ba){return[qr*fr,m(ba)/fr]}return Yr.invert=function(qr,ba){return[qr/fr,f(ba*fr)]},Yr}function $u(Zt,fr){var Yr=m(Zt),qr=(Yr+m(fr))/2;if(v(qr)<r)return Fc(Zt);var ba=1+Yr*(2*qr-Yr),Ka=d(ba)/qr;function oi(yi,ki){var Bi=d(ba-2*qr*m(ki))/qr;return[Bi*m(yi*=qr),Ka-Bi*l(yi)]}return oi.invert=function(yi,ki){var Bi=Ka-ki,li=T(yi,v(Bi))*b(Bi);return Bi*qr<0&&(li-=a*b(yi)*b(Bi)),[li/qr,f((ba-(yi*yi+Bi*Bi)*qr*qr)/(2*qr))]},oi}function vu(){return kl($u).scale(155.424).center([0,33.6442])}function xl(){return vu().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function hh(Zt){var fr=Zt.length;return{point:function(Yr,qr){for(var ba=-1;++ba<fr;)Zt[ba].point(Yr,qr)},sphere:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].sphere()},lineStart:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].lineStart()},lineEnd:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].lineEnd()},polygonStart:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].polygonStart()},polygonEnd:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].polygonEnd()}}}function Sh(){var Zt,fr,Yr=xl(),qr,ba=vu().rotate([154,0]).center([-2,58.5]).parallels([55,65]),Ka,oi=vu().rotate([157,0]).center([-3,19.9]).parallels([8,18]),yi,ki,Bi={point:function(vi,ti){ki=[vi,ti]}};function li(vi){var ti=vi[0],rn=vi[1];return ki=null,qr.point(ti,rn),ki||(Ka.point(ti,rn),ki)||(yi.point(ti,rn),ki)}li.invert=function(vi){var ti=Yr.scale(),rn=Yr.translate(),Kn=(vi[0]-rn[0])/ti,Wn=(vi[1]-rn[1])/ti;return(Wn>=.12&&Wn<.234&&Kn>=-.425&&Kn<-.214?ba:Wn>=.166&&Wn<.234&&Kn>=-.214&&Kn<-.115?oi:Yr).invert(vi)},li.stream=function(vi){return Zt&&fr===vi?Zt:Zt=hh([Yr.stream(fr=vi),ba.stream(vi),oi.stream(vi)])},li.precision=function(vi){return arguments.length?(Yr.precision(vi),ba.precision(vi),oi.precision(vi),_i()):Yr.precision()},li.scale=function(vi){return arguments.length?(Yr.scale(vi),ba.scale(vi*.35),oi.scale(vi),li.translate(Yr.translate())):Yr.scale()},li.translate=function(vi){if(!arguments.length)return Yr.translate();var ti=Yr.scale(),rn=+vi[0],Kn=+vi[1];return qr=Yr.translate(vi).clipExtent([[rn-.455*ti,Kn-.238*ti],[rn+.455*ti,Kn+.238*ti]]).stream(Bi),Ka=ba.translate([rn-.307*ti,Kn+.201*ti]).clipExtent([[rn-.425*ti+r,Kn+.12*ti+r],[rn-.214*ti-r,Kn+.234*ti-r]]).stream(Bi),yi=oi.translate([rn-.205*ti,Kn+.212*ti]).clipExtent([[rn-.214*ti+r,Kn+.166*ti+r],[rn-.115*ti-r,Kn+.234*ti-r]]).stream(Bi),_i()},li.fitExtent=function(vi,ti){return Jc(li,vi,ti)},li.fitSize=function(vi,ti){return Eu(li,vi,ti)},li.fitWidth=function(vi,ti){return wf(li,vi,ti)},li.fitHeight=function(vi,ti){return zc(li,vi,ti)};function _i(){return Zt=fr=null,li}return li.scale(1070)}function Uu(Zt){return function(fr,Yr){var qr=l(fr),ba=l(Yr),Ka=Zt(qr*ba);return[Ka*ba*m(fr),Ka*m(Yr)]}}function bc(Zt){return function(fr,Yr){var qr=d(fr*fr+Yr*Yr),ba=Zt(qr),Ka=m(ba),oi=l(ba);return[T(fr*Ka,qr*oi),f(qr&&Yr*Ka/qr)]}}var lc=Uu(function(Zt){return d(2/(1+Zt))});lc.invert=bc(function(Zt){return 2*f(Zt/2)});function hp(){return Cu(lc).scale(124.75).clipAngle(180-.001)}var vf=Uu(function(Zt){return(Zt=y(Zt))&&Zt/m(Zt)});vf.invert=bc(function(Zt){return Zt});function Tf(){return Cu(vf).scale(79.4188).clipAngle(180-.001)}function Lu(Zt,fr){return[Zt,S(u((i+fr)/2))]}Lu.invert=function(Zt,fr){return[Zt,2*p(w(fr))-i]};function zf(){return au(Lu).scale(961/s)}function au(Zt){var fr=Cu(Zt),Yr=fr.center,qr=fr.scale,ba=fr.translate,Ka=fr.clipExtent,oi=null,yi,ki,Bi;fr.scale=function(_i){return arguments.length?(qr(_i),li()):qr()},fr.translate=function(_i){return arguments.length?(ba(_i),li()):ba()},fr.center=function(_i){return arguments.length?(Yr(_i),li()):Yr()},fr.clipExtent=function(_i){return arguments.length?(_i==null?oi=yi=ki=Bi=null:(oi=+_i[0][0],yi=+_i[0][1],ki=+_i[1][0],Bi=+_i[1][1]),li()):oi==null?null:[[oi,yi],[ki,Bi]]};function li(){var _i=a*qr(),vi=fr($a(fr.rotate()).invert([0,0]));return Ka(oi==null?[[vi[0]-_i,vi[1]-_i],[vi[0]+_i,vi[1]+_i]]:Zt===Lu?[[Math.max(vi[0]-_i,oi),yi],[Math.min(vi[0]+_i,ki),Bi]]:[[oi,Math.max(vi[1]-_i,yi)],[ki,Math.min(vi[1]+_i,Bi)]])}return li()}function $c(Zt){return u((i+Zt)/2)}function Mh(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):S(Yr/l(fr))/S($c(fr)/$c(Zt)),ba=Yr*E($c(Zt),qr)/qr;if(!qr)return Lu;function Ka(oi,yi){ba>0?yi<-i+r&&(yi=-i+r):yi>i-r&&(yi=i-r);var ki=ba/E($c(yi),qr);return[ki*m(qr*oi),ba-ki*l(qr*oi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=b(qr)*d(oi*oi+ki*ki),li=T(oi,v(ki))*b(ki);return ki*qr<0&&(li-=a*b(oi)*b(ki)),[li/qr,2*p(E(ba/Bi,1/qr))-i]},Ka}function Ff(){return kl(Mh).scale(109.5).parallels([30,30])}function il(Zt,fr){return[Zt,fr]}il.invert=il;function mu(){return Cu(il).scale(152.63)}function gu(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):(Yr-l(fr))/(fr-Zt),ba=Yr/qr+Zt;if(v(qr)<r)return il;function Ka(oi,yi){var ki=ba-yi,Bi=qr*oi;return[ki*m(Bi),ba-ki*l(Bi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=T(oi,v(ki))*b(ki);return ki*qr<0&&(Bi-=a*b(oi)*b(ki)),[Bi/qr,ba-b(qr)*d(oi*oi+ki*ki)]},Ka}function Jf(){return kl(gu).scale(131.154).center([0,13.9389])}var el=1.340264,mf=-.081106,wc=893e-6,ju=.003796,Af=d(3)/2,uc=12;function Qc(Zt,fr){var Yr=f(Af*m(fr)),qr=Yr*Yr,ba=qr*qr*qr;return[Zt*l(Yr)/(Af*(el+3*mf*qr+ba*(7*wc+9*ju*qr))),Yr*(el+mf*qr+ba*(wc+ju*qr))]}Qc.invert=function(Zt,fr){for(var Yr=fr,qr=Yr*Yr,ba=qr*qr*qr,Ka=0,oi,yi,ki;Ka<uc&&(yi=Yr*(el+mf*qr+ba*(wc+ju*qr))-fr,ki=el+3*mf*qr+ba*(7*wc+9*ju*qr),Yr-=oi=yi/ki,qr=Yr*Yr,ba=qr*qr*qr,!(v(oi)<o));++Ka);return[Af*Zt*(el+3*mf*qr+ba*(7*wc+9*ju*qr))/l(Yr),f(m(Yr)/Af)]};function $f(){return Cu(Qc).scale(177.158)}function Vl(Zt,fr){var Yr=l(fr),qr=l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}Vl.invert=bc(p);function Qf(){return Cu(Vl).scale(144.049).clipAngle(60)}function Vu(){var Zt=1,fr=0,Yr=0,qr=1,ba=1,Ka=0,oi,yi,ki=null,Bi,li,_i,vi=1,ti=1,rn=Ju({point:function(Ri,co){var Wo=en([Ri,co]);this.stream.point(Wo[0],Wo[1])}}),Kn=Ns,Wn,Jn;function no(){return vi=Zt*qr,ti=Zt*ba,Wn=Jn=null,en}function en(Ri){var co=Ri[0]*vi,Wo=Ri[1]*ti;if(Ka){var bs=Wo*oi-co*yi;co=co*oi+Wo*yi,Wo=bs}return[co+fr,Wo+Yr]}return en.invert=function(Ri){var co=Ri[0]-fr,Wo=Ri[1]-Yr;if(Ka){var bs=Wo*oi+co*yi;co=co*oi-Wo*yi,Wo=bs}return[co/vi,Wo/ti]},en.stream=function(Ri){return Wn&&Jn===Ri?Wn:Wn=rn(Kn(Jn=Ri))},en.postclip=function(Ri){return arguments.length?(Kn=Ri,ki=Bi=li=_i=null,no()):Kn},en.clipExtent=function(Ri){return arguments.length?(Kn=Ri==null?(ki=Bi=li=_i=null,Ns):ai(ki=+Ri[0][0],Bi=+Ri[0][1],li=+Ri[1][0],_i=+Ri[1][1]),no()):ki==null?null:[[ki,Bi],[li,_i]]},en.scale=function(Ri){return arguments.length?(Zt=+Ri,no()):Zt},en.translate=function(Ri){return arguments.length?(fr=+Ri[0],Yr=+Ri[1],no()):[fr,Yr]},en.angle=function(Ri){return arguments.length?(Ka=Ri%360*h,yi=m(Ka),oi=l(Ka),no()):Ka*c},en.reflectX=function(Ri){return arguments.length?(qr=Ri?-1:1,no()):qr<0},en.reflectY=function(Ri){return arguments.length?(ba=Ri?-1:1,no()):ba<0},en.fitExtent=function(Ri,co){return Jc(en,Ri,co)},en.fitSize=function(Ri,co){return Eu(en,Ri,co)},en.fitWidth=function(Ri,co){return wf(en,Ri,co)},en.fitHeight=function(Ri,co){return zc(en,Ri,co)},en}function Tc(Zt,fr){var Yr=fr*fr,qr=Yr*Yr;return[Zt*(.8707-.131979*Yr+qr*(-.013791+qr*(.003971*Yr-.001529*qr))),fr*(1.007226+Yr*(.015085+qr*(-.044475+.028874*Yr-.005916*qr)))]}Tc.invert=function(Zt,fr){var Yr=fr,qr=25,ba;do{var Ka=Yr*Yr,oi=Ka*Ka;Yr-=ba=(Yr*(1.007226+Ka*(.015085+oi*(-.044475+.028874*Ka-.005916*oi)))-fr)/(1.007226+Ka*(.015085*3+oi*(-.044475*7+.028874*9*Ka-.005916*11*oi)))}while(v(ba)>r&&--qr>0);return[Zt/(.8707+(Ka=Yr*Yr)*(-.131979+Ka*(-.013791+Ka*Ka*Ka*(.003971-.001529*Ka)))),Yr]};function cc(){return Cu(Tc).scale(175.295)}function Cl(Zt,fr){return[l(fr)*m(Zt),m(fr)]}Cl.invert=bc(f);function iu(){return Cu(Cl).scale(249.5).clipAngle(90+r)}function fc(Zt,fr){var Yr=l(fr),qr=1+l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}fc.invert=bc(function(Zt){return 2*p(Zt)});function Oc(){return Cu(fc).scale(250).clipAngle(142)}function Qu(Zt,fr){return[S(u((i+fr)/2)),-Zt]}Qu.invert=function(Zt,fr){return[-fr,2*p(w(Zt))-i]};function ef(){var Zt=au(Qu),fr=Zt.center,Yr=Zt.rotate;return Zt.center=function(qr){return arguments.length?fr([-qr[1],qr[0]]):(qr=fr(),[qr[1],-qr[0]])},Zt.rotate=function(qr){return arguments.length?Yr([qr[0],qr[1],qr.length>2?qr[2]+90:90]):(qr=Yr(),[qr[0],qr[1],qr[2]-90])},Yr([0,0,90]).scale(159.155)}g.geoAlbers=xl,g.geoAlbersUsa=Sh,g.geoArea=j,g.geoAzimuthalEqualArea=hp,g.geoAzimuthalEqualAreaRaw=lc,g.geoAzimuthalEquidistant=Tf,g.geoAzimuthalEquidistantRaw=vf,g.geoBounds=Fe,g.geoCentroid=xr,g.geoCircle=Er,g.geoClipAntimeridian=mr,g.geoClipCircle=Ca,g.geoClipExtent=an,g.geoClipRectangle=ai,g.geoConicConformal=Ff,g.geoConicConformalRaw=Mh,g.geoConicEqualArea=vu,g.geoConicEqualAreaRaw=$u,g.geoConicEquidistant=Jf,g.geoConicEquidistantRaw=gu,g.geoContains=$o,g.geoDistance=In,g.geoEqualEarth=$f,g.geoEqualEarthRaw=Qc,g.geoEquirectangular=mu,g.geoEquirectangularRaw=il,g.geoGnomonic=Qf,g.geoGnomonicRaw=Vl,g.geoGraticule=ol,g.geoGraticule10=Os,g.geoIdentity=Vu,g.geoInterpolate=so,g.geoLength=as,g.geoMercator=zf,g.geoMercatorRaw=Lu,g.geoNaturalEarth1=cc,g.geoNaturalEarth1Raw=Tc,g.geoOrthographic=iu,g.geoOrthographicRaw=Cl,g.geoPath=Yf,g.geoProjection=Cu,g.geoProjectionMutator=xc,g.geoRotation=$a,g.geoStereographic=Oc,g.geoStereographicRaw=fc,g.geoStream=N,g.geoTransform=uh,g.geoTransverseMercator=ef,g.geoTransverseMercatorRaw=Qu,Object.defineProperty(g,"__esModule",{value:!0})})}}),TU=Ye({"node_modules/d3-geo-projection/dist/d3-geo-projection.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,C5(),gx()):x(g.d3=g.d3||{},g.d3,g.d3)})(X,function(g,x,A){"use strict";var M=Math.abs,e=Math.atan,t=Math.atan2,r=Math.cos,o=Math.exp,a=Math.floor,i=Math.log,n=Math.max,s=Math.min,c=Math.pow,h=Math.round,v=Math.sign||function(qe){return qe>0?1:qe<0?-1:0},p=Math.sin,T=Math.tan,l=1e-6,_=1e-12,w=Math.PI,S=w/2,E=w/4,m=Math.SQRT1_2,b=F(2),d=F(w),u=w*2,y=180/w,f=w/180;function P(qe){return qe?qe/Math.sin(qe):1}function L(qe){return qe>1?S:qe<-1?-S:Math.asin(qe)}function z(qe){return qe>1?0:qe<-1?w:Math.acos(qe)}function F(qe){return qe>0?Math.sqrt(qe):0}function B(qe){return qe=o(2*qe),(qe-1)/(qe+1)}function O(qe){return(o(qe)-o(-qe))/2}function I(qe){return(o(qe)+o(-qe))/2}function N(qe){return i(qe+F(qe*qe+1))}function U(qe){return i(qe+F(qe*qe-1))}function W(qe){var Je=T(qe/2),ot=2*i(r(qe/2))/(Je*Je);function ht(At,_t){var Pt=r(At),er=r(_t),nr=p(_t),pr=er*Pt,Sr=-((1-pr?i((1+pr)/2)/(1-pr):-.5)+ot/(1+pr));return[Sr*er*p(At),Sr*nr]}return ht.invert=function(At,_t){var Pt=F(At*At+_t*_t),er=-qe/2,nr=50,pr;if(!Pt)return[0,0];do{var Sr=er/2,Wr=r(Sr),ha=p(Sr),ga=ha/Wr,Pa=-i(M(Wr));er-=pr=(2/ga*Pa-ot*ga-Pt)/(-Pa/(ha*ha)+1-ot/(2*Wr*Wr))*(Wr<0?.7:1)}while(M(pr)>l&&--nr>0);var Ja=p(er);return[t(At*Ja,Pt*r(er)),L(_t*Ja/Pt)]},ht}function Q(){var qe=S,Je=x.geoProjectionMutator(W),ot=Je(qe);return ot.radius=function(ht){return arguments.length?Je(qe=ht*f):qe*y},ot.scale(179.976).clipAngle(147)}function ue(qe,Je){var ot=r(Je),ht=P(z(ot*r(qe/=2)));return[2*ot*p(qe)*ht,p(Je)*ht]}ue.invert=function(qe,Je){if(!(qe*qe+4*Je*Je>w*w+l)){var ot=qe,ht=Je,At=25;do{var _t=p(ot),Pt=p(ot/2),er=r(ot/2),nr=p(ht),pr=r(ht),Sr=p(2*ht),Wr=nr*nr,ha=pr*pr,ga=Pt*Pt,Pa=1-ha*er*er,Ja=Pa?z(pr*er)*F(di=1/Pa):di=0,di,pi=2*Ja*pr*Pt-qe,Ci=Ja*nr-Je,$i=di*(ha*ga+Ja*pr*er*Wr),Bn=di*(.5*_t*Sr-Ja*2*nr*Pt),Sn=di*.25*(Sr*Pt-Ja*nr*ha*_t),ho=di*(Wr*er+Ja*ga*pr),ts=Bn*Sn-ho*$i;if(!ts)break;var yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]}};function se(){return x.geoProjection(ue).scale(152.63)}function he(qe){var Je=p(qe),ot=r(qe),ht=qe>=0?1:-1,At=T(ht*qe),_t=(1+Je-ot)/2;function Pt(er,nr){var pr=r(nr),Sr=r(er/=2);return[(1+pr)*p(er),(ht*nr>-t(Sr,At)-.001?0:-ht*10)+_t+p(nr)*ot-(1+pr)*Je*Sr]}return Pt.invert=function(er,nr){var pr=0,Sr=0,Wr=50;do{var ha=r(pr),ga=p(pr),Pa=r(Sr),Ja=p(Sr),di=1+Pa,pi=di*ga-er,Ci=_t+Ja*ot-di*Je*ha-nr,$i=di*ha/2,Bn=-ga*Ja,Sn=Je*di*ga/2,ho=ot*Pa+Je*ha*Ja,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts/2,Vo=(pi*Sn-Ci*$i)/ts;M(Vo)>2&&(Vo/=2),pr-=yo,Sr-=Vo}while((M(yo)>l||M(Vo)>l)&&--Wr>0);return ht*Sr>-t(r(pr),At)-.001?[pr*2,Sr]:null},Pt}function G(){var qe=20*f,Je=qe>=0?1:-1,ot=T(Je*qe),ht=x.geoProjectionMutator(he),At=ht(qe),_t=At.stream;return At.parallel=function(Pt){return arguments.length?(ot=T((Je=(qe=Pt*f)>=0?1:-1)*qe),ht(qe)):qe*y},At.stream=function(Pt){var er=At.rotate(),nr=_t(Pt),pr=(At.rotate([0,0]),_t(Pt)),Sr=At.precision();return At.rotate(er),nr.sphere=function(){pr.polygonStart(),pr.lineStart();for(var Wr=Je*-180;Je*Wr<180;Wr+=Je*90)pr.point(Wr,Je*90);if(qe)for(;Je*(Wr-=3*Je*Sr)>=-180;)pr.point(Wr,Je*-t(r(Wr*f/2),ot)*y);pr.lineEnd(),pr.polygonEnd()},nr},At.scale(218.695).center([0,28.0974])}function $(qe,Je){var ot=T(Je/2),ht=F(1-ot*ot),At=1+ht*r(qe/=2),_t=p(qe)*ht/At,Pt=ot/At,er=_t*_t,nr=Pt*Pt;return[4/3*_t*(3+er-3*nr),4/3*Pt*(3+3*er-nr)]}$.invert=function(qe,Je){if(qe*=3/8,Je*=3/8,!qe&&M(Je)>1)return null;var ot=qe*qe,ht=Je*Je,At=1+ot+ht,_t=F((At-F(At*At-4*Je*Je))/2),Pt=L(_t)/3,er=_t?U(M(Je/_t))/3:N(M(qe))/3,nr=r(Pt),pr=I(er),Sr=pr*pr-nr*nr;return[v(qe)*2*t(O(er)*nr,.25-Sr),v(Je)*2*t(pr*p(Pt),.25+Sr)]};function J(){return x.geoProjection($).scale(66.1603)}var Z=F(8),re=i(1+b);function ne(qe,Je){var ot=M(Je);return ot<E?[qe,i(T(E+Je/2))]:[qe*r(ot)*(2*b-1/p(ot)),v(Je)*(2*b*(ot-E)-i(T(ot/2)))]}ne.invert=function(qe,Je){if((_t=M(Je))<re)return[qe,2*e(o(Je))-S];var ot=E,ht=25,At,_t;do{var Pt=r(ot/2),er=T(ot/2);ot-=At=(Z*(ot-E)-i(er)-_t)/(Z-Pt*Pt/(2*er))}while(M(At)>_&&--ht>0);return[qe/(r(ot)*(Z-1/p(ot))),v(Je)*ot]};function j(){return x.geoProjection(ne).scale(112.314)}function ee(qe){var Je=2*w/qe;function ot(ht,At){var _t=x.geoAzimuthalEquidistantRaw(ht,At);if(M(ht)>S){var Pt=t(_t[1],_t[0]),er=F(_t[0]*_t[0]+_t[1]*_t[1]),nr=Je*h((Pt-S)/Je)+S,pr=t(p(Pt-=nr),2-r(Pt));Pt=nr+L(w/er*p(pr))-pr,_t[0]=er*r(Pt),_t[1]=er*p(Pt)}return _t}return ot.invert=function(ht,At){var _t=F(ht*ht+At*At);if(_t>S){var Pt=t(At,ht),er=Je*h((Pt-S)/Je)+S,nr=Pt>er?-1:1,pr=_t*r(er-Pt),Sr=1/T(nr*z((pr-w)/F(w*(w-2*pr)+_t*_t)));Pt=er+2*e((Sr+nr*F(Sr*Sr-3))/3),ht=_t*r(Pt),At=_t*p(Pt)}return x.geoAzimuthalEquidistantRaw.invert(ht,At)},ot}function ie(){var qe=5,Je=x.geoProjectionMutator(ee),ot=Je(qe),ht=ot.stream,At=.01,_t=-r(At*f),Pt=p(At*f);return ot.lobes=function(er){return arguments.length?Je(qe=+er):qe},ot.stream=function(er){var nr=ot.rotate(),pr=ht(er),Sr=(ot.rotate([0,0]),ht(er));return ot.rotate(nr),pr.sphere=function(){Sr.polygonStart(),Sr.lineStart();for(var Wr=0,ha=360/qe,ga=2*w/qe,Pa=90-180/qe,Ja=S;Wr<qe;++Wr,Pa-=ha,Ja-=ga)Sr.point(t(Pt*r(Ja),_t)*y,L(Pt*p(Ja))*y),Pa<-90?(Sr.point(-90,-180-Pa-At),Sr.point(-90,-180-Pa+At)):(Sr.point(90,Pa+At),Sr.point(90,Pa-At));Sr.lineEnd(),Sr.polygonEnd()},pr},ot.scale(87.8076).center([0,17.1875]).clipAngle(180-.001)}function fe(qe,Je){if(arguments.length<2&&(Je=qe),Je===1)return x.geoAzimuthalEqualAreaRaw;if(Je===1/0)return be;function ot(ht,At){var _t=x.geoAzimuthalEqualAreaRaw(ht/Je,At);return _t[0]*=qe,_t}return ot.invert=function(ht,At){var _t=x.geoAzimuthalEqualAreaRaw.invert(ht/qe,At);return _t[0]*=Je,_t},ot}function be(qe,Je){return[qe*r(Je)/r(Je/=2),2*p(Je)]}be.invert=function(qe,Je){var ot=2*L(Je/2);return[qe*r(ot/2)/r(ot),ot]};function Ae(){var qe=2,Je=x.geoProjectionMutator(fe),ot=Je(qe);return ot.coefficient=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(169.529)}function Be(qe,Je,ot){var ht=100,At,_t,Pt;ot=ot===void 0?0:+ot,Je=+Je;do _t=qe(ot),Pt=qe(ot+l),_t===Pt&&(Pt=_t+l),ot-=At=-1*l*(_t-Je)/(_t-Pt);while(ht-- >0&&M(At)>l);return ht<0?NaN:ot}function Ie(qe,Je,ot){return Je===void 0&&(Je=40),ot===void 0&&(ot=_),function(ht,At,_t,Pt){var er,nr,pr;_t=_t===void 0?0:+_t,Pt=Pt===void 0?0:+Pt;for(var Sr=0;Sr<Je;Sr++){var Wr=qe(_t,Pt),ha=Wr[0]-ht,ga=Wr[1]-At;if(M(ha)<ot&&M(ga)<ot)break;var Pa=ha*ha+ga*ga;if(Pa>er){_t-=nr/=2,Pt-=pr/=2;continue}er=Pa;var Ja=(_t>0?-1:1)*ot,di=(Pt>0?-1:1)*ot,pi=qe(_t+Ja,Pt),Ci=qe(_t,Pt+di),$i=(pi[0]-Wr[0])/Ja,Bn=(pi[1]-Wr[1])/Ja,Sn=(Ci[0]-Wr[0])/di,ho=(Ci[1]-Wr[1])/di,ts=ho*$i-Bn*Sn,yo=(M(ts)<.5?.5:1)/ts;if(nr=(ga*Sn-ha*ho)*yo,pr=(ha*Bn-ga*$i)*yo,_t+=nr,Pt+=pr,M(nr)<ot&&M(pr)<ot)break}return[_t,Pt]}}function Ze(){var qe=fe(1.68,2),Je=1.4,ot=12;function ht(At,_t){if(At+_t<-Je){var Pt=(At-_t+1.6)*(At+_t+Je)/8;At+=Pt,_t-=.8*Pt*p(_t+w/2)}var er=qe(At,_t),nr=(1-r(At*_t))/ot;return er[1]<0&&(er[0]*=1+nr),er[1]>0&&(er[1]*=1+nr/1.5*er[0]*er[0]),er}return ht.invert=Ie(ht),ht}function at(){return x.geoProjection(Ze()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function it(qe,Je){var ot=qe*p(Je),ht=30,At;do Je-=At=(Je+p(Je)-ot)/(1+r(Je));while(M(At)>l&&--ht>0);return Je/2}function et(qe,Je,ot){function ht(At,_t){return[qe*At*r(_t=it(ot,_t)),Je*p(_t)]}return ht.invert=function(At,_t){return _t=L(_t/Je),[At/(qe*r(_t)),L((2*_t+p(2*_t))/ot)]},ht}var lt=et(b/S,b,w);function Me(){return x.geoProjection(lt).scale(169.529)}var ge=2.00276,ce=1.11072;function ze(qe,Je){var ot=it(w,Je);return[ge*qe/(1/r(Je)+ce/r(ot)),(Je+b*p(ot))/ge]}ze.invert=function(qe,Je){var ot=ge*Je,ht=Je<0?-E:E,At=25,_t,Pt;do Pt=ot-b*p(ht),ht-=_t=(p(2*ht)+2*ht-w*p(Pt))/(2*r(2*ht)+2+w*r(Pt)*b*r(ht));while(M(_t)>l&&--At>0);return Pt=ot-b*p(ht),[qe*(1/r(Pt)+ce/r(ht))/ge,Pt]};function tt(){return x.geoProjection(ze).scale(160.857)}function nt(qe){var Je=0,ot=x.geoProjectionMutator(qe),ht=ot(Je);return ht.parallel=function(At){return arguments.length?ot(Je=At*f):Je*y},ht}function Qe(qe,Je){return[qe*r(Je),Je]}Qe.invert=function(qe,Je){return[qe/r(Je),Je]};function Ct(){return x.geoProjection(Qe).scale(152.63)}function St(qe){if(!qe)return Qe;var Je=1/T(qe);function ot(ht,At){var _t=Je+qe-At,Pt=_t&&ht*r(At)/_t;return[_t*p(Pt),Je-_t*r(Pt)]}return ot.invert=function(ht,At){var _t=F(ht*ht+(At=Je-At)*At),Pt=Je+qe-_t;return[_t/r(Pt)*t(ht,At),Pt]},ot}function Ot(){return nt(St).scale(123.082).center([0,26.1441]).parallel(45)}function jt(qe){function Je(ot,ht){var At=S-ht,_t=At&&ot*qe*p(At)/At;return[At*p(_t)/qe,S-At*r(_t)]}return Je.invert=function(ot,ht){var At=ot*qe,_t=S-ht,Pt=F(At*At+_t*_t),er=t(At,_t);return[(Pt?Pt/p(Pt):1)*er/qe,S-Pt]},Je}function ur(){var qe=.5,Je=x.geoProjectionMutator(jt),ot=Je(qe);return ot.fraction=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(158.837)}var ar=et(1,4/w,w);function Cr(){return x.geoProjection(ar).scale(152.63)}function vr(qe,Je,ot,ht,At,_t){var Pt=r(_t),er;if(M(qe)>1||M(_t)>1)er=z(ot*At+Je*ht*Pt);else{var nr=p(qe/2),pr=p(_t/2);er=2*L(F(nr*nr+Je*ht*pr*pr))}return M(er)>l?[er,t(ht*p(_t),Je*At-ot*ht*Pt)]:[0,0]}function _r(qe,Je,ot){return z((qe*qe+Je*Je-ot*ot)/(2*qe*Je))}function yt(qe){return qe-2*w*a((qe+w)/(2*w))}function Fe(qe,Je,ot){for(var ht=[[qe[0],qe[1],p(qe[1]),r(qe[1])],[Je[0],Je[1],p(Je[1]),r(Je[1])],[ot[0],ot[1],p(ot[1]),r(ot[1])]],At=ht[2],_t,Pt=0;Pt<3;++Pt,At=_t)_t=ht[Pt],At.v=vr(_t[1]-At[1],At[3],At[2],_t[3],_t[2],_t[0]-At[0]),At.point=[0,0];var er=_r(ht[0].v[0],ht[2].v[0],ht[1].v[0]),nr=_r(ht[0].v[0],ht[1].v[0],ht[2].v[0]),pr=w-er;ht[2].point[1]=0,ht[0].point[0]=-(ht[1].point[0]=ht[0].v[0]/2);var Sr=[ht[2].point[0]=ht[0].point[0]+ht[2].v[0]*r(er),2*(ht[0].point[1]=ht[1].point[1]=ht[2].v[0]*p(er))];function Wr(ha,ga){var Pa=p(ga),Ja=r(ga),di=new Array(3),pi;for(pi=0;pi<3;++pi){var Ci=ht[pi];if(di[pi]=vr(ga-Ci[1],Ci[3],Ci[2],Ja,Pa,ha-Ci[0]),!di[pi][0])return Ci.point;di[pi][1]=yt(di[pi][1]-Ci.v[1])}var $i=Sr.slice();for(pi=0;pi<3;++pi){var Bn=pi==2?0:pi+1,Sn=_r(ht[pi].v[0],di[pi][0],di[Bn][0]);di[pi][1]<0&&(Sn=-Sn),pi?pi==1?(Sn=nr-Sn,$i[0]-=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn)):(Sn=pr-Sn,$i[0]+=di[pi][0]*r(Sn),$i[1]+=di[pi][0]*p(Sn)):($i[0]+=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn))}return $i[0]/=3,$i[1]/=3,$i}return Wr}function Ke(qe){return qe[0]*=f,qe[1]*=f,qe}function Ne(){return Ee([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Ee(qe,Je,ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:[qe,Je,ot]}),At=[-ht[0],-ht[1]],_t=x.geoRotation(At),Pt=Fe(Ke(_t(qe)),Ke(_t(Je)),Ke(_t(ot)));Pt.invert=Ie(Pt);var er=x.geoProjection(Pt).rotate(At),nr=er.center;return delete er.rotate,er.center=function(pr){return arguments.length?nr(_t(pr)):_t.invert(nr())},er.clipAngle(90)}function Ve(qe,Je){var ot=F(1-p(Je));return[2/d*qe*ot,d*(1-ot)]}Ve.invert=function(qe,Je){var ot=(ot=Je/d-1)*ot;return[ot>0?qe*F(w/ot)/2:0,L(1-ot)]};function ke(){return x.geoProjection(Ve).scale(95.6464).center([0,30])}function Te(qe){var Je=T(qe);function ot(ht,At){return[ht,(ht?ht/p(ht):1)*(p(At)*r(ht)-Je*r(At))]}return ot.invert=Je?function(ht,At){ht&&(At*=p(ht)/ht);var _t=r(ht);return[ht,2*t(F(_t*_t+Je*Je-At*At)-_t,Je-At)]}:function(ht,At){return[ht,L(ht?At*T(ht)/ht:At)]},ot}function Le(){return nt(Te).scale(249.828).clipAngle(90)}var rt=F(3);function dt(qe,Je){return[rt*qe*(2*r(2*Je/3)-1)/d,rt*d*p(Je/3)]}dt.invert=function(qe,Je){var ot=3*L(Je/(rt*d));return[d*qe/(rt*(2*r(2*ot/3)-1)),ot]};function xt(){return x.geoProjection(dt).scale(156.19)}function It(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,p(At)/Je]}return ot.invert=function(ht,At){return[ht/Je,L(At*Je)]},ot}function Bt(){return nt(It).parallel(38.58).scale(195.044)}function Gt(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,(1+Je)*T(At/2)]}return ot.invert=function(ht,At){return[ht/Je,e(At/(1+Je))*2]},ot}function Kt(){return nt(Gt).scale(124.75)}function sr(qe,Je){var ot=F(8/(3*w));return[ot*qe*(1-M(Je)/w),ot*Je]}sr.invert=function(qe,Je){var ot=F(8/(3*w)),ht=Je/ot;return[qe/(ot*(1-M(ht)/w)),ht]};function sa(){return x.geoProjection(sr).scale(165.664)}function Aa(qe,Je){var ot=F(4-3*p(M(Je)));return[2/F(6*w)*qe*ot,v(Je)*F(2*w/3)*(2-ot)]}Aa.invert=function(qe,Je){var ot=2-M(Je)/F(2*w/3);return[qe*F(6*w)/(2*ot),v(Je)*L((4-ot*ot)/3)]};function La(){return x.geoProjection(Aa).scale(165.664)}function ka(qe,Je){var ot=F(w*(4+w));return[2/ot*qe*(1+F(1-4*Je*Je/(w*w))),4/ot*Je]}ka.invert=function(qe,Je){var ot=F(w*(4+w))/2;return[qe*ot/(1+F(1-Je*Je*(4+w)/(4*w))),Je*ot/2]};function Ga(){return x.geoProjection(ka).scale(180.739)}function Ma(qe,Je){var ot=(2+S)*p(Je);Je/=2;for(var ht=0,At=1/0;ht<10&&M(At)>l;ht++){var _t=r(Je);Je-=At=(Je+p(Je)*(_t+2)-ot)/(2*_t*(1+_t))}return[2/F(w*(4+w))*qe*(1+r(Je)),2*F(w/(4+w))*p(Je)]}Ma.invert=function(qe,Je){var ot=Je*F((4+w)/w)/2,ht=L(ot),At=r(ht);return[qe/(2/F(w*(4+w))*(1+At)),L((ht+ot*(At+2))/(2+S))]};function Ua(){return x.geoProjection(Ma).scale(180.739)}function ni(qe,Je){return[qe*(1+r(Je))/F(2+w),2*Je/F(2+w)]}ni.invert=function(qe,Je){var ot=F(2+w),ht=Je*ot/2;return[ot*qe/(1+r(ht)),ht]};function Wt(){return x.geoProjection(ni).scale(173.044)}function zt(qe,Je){for(var ot=(1+S)*p(Je),ht=0,At=1/0;ht<10&&M(At)>l;ht++)Je-=At=(Je+p(Je)-ot)/(1+r(Je));return ot=F(2+w),[qe*(1+r(Je))/ot,2*Je/ot]}zt.invert=function(qe,Je){var ot=1+S,ht=F(ot/2);return[qe*2*ht/(1+r(Je*=ht)),L((Je+p(Je))/ot)]};function Vt(){return x.geoProjection(zt).scale(173.044)}var Ut=3+2*b;function xr(qe,Je){var ot=p(qe/=2),ht=r(qe),At=F(r(Je)),_t=r(Je/=2),Pt=p(Je)/(_t+b*ht*At),er=F(2/(1+Pt*Pt)),nr=F((b*_t+(ht+ot)*At)/(b*_t+(ht-ot)*At));return[Ut*(er*(nr-1/nr)-2*i(nr)),Ut*(er*Pt*(nr+1/nr)-2*e(Pt))]}xr.invert=function(qe,Je){if(!(_t=$.invert(qe/1.2,Je*1.065)))return null;var ot=_t[0],ht=_t[1],At=20,_t;qe/=Ut,Je/=Ut;do{var Pt=ot/2,er=ht/2,nr=p(Pt),pr=r(Pt),Sr=p(er),Wr=r(er),ha=r(ht),ga=F(ha),Pa=Sr/(Wr+b*pr*ga),Ja=Pa*Pa,di=F(2/(1+Ja)),pi=b*Wr+(pr+nr)*ga,Ci=b*Wr+(pr-nr)*ga,$i=pi/Ci,Bn=F($i),Sn=Bn-1/Bn,ho=Bn+1/Bn,ts=di*Sn-2*i(Bn)-qe,yo=di*Pa*ho-2*e(Pa)-Je,Vo=Sr&&m*ga*nr*Ja/Sr,ls=(b*pr*Wr+ga)/(2*(Wr+b*pr*ga)*(Wr+b*pr*ga)*ga),rl=-.5*Pa*di*di*di,Ys=rl*Vo,Zo=rl*ls,Go=(Go=2*Wr+b*ga*(pr-nr))*Go*Bn,Rl=(b*pr*Wr*ga+ha)/Go,Xl=-(b*nr*Sr)/(ga*Go),qu=Sn*Ys-2*Rl/Bn+di*(Rl+Rl/$i),fu=Sn*Zo-2*Xl/Bn+di*(Xl+Xl/$i),bl=Pa*ho*Ys-2*Vo/(1+Ja)+di*ho*Vo+di*Pa*(Rl-Rl/$i),ou=Pa*ho*Zo-2*ls/(1+Ja)+di*ho*ls+di*Pa*(Xl-Xl/$i),Sc=fu*bl-ou*qu;if(!Sc)break;var ql=(yo*fu-ts*ou)/Sc,Hl=(ts*bl-yo*qu)/Sc;ot-=ql,ht=n(-S,s(S,ht-Hl))}while((M(ql)>l||M(Hl)>l)&&--At>0);return M(M(ht)-S)<l?[0,ht]:At&&[ot,ht]};function Zr(){return x.geoProjection(xr).scale(62.5271)}var pa=r(35*f);function Xr(qe,Je){var ot=T(Je/2);return[qe*pa*F(1-ot*ot),(1+pa)*ot]}Xr.invert=function(qe,Je){var ot=Je/(1+pa);return[qe&&qe/(pa*F(1-ot*ot)),2*e(ot)]};function Ea(){return x.geoProjection(Xr).scale(137.152)}function Fa(qe,Je){var ot=Je/2,ht=r(ot);return[2*qe/d*r(Je)*ht*ht,d*T(ot)]}Fa.invert=function(qe,Je){var ot=e(Je/d),ht=r(ot),At=2*ot;return[qe*d/2/(r(At)*ht*ht),At]};function qa(){return x.geoProjection(Fa).scale(135.264)}function ya(qe){var Je=1-qe,ot=_t(w,0)[0]-_t(-w,0)[0],ht=_t(0,S)[1]-_t(0,-S)[1],At=F(2*ht/ot);function _t(nr,pr){var Sr=r(pr),Wr=p(pr);return[Sr/(Je+qe*Sr)*nr,Je*pr+qe*Wr]}function Pt(nr,pr){var Sr=_t(nr,pr);return[Sr[0]*At,Sr[1]/At]}function er(nr){return Pt(0,nr)[1]}return Pt.invert=function(nr,pr){var Sr=Be(er,pr),Wr=nr/At*(qe+Je/r(Sr));return[Wr,Sr]},Pt}function $a(){var qe=.5,Je=x.geoProjectionMutator(ya),ot=Je(qe);return ot.alpha=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(168.725)}function mt(qe){return[qe[0]/2,L(T(qe[1]/2*f))*y]}function gt(qe){return[qe[0]*2,2*e(p(qe[1]*f))*y]}function Er(qe){qe==null&&(qe=x.geoOrthographic);var Je=qe(),ot=x.geoEquirectangular().scale(y).precision(0).clipAngle(null).translate([0,0]);function ht(_t){return Je(mt(_t))}Je.invert&&(ht.invert=function(_t){return gt(Je.invert(_t))}),ht.stream=function(_t){var Pt=Je.stream(_t),er=ot.stream({point:function(nr,pr){Pt.point(nr/2,L(T(-pr/2*f))*y)},lineStart:function(){Pt.lineStart()},lineEnd:function(){Pt.lineEnd()},polygonStart:function(){Pt.polygonStart()},polygonEnd:function(){Pt.polygonEnd()}});return er.sphere=Pt.sphere,er};function At(_t){ht[_t]=function(){return arguments.length?(Je[_t].apply(Je,arguments),ht):Je[_t]()}}return ht.rotate=function(_t){return arguments.length?(ot.rotate(_t),ht):ot.rotate()},ht.center=function(_t){return arguments.length?(Je.center(mt(_t)),ht):gt(Je.center())},At("angle"),At("clipAngle"),At("clipExtent"),At("fitExtent"),At("fitHeight"),At("fitSize"),At("fitWidth"),At("scale"),At("translate"),At("precision"),ht.scale(249.5)}function kr(qe,Je){var ot=2*w/Je,ht=qe*qe;function At(_t,Pt){var er=x.geoAzimuthalEquidistantRaw(_t,Pt),nr=er[0],pr=er[1],Sr=nr*nr+pr*pr;if(Sr>ht){var Wr=F(Sr),ha=t(pr,nr),ga=ot*h(ha/ot),Pa=ha-ga,Ja=qe*r(Pa),di=(qe*p(Pa)-Pa*p(Ja))/(S-Ja),pi=br(Pa,di),Ci=(w-qe)/Tr(pi,Ja,w);nr=Wr;var $i=50,Bn;do nr-=Bn=(qe+Tr(pi,Ja,nr)*Ci-Wr)/(pi(nr)*Ci);while(M(Bn)>l&&--$i>0);pr=Pa*p(nr),nr<S&&(pr-=di*(nr-S));var Sn=p(ga),ho=r(ga);er[0]=nr*ho-pr*Sn,er[1]=nr*Sn+pr*ho}return er}return At.invert=function(_t,Pt){var er=_t*_t+Pt*Pt;if(er>ht){var nr=F(er),pr=t(Pt,_t),Sr=ot*h(pr/ot),Wr=pr-Sr;_t=nr*r(Wr),Pt=nr*p(Wr);for(var ha=_t-S,ga=p(_t),Pa=Pt/ga,Ja=_t<S?1/0:0,di=10;;){var pi=qe*p(Pa),Ci=qe*r(Pa),$i=p(Ci),Bn=S-Ci,Sn=(pi-Pa*$i)/Bn,ho=br(Pa,Sn);if(M(Ja)<_||!--di)break;Pa-=Ja=(Pa*ga-Sn*ha-Pt)/(ga-ha*2*(Bn*(Ci+Pa*pi*r(Ci)-$i)-pi*(pi-Pa*$i))/(Bn*Bn))}nr=qe+Tr(ho,Ci,_t)*(w-qe)/Tr(ho,Ci,w),pr=Sr+Pa,_t=nr*r(pr),Pt=nr*p(pr)}return x.geoAzimuthalEquidistantRaw.invert(_t,Pt)},At}function br(qe,Je){return function(ot){var ht=qe*r(ot);return ot<S&&(ht-=Je),F(1+ht*ht)}}function Tr(qe,Je,ot){for(var ht=50,At=(ot-Je)/ht,_t=qe(Je)+qe(ot),Pt=1,er=Je;Pt<ht;++Pt)_t+=2*qe(er+=At);return _t*.5*At}function Mr(){var qe=6,Je=30*f,ot=r(Je),ht=p(Je),At=x.geoProjectionMutator(kr),_t=At(Je,qe),Pt=_t.stream,er=.01,nr=-r(er*f),pr=p(er*f);return _t.radius=function(Sr){return arguments.length?(ot=r(Je=Sr*f),ht=p(Je),At(Je,qe)):Je*y},_t.lobes=function(Sr){return arguments.length?At(Je,qe=+Sr):qe},_t.stream=function(Sr){var Wr=_t.rotate(),ha=Pt(Sr),ga=(_t.rotate([0,0]),Pt(Sr));return _t.rotate(Wr),ha.sphere=function(){ga.polygonStart(),ga.lineStart();for(var Pa=0,Ja=2*w/qe,di=0;Pa<qe;++Pa,di-=Ja)ga.point(t(pr*r(di),nr)*y,L(pr*p(di))*y),ga.point(t(ht*r(di-Ja/2),ot)*y,L(ht*p(di-Ja/2))*y);ga.lineEnd(),ga.polygonEnd()},ha},_t.rotate([90,-40]).scale(91.7095).clipAngle(180-.001)}function Fr(qe,Je,ot,ht,At,_t,Pt,er){arguments.length<8&&(er=0);function nr(pr,Sr){if(!Sr)return[qe*pr/w,0];var Wr=Sr*Sr,ha=qe+Wr*(Je+Wr*(ot+Wr*ht)),ga=Sr*(At-1+Wr*(_t-er+Wr*Pt)),Pa=(ha*ha+ga*ga)/(2*ga),Ja=pr*L(ha/Pa)/w;return[Pa*p(Ja),Sr*(1+Wr*er)+Pa*(1-r(Ja))]}return nr.invert=function(pr,Sr){var Wr=w*pr/qe,ha=Sr,ga,Pa,Ja=50;do{var di=ha*ha,pi=qe+di*(Je+di*(ot+di*ht)),Ci=ha*(At-1+di*(_t-er+di*Pt)),$i=pi*pi+Ci*Ci,Bn=2*Ci,Sn=$i/Bn,ho=Sn*Sn,ts=L(pi/Sn)/w,yo=Wr*ts,Vo=pi*pi,ls=(2*Je+di*(4*ot+di*6*ht))*ha,rl=At+di*(3*_t+di*5*Pt),Ys=2*(pi*ls+Ci*(rl-1)),Zo=2*(rl-1),Go=(Ys*Bn-$i*Zo)/(Bn*Bn),Rl=r(yo),Xl=p(yo),qu=Sn*Rl,fu=Sn*Xl,bl=Wr/w*(1/F(1-Vo/ho))*(ls*Sn-pi*Go)/ho,ou=fu-pr,Sc=ha*(1+di*er)+Sn-qu-Sr,ql=Go*Xl+qu*bl,Hl=qu*ts,de=1+Go-(Go*Rl-fu*bl),Re=fu*ts,$e=ql*Re-de*Hl;if(!$e)break;Wr-=ga=(Sc*ql-ou*de)/$e,ha-=Pa=(ou*Re-Sc*Hl)/$e}while((M(ga)>l||M(Pa)>l)&&--Ja>0);return[Wr,ha]},nr}var Lr=Fr(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Jr(){return x.geoProjection(Lr).scale(149.995)}var oa=Fr(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function ca(){return x.geoProjection(oa).scale(153.93)}var kt=Fr(5/6*w,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ir(){return x.geoProjection(kt).scale(130.945)}function mr(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(1-.162388*ht)*(.87-952426e-9*ot*ot),Je*(1+ht/12)]}mr.invert=function(qe,Je){var ot=qe,ht=Je,At=50,_t;do{var Pt=ht*ht;ht-=_t=(ht*(1+Pt/12)-Je)/(1+Pt/4)}while(M(_t)>l&&--At>0);At=50,qe/=1-.162388*Pt;do{var er=(er=ot*ot)*er;ot-=_t=(ot*(.87-952426e-9*er)-qe)/(.87-.00476213*er)}while(M(_t)>l&&--At>0);return[ot,ht]};function $r(){return x.geoProjection(mr).scale(131.747)}var ma=Fr(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Ba(){return x.geoProjection(ma).scale(131.087)}function Ca(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=ht>0?-.5:.5,Pt=qe(ht+_t*w,At);return Pt[0]-=_t*Je,Pt}return qe.invert&&(ot.invert=function(ht,At){var _t=ht>0?-.5:.5,Pt=qe.invert(ht+_t*Je,At),er=Pt[0]-_t*w;return er<-w?er+=2*w:er>w&&(er-=2*w),Pt[0]=er,Pt}),ot}function da(qe,Je){var ot=v(qe),ht=v(Je),At=r(Je),_t=r(qe)*At,Pt=p(qe)*At,er=p(ht*Je);qe=M(t(Pt,er)),Je=L(_t),M(qe-S)>l&&(qe%=S);var nr=Sa(qe>w/4?S-qe:qe,Je);return qe>w/4&&(er=nr[0],nr[0]=-nr[1],nr[1]=-er),nr[0]*=ot,nr[1]*=-ht,nr}da.invert=function(qe,Je){M(qe)>1&&(qe=v(qe)*2-qe),M(Je)>1&&(Je=v(Je)*2-Je);var ot=v(qe),ht=v(Je),At=-ot*qe,_t=-ht*Je,Pt=_t/At<1,er=Ti(Pt?_t:At,Pt?At:_t),nr=er[0],pr=er[1],Sr=r(pr);return Pt&&(nr=-S-nr),[ot*(t(p(nr)*Sr,-p(pr))+w),ht*L(r(nr)*Sr)]};function Sa(qe,Je){if(Je===S)return[0,0];var ot=p(Je),ht=ot*ot,At=ht*ht,_t=1+At,Pt=1+3*At,er=1-At,nr=L(1/F(_t)),pr=er+ht*_t*nr,Sr=(1-ot)/pr,Wr=F(Sr),ha=Sr*_t,ga=F(ha),Pa=Wr*er,Ja,di;if(qe===0)return[0,-(Pa+ht*ga)];var pi=r(Je),Ci=1/pi,$i=2*ot*pi,Bn=(-3*ht+nr*Pt)*$i,Sn=(-pr*pi-(1-ot)*Bn)/(pr*pr),ho=.5*Sn/Wr,ts=er*ho-2*ht*Wr*$i,yo=ht*_t*Sn+Sr*Pt*$i,Vo=-Ci*$i,ls=-Ci*yo,rl=-2*Ci*ts,Ys=4*qe/w,Zo;if(qe>.222*w||Je<w/4&&qe>.175*w){if(Ja=(Pa+ht*F(ha*(1+At)-Pa*Pa))/(1+At),qe>w/4)return[Ja,Ja];var Go=Ja,Rl=.5*Ja;Ja=.5*(Rl+Go),di=50;do{var Xl=F(ha-Ja*Ja),qu=Ja*(rl+Vo*Xl)+ls*L(Ja/ga)-Ys;if(!qu)break;qu<0?Rl=Ja:Go=Ja,Ja=.5*(Rl+Go)}while(M(Go-Rl)>l&&--di>0)}else{Ja=l,di=25;do{var fu=Ja*Ja,bl=F(ha-fu),ou=rl+Vo*bl,Sc=Ja*ou+ls*L(Ja/ga)-Ys,ql=ou+(ls-Vo*fu)/bl;Ja-=Zo=bl?Sc/ql:0}while(M(Zo)>l&&--di>0)}return[Ja,-Pa-ht*F(ha-Ja*Ja)]}function Ti(qe,Je){for(var ot=0,ht=1,At=.5,_t=50;;){var Pt=At*At,er=F(At),nr=L(1/F(1+Pt)),pr=1-Pt+At*(1+Pt)*nr,Sr=(1-er)/pr,Wr=F(Sr),ha=Sr*(1+Pt),ga=Wr*(1-Pt),Pa=ha-qe*qe,Ja=F(Pa),di=Je+ga+At*Ja;if(M(ht-ot)<_||--_t===0||di===0)break;di>0?ot=At:ht=At,At=.5*(ot+ht)}if(!_t)return null;var pi=L(er),Ci=r(pi),$i=1/Ci,Bn=2*er*Ci,Sn=(-3*At+nr*(1+3*Pt))*Bn,ho=(-pr*Ci-(1-er)*Sn)/(pr*pr),ts=.5*ho/Wr,yo=(1-Pt)*ts-2*At*Wr*Bn,Vo=-2*$i*yo,ls=-$i*Bn,rl=-$i*(At*(1+Pt)*ho+Sr*(1+3*Pt)*Bn);return[w/4*(qe*(Vo+ls*Ja)+rl*L(qe/F(ha))),pi]}function ai(){return x.geoProjection(Ca(da)).scale(239.75)}function an(qe,Je,ot){var ht,At,_t;return qe?(ht=sn(qe,ot),Je?(At=sn(Je,1-ot),_t=At[1]*At[1]+ot*ht[0]*ht[0]*At[0]*At[0],[[ht[0]*At[2]/_t,ht[1]*ht[2]*At[0]*At[1]/_t],[ht[1]*At[1]/_t,-ht[0]*ht[2]*At[0]*At[2]/_t],[ht[2]*At[1]*At[2]/_t,-ot*ht[0]*ht[1]*At[0]/_t]]):[[ht[0],0],[ht[1],0],[ht[2],0]]):(At=sn(Je,1-ot),[[0,At[0]/At[1]],[1/At[1],0],[At[2]/At[1],0]])}function sn(qe,Je){var ot,ht,At,_t,Pt;if(Je<l)return _t=p(qe),ht=r(qe),ot=Je*(qe-_t*ht)/4,[_t-ot*ht,ht+ot*_t,1-Je*_t*_t/2,qe-ot];if(Je>=1-l)return ot=(1-Je)/4,ht=I(qe),_t=B(qe),At=1/ht,Pt=ht*O(qe),[_t+ot*(Pt-qe)/(ht*ht),At-ot*_t*At*(Pt-qe),At+ot*_t*At*(Pt+qe),2*e(o(qe))-S+ot*(Pt-qe)/ht];var er=[1,0,0,0,0,0,0,0,0],nr=[F(Je),0,0,0,0,0,0,0,0],pr=0;for(ht=F(1-Je),Pt=1;M(nr[pr]/er[pr])>l&&pr<8;)ot=er[pr++],nr[pr]=(ot-ht)/2,er[pr]=(ot+ht)/2,ht=F(ot*ht),Pt*=2;At=Pt*er[pr]*qe;do _t=nr[pr]*p(ht=At)/er[pr],At=(L(_t)+At)/2;while(--pr);return[p(At),_t=r(At),_t/r(At-ht),At]}function Mn(qe,Je,ot){var ht=M(qe),At=M(Je),_t=O(At);if(ht){var Pt=1/p(ht),er=1/(T(ht)*T(ht)),nr=-(er+ot*(_t*_t*Pt*Pt)-1+ot),pr=(ot-1)*er,Sr=(-nr+F(nr*nr-4*pr))/2;return[On(e(1/F(Sr)),ot)*v(qe),On(e(F((Sr/er-1)/ot)),1-ot)*v(Je)]}return[0,On(e(_t),1-ot)*v(Je)]}function On(qe,Je){if(!Je)return qe;if(Je===1)return i(T(qe/2+E));for(var ot=1,ht=F(1-Je),At=F(Je),_t=0;M(At)>l;_t++){if(qe%w){var Pt=e(ht*T(qe)/ot);Pt<0&&(Pt+=w),qe+=Pt+~~(qe/w)*w}else qe+=qe;At=(ot+ht)/2,ht=F(ot*ht),At=((ot=At)-ht)/2}return qe/(c(2,_t)*ot)}function $n(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=i(T(w/4+M(Je)/2)),er=o(_t*Pt)/F(ot),nr=Cn(er*r(_t*qe),er*p(_t*qe)),pr=Mn(nr[0],nr[1],ht*ht);return[-pr[1],(Je>=0?1:-1)*(.5*At-pr[0])]}function Cn(qe,Je){var ot=qe*qe,ht=Je+1,At=1-ot-Je*Je;return[.5*((qe>=0?S:-S)-t(At,2*qe)),-.25*i(At*At+4*ot)+.5*i(ht*ht+ot)]}function Lo(qe,Je){var ot=Je[0]*Je[0]+Je[1]*Je[1];return[(qe[0]*Je[0]+qe[1]*Je[1])/ot,(qe[1]*Je[0]-qe[0]*Je[1])/ot]}$n.invert=function(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=an(.5*At-Je,-qe,ht*ht),er=Lo(Pt[0],Pt[1]),nr=t(er[1],er[0])/_t;return[nr,2*e(o(.5/_t*i(ot*er[0]*er[0]+ot*er[1]*er[1])))-S]};function Xi(){return x.geoProjection(Ca($n)).scale(151.496)}function Jo(qe){var Je=p(qe),ot=r(qe),ht=zo(qe);ht.invert=zo(-qe);function At(_t,Pt){var er=ht(_t,Pt);_t=er[0],Pt=er[1];var nr=p(Pt),pr=r(Pt),Sr=r(_t),Wr=z(Je*nr+ot*pr*Sr),ha=p(Wr),ga=M(ha)>l?Wr/ha:1;return[ga*ot*p(_t),(M(_t)>S?ga:-ga)*(Je*pr-ot*nr*Sr)]}return At.invert=function(_t,Pt){var er=F(_t*_t+Pt*Pt),nr=-p(er),pr=r(er),Sr=er*pr,Wr=-Pt*nr,ha=er*Je,ga=F(Sr*Sr+Wr*Wr-ha*ha),Pa=t(Sr*ha+Wr*ga,Wr*ha-Sr*ga),Ja=(er>S?-1:1)*t(_t*nr,er*r(Pa)*pr+Pt*p(Pa)*nr);return ht.invert(Ja,Pa)},At}function zo(qe){var Je=p(qe),ot=r(qe);return function(ht,At){var _t=r(At),Pt=r(ht)*_t,er=p(ht)*_t,nr=p(At);return[t(er,Pt*ot-nr*Je),L(nr*ot+Pt*Je)]}}function as(){var qe=0,Je=x.geoProjectionMutator(Jo),ot=Je(qe),ht=ot.rotate,At=ot.stream,_t=x.geoCircle();return ot.parallel=function(Pt){if(!arguments.length)return qe*y;var er=ot.rotate();return Je(qe=Pt*f).rotate(er)},ot.rotate=function(Pt){return arguments.length?(ht.call(ot,[Pt[0],Pt[1]-qe*y]),_t.center([-Pt[0],-Pt[1]]),ot):(Pt=ht.call(ot),Pt[1]+=qe*y,Pt)},ot.stream=function(Pt){return Pt=At(Pt),Pt.sphere=function(){Pt.polygonStart();var er=.01,nr=_t.radius(90-er)().coordinates[0],pr=nr.length-1,Sr=-1,Wr;for(Pt.lineStart();++Sr<pr;)Pt.point((Wr=nr[Sr])[0],Wr[1]);for(Pt.lineEnd(),nr=_t.radius(90+er)().coordinates[0],pr=nr.length-1,Pt.lineStart();--Sr>=0;)Pt.point((Wr=nr[Sr])[0],Wr[1]);Pt.lineEnd(),Pt.polygonEnd()},Pt},ot.scale(79.4187).parallel(45).clipAngle(180-.001)}var Pn=3,go=L(1-1/Pn)*y,In=It(0);function Do(qe){var Je=go*f,ot=Ve(w,Je)[0]-Ve(-w,Je)[0],ht=In(0,Je)[1],At=Ve(0,Je)[1],_t=d-At,Pt=u/qe,er=4/u,nr=ht+_t*_t*4/u;function pr(Sr,Wr){var ha,ga=M(Wr);if(ga>Je){var Pa=s(qe-1,n(0,a((Sr+w)/Pt)));Sr+=w*(qe-1)/qe-Pa*Pt,ha=Ve(Sr,ga),ha[0]=ha[0]*u/ot-u*(qe-1)/(2*qe)+Pa*u/qe,ha[1]=ht+(ha[1]-At)*4*_t/u,Wr<0&&(ha[1]=-ha[1])}else ha=In(Sr,Wr);return ha[0]*=er,ha[1]/=nr,ha}return pr.invert=function(Sr,Wr){Sr/=er,Wr*=nr;var ha=M(Wr);if(ha>ht){var ga=s(qe-1,n(0,a((Sr+w)/Pt)));Sr=(Sr+w*(qe-1)/qe-ga*Pt)*ot/u;var Pa=Ve.invert(Sr,.25*(ha-ht)*u/_t+At);return Pa[0]-=w*(qe-1)/qe-ga*Pt,Wr<0&&(Pa[1]=-Pa[1]),Pa}return In.invert(Sr,Wr)},pr}function Ho(qe,Je){return[qe,Je&1?90-l:go]}function Qo(qe,Je){return[qe,Je&1?-90+l:-go]}function Xn(qe){return[qe[0]*(1-l),qe[1]]}function po(qe){var Je=[].concat(A.range(-180,180+qe/2,qe).map(Ho),A.range(180,-180-qe/2,-qe).map(Qo));return{type:"Polygon",coordinates:[qe===180?Je.map(Xn):Je]}}function ys(){var qe=4,Je=x.geoProjectionMutator(Do),ot=Je(qe),ht=ot.stream;return ot.lobes=function(At){return arguments.length?Je(qe=+At):qe},ot.stream=function(At){var _t=ot.rotate(),Pt=ht(At),er=(ot.rotate([0,0]),ht(At));return ot.rotate(_t),Pt.sphere=function(){x.geoStream(po(180/qe),er)},Pt},ot.scale(239.75)}function Is(qe){var Je=1+qe,ot=p(1/Je),ht=L(ot),At=2*F(w/(_t=w+4*ht*Je)),_t,Pt=.5*At*(Je+F(qe*(2+qe))),er=qe*qe,nr=Je*Je;function pr(Sr,Wr){var ha=1-p(Wr),ga,Pa;if(ha&&ha<2){var Ja=S-Wr,di=25,pi;do{var Ci=p(Ja),$i=r(Ja),Bn=ht+t(Ci,Je-$i),Sn=1+nr-2*Je*$i;Ja-=pi=(Ja-er*ht-Je*Ci+Sn*Bn-.5*ha*_t)/(2*Je*Ci*Bn)}while(M(pi)>_&&--di>0);ga=At*F(Sn),Pa=Sr*Bn/w}else ga=At*(qe+ha),Pa=Sr*ht/w;return[ga*p(Pa),Pt-ga*r(Pa)]}return pr.invert=function(Sr,Wr){var ha=Sr*Sr+(Wr-=Pt)*Wr,ga=(1+nr-ha/(At*At))/(2*Je),Pa=z(ga),Ja=p(Pa),di=ht+t(Ja,Je-ga);return[L(Sr/F(ha))*w/di,L(1-2*(Pa-er*ht-Je*Ja+(1+nr-2*Je*ga)*di)/_t)]},pr}function Fs(){var qe=1,Je=x.geoProjectionMutator(Is),ot=Je(qe);return ot.ratio=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(167.774).center([0,18.67])}var $o=.7109889596207567,fi=.0528035274542;function mn(qe,Je){return Je>-$o?(qe=lt(qe,Je),qe[1]+=fi,qe):Qe(qe,Je)}mn.invert=function(qe,Je){return Je>-$o?lt.invert(qe,Je-fi):Qe.invert(qe,Je)};function ol(){return x.geoProjection(mn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Os(qe,Je){return M(Je)>$o?(qe=lt(qe,Je),qe[1]-=Je>0?fi:-fi,qe):Qe(qe,Je)}Os.invert=function(qe,Je){return M(Je)>$o?lt.invert(qe,Je+(Je>0?fi:-fi)):Qe.invert(qe,Je)};function so(){return x.geoProjection(Os).scale(152.63)}function Ns(qe,Je,ot,ht){var At=F(4*w/(2*ot+(1+qe-Je/2)*p(2*ot)+(qe+Je)/2*p(4*ot)+Je/2*p(6*ot))),_t=F(ht*p(ot)*F((1+qe*r(2*ot)+Je*r(4*ot))/(1+qe+Je))),Pt=ot*nr(1);function er(Wr){return F(1+qe*r(2*Wr)+Je*r(4*Wr))}function nr(Wr){var ha=Wr*ot;return(2*ha+(1+qe-Je/2)*p(2*ha)+(qe+Je)/2*p(4*ha)+Je/2*p(6*ha))/ot}function pr(Wr){return er(Wr)*p(Wr)}var Sr=function(Wr,ha){var ga=ot*Be(nr,Pt*p(ha)/ot,ha/w);isNaN(ga)&&(ga=ot*v(ha));var Pa=At*er(ga);return[Pa*_t*Wr/w*r(ga),Pa/_t*p(ga)]};return Sr.invert=function(Wr,ha){var ga=Be(pr,ha*_t/At);return[Wr*w/(r(ga)*At*_t*er(ga)),L(ot*nr(ga/ot)/Pt)]},ot===0&&(At=F(ht/w),Sr=function(Wr,ha){return[Wr*At,p(ha)/At]},Sr.invert=function(Wr,ha){return[Wr/At,L(ha*At)]}),Sr}function fs(){var qe=1,Je=0,ot=45*f,ht=2,At=x.geoProjectionMutator(Ns),_t=At(qe,Je,ot,ht);return _t.a=function(Pt){return arguments.length?At(qe=+Pt,Je,ot,ht):qe},_t.b=function(Pt){return arguments.length?At(qe,Je=+Pt,ot,ht):Je},_t.psiMax=function(Pt){return arguments.length?At(qe,Je,ot=+Pt*f,ht):ot*y},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(180.739)}function al(qe,Je,ot,ht,At,_t,Pt,er,nr,pr,Sr){if(Sr.nanEncountered)return NaN;var Wr,ha,ga,Pa,Ja,di,pi,Ci,$i,Bn;if(Wr=ot-Je,ha=qe(Je+Wr*.25),ga=qe(ot-Wr*.25),isNaN(ha)){Sr.nanEncountered=!0;return}if(isNaN(ga)){Sr.nanEncountered=!0;return}return Pa=Wr*(ht+4*ha+At)/12,Ja=Wr*(At+4*ga+_t)/12,di=Pa+Ja,Bn=(di-Pt)/15,pr>nr?(Sr.maxDepthCount++,di+Bn):Math.abs(Bn)<er?di+Bn:(pi=Je+Wr*.5,Ci=al(qe,Je,pi,ht,ha,At,Pa,er*.5,nr,pr+1,Sr),isNaN(Ci)?(Sr.nanEncountered=!0,NaN):($i=al(qe,pi,ot,At,ga,_t,Ja,er*.5,nr,pr+1,Sr),isNaN($i)?(Sr.nanEncountered=!0,NaN):Ci+$i))}function vl(qe,Je,ot,ht,At){var _t={maxDepthCount:0,nanEncountered:!1};ht===void 0&&(ht=1e-8),At===void 0&&(At=20);var Pt=qe(Je),er=qe(.5*(Je+ot)),nr=qe(ot),pr=(Pt+4*er+nr)*(ot-Je)/6,Sr=al(qe,Je,ot,Pt,er,nr,pr,ht,At,1,_t);return Sr}function ji(qe,Je,ot){function ht(ga){return qe+(1-qe)*c(1-c(ga,Je),1/Je)}function At(ga){return vl(ht,0,ga,1e-4)}for(var _t=1/At(1),Pt=1e3,er=(1+1e-8)*_t,nr=[],pr=0;pr<=Pt;pr++)nr.push(At(pr/Pt)*er);function Sr(ga){var Pa=0,Ja=Pt,di=Pt>>1;do nr[di]>ga?Ja=di:Pa=di,di=Pa+Ja>>1;while(di>Pa);var pi=nr[di+1]-nr[di];return pi&&(pi=(ga-nr[di+1])/pi),(di+1+pi)/Pt}var Wr=2*Sr(1)/w*_t/ot,ha=function(ga,Pa){var Ja=Sr(M(p(Pa))),di=ht(Ja)*ga;return Ja/=Wr,[di,Pa>=0?Ja:-Ja]};return ha.invert=function(ga,Pa){var Ja;return Pa*=Wr,M(Pa)<1&&(Ja=v(Pa)*L(At(M(Pa))*_t)),[ga/ht(M(Pa)),Ja]},ha}function To(){var qe=0,Je=2.5,ot=1.183136,ht=x.geoProjectionMutator(ji),At=ht(qe,Je,ot);return At.alpha=function(_t){return arguments.length?ht(qe=+_t,Je,ot):qe},At.k=function(_t){return arguments.length?ht(qe,Je=+_t,ot):Je},At.gamma=function(_t){return arguments.length?ht(qe,Je,ot=+_t):ot},At.scale(152.63)}function Yn(qe,Je){return M(qe[0]-Je[0])<l&&M(qe[1]-Je[1])<l}function _s(qe,Je){for(var ot=-1,ht=qe.length,At=qe[0],_t,Pt,er,nr=[];++ot<ht;){_t=qe[ot],Pt=(_t[0]-At[0])/Je,er=(_t[1]-At[1])/Je;for(var pr=0;pr<Je;++pr)nr.push([At[0]+pr*Pt,At[1]+pr*er]);At=_t}return nr.push(_t),nr}function Yo(qe){var Je=[],ot,ht,At,_t,Pt,er,nr,pr=qe[0].length;for(nr=0;nr<pr;++nr)ot=qe[0][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[ht+l,At+l],[ht+l,_t-l],[Pt-l,_t-l],[Pt-l,er+l]],30));for(nr=qe[1].length-1;nr>=0;--nr)ot=qe[1][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[Pt-l,er-l],[Pt-l,_t+l],[ht+l,_t+l],[ht+l,At-l]],30));return{type:"Polygon",coordinates:[A.merge(Je)]}}function Nn(qe,Je,ot){var ht,At;function _t(nr,pr){for(var Sr=pr<0?-1:1,Wr=Je[+(pr<0)],ha=0,ga=Wr.length-1;ha<ga&&nr>Wr[ha][2][0];++ha);var Pa=qe(nr-Wr[ha][1][0],pr);return Pa[0]+=qe(Wr[ha][1][0],Sr*pr>Sr*Wr[ha][0][1]?Wr[ha][0][1]:pr)[0],Pa}ot?_t.invert=ot(_t):qe.invert&&(_t.invert=function(nr,pr){for(var Sr=At[+(pr<0)],Wr=Je[+(pr<0)],ha=0,ga=Sr.length;ha<ga;++ha){var Pa=Sr[ha];if(Pa[0][0]<=nr&&nr<Pa[1][0]&&Pa[0][1]<=pr&&pr<Pa[1][1]){var Ja=qe.invert(nr-qe(Wr[ha][1][0],0)[0],pr);return Ja[0]+=Wr[ha][1][0],Yn(_t(Ja[0],Ja[1]),[nr,pr])?Ja:null}}});var Pt=x.geoProjection(_t),er=Pt.stream;return Pt.stream=function(nr){var pr=Pt.rotate(),Sr=er(nr),Wr=(Pt.rotate([0,0]),er(nr));return Pt.rotate(pr),Sr.sphere=function(){x.geoStream(ht,Wr)},Sr},Pt.lobes=function(nr){return arguments.length?(ht=Yo(nr),Je=nr.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*f,Sr[0][1]*f],[Sr[1][0]*f,Sr[1][1]*f],[Sr[2][0]*f,Sr[2][1]*f]]})}),At=Je.map(function(pr){return pr.map(function(Sr){var Wr=qe(Sr[0][0],Sr[0][1])[0],ha=qe(Sr[2][0],Sr[2][1])[0],ga=qe(Sr[1][0],Sr[0][1])[1],Pa=qe(Sr[1][0],Sr[1][1])[1],Ja;return ga>Pa&&(Ja=ga,ga=Pa,Pa=Ja),[[Wr,ga],[ha,Pa]]})}),Pt):Je.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*y,Sr[0][1]*y],[Sr[1][0]*y,Sr[1][1]*y],[Sr[2][0]*y,Sr[2][1]*y]]})})},Je!=null&&Pt.lobes(Je),Pt}var Wl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zu(){return Nn(ze,Wl).scale(160.857)}var ml=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Bu(){return Nn(Os,ml).scale(152.63)}var El=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function qs(){return Nn(lt,El).scale(169.529)}var Jl=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Nu(){return Nn(lt,Jl).scale(169.529).rotate([20,0])}var Ic=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Xu(){return Nn(mn,Ic,Ie).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Th=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function bf(){return Nn(Qe,Th).scale(152.63).rotate([-20,0])}function Rs(qe,Je){return[3/u*qe*F(w*w/3-Je*Je),Je]}Rs.invert=function(qe,Je){return[u/3*qe/F(w*w/3-Je*Je),Je]};function Yc(){return x.geoProjection(Rs).scale(158.837)}function If(qe){function Je(ot,ht){if(M(M(ht)-S)<l)return[0,ht<0?-2:2];var At=p(ht),_t=c((1+At)/(1-At),qe/2),Pt=.5*(_t+1/_t)+r(ot*=qe);return[2*p(ot)/Pt,(_t-1/_t)/Pt]}return Je.invert=function(ot,ht){var At=M(ht);if(M(At-2)<l)return ot?null:[0,v(ht)*S];if(At>2)return null;ot/=2,ht/=2;var _t=ot*ot,Pt=ht*ht,er=2*ht/(1+_t+Pt);return er=c((1+er)/(1-er),1/qe),[t(2*ot,1-_t-Pt)/qe,L((er-1)/(er+1))]},Je}function Zl(){var qe=.5,Je=x.geoProjectionMutator(If),ot=Je(qe);return ot.spacing=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(124.75)}var yl=w/b;function oc(qe,Je){return[qe*(1+F(r(Je)))/2,Je/(r(Je/2)*r(qe/6))]}oc.invert=function(qe,Je){var ot=M(qe),ht=M(Je),At=l,_t=S;ht<yl?_t*=ht/yl:At+=6*z(yl/ht);for(var Pt=0;Pt<25;Pt++){var er=p(_t),nr=F(r(_t)),pr=p(_t/2),Sr=r(_t/2),Wr=p(At/6),ha=r(At/6),ga=.5*At*(1+nr)-ot,Pa=_t/(Sr*ha)-ht,Ja=nr?-.25*At*er/nr:0,di=.5*(1+nr),pi=(1+.5*_t*pr/Sr)/(Sr*ha),Ci=_t/Sr*(Wr/6)/(ha*ha),$i=Ja*Ci-pi*di,Bn=(ga*Ci-Pa*di)/$i,Sn=(Pa*Ja-ga*pi)/$i;if(_t-=Bn,At-=Sn,M(Bn)<l&&M(Sn)<l)break}return[qe<0?-At:At,Je<0?-_t:_t]};function _c(){return x.geoProjection(oc).scale(97.2672)}function Zs(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(.975534+ht*(-.119161+ot*-.0143059+ht*-.0547009)),Je*(1.00384+ot*(.0802894+ht*-.02855+ot*199025e-9)+ht*(.0998909+ht*-.0491032))]}Zs.invert=function(qe,Je){var ot=v(qe)*w,ht=Je/2,At=50;do{var _t=ot*ot,Pt=ht*ht,er=ot*ht,nr=ot*(.975534+Pt*(-.119161+_t*-.0143059+Pt*-.0547009))-qe,pr=ht*(1.00384+_t*(.0802894+Pt*-.02855+_t*199025e-9)+Pt*(.0998909+Pt*-.0491032))-Je,Sr=.975534-Pt*(.119161+3*_t*.0143059+Pt*.0547009),Wr=-er*(2*.119161+4*.0547009*Pt+2*.0143059*_t),ha=er*(2*.0802894+4*199025e-9*_t+2*-.02855*Pt),ga=1.00384+_t*(.0802894+199025e-9*_t)+Pt*(3*(.0998909-.02855*_t)-5*.0491032*Pt),Pa=Wr*ha-ga*Sr,Ja=(pr*Wr-nr*ga)/Pa,di=(nr*ha-pr*Sr)/Pa;ot-=Ja,ht-=di}while((M(Ja)>l||M(di)>l)&&--At>0);return At&&[ot,ht]};function _l(){return x.geoProjection(Zs).scale(139.98)}function Bs(qe,Je){return[p(qe)/r(Je),T(Je)*r(qe)]}Bs.invert=function(qe,Je){var ot=qe*qe,ht=Je*Je,At=ht+1,_t=ot+At,Pt=qe?m*F((_t-F(_t*_t-4*ot))/ot):1/F(At);return[L(qe*Pt),v(Je)*z(Pt)]};function $s(){return x.geoProjection(Bs).scale(144.049).clipAngle(90-.001)}function sc(qe){var Je=r(qe),ot=T(E+qe/2);function ht(At,_t){var Pt=_t-qe,er=M(Pt)<l?At*Je:M(er=E+_t/2)<l||M(M(er)-S)<l?0:At*Pt/i(T(er)/ot);return[er,Pt]}return ht.invert=function(At,_t){var Pt,er=_t+qe;return[M(_t)<l?At/Je:M(Pt=E+er/2)<l||M(M(Pt)-S)<l?0:At*i(T(Pt)/ot)/_t,er]},ht}function zl(){return nt(sc).parallel(40).scale(158.837)}function Yu(qe,Je){return[qe,1.25*i(T(E+.4*Je))]}Yu.invert=function(qe,Je){return[qe,2.5*e(o(.8*Je))-.625*w]};function Qs(){return x.geoProjection(Yu).scale(108.318)}function fp(qe){var Je=qe.length-1;function ot(ht,At){for(var _t=r(At),Pt=2/(1+_t*r(ht)),er=Pt*_t*p(ht),nr=Pt*p(At),pr=Je,Sr=qe[pr],Wr=Sr[0],ha=Sr[1],ga;--pr>=0;)Sr=qe[pr],Wr=Sr[0]+er*(ga=Wr)-nr*ha,ha=Sr[1]+er*ha+nr*ga;return Wr=er*(ga=Wr)-nr*ha,ha=er*ha+nr*ga,[Wr,ha]}return ot.invert=function(ht,At){var _t=20,Pt=ht,er=At;do{for(var nr=Je,pr=qe[nr],Sr=pr[0],Wr=pr[1],ha=0,ga=0,Pa;--nr>=0;)pr=qe[nr],ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=pr[0]+Pt*(Pa=Sr)-er*Wr,Wr=pr[1]+Pt*Wr+er*Pa;ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=Pt*(Pa=Sr)-er*Wr-ht,Wr=Pt*Wr+er*Pa-At;var Ja=ha*ha+ga*ga,di,pi;Pt-=di=(Sr*ha+Wr*ga)/Ja,er-=pi=(Wr*ha-Sr*ga)/Ja}while(M(di)+M(pi)>l*l&&--_t>0);if(_t){var Ci=F(Pt*Pt+er*er),$i=2*e(Ci*.5),Bn=p($i);return[t(Pt*Bn,Ci*r($i)),Ci?L(er*Bn/Ci):0]}},ot}var es=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Wh=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Ss=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],So=[[.9245,0],[0,0],[.01943,0]],hf=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Ku(){return Fl(es,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function cu(){return Fl(Wh,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Zf(){return Fl(Ss,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Rc(){return Fl(So,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function pf(){return Fl(hf,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Fl(qe,Je){var ot=x.geoProjection(fp(qe)).rotate(Je).clipAngle(90),ht=x.geoRotation(Je),At=ot.center;return delete ot.rotate,ot.center=function(_t){return arguments.length?At(ht(_t)):ht.invert(At())},ot}var lh=F(6),Xf=F(7);function Rf(qe,Je){var ot=L(7*p(Je)/(3*lh));return[lh*qe*(2*r(2*ot/3)-1)/Xf,9*p(ot/3)/Xf]}Rf.invert=function(qe,Je){var ot=3*L(Je*Xf/9);return[qe*Xf/(lh*(2*r(2*ot/3)-1)),L(p(ot)*3*lh/7)]};function Kc(){return x.geoProjection(Rf).scale(164.859)}function Yf(qe,Je){for(var ot=(1+m)*p(Je),ht=Je,At=0,_t;At<25&&(ht-=_t=(p(ht/2)+p(ht)-ot)/(.5*r(ht/2)+r(ht)),!(M(_t)<l));At++);return[qe*(1+2*r(ht)/r(ht/2))/(3*b),2*F(3)*p(ht/2)/F(2+b)]}Yf.invert=function(qe,Je){var ot=Je*F(2+b)/(2*F(3)),ht=2*L(ot);return[3*b*qe/(1+2*r(ht)/r(ht/2)),L((ot+p(ht))/(1+m))]};function uh(){return x.geoProjection(Yf).scale(188.209)}function Ju(qe,Je){for(var ot=F(6/(4+w)),ht=(1+w/4)*p(Je),At=Je/2,_t=0,Pt;_t<25&&(At-=Pt=(At/2+p(At)-ht)/(.5+r(At)),!(M(Pt)<l));_t++);return[ot*(.5+r(At))*qe/1.5,ot*At]}Ju.invert=function(qe,Je){var ot=F(6/(4+w)),ht=Je/ot;return M(M(ht)-S)<l&&(ht=ht<0?-S:S),[1.5*qe/(ot*(.5+r(ht))),L((ht/2+p(ht))/(1+w/4))]};function Df(){return x.geoProjection(Ju).scale(166.518)}function Dc(qe,Je){var ot=Je*Je,ht=ot*ot,At=ot*ht;return[qe*(.84719-.13063*ot+At*At*(-.04515+.05494*ot-.02326*ht+.00331*At)),Je*(1.01183+ht*ht*(-.02625+.01926*ot-.00396*ht))]}Dc.invert=function(qe,Je){var ot=Je,ht=25,At,_t,Pt,er;do _t=ot*ot,Pt=_t*_t,ot-=At=(ot*(1.01183+Pt*Pt*(-.02625+.01926*_t-.00396*Pt))-Je)/(1.01183+Pt*Pt*(9*-.02625+11*.01926*_t+13*-.00396*Pt));while(M(At)>_&&--ht>0);return _t=ot*ot,Pt=_t*_t,er=_t*Pt,[qe/(.84719-.13063*_t+er*er*(-.04515+.05494*_t-.02326*Pt+.00331*er)),ot]};function Jc(){return x.geoProjection(Dc).scale(175.295)}function Eu(qe,Je){return[qe*(1+r(Je))/2,2*(Je-T(Je/2))]}Eu.invert=function(qe,Je){for(var ot=Je/2,ht=0,At=1/0;ht<10&&M(At)>l;++ht){var _t=r(Je/2);Je-=At=(Je-T(Je/2)-ot)/(1-.5/(_t*_t))}return[2*qe/(1+r(Je)),Je]};function wf(){return x.geoProjection(Eu).scale(152.63)}var zc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Us(){return Nn(fe(1/0),zc).rotate([20,0]).scale(152.63)}function Kf(qe,Je){var ot=p(Je),ht=r(Je),At=v(qe);if(qe===0||M(Je)===S)return[0,Je];if(Je===0)return[qe,0];if(M(qe)===S)return[qe*ht,S*ot];var _t=w/(2*qe)-2*qe/w,Pt=2*Je/w,er=(1-Pt*Pt)/(ot-Pt),nr=_t*_t,pr=er*er,Sr=1+nr/pr,Wr=1+pr/nr,ha=(_t*ot/er-_t/2)/Sr,ga=(pr*ot/nr+er/2)/Wr,Pa=ha*ha+ht*ht/Sr,Ja=ga*ga-(pr*ot*ot/nr+er*ot-1)/Wr;return[S*(ha+F(Pa)*At),S*(ga+F(Ja<0?0:Ja)*v(-Je*_t)*At)]}Kf.invert=function(qe,Je){qe/=S,Je/=S;var ot=qe*qe,ht=Je*Je,At=ot+ht,_t=w*w;return[qe?(At-1+F((1-At)*(1-At)+4*ot))/(2*qe)*S:0,Be(function(Pt){return At*(w*p(Pt)-2*Pt)*w+4*Pt*Pt*(Je-p(Pt))+2*w*Pt-_t*Je},0)]};function Zh(){return x.geoProjection(Kf).scale(127.267)}var ch=1.0148,df=.23185,Ah=-.14499,ku=.02406,fh=ch,ru=5*df,Cu=7*Ah,xc=9*ku,kl=1.790857183;function Fc(qe,Je){var ot=Je*Je;return[qe,Je*(ch+ot*ot*(df+ot*(Ah+ku*ot)))]}Fc.invert=function(qe,Je){Je>kl?Je=kl:Je<-kl&&(Je=-kl);var ot=Je,ht;do{var At=ot*ot;ot-=ht=(ot*(ch+At*At*(df+At*(Ah+ku*At)))-Je)/(fh+At*At*(ru+At*(Cu+xc*At)))}while(M(ht)>l);return[qe,ot]};function $u(){return x.geoProjection(Fc).scale(139.319)}function vu(qe,Je){if(M(Je)<l)return[qe,0];var ot=T(Je),ht=qe*p(Je);return[p(ht)/ot,Je+(1-r(ht))/ot]}vu.invert=function(qe,Je){if(M(Je)<l)return[qe,0];var ot=qe*qe+Je*Je,ht=Je*.5,At=10,_t;do{var Pt=T(ht),er=1/r(ht),nr=ot-2*Je*ht+ht*ht;ht-=_t=(Pt*nr+2*(ht-Je))/(2+nr*er*er+2*(ht-Je)*Pt)}while(M(_t)>l&&--At>0);return Pt=T(ht),[(M(Je)<M(ht+1/Pt)?L(qe*Pt):v(Je)*v(qe)*(z(M(qe*Pt))+S))/p(ht),ht]};function xl(){return x.geoProjection(vu).scale(103.74)}function hh(qe,Je){var ot=bc(qe[1],qe[0]),ht=bc(Je[1],Je[0]),At=hp(ot,ht),_t=lc(ot)/lc(ht);return Uu([1,0,qe[0][0],0,1,qe[0][1]],Uu([_t,0,0,0,_t,0],Uu([r(At),p(At),0,-p(At),r(At),0],[1,0,-Je[0][0],0,1,-Je[0][1]])))}function Sh(qe){var Je=1/(qe[0]*qe[4]-qe[1]*qe[3]);return[Je*qe[4],-Je*qe[1],Je*(qe[1]*qe[5]-qe[2]*qe[4]),-Je*qe[3],Je*qe[0],Je*(qe[2]*qe[3]-qe[0]*qe[5])]}function Uu(qe,Je){return[qe[0]*Je[0]+qe[1]*Je[3],qe[0]*Je[1]+qe[1]*Je[4],qe[0]*Je[2]+qe[1]*Je[5]+qe[2],qe[3]*Je[0]+qe[4]*Je[3],qe[3]*Je[1]+qe[4]*Je[4],qe[3]*Je[2]+qe[4]*Je[5]+qe[5]]}function bc(qe,Je){return[qe[0]-Je[0],qe[1]-Je[1]]}function lc(qe){return F(qe[0]*qe[0]+qe[1]*qe[1])}function hp(qe,Je){return t(qe[0]*Je[1]-qe[1]*Je[0],qe[0]*Je[0]+qe[1]*Je[1])}function vf(qe,Je,ot){ht(qe,{transform:null});function ht(pr,Sr){if(pr.edges=au(pr.face),Sr.face){var Wr=pr.shared=zf(pr.face,Sr.face),ha=hh(Wr.map(Sr.project),Wr.map(pr.project));pr.transform=Sr.transform?Uu(Sr.transform,ha):ha;for(var ga=Sr.edges,Pa=0,Ja=ga.length;Pa<Ja;++Pa)Lu(Wr[0],ga[Pa][1])&&Lu(Wr[1],ga[Pa][0])&&(ga[Pa]=pr),Lu(Wr[0],ga[Pa][0])&&Lu(Wr[1],ga[Pa][1])&&(ga[Pa]=pr);for(ga=pr.edges,Pa=0,Ja=ga.length;Pa<Ja;++Pa)Lu(Wr[0],ga[Pa][0])&&Lu(Wr[1],ga[Pa][1])&&(ga[Pa]=Sr),Lu(Wr[0],ga[Pa][1])&&Lu(Wr[1],ga[Pa][0])&&(ga[Pa]=Sr)}else pr.transform=Sr.transform;return pr.children&&pr.children.forEach(function(di){ht(di,pr)}),pr}function At(pr,Sr){var Wr=Je(pr,Sr),ha=Wr.project([pr*y,Sr*y]),ga;return(ga=Wr.transform)?[ga[0]*ha[0]+ga[1]*ha[1]+ga[2],-(ga[3]*ha[0]+ga[4]*ha[1]+ga[5])]:(ha[1]=-ha[1],ha)}$c(qe)&&(At.invert=function(pr,Sr){var Wr=_t(qe,[pr,-Sr]);return Wr&&(Wr[0]*=f,Wr[1]*=f,Wr)});function _t(pr,Sr){var Wr=pr.project.invert,ha=pr.transform,ga=Sr;if(ha&&(ha=Sh(ha),ga=[ha[0]*ga[0]+ha[1]*ga[1]+ha[2],ha[3]*ga[0]+ha[4]*ga[1]+ha[5]]),Wr&&pr===Pt(Pa=Wr(ga)))return Pa;for(var Pa,Ja=pr.children,di=0,pi=Ja&&Ja.length;di<pi;++di)if(Pa=_t(Ja[di],Sr))return Pa}function Pt(pr){return Je(pr[0]*f,pr[1]*f)}var er=x.geoProjection(At),nr=er.stream;return er.stream=function(pr){var Sr=er.rotate(),Wr=nr(pr),ha=(er.rotate([0,0]),nr(pr));return er.rotate(Sr),Wr.sphere=function(){ha.polygonStart(),ha.lineStart(),Tf(ha,qe),ha.lineEnd(),ha.polygonEnd()},Wr},er.angle(ot==null?-30:ot*y)}function Tf(qe,Je,ot){var ht,At=Je.edges,_t=At.length,Pt,er={type:"MultiPoint",coordinates:Je.face},nr=Je.face.filter(function(Ja){return M(Ja[1])!==90}),pr=x.geoBounds({type:"MultiPoint",coordinates:nr}),Sr=!1,Wr=-1,ha=pr[1][0]-pr[0][0],ga=ha===180||ha===360?[(pr[0][0]+pr[1][0])/2,(pr[0][1]+pr[1][1])/2]:x.geoCentroid(er);if(ot)for(;++Wr<_t&&At[Wr]!==ot;);++Wr;for(var Pa=0;Pa<_t;++Pa)Pt=At[(Pa+Wr)%_t],Array.isArray(Pt)?(Sr||(qe.point((ht=x.geoInterpolate(Pt[0],ga)(l))[0],ht[1]),Sr=!0),qe.point((ht=x.geoInterpolate(Pt[1],ga)(l))[0],ht[1])):(Sr=!1,Pt!==ot&&Tf(qe,Pt,Je))}function Lu(qe,Je){return qe&&Je&&qe[0]===Je[0]&&qe[1]===Je[1]}function zf(qe,Je){for(var ot,ht,At=qe.length,_t=null,Pt=0;Pt<At;++Pt){ot=qe[Pt];for(var er=Je.length;--er>=0;)if(ht=Je[er],ot[0]===ht[0]&&ot[1]===ht[1]){if(_t)return[_t,ot];_t=ot}}}function au(qe){for(var Je=qe.length,ot=[],ht=qe[Je-1],At=0;At<Je;++At)ot.push([ht,ht=qe[At]]);return ot}function $c(qe){return qe.project.invert||qe.children&&qe.children.some($c)}var Mh=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],Ff=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map(function(qe){return qe.map(function(Je){return Mh[Je]})});function il(qe){qe=qe||function(ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:ot});return x.geoGnomonic().scale(1).translate([0,0]).rotate([-ht[0],-ht[1]])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:ot<w/2?ht<0?3:1:ht<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var mu=2/F(3);function gu(qe,Je){var ot=Ve(qe,Je);return[ot[0]*mu,ot[1]]}gu.invert=function(qe,Je){return Ve.invert(qe/mu,Je)};function Jf(qe){qe=qe||function(ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:ot});return x.geoProjection(gu).translate([0,0]).scale(1).rotate(ht[1]>0?[-ht[0],0]:[180-ht[0],180])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:ot<w/2?ht<0?3:1:ht<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function el(qe){qe=qe||function(Pt){var er=Pt.length===6?x.geoCentroid({type:"MultiPoint",coordinates:Pt}):Pt[0];return x.geoGnomonic().scale(1).translate([0,0]).rotate([-er[0],-er[1]])};var Je=Ff.map(function(Pt){for(var er=Pt.map(Af),nr=er.length,pr=er[nr-1],Sr,Wr=[],ha=0;ha<nr;++ha)Sr=er[ha],Wr.push(ju([pr[0]*.9486832980505138+Sr[0]*.31622776601683794,pr[1]*.9486832980505138+Sr[1]*.31622776601683794,pr[2]*.9486832980505138+Sr[2]*.31622776601683794]),ju([Sr[0]*.9486832980505138+pr[0]*.31622776601683794,Sr[1]*.9486832980505138+pr[1]*.31622776601683794,Sr[2]*.9486832980505138+pr[2]*.31622776601683794])),pr=Sr;return Wr}),ot=[],ht=[-1,0,0,1,0,1,4,5];Je.forEach(function(Pt,er){for(var nr=Ff[er],pr=nr.length,Sr=ot[er]=[],Wr=0;Wr<pr;++Wr)Je.push([nr[Wr],Pt[(Wr*2+2)%(2*pr)],Pt[(Wr*2+1)%(2*pr)]]),ht.push(er),Sr.push(wc(Af(Pt[(Wr*2+2)%(2*pr)]),Af(Pt[(Wr*2+1)%(2*pr)])))});var At=Je.map(function(Pt){return{project:qe(Pt),face:Pt}});ht.forEach(function(Pt,er){var nr=At[Pt];nr&&(nr.children||(nr.children=[])).push(At[er])});function _t(Pt,er){var nr=r(er),pr=[nr*r(Pt),nr*p(Pt),p(er)],Sr=Pt<-w/2?er<0?6:4:Pt<0?er<0?2:0:Pt<w/2?er<0?3:1:er<0?7:5,Wr=ot[Sr];return At[mf(Wr[0],pr)<0?8+3*Sr:mf(Wr[1],pr)<0?8+3*Sr+1:mf(Wr[2],pr)<0?8+3*Sr+2:Sr]}return vf(At[0],_t).angle(-30).scale(110.625).center([0,45])}function mf(qe,Je){for(var ot=0,ht=qe.length,At=0;ot<ht;++ot)At+=qe[ot]*Je[ot];return At}function wc(qe,Je){return[qe[1]*Je[2]-qe[2]*Je[1],qe[2]*Je[0]-qe[0]*Je[2],qe[0]*Je[1]-qe[1]*Je[0]]}function ju(qe){return[t(qe[1],qe[0])*y,L(n(-1,s(1,qe[2])))*y]}function Af(qe){var Je=qe[0]*f,ot=qe[1]*f,ht=r(ot);return[ht*r(Je),ht*p(Je),p(ot)]}function uc(){}function Qc(qe){if((ot=qe.length)<4)return!1;for(var Je=0,ot,ht=qe[ot-1][1]*qe[0][0]-qe[ot-1][0]*qe[0][1];++Je<ot;)ht+=qe[Je-1][1]*qe[Je][0]-qe[Je-1][0]*qe[Je][1];return ht<=0}function $f(qe,Je){for(var ot=Je[0],ht=Je[1],At=!1,_t=0,Pt=qe.length,er=Pt-1;_t<Pt;er=_t++){var nr=qe[_t],pr=nr[0],Sr=nr[1],Wr=qe[er],ha=Wr[0],ga=Wr[1];Sr>ht^ga>ht&&ot<(ha-pr)*(ht-Sr)/(ga-Sr)+pr&&(At=!At)}return At}function Vl(qe,Je){var ot=Je.stream,ht;if(!ot)throw new Error("invalid projection");switch(qe&&qe.type){case"Feature":ht=Vu;break;case"FeatureCollection":ht=Qf;break;default:ht=cc;break}return ht(qe,ot)}function Qf(qe,Je){return{type:"FeatureCollection",features:qe.features.map(function(ot){return Vu(ot,Je)})}}function Vu(qe,Je){return{type:"Feature",id:qe.id,properties:qe.properties,geometry:cc(qe.geometry,Je)}}function Tc(qe,Je){return{type:"GeometryCollection",geometries:qe.geometries.map(function(ot){return cc(ot,Je)})}}function cc(qe,Je){if(!qe)return null;if(qe.type==="GeometryCollection")return Tc(qe,Je);var ot;switch(qe.type){case"Point":ot=fc;break;case"MultiPoint":ot=fc;break;case"LineString":ot=Oc;break;case"MultiLineString":ot=Oc;break;case"Polygon":ot=Qu;break;case"MultiPolygon":ot=Qu;break;case"Sphere":ot=Qu;break;default:return null}return x.geoStream(qe,Je(ot)),ot.result()}var Cl=[],iu=[],fc={point:function(qe,Je){Cl.push([qe,Je])},result:function(){var qe=Cl.length?Cl.length<2?{type:"Point",coordinates:Cl[0]}:{type:"MultiPoint",coordinates:Cl}:null;return Cl=[],qe}},Oc={lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){Cl.length&&(iu.push(Cl),Cl=[])},result:function(){var qe=iu.length?iu.length<2?{type:"LineString",coordinates:iu[0]}:{type:"MultiLineString",coordinates:iu}:null;return iu=[],qe}},Qu={polygonStart:uc,lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){var qe=Cl.length;if(qe){do Cl.push(Cl[0].slice());while(++qe<4);iu.push(Cl),Cl=[]}},polygonEnd:uc,result:function(){if(!iu.length)return null;var qe=[],Je=[];return iu.forEach(function(ot){Qc(ot)?qe.push([ot]):Je.push(ot)}),Je.forEach(function(ot){var ht=ot[0];qe.some(function(At){if($f(At[0],ht))return At.push(ot),!0})||qe.push([ot])}),iu=[],qe.length?qe.length>1?{type:"MultiPolygon",coordinates:qe}:{type:"Polygon",coordinates:qe[0]}:null}};function ef(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=M(ht)<S,Pt=qe(_t?ht:ht>0?ht-w:ht+w,At),er=(Pt[0]-Pt[1])*m,nr=(Pt[0]+Pt[1])*m;if(_t)return[er,nr];var pr=Je*m,Sr=er>0^nr>0?-1:1;return[Sr*er-v(nr)*pr,Sr*nr-v(er)*pr]}return qe.invert&&(ot.invert=function(ht,At){var _t=(ht+At)*m,Pt=(At-ht)*m,er=M(_t)<.5*Je&&M(Pt)<.5*Je;if(!er){var nr=Je*m,pr=_t>0^Pt>0?-1:1,Sr=-pr*ht+(Pt>0?1:-1)*nr,Wr=-pr*At+(_t>0?1:-1)*nr;_t=(-Sr-Wr)*m,Pt=(Sr-Wr)*m}var ha=qe.invert(_t,Pt);return er||(ha[0]+=_t>0?w:-w),ha}),x.geoProjection(ot).rotate([-90,-90,45]).clipAngle(180-.001)}function Zt(){return ef(da).scale(176.423)}function fr(){return ef($n).scale(111.48)}function Yr(qe,Je){if(!(0<=(Je=+Je)&&Je<=20))throw new Error("invalid digits");function ot(pr){var Sr=pr.length,Wr=2,ha=new Array(Sr);for(ha[0]=+pr[0].toFixed(Je),ha[1]=+pr[1].toFixed(Je);Wr<Sr;)ha[Wr]=pr[Wr],++Wr;return ha}function ht(pr){return pr.map(ot)}function At(pr){for(var Sr=ot(pr[0]),Wr=[Sr],ha=1;ha<pr.length;ha++){var ga=ot(pr[ha]);(ga.length>2||ga[0]!=Sr[0]||ga[1]!=Sr[1])&&(Wr.push(ga),Sr=ga)}return Wr.length===1&&pr.length>1&&Wr.push(ot(pr[pr.length-1])),Wr}function _t(pr){return pr.map(At)}function Pt(pr){if(pr==null)return pr;var Sr;switch(pr.type){case"GeometryCollection":Sr={type:"GeometryCollection",geometries:pr.geometries.map(Pt)};break;case"Point":Sr={type:"Point",coordinates:ot(pr.coordinates)};break;case"MultiPoint":Sr={type:pr.type,coordinates:ht(pr.coordinates)};break;case"LineString":Sr={type:pr.type,coordinates:At(pr.coordinates)};break;case"MultiLineString":case"Polygon":Sr={type:pr.type,coordinates:_t(pr.coordinates)};break;case"MultiPolygon":Sr={type:"MultiPolygon",coordinates:pr.coordinates.map(_t)};break;default:return pr}return pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}function er(pr){var Sr={type:"Feature",properties:pr.properties,geometry:Pt(pr.geometry)};return pr.id!=null&&(Sr.id=pr.id),pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}if(qe!=null)switch(qe.type){case"Feature":return er(qe);case"FeatureCollection":{var nr={type:"FeatureCollection",features:qe.features.map(er)};return qe.bbox!=null&&(nr.bbox=qe.bbox),nr}default:return Pt(qe)}return qe}function qr(qe){var Je=p(qe);function ot(ht,At){var _t=Je?T(ht*Je/2)/Je:ht/2;if(!At)return[2*_t,-qe];var Pt=2*e(_t*p(At)),er=1/T(At);return[p(Pt)*er,At+(1-r(Pt))*er-qe]}return ot.invert=function(ht,At){if(M(At+=qe)<l)return[Je?2*e(Je*ht/2)/Je:ht,0];var _t=ht*ht+At*At,Pt=0,er=10,nr;do{var pr=T(Pt),Sr=1/r(Pt),Wr=_t-2*At*Pt+Pt*Pt;Pt-=nr=(pr*Wr+2*(Pt-At))/(2+Wr*Sr*Sr+2*(Pt-At)*pr)}while(M(nr)>l&&--er>0);var ha=ht*(pr=T(Pt)),ga=T(M(At)<M(Pt+1/pr)?L(ha)*.5:z(ha)*.5+w/4)/p(Pt);return[Je?2*e(Je*ga)/Je:2*ga,Pt]},ot}function ba(){return nt(qr).scale(131.215)}var Ka=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];Ka.forEach(function(qe){qe[1]*=1.0144});function oi(qe,Je){var ot=s(18,M(Je)*36/w),ht=a(ot),At=ot-ht,_t=(Wr=Ka[ht])[0],Pt=Wr[1],er=(Wr=Ka[++ht])[0],nr=Wr[1],pr=(Wr=Ka[s(19,++ht)])[0],Sr=Wr[1],Wr;return[qe*(er+At*(pr-_t)/2+At*At*(pr-2*er+_t)/2),(Je>0?S:-S)*(nr+At*(Sr-Pt)/2+At*At*(Sr-2*nr+Pt)/2)]}oi.invert=function(qe,Je){var ot=Je/S,ht=ot*90,At=s(18,M(ht/5)),_t=n(0,a(At));do{var Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],pr=nr-Pt,Sr=nr-2*er+Pt,Wr=2*(M(ot)-er)/pr,ha=Sr/pr,ga=Wr*(1-ha*Wr*(1-2*ha*Wr));if(ga>=0||_t===1){ht=(Je>=0?5:-5)*(ga+At);var Pa=50,Ja;do At=s(18,M(ht)/5),_t=a(At),ga=At-_t,Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],ht-=(Ja=(Je>=0?S:-S)*(er+ga*(nr-Pt)/2+ga*ga*(nr-2*er+Pt)/2)-Je)*y;while(M(Ja)>_&&--Pa>0);break}}while(--_t>=0);var di=Ka[_t][0],pi=Ka[_t+1][0],Ci=Ka[s(19,_t+2)][0];return[qe/(pi+ga*(Ci-di)/2+ga*ga*(Ci-2*pi+di)/2),ht*f]};function yi(){return x.geoProjection(oi).scale(152.63)}function ki(qe){function Je(ot,ht){var At=r(ht),_t=(qe-1)/(qe-At*r(ot));return[_t*At*p(ot),_t*p(ht)]}return Je.invert=function(ot,ht){var At=ot*ot+ht*ht,_t=F(At),Pt=(qe-F(1-At*(qe+1)/(qe-1)))/((qe-1)/_t+_t/(qe-1));return[t(ot*Pt,_t*F(1-Pt*Pt)),_t?L(ht*Pt/_t):0]},Je}function Bi(qe,Je){var ot=ki(qe);if(!Je)return ot;var ht=r(Je),At=p(Je);function _t(Pt,er){var nr=ot(Pt,er),pr=nr[1],Sr=pr*At/(qe-1)+ht;return[nr[0]*ht/Sr,pr/Sr]}return _t.invert=function(Pt,er){var nr=(qe-1)/(qe-1-er*At);return ot.invert(nr*Pt,nr*er*ht)},_t}function li(){var qe=2,Je=0,ot=x.geoProjectionMutator(Bi),ht=ot(qe,Je);return ht.distance=function(At){return arguments.length?ot(qe=+At,Je):qe},ht.tilt=function(At){return arguments.length?ot(qe,Je=At*f):Je*y},ht.scale(432.147).clipAngle(z(1/qe)*y-1e-6)}var _i=1e-4,vi=1e4,ti=-180,rn=ti+_i,Kn=180,Wn=Kn-_i,Jn=-90,no=Jn+_i,en=90,Ri=en-_i;function co(qe){return qe.length>0}function Wo(qe){return Math.floor(qe*vi)/vi}function bs(qe){return qe===Jn||qe===en?[0,qe]:[ti,Wo(qe)]}function Xs(qe){var Je=qe[0],ot=qe[1],ht=!1;return Je<=rn?(Je=ti,ht=!0):Je>=Wn&&(Je=Kn,ht=!0),ot<=no?(ot=Jn,ht=!0):ot>=Ri&&(ot=en,ht=!0),ht?[Je,ot]:qe}function Ms(qe){return qe.map(Xs)}function Hs(qe,Je,ot){for(var ht=0,At=qe.length;ht<At;++ht){var _t=qe[ht].slice();ot.push({index:-1,polygon:Je,ring:_t});for(var Pt=0,er=_t.length;Pt<er;++Pt){var nr=_t[Pt],pr=nr[0],Sr=nr[1];if(pr<=rn||pr>=Wn||Sr<=no||Sr>=Ri){_t[Pt]=Xs(nr);for(var Wr=Pt+1;Wr<er;++Wr){var ha=_t[Wr],ga=ha[0],Pa=ha[1];if(ga>rn&&ga<Wn&&Pa>no&&Pa<Ri)break}if(Wr===Pt+1)continue;if(Pt){var Ja={index:-1,polygon:Je,ring:_t.slice(0,Pt+1)};Ja.ring[Ja.ring.length-1]=bs(Sr),ot[ot.length-1]=Ja}else ot.pop();if(Wr>=er)break;ot.push({index:-1,polygon:Je,ring:_t=_t.slice(Wr-1)}),_t[0]=bs(_t[0][1]),Pt=-1,er=_t.length}}}}function vs(qe){var Je,ot=qe.length,ht={},At={},_t,Pt,er,nr,pr;for(Je=0;Je<ot;++Je){if(_t=qe[Je],Pt=_t.ring[0],nr=_t.ring[_t.ring.length-1],Pt[0]===nr[0]&&Pt[1]===nr[1]){_t.polygon.push(_t.ring),qe[Je]=null;continue}_t.index=Je,ht[Pt]=At[nr]=_t}for(Je=0;Je<ot;++Je)if(_t=qe[Je],_t){if(Pt=_t.ring[0],nr=_t.ring[_t.ring.length-1],er=At[Pt],pr=ht[nr],delete ht[Pt],delete At[nr],Pt[0]===nr[0]&&Pt[1]===nr[1]){_t.polygon.push(_t.ring);continue}er?(delete At[Pt],delete ht[er.ring[0]],er.ring.pop(),qe[er.index]=null,_t={index:-1,polygon:er.polygon,ring:er.ring.concat(_t.ring)},er===pr?_t.polygon.push(_t.ring):(_t.index=ot++,qe.push(ht[_t.ring[0]]=At[_t.ring[_t.ring.length-1]]=_t))):pr?(delete ht[nr],delete At[pr.ring[pr.ring.length-1]],_t.ring.pop(),_t={index:ot++,polygon:pr.polygon,ring:_t.ring.concat(pr.ring)},qe[pr.index]=null,qe.push(ht[_t.ring[0]]=At[_t.ring[_t.ring.length-1]]=_t)):(_t.ring.push(_t.ring[0]),_t.polygon.push(_t.ring))}}function Il(qe){var Je={type:"Feature",geometry:fl(qe.geometry)};return qe.id!=null&&(Je.id=qe.id),qe.bbox!=null&&(Je.bbox=qe.bbox),qe.properties!=null&&(Je.properties=qe.properties),Je}function fl(qe){if(qe==null)return qe;var Je,ot,ht,At;switch(qe.type){case"GeometryCollection":Je={type:"GeometryCollection",geometries:qe.geometries.map(fl)};break;case"Point":Je={type:"Point",coordinates:Xs(qe.coordinates)};break;case"MultiPoint":case"LineString":Je={type:qe.type,coordinates:Ms(qe.coordinates)};break;case"MultiLineString":Je={type:"MultiLineString",coordinates:qe.coordinates.map(Ms)};break;case"Polygon":{var _t=[];Hs(qe.coordinates,_t,ot=[]),vs(ot),Je={type:"Polygon",coordinates:_t};break}case"MultiPolygon":{ot=[],ht=-1,At=qe.coordinates.length;for(var Pt=new Array(At);++ht<At;)Hs(qe.coordinates[ht],Pt[ht]=[],ot);vs(ot),Je={type:"MultiPolygon",coordinates:Pt.filter(co)};break}default:return qe}return qe.bbox!=null&&(Je.bbox=qe.bbox),Je}function tl(qe){if(qe==null)return qe;switch(qe.type){case"Feature":return Il(qe);case"FeatureCollection":{var Je={type:"FeatureCollection",features:qe.features.map(Il)};return qe.bbox!=null&&(Je.bbox=qe.bbox),Je}default:return fl(qe)}}function Ln(qe,Je){var ot=T(Je/2),ht=p(E*ot);return[qe*(.74482-.34588*ht*ht),1.70711*ot]}Ln.invert=function(qe,Je){var ot=Je/1.70711,ht=p(E*ot);return[qe/(.74482-.34588*ht*ht),2*e(ot)]};function Ao(){return x.geoProjection(Ln).scale(146.153)}function js(qe,Je,ot){var ht=x.geoInterpolate(Je,ot),At=ht(.5),_t=x.geoRotation([-At[0],-At[1]])(Je),Pt=ht.distance/2,er=-L(p(_t[1]*f)/p(Pt)),nr=[-At[0],-At[1],-(_t[0]>0?w-er:er)*y],pr=x.geoProjection(qe(Pt)).rotate(nr),Sr=x.geoRotation(nr),Wr=pr.center;return delete pr.rotate,pr.center=function(ha){return arguments.length?Wr(Sr(ha)):Sr.invert(Wr())},pr.clipAngle(90)}function Ts(qe){var Je=r(qe);function ot(ht,At){var _t=x.geoGnomonicRaw(ht,At);return _t[0]*=Je,_t}return ot.invert=function(ht,At){return x.geoGnomonicRaw.invert(ht/Je,At)},ot}function nu(){return Pu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Pu(qe,Je){return js(Ts,qe,Je)}function ec(qe){if(!(qe*=2))return x.geoAzimuthalEquidistantRaw;var Je=-qe/2,ot=-Je,ht=qe*qe,At=T(ot),_t=.5/p(ot);function Pt(er,nr){var pr=z(r(nr)*r(er-Je)),Sr=z(r(nr)*r(er-ot)),Wr=nr<0?-1:1;return pr*=pr,Sr*=Sr,[(pr-Sr)/(2*qe),Wr*F(4*ht*Sr-(ht-pr+Sr)*(ht-pr+Sr))/(2*qe)]}return Pt.invert=function(er,nr){var pr=nr*nr,Sr=r(F(pr+(ha=er+Je)*ha)),Wr=r(F(pr+(ha=er+ot)*ha)),ha,ga;return[t(ga=Sr-Wr,ha=(Sr+Wr)*At),(nr<0?-1:1)*z(F(ha*ha+ga*ga)*_t)]},Pt}function tf(){return yu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function yu(qe,Je){return js(ec,qe,Je)}function Bc(qe,Je){if(M(Je)<l)return[qe,0];var ot=M(Je/S),ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,v(Je)*w*T(ht/2)];var At=r(ht),_t=M(w/qe-qe/w)/2,Pt=_t*_t,er=At/(ot+At-1),nr=er*(2/ot-1),pr=nr*nr,Sr=pr+Pt,Wr=er-pr,ha=Pt+er;return[v(qe)*w*(_t*Wr+F(Pt*Wr*Wr-Sr*(er*er-pr)))/Sr,v(Je)*w*(nr*ha-_t*F((Pt+1)*Sr-ha*ha))/Sr]}Bc.invert=function(qe,Je){if(M(Je)<l)return[qe,0];if(M(qe)<l)return[0,S*p(2*e(Je/w))];var ot=(qe/=w)*qe,ht=(Je/=w)*Je,At=ot+ht,_t=At*At,Pt=-M(Je)*(1+At),er=Pt-2*ht+ot,nr=-2*Pt+1+2*ht+_t,pr=ht/nr+(2*er*er*er/(nr*nr*nr)-9*Pt*er/(nr*nr))/27,Sr=(Pt-er*er/(3*nr))/nr,Wr=2*F(-Sr/3),ha=z(3*pr/(Sr*Wr))/3;return[w*(At-1+F(1+2*(ot-ht)+_t))/(2*qe),v(Je)*w*(-Wr*r(ha+w/3)-er/(3*nr))]};function Iu(){return x.geoProjection(Bc).scale(79.4183)}function Ac(qe,Je){if(M(Je)<l)return[qe,0];var ot=M(Je/S),ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,v(Je)*w*T(ht/2)];var At=r(ht),_t=M(w/qe-qe/w)/2,Pt=_t*_t,er=At*(F(1+Pt)-_t*At)/(1+Pt*ot*ot);return[v(qe)*w*er,v(Je)*w*F(1-er*(2*_t+er))]}Ac.invert=function(qe,Je){if(!qe)return[0,S*p(2*e(Je/w))];var ot=M(qe/w),ht=(1-ot*ot-(Je/=w)*Je)/(2*ot),At=ht*ht,_t=F(At+1);return[v(qe)*w*(_t-ht),v(Je)*S*p(2*t(F((1-2*ht*ot)*(ht+_t)-ot),F(_t+ht+ot)))]};function ro(){return x.geoProjection(Ac).scale(79.4183)}function Po(qe,Je){if(M(Je)<l)return[qe,0];var ot=Je/S,ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,w*T(ht/2)];var At=(w/qe-qe/w)/2,_t=ot/(1+r(ht));return[w*(v(qe)*F(At*At+1-_t*_t)-At),w*_t]}Po.invert=function(qe,Je){if(!Je)return[qe,0];var ot=Je/w,ht=(w*w*(1-ot*ot)-qe*qe)/(2*w*qe);return[qe?w*(v(qe)*F(ht*ht+1)-ht):0,S*p(2*e(ot))]};function Nc(){return x.geoProjection(Po).scale(79.4183)}function hc(qe,Je){if(!Je)return[qe,0];var ot=M(Je);if(!qe||ot===S)return[0,Je];var ht=ot/S,At=ht*ht,_t=(8*ht-At*(At+2)-5)/(2*At*(ht-1)),Pt=_t*_t,er=ht*_t,nr=At+Pt+2*er,pr=ht+3*_t,Sr=qe/S,Wr=Sr+1/Sr,ha=v(M(qe)-S)*F(Wr*Wr-4),ga=ha*ha,Pa=nr*(At+Pt*ga-1)+(1-At)*(At*(pr*pr+4*Pt)+12*er*Pt+4*Pt*Pt),Ja=(ha*(nr+Pt-1)+2*F(Pa))/(4*nr+ga);return[v(qe)*S*Ja,v(Je)*S*F(1+ha*M(Ja)-Ja*Ja)]}hc.invert=function(qe,Je){var ot;if(!qe||!Je)return[qe,Je];Je/=w;var ht=v(qe)*qe/S,At=(ht*ht-1+4*Je*Je)/M(ht),_t=At*At,Pt=2*Je,er=50;do{var nr=Pt*Pt,pr=(8*Pt-nr*(nr+2)-5)/(2*nr*(Pt-1)),Sr=(3*Pt-nr*Pt-10)/(2*nr*Pt),Wr=pr*pr,ha=Pt*pr,ga=Pt+pr,Pa=ga*ga,Ja=Pt+3*pr,di=Pa*(nr+Wr*_t-1)+(1-nr)*(nr*(Ja*Ja+4*Wr)+Wr*(12*ha+4*Wr)),pi=-2*ga*(4*ha*Wr+(1-4*nr+3*nr*nr)*(1+Sr)+Wr*(-6+14*nr-_t+(-8+8*nr-2*_t)*Sr)+ha*(-8+12*nr+(-10+10*nr-_t)*Sr)),Ci=F(di),$i=At*(Pa+Wr-1)+2*Ci-ht*(4*Pa+_t),Bn=At*(2*pr*Sr+2*ga*(1+Sr))+pi/Ci-8*ga*(At*(-1+Wr+Pa)+2*Ci)*(1+Sr)/(_t+4*Pa);Pt-=ot=$i/Bn}while(ot>l&&--er>0);return[v(qe)*(F(At*At+4)+At)*w/4,S*Pt]};function pc(){return x.geoProjection(hc).scale(127.16)}function Oe(qe,Je,ot,ht,At){function _t(Pt,er){var nr=ot*p(ht*er),pr=F(1-nr*nr),Sr=F(2/(1+pr*r(Pt*=At)));return[qe*pr*Sr*p(Pt),Je*nr*Sr]}return _t.invert=function(Pt,er){var nr=Pt/qe,pr=er/Je,Sr=F(nr*nr+pr*pr),Wr=2*L(Sr/2);return[t(Pt*T(Wr),qe*Sr)/At,Sr&&L(er*p(Wr)/(Je*ot*Sr))/ht]},_t}function R(qe,Je,ot,ht){var At=w/3;qe=n(qe,l),Je=n(Je,l),qe=s(qe,S),Je=s(Je,w-l),ot=n(ot,0),ot=s(ot,100-l),ht=n(ht,l);var _t=ot/100+1,Pt=ht/100,er=z(_t*r(At))/At,nr=p(qe)/p(er*S),pr=Je/w,Sr=F(Pt*p(qe/2)/p(Je/2)),Wr=Sr/F(pr*nr*er),ha=1/(Sr*F(pr*nr*er));return Oe(Wr,ha,nr,er,pr)}function ae(){var qe=65*f,Je=60*f,ot=20,ht=200,At=x.geoProjectionMutator(R),_t=At(qe,Je,ot,ht);return _t.poleline=function(Pt){return arguments.length?At(qe=+Pt*f,Je,ot,ht):qe*y},_t.parallels=function(Pt){return arguments.length?At(qe,Je=+Pt*f,ot,ht):Je*y},_t.inflation=function(Pt){return arguments.length?At(qe,Je,ot=+Pt,ht):ot},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(163.775)}function we(){return ae().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var Se=4*w+3*F(3),De=2*F(2*w*F(3)/Se),ft=et(De*F(3)/w,De,Se/6);function bt(){return x.geoProjection(ft).scale(176.84)}function Dt(qe,Je){return[qe*F(1-3*Je*Je/(w*w)),Je]}Dt.invert=function(qe,Je){return[qe/F(1-3*Je*Je/(w*w)),Je]};function Yt(){return x.geoProjection(Dt).scale(152.63)}function cr(qe,Je){var ot=r(Je),ht=r(qe)*ot,At=1-ht,_t=r(qe=t(p(qe)*ot,-p(Je))),Pt=p(qe);return ot=F(1-ht*ht),[Pt*ot-_t*At,-_t*ot-Pt*At]}cr.invert=function(qe,Je){var ot=(qe*qe+Je*Je)/-2,ht=F(-ot*(2+ot)),At=Je*ot+qe*ht,_t=qe*ot-Je*ht,Pt=F(_t*_t+At*At);return[t(ht*At,Pt*(1+ot)),Pt?-L(ht*_t/Pt):0]};function hr(){return x.geoProjection(cr).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function jr(qe,Je){var ot=ue(qe,Je);return[(ot[0]+qe/S)/2,(ot[1]+Je)/2]}jr.invert=function(qe,Je){var ot=qe,ht=Je,At=25;do{var _t=r(ht),Pt=p(ht),er=p(2*ht),nr=Pt*Pt,pr=_t*_t,Sr=p(ot),Wr=r(ot/2),ha=p(ot/2),ga=ha*ha,Pa=1-pr*Wr*Wr,Ja=Pa?z(_t*Wr)*F(di=1/Pa):di=0,di,pi=.5*(2*Ja*_t*ha+ot/S)-qe,Ci=.5*(Ja*Pt+ht)-Je,$i=.5*di*(pr*ga+Ja*_t*Wr*nr)+.5/S,Bn=di*(Sr*er/4-Ja*Pt*ha),Sn=.125*di*(er*ha-Ja*Pt*pr*Sr),ho=.5*di*(nr*Wr+Ja*ga*_t)+.5,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]};function ea(){return x.geoProjection(jr).scale(158.837)}g.geoNaturalEarth=x.geoNaturalEarth1,g.geoNaturalEarthRaw=x.geoNaturalEarth1Raw,g.geoAiry=Q,g.geoAiryRaw=W,g.geoAitoff=se,g.geoAitoffRaw=ue,g.geoArmadillo=G,g.geoArmadilloRaw=he,g.geoAugust=J,g.geoAugustRaw=$,g.geoBaker=j,g.geoBakerRaw=ne,g.geoBerghaus=ie,g.geoBerghausRaw=ee,g.geoBertin1953=at,g.geoBertin1953Raw=Ze,g.geoBoggs=tt,g.geoBoggsRaw=ze,g.geoBonne=Ot,g.geoBonneRaw=St,g.geoBottomley=ur,g.geoBottomleyRaw=jt,g.geoBromley=Cr,g.geoBromleyRaw=ar,g.geoChamberlin=Ee,g.geoChamberlinRaw=Fe,g.geoChamberlinAfrica=Ne,g.geoCollignon=ke,g.geoCollignonRaw=Ve,g.geoCraig=Le,g.geoCraigRaw=Te,g.geoCraster=xt,g.geoCrasterRaw=dt,g.geoCylindricalEqualArea=Bt,g.geoCylindricalEqualAreaRaw=It,g.geoCylindricalStereographic=Kt,g.geoCylindricalStereographicRaw=Gt,g.geoEckert1=sa,g.geoEckert1Raw=sr,g.geoEckert2=La,g.geoEckert2Raw=Aa,g.geoEckert3=Ga,g.geoEckert3Raw=ka,g.geoEckert4=Ua,g.geoEckert4Raw=Ma,g.geoEckert5=Wt,g.geoEckert5Raw=ni,g.geoEckert6=Vt,g.geoEckert6Raw=zt,g.geoEisenlohr=Zr,g.geoEisenlohrRaw=xr,g.geoFahey=Ea,g.geoFaheyRaw=Xr,g.geoFoucaut=qa,g.geoFoucautRaw=Fa,g.geoFoucautSinusoidal=$a,g.geoFoucautSinusoidalRaw=ya,g.geoGilbert=Er,g.geoGingery=Mr,g.geoGingeryRaw=kr,g.geoGinzburg4=Jr,g.geoGinzburg4Raw=Lr,g.geoGinzburg5=ca,g.geoGinzburg5Raw=oa,g.geoGinzburg6=ir,g.geoGinzburg6Raw=kt,g.geoGinzburg8=$r,g.geoGinzburg8Raw=mr,g.geoGinzburg9=Ba,g.geoGinzburg9Raw=ma,g.geoGringorten=ai,g.geoGringortenRaw=da,g.geoGuyou=Xi,g.geoGuyouRaw=$n,g.geoHammer=Ae,g.geoHammerRaw=fe,g.geoHammerRetroazimuthal=as,g.geoHammerRetroazimuthalRaw=Jo,g.geoHealpix=ys,g.geoHealpixRaw=Do,g.geoHill=Fs,g.geoHillRaw=Is,g.geoHomolosine=so,g.geoHomolosineRaw=Os,g.geoHufnagel=fs,g.geoHufnagelRaw=Ns,g.geoHyperelliptical=To,g.geoHyperellipticalRaw=ji,g.geoInterrupt=Nn,g.geoInterruptedBoggs=Zu,g.geoInterruptedHomolosine=Bu,g.geoInterruptedMollweide=qs,g.geoInterruptedMollweideHemispheres=Nu,g.geoInterruptedSinuMollweide=Xu,g.geoInterruptedSinusoidal=bf,g.geoKavrayskiy7=Yc,g.geoKavrayskiy7Raw=Rs,g.geoLagrange=Zl,g.geoLagrangeRaw=If,g.geoLarrivee=_c,g.geoLarriveeRaw=oc,g.geoLaskowski=_l,g.geoLaskowskiRaw=Zs,g.geoLittrow=$s,g.geoLittrowRaw=Bs,g.geoLoximuthal=zl,g.geoLoximuthalRaw=sc,g.geoMiller=Qs,g.geoMillerRaw=Yu,g.geoModifiedStereographic=Fl,g.geoModifiedStereographicRaw=fp,g.geoModifiedStereographicAlaska=Ku,g.geoModifiedStereographicGs48=cu,g.geoModifiedStereographicGs50=Zf,g.geoModifiedStereographicMiller=Rc,g.geoModifiedStereographicLee=pf,g.geoMollweide=Me,g.geoMollweideRaw=lt,g.geoMtFlatPolarParabolic=Kc,g.geoMtFlatPolarParabolicRaw=Rf,g.geoMtFlatPolarQuartic=uh,g.geoMtFlatPolarQuarticRaw=Yf,g.geoMtFlatPolarSinusoidal=Df,g.geoMtFlatPolarSinusoidalRaw=Ju,g.geoNaturalEarth2=Jc,g.geoNaturalEarth2Raw=Dc,g.geoNellHammer=wf,g.geoNellHammerRaw=Eu,g.geoInterruptedQuarticAuthalic=Us,g.geoNicolosi=Zh,g.geoNicolosiRaw=Kf,g.geoPatterson=$u,g.geoPattersonRaw=Fc,g.geoPolyconic=xl,g.geoPolyconicRaw=vu,g.geoPolyhedral=vf,g.geoPolyhedralButterfly=il,g.geoPolyhedralCollignon=Jf,g.geoPolyhedralWaterman=el,g.geoProject=Vl,g.geoGringortenQuincuncial=Zt,g.geoPeirceQuincuncial=fr,g.geoPierceQuincuncial=fr,g.geoQuantize=Yr,g.geoQuincuncial=ef,g.geoRectangularPolyconic=ba,g.geoRectangularPolyconicRaw=qr,g.geoRobinson=yi,g.geoRobinsonRaw=oi,g.geoSatellite=li,g.geoSatelliteRaw=Bi,g.geoSinuMollweide=ol,g.geoSinuMollweideRaw=mn,g.geoSinusoidal=Ct,g.geoSinusoidalRaw=Qe,g.geoStitch=tl,g.geoTimes=Ao,g.geoTimesRaw=Ln,g.geoTwoPointAzimuthal=Pu,g.geoTwoPointAzimuthalRaw=Ts,g.geoTwoPointAzimuthalUsa=nu,g.geoTwoPointEquidistant=yu,g.geoTwoPointEquidistantRaw=ec,g.geoTwoPointEquidistantUsa=tf,g.geoVanDerGrinten=Iu,g.geoVanDerGrintenRaw=Bc,g.geoVanDerGrinten2=ro,g.geoVanDerGrinten2Raw=Ac,g.geoVanDerGrinten3=Nc,g.geoVanDerGrinten3Raw=Po,g.geoVanDerGrinten4=pc,g.geoVanDerGrinten4Raw=hc,g.geoWagner=ae,g.geoWagner7=we,g.geoWagnerRaw=R,g.geoWagner4=bt,g.geoWagner4Raw=ft,g.geoWagner6=Yt,g.geoWagner6Raw=Dt,g.geoWiechel=hr,g.geoWiechelRaw=cr,g.geoWinkel3=ea,g.geoWinkel3Raw=jr,Object.defineProperty(g,"__esModule",{value:!0})})}}),AU=Ye({"src/plots/geo/zoom.js"(X,H){"use strict";var g=_n(),x=ta(),A=Hn(),M=Math.PI/180,e=180/Math.PI,t={cursor:"pointer"},r={cursor:"auto"};function o(y,f){var P=y.projection,L;return f._isScoped?L=n:f._isClipped?L=c:L=s,L(y,P)}H.exports=o;function a(y,f){return g.behavior.zoom().translate(f.translate()).scale(f.scale())}function i(y,f,P){var L=y.id,z=y.graphDiv,F=z.layout,B=F[L],O=z._fullLayout,I=O[L],N={},U={};function W(Q,ue){N[L+"."+Q]=x.nestedProperty(B,Q).get(),A.call("_storeDirectGUIEdit",F,O._preGUI,N);var se=x.nestedProperty(I,Q);se.get()!==ue&&(se.set(ue),x.nestedProperty(B,Q).set(ue),U[L+"."+Q]=ue)}P(W),W("projection.scale",f.scale()/y.fitScale),W("fitbounds",!1),z.emit("plotly_relayout",U)}function n(y,f){var P=a(y,f);function L(){g.select(this).style(t)}function z(){f.scale(g.event.scale).translate(g.event.translate),y.render(!0);var O=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":O[0],"geo.center.lat":O[1]})}function F(O){var I=f.invert(y.midPt);O("center.lon",I[0]),O("center.lat",I[1])}function B(){g.select(this).style(r),i(y,f,F)}return P.on("zoomstart",L).on("zoom",z).on("zoomend",B),P}function s(y,f){var P=a(y,f),L=2,z,F,B,O,I,N,U,W,Q;function ue(Z){return f.invert(Z)}function se(Z){var re=ue(Z);if(!re)return!0;var ne=f(re);return Math.abs(ne[0]-Z[0])>L||Math.abs(ne[1]-Z[1])>L}function he(){g.select(this).style(t),z=g.mouse(this),F=f.rotate(),B=f.translate(),O=F,I=ue(z)}function G(){if(N=g.mouse(this),se(z)){P.scale(f.scale()),P.translate(f.translate());return}f.scale(g.event.scale),f.translate([B[0],g.event.translate[1]]),I?ue(N)&&(W=ue(N),U=[O[0]+(W[0]-I[0]),F[1],F[2]],f.rotate(U),O=U):(z=N,I=ue(z)),Q=!0,y.render(!0);var Z=f.rotate(),re=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":re[0],"geo.center.lat":re[1],"geo.projection.rotation.lon":-Z[0]})}function $(){g.select(this).style(r),Q&&i(y,f,J)}function J(Z){var re=f.rotate(),ne=f.invert(y.midPt);Z("projection.rotation.lon",-re[0]),Z("center.lon",ne[0]),Z("center.lat",ne[1])}return P.on("zoomstart",he).on("zoom",G).on("zoomend",$),P}function c(y,f){var P={r:f.rotate(),k:f.scale()},L=a(y,f),z=u(L,"zoomstart","zoom","zoomend"),F=0,B=L.on,O;L.on("zoomstart",function(){g.select(this).style(t);var Q=g.mouse(this),ue=f.rotate(),se=ue,he=f.translate(),G=v(ue);O=h(f,Q),B.call(L,"zoom",function(){var $=g.mouse(this);if(f.scale(P.k=g.event.scale),!O)Q=$,O=h(f,Q);else if(h(f,$)){f.rotate(ue).translate(he);var J=h(f,$),Z=T(O,J),re=E(p(G,Z)),ne=P.r=l(re,O,se);(!isFinite(ne[0])||!isFinite(ne[1])||!isFinite(ne[2]))&&(ne=se),f.rotate(ne),se=ne}N(z.of(this,arguments))}),I(z.of(this,arguments))}).on("zoomend",function(){g.select(this).style(r),B.call(L,"zoom",null),U(z.of(this,arguments)),i(y,f,W)}).on("zoom.redraw",function(){y.render(!0);var Q=f.rotate();y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.projection.rotation.lon":-Q[0],"geo.projection.rotation.lat":-Q[1]})});function I(Q){F++||Q({type:"zoomstart"})}function N(Q){Q({type:"zoom"})}function U(Q){--F||Q({type:"zoomend"})}function W(Q){var ue=f.rotate();Q("projection.rotation.lon",-ue[0]),Q("projection.rotation.lat",-ue[1])}return g.rebind(L,z,"on")}function h(y,f){var P=y.invert(f);return P&&isFinite(P[0])&&isFinite(P[1])&&m(P)}function v(y){var f=.5*y[0]*M,P=.5*y[1]*M,L=.5*y[2]*M,z=Math.sin(f),F=Math.cos(f),B=Math.sin(P),O=Math.cos(P),I=Math.sin(L),N=Math.cos(L);return[F*O*N+z*B*I,z*O*N-F*B*I,F*B*N+z*O*I,F*O*I-z*B*N]}function p(y,f){var P=y[0],L=y[1],z=y[2],F=y[3],B=f[0],O=f[1],I=f[2],N=f[3];return[P*B-L*O-z*I-F*N,P*O+L*B+z*N-F*I,P*I-L*N+z*B+F*O,P*N+L*I-z*O+F*B]}function T(y,f){if(!(!y||!f)){var P=d(y,f),L=Math.sqrt(b(P,P)),z=.5*Math.acos(Math.max(-1,Math.min(1,b(y,f)))),F=Math.sin(z)/L;return L&&[Math.cos(z),P[2]*F,-P[1]*F,P[0]*F]}}function l(y,f,P){var L=S(f,2,y[0]);L=S(L,1,y[1]),L=S(L,0,y[2]-P[2]);var z=f[0],F=f[1],B=f[2],O=L[0],I=L[1],N=L[2],U=Math.atan2(F,z)*e,W=Math.sqrt(z*z+F*F),Q,ue;Math.abs(I)>W?(ue=(I>0?90:-90)-U,Q=0):(ue=Math.asin(I/W)*e-U,Q=Math.sqrt(W*W-I*I));var se=180-ue-2*U,he=(Math.atan2(N,O)-Math.atan2(B,Q))*e,G=(Math.atan2(N,O)-Math.atan2(B,-Q))*e,$=_(P[0],P[1],ue,he),J=_(P[0],P[1],se,G);return $<=J?[ue,he,P[2]]:[se,G,P[2]]}function _(y,f,P,L){var z=w(P-y),F=w(L-f);return Math.sqrt(z*z+F*F)}function w(y){return(y%360+540)%360-180}function S(y,f,P){var L=P*M,z=y.slice(),F=f===0?1:0,B=f===2?1:2,O=Math.cos(L),I=Math.sin(L);return z[F]=y[F]*O-y[B]*I,z[B]=y[B]*O+y[F]*I,z}function E(y){return[Math.atan2(2*(y[0]*y[1]+y[2]*y[3]),1-2*(y[1]*y[1]+y[2]*y[2]))*e,Math.asin(Math.max(-1,Math.min(1,2*(y[0]*y[2]-y[3]*y[1]))))*e,Math.atan2(2*(y[0]*y[3]+y[1]*y[2]),1-2*(y[2]*y[2]+y[3]*y[3]))*e]}function m(y){var f=y[0]*M,P=y[1]*M,L=Math.cos(P);return[L*Math.cos(f),L*Math.sin(f),Math.sin(P)]}function b(y,f){for(var P=0,L=0,z=y.length;L<z;++L)P+=y[L]*f[L];return P}function d(y,f){return[y[1]*f[2]-y[2]*f[1],y[2]*f[0]-y[0]*f[2],y[0]*f[1]-y[1]*f[0]]}function u(y){for(var f=0,P=arguments.length,L=[];++f<P;)L.push(arguments[f]);var z=g.dispatch.apply(null,L);return z.of=function(F,B){return function(O){var I;try{I=O.sourceEvent=g.event,O.target=y,g.event=O,z[O.type].apply(F,B)}finally{g.event=I}}},z}}}),SU=Ye({"src/plots/geo/geo.js"(X,H){"use strict";var g=_n(),x=C5(),A=x.geoPath,M=x.geoDistance,e=TU(),t=Hn(),r=ta(),o=r.strTranslate,a=Fn(),i=Bo(),n=Lc(),s=Gu(),c=Co(),h=Yd().getAutoRange,v=bp(),p=ff().prepSelect,T=ff().clearOutline,l=ff().selectOnClick,_=AU(),w=mx(),S=vg(),E=iT(),m=M5().feature;function b(P){this.id=P.id,this.graphDiv=P.graphDiv,this.container=P.container,this.topojsonURL=P.topojsonURL,this.isStatic=P.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var d=b.prototype;H.exports=function(L){return new b(L)},d.plot=function(P,L,z,F){var B=this;if(F)return B.update(P,L,!0);B._geoCalcData=P,B._fullLayout=L;var O=L[this.id],I=[],N=!1;for(var U in w.layerNameToAdjective)if(U!=="frame"&&O["show"+U]){N=!0;break}for(var W=!1,Q=0;Q<P.length;Q++){var ue=P[0][0].trace;ue._geo=B,ue.locationmode&&(N=!0);var se=ue.marker;if(se){var he=se.angle,G=se.angleref;(he||G==="north"||G==="previous")&&(W=!0)}}if(this._hasMarkerAngles=W,N){var $=E.getTopojsonName(O);(B.topojson===null||$!==B.topojsonName)&&(B.topojsonName=$,PlotlyGeoAssets.topojson[B.topojsonName]===void 0&&I.push(B.fetchTopojson()))}I=I.concat(S.fetchTraceGeoData(P)),z.push(new Promise(function(J,Z){Promise.all(I).then(function(){B.topojson=PlotlyGeoAssets.topojson[B.topojsonName],B.update(P,L),J()}).catch(Z)}))},d.fetchTopojson=function(){var P=this,L=E.getTopojsonPath(P.topojsonURL,P.topojsonName);return new Promise(function(z,F){g.json(L,function(B,O){if(B)return B.status===404?F(new Error(["plotly.js could not find topojson file at",L+".","Make sure the *topojsonURL* plot config option","is set properly."].join(" "))):F(new Error(["unexpected error while fetching topojson file at",L].join(" ")));PlotlyGeoAssets.topojson[P.topojsonName]=O,z()})})},d.update=function(P,L,z){var F=L[this.id];this.hasChoropleth=!1;for(var B=0;B<P.length;B++){var O=P[B],I=O[0].trace;I.type==="choropleth"&&(this.hasChoropleth=!0),I.visible===!0&&I._length>0&&I._module.calcGeoJSON(O,L)}if(!z){var N=this.updateProjection(P,L);if(N)return;(!this.viewInitial||this.scope!==F.scope)&&this.saveViewInitial(F)}this.scope=F.scope,this.updateBaseLayers(L,F),this.updateDims(L,F),this.updateFx(L,F),s.generalUpdatePerTraceModule(this.graphDiv,this,P,F);var U=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=U.selectAll(".point"),this.dataPoints.text=U.selectAll("text"),this.dataPaths.line=U.selectAll(".js-line");var W=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=W.selectAll("path"),this._render()},d.updateProjection=function(P,L){var z=this.graphDiv,F=L[this.id],B=L._size,O=F.domain,I=F.projection,N=F.lonaxis,U=F.lataxis,W=N._ax,Q=U._ax,ue=this.projection=u(F),se=[[B.l+B.w*O.x[0],B.t+B.h*(1-O.y[1])],[B.l+B.w*O.x[1],B.t+B.h*(1-O.y[0])]],he=F.center||{},G=I.rotation||{},$=N.range||[],J=U.range||[];if(F.fitbounds){W._length=se[1][0]-se[0][0],Q._length=se[1][1]-se[0][1],W.range=h(z,W),Q.range=h(z,Q);var Z=(W.range[0]+W.range[1])/2,re=(Q.range[0]+Q.range[1])/2;if(F._isScoped)he={lon:Z,lat:re};else if(F._isClipped){he={lon:Z,lat:re},G={lon:Z,lat:re,roll:G.roll};var ne=I.type,j=w.lonaxisSpan[ne]/2||180,ee=w.lataxisSpan[ne]/2||90;$=[Z-j,Z+j],J=[re-ee,re+ee]}else he={lon:Z,lat:re},G={lon:Z,lat:G.lat,roll:G.roll}}ue.center([he.lon-G.lon,he.lat-G.lat]).rotate([-G.lon,-G.lat,G.roll]).parallels(I.parallels);var ie=f($,J);ue.fitExtent(se,ie);var fe=this.bounds=ue.getBounds(ie),be=this.fitScale=ue.scale(),Ae=ue.translate();if(F.fitbounds){var Be=ue.getBounds(f(W.range,Q.range)),Ie=Math.min((fe[1][0]-fe[0][0])/(Be[1][0]-Be[0][0]),(fe[1][1]-fe[0][1])/(Be[1][1]-Be[0][1]));isFinite(Ie)?ue.scale(Ie*be):r.warn("Something went wrong during"+this.id+"fitbounds computations.")}else ue.scale(I.scale*be);var Ze=this.midPt=[(fe[0][0]+fe[1][0])/2,(fe[0][1]+fe[1][1])/2];if(ue.translate([Ae[0]+(Ze[0]-Ae[0]),Ae[1]+(Ze[1]-Ae[1])]).clipExtent(fe),F._isAlbersUsa){var at=ue([he.lon,he.lat]),it=ue.translate();ue.translate([it[0]-(at[0]-it[0]),it[1]-(at[1]-it[1])])}},d.updateBaseLayers=function(P,L){var z=this,F=z.topojson,B=z.layers,O=z.basePaths;function I(se){return se==="lonaxis"||se==="lataxis"}function N(se){return!!w.lineLayers[se]}function U(se){return!!w.fillLayers[se]}var W=this.hasChoropleth?w.layersForChoropleth:w.layers,Q=W.filter(function(se){return N(se)||U(se)?L["show"+se]:I(se)?L[se].showgrid:!0}),ue=z.framework.selectAll(".layer").data(Q,String);ue.exit().each(function(se){delete B[se],delete O[se],g.select(this).remove()}),ue.enter().append("g").attr("class",function(se){return"layer "+se}).each(function(se){var he=B[se]=g.select(this);se==="bg"?z.bgRect=he.append("rect").style("pointer-events","all"):I(se)?O[se]=he.append("path").style("fill","none"):se==="backplot"?he.append("g").classed("choroplethlayer",!0):se==="frontplot"?he.append("g").classed("scatterlayer",!0):N(se)?O[se]=he.append("path").style("fill","none").style("stroke-miterlimit",2):U(se)&&(O[se]=he.append("path").style("stroke","none"))}),ue.order(),ue.each(function(se){var he=O[se],G=w.layerNameToAdjective[se];se==="frame"?he.datum(w.sphereSVG):N(se)||U(se)?he.datum(m(F,F.objects[se])):I(se)&&he.datum(y(se,L,P)).call(a.stroke,L[se].gridcolor).call(i.dashLine,L[se].griddash,L[se].gridwidth),N(se)?he.call(a.stroke,L[G+"color"]).call(i.dashLine,"",L[G+"width"]):U(se)&&he.call(a.fill,L[G+"color"])})},d.updateDims=function(P,L){var z=this.bounds,F=(L.framewidth||0)/2,B=z[0][0]-F,O=z[0][1]-F,I=z[1][0]-B+F,N=z[1][1]-O+F;i.setRect(this.clipRect,B,O,I,N),this.bgRect.call(i.setRect,B,O,I,N).call(a.fill,L.bgcolor),this.xaxis._offset=B,this.xaxis._length=I,this.yaxis._offset=O,this.yaxis._length=N},d.updateFx=function(P,L){var z=this,F=z.graphDiv,B=z.bgRect,O=P.dragmode,I=P.clickmode;if(z.isStatic)return;function N(){var ue=z.viewInitial,se={};for(var he in ue)se[z.id+"."+he]=ue[he];t.call("_guiRelayout",F,se),F.emit("plotly_doubleclick",null)}function U(ue){return z.projection.invert([ue[0]+z.xaxis._offset,ue[1]+z.yaxis._offset])}var W=function(ue,se){if(se.isRect){var he=ue.range={};he[z.id]=[U([se.xmin,se.ymin]),U([se.xmax,se.ymax])]}else{var G=ue.lassoPoints={};G[z.id]=se.map(U)}},Q={element:z.bgRect.node(),gd:F,plotinfo:{id:z.id,xaxis:z.xaxis,yaxis:z.yaxis,fillRangeItems:W},xaxes:[z.xaxis],yaxes:[z.yaxis],subplot:z.id,clickFn:function(ue){ue===2&&T(F)}};O==="pan"?(B.node().onmousedown=null,B.call(_(z,L)),B.on("dblclick.zoom",N),F._context._scrollZoom.geo||B.on("wheel.zoom",null)):(O==="select"||O==="lasso")&&(B.on(".zoom",null),Q.prepFn=function(ue,se,he){p(ue,se,he,Q,O)},v.init(Q)),B.on("mousemove",function(){var ue=z.projection.invert(r.getPositionFromD3Event());if(!ue)return v.unhover(F,g.event);z.xaxis.p2c=function(){return ue[0]},z.yaxis.p2c=function(){return ue[1]},n.hover(F,g.event,z.id)}),B.on("mouseout",function(){F._dragging||v.unhover(F,g.event)}),B.on("click",function(){O!=="select"&&O!=="lasso"&&(I.indexOf("select")>-1&&l(g.event,F,[z.xaxis],[z.yaxis],z.id,Q),I.indexOf("event")>-1&&n.click(F,g.event))})},d.makeFramework=function(){var P=this,L=P.graphDiv,z=L._fullLayout,F="clip"+z._uid+P.id;P.clipDef=z._clips.append("clipPath").attr("id",F),P.clipRect=P.clipDef.append("rect"),P.framework=g.select(P.container).append("g").attr("class","geo "+P.id).call(i.setClipUrl,F,L),P.project=function(B){var O=P.projection(B);return O?[O[0]-P.xaxis._offset,O[1]-P.yaxis._offset]:[null,null]},P.xaxis={_id:"x",c2p:function(B){return P.project(B)[0]}},P.yaxis={_id:"y",c2p:function(B){return P.project(B)[1]}},P.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},c.setConvert(P.mockAxis,z)},d.saveViewInitial=function(P){var L=P.center||{},z=P.projection,F=z.rotation||{};this.viewInitial={fitbounds:P.fitbounds,"projection.scale":z.scale};var B;P._isScoped?B={"center.lon":L.lon,"center.lat":L.lat}:P._isClipped?B={"projection.rotation.lon":F.lon,"projection.rotation.lat":F.lat}:B={"center.lon":L.lon,"center.lat":L.lat,"projection.rotation.lon":F.lon},r.extendFlat(this.viewInitial,B)},d.render=function(P){this._hasMarkerAngles&&P?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},d._render=function(){var P=this.projection,L=P.getPath(),z;function F(O){var I=P(O.lonlat);return I?o(I[0],I[1]):null}function B(O){return P.isLonLatOverEdges(O.lonlat)?"none":null}for(z in this.basePaths)this.basePaths[z].attr("d",L);for(z in this.dataPaths)this.dataPaths[z].attr("d",function(O){return L(O.geojson)});for(z in this.dataPoints)this.dataPoints[z].attr("display",B).attr("transform",F)};function u(P){var L=P.projection,z=L.type,F=w.projNames[z];F="geo"+r.titleCase(F);for(var B=x[F]||e[F],O=B(),I=P._isSatellite?Math.acos(1/L.distance)*180/Math.PI:P._isClipped?w.lonaxisSpan[z]/2:null,N=["center","rotate","parallels","clipExtent"],U=function(ue){return ue?O:[]},W=0;W<N.length;W++){var Q=N[W];typeof O[Q]!="function"&&(O[Q]=U)}return O.isLonLatOverEdges=function(ue){if(O(ue)===null)return!0;if(I){var se=O.rotate(),he=M(ue,[-se[0],-se[1]]),G=I*Math.PI/180;return he>G}else return!1},O.getPath=function(){return A().projection(O)},O.getBounds=function(ue){return O.getPath().bounds(ue)},O.precision(w.precision),P._isSatellite&&O.tilt(L.tilt).distance(L.distance),I&&O.clipAngle(I-w.clipPad),O}function y(P,L,z){var F=1e-6,B=2.5,O=L[P],I=w.scopeDefaults[L.scope],N,U,W;P==="lonaxis"?(N=I.lonaxisRange,U=I.lataxisRange,W=function(re,ne){return[re,ne]}):P==="lataxis"&&(N=I.lataxisRange,U=I.lonaxisRange,W=function(re,ne){return[ne,re]});var Q={type:"linear",range:[N[0],N[1]-F],tick0:O.tick0,dtick:O.dtick};c.setConvert(Q,z);var ue=c.calcTicks(Q);!L.isScoped&&P==="lonaxis"&&ue.pop();for(var se=ue.length,he=new Array(se),G=0;G<se;G++)for(var $=ue[G].x,J=he[G]=[],Z=U[0];Z<U[1]+B;Z+=B)J.push(W($,Z));return{type:"MultiLineString",coordinates:he}}function f(P,L){var z=w.clipPad,F=P[0]+z,B=P[1]-z,O=L[0]+z,I=L[1]-z;F>0&&B<0&&(B+=360);var N=(B-F)/4;return{type:"Polygon",coordinates:[[[F,O],[F,I],[F+N,I],[F+2*N,I],[F+3*N,I],[B,I],[B,O],[B-N,O],[B-2*N,O],[B-3*N,O],[F,O]]]}}}}),L5=Ye({"src/plots/geo/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Uh().dash,M=mx(),e=Ou().overrideAll,t=Km(),r={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:g.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:A},o=H.exports=e({domain:x({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:t(M.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:t(M.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:g.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:M.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:M.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:M.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:M.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:g.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:g.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:g.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:g.background},lonaxis:r,lataxis:r},"plot","from-root");o.uirevision={valType:"any",editType:"none"}}}),MU=Ye({"src/plots/geo/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=jh().getSubplotData,M=mx(),e=L5(),t=M.axesNames;H.exports=function(a,i,n){x(a,i,n,{type:"geo",attributes:e,handleDefaults:r,fullData:n,partition:"y"})};function r(o,a,i,n){var s=A(n.fullData,"geo",n.id),c=s.map(function(J){return J.index}),h=i("resolution"),v=i("scope"),p=M.scopeDefaults[v],T=i("projection.type",p.projType),l=a._isAlbersUsa=T==="albers usa";l&&(v=a.scope="usa");var _=a._isScoped=v!=="world",w=a._isSatellite=T==="satellite",S=a._isConic=T.indexOf("conic")!==-1||T==="albers",E=a._isClipped=!!M.lonaxisSpan[T];if(o.visible===!1){var m=g.extendDeep({},a._template);m.showcoastlines=!1,m.showcountries=!1,m.showframe=!1,m.showlakes=!1,m.showland=!1,m.showocean=!1,m.showrivers=!1,m.showsubunits=!1,m.lonaxis&&(m.lonaxis.showgrid=!1),m.lataxis&&(m.lataxis.showgrid=!1),a._template=m}for(var b=i("visible"),d,u=0;u<t.length;u++){var y=t[u],f=[30,10][u],P;if(_)P=p[y+"Range"];else{var L=M[y+"Span"],z=(L[T]||L["*"])/2,F=i("projection.rotation."+y.substr(0,3),p.projRotate[u]);P=[F-z,F+z]}var B=i(y+".range",P);i(y+".tick0"),i(y+".dtick",f),d=i(y+".showgrid",b?void 0:!1),d&&(i(y+".gridcolor"),i(y+".gridwidth"),i(y+".griddash")),a[y]._ax={type:"linear",_id:y.slice(0,3),_traceIndices:c,setScale:g.identity,c2l:g.identity,r2l:g.identity,autorange:!0,range:B.slice(),_m:1,_input:{}}}var O=a.lonaxis.range,I=a.lataxis.range,N=O[0],U=O[1];N>0&&U<0&&(U+=360);var W=(N+U)/2,Q;if(!l){var ue=_?p.projRotate:[W,0,0];Q=i("projection.rotation.lon",ue[0]),i("projection.rotation.lat",ue[1]),i("projection.rotation.roll",ue[2]),d=i("showcoastlines",!_&&b),d&&(i("coastlinecolor"),i("coastlinewidth")),d=i("showocean",b?void 0:!1),d&&i("oceancolor")}var se,he;if(l?(se=-96.6,he=38.7):(se=_?W:Q,he=(I[0]+I[1])/2),i("center.lon",se),i("center.lat",he),w&&(i("projection.tilt"),i("projection.distance")),S){var G=p.projParallels||[0,60];i("projection.parallels",G)}i("projection.scale"),d=i("showland",b?void 0:!1),d&&i("landcolor"),d=i("showlakes",b?void 0:!1),d&&i("lakecolor"),d=i("showrivers",b?void 0:!1),d&&(i("rivercolor"),i("riverwidth")),d=i("showcountries",_&&v!=="usa"&&b),d&&(i("countrycolor"),i("countrywidth")),(v==="usa"||v==="north america"&&h===50)&&(i("showsubunits",b),i("subunitcolor"),i("subunitwidth")),_||(d=i("showframe",b),d&&(i("framecolor"),i("framewidth"))),i("bgcolor");var $=i("fitbounds");$&&(delete a.projection.scale,_?(delete a.center.lon,delete a.center.lat):E?(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon,delete a.projection.rotation.lat,delete a.lonaxis.range,delete a.lataxis.range):(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon))}}}),P5=Ye({"src/plots/geo/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=SU(),M="geo",e=x(M),t={};t[M]={valType:"subplotid",dflt:M,editType:"calc"};function r(i){for(var n=i._fullLayout,s=i.calcdata,c=n._subplots[M],h=0;h<c.length;h++){var v=c[h],p=g(s,M,v),T=n[v],l=T._subplot;l||(l=A({id:v,graphDiv:i,container:n._geolayer.node(),topojsonURL:i._context.topojsonURL,staticPlot:i._context.staticPlot}),n[v]._subplot=l),l.plot(p,n,i._promises)}}function o(i,n,s,c){for(var h=c._subplots[M]||[],v=0;v<h.length;v++){var p=h[v],T=c[p]._subplot;!n[p]&&T&&(T.framework.remove(),T.clipDef.remove())}}function a(i){for(var n=i._fullLayout,s=n._subplots[M],c=0;c<s.length;c++){var h=n[s[c]],v=h._subplot;v.updateFx(n,h)}}H.exports={attr:M,name:M,idRoot:M,idRegex:e,attrRegex:e,attributes:t,layoutAttributes:L5(),supplyLayoutDefaults:MU(),plot:r,updateFx:a,clean:o}}}),EU=Ye({"src/traces/scattergeo/index.js"(X,H){"use strict";H.exports={attributes:p0(),supplyDefaults:dU(),colorbar:cp(),formatLabels:vU(),calc:aT(),calcGeoJSON:k5().calcGeoJSON,plot:k5().plot,style:E5(),styleOnSelect:ed().styleOnSelect,hoverPoints:xU(),eventData:bU(),selectPoints:wU(),moduleType:"trace",name:"scattergeo",basePlotModule:P5(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}}}),kU=Ye({"lib/scattergeo.js"(X,H){"use strict";H.exports=EU()}}),M1=Ye({"src/traces/choropleth/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=p0(),A=tu(),M=Pl(),e=Gf().defaultLine,t=Oo().extendFlat,r=x.marker.line;H.exports=t({locations:{valType:"data_array",editType:"calc"},locationmode:x.locationmode,z:{valType:"data_array",editType:"calc"},geojson:t({},x.geojson,{}),featureidkey:x.featureidkey,text:t({},x.text,{}),hovertext:t({},x.hovertext,{}),marker:{line:{color:t({},r.color,{dflt:e}),width:t({},r.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:x.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:x.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:t({},M.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:g(),showlegend:t({},M.showlegend,{dflt:!1})},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),CU=Ye({"src/traces/choropleth/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=M1();H.exports=function(e,t,r,o){function a(p,T){return g.coerce(e,t,A,p,T)}var i=a("locations"),n=a("z");if(!(i&&i.length&&g.isArrayOrTypedArray(n)&&n.length)){t.visible=!1;return}t._length=Math.min(i.length,n.length);var s=a("geojson"),c;(typeof s=="string"&&s!==""||g.isPlainObject(s))&&(c="geojson-id");var h=a("locationmode",c);h==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate");var v=a("marker.line.width");v&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),sT=Ye({"src/traces/choropleth/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=jp(),M=Av(),e=Od();function t(r){return r&&typeof r=="string"}H.exports=function(o,a){var i=a._length,n=new Array(i),s;a.geojson?s=function(T){return t(T)||g(T)}:s=t;for(var c=0;c<i;c++){var h=n[c]={},v=a.locations[c],p=a.z[c];s(v)&&g(p)?(h.loc=v,h.z=p):(h.loc=null,h.z=x),h.index=c}return M(n,a),A(o,a,{vals:a.z,containerStr:"",cLetter:"z"}),e(n,a),n}}}),lT=Ye({"src/traces/choropleth/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo(),M=Su();function e(o,a){a&&t(o,a)}function t(o,a){var i=a[0].trace,n=a[0].node3,s=n.selectAll(".choroplethlocation"),c=i.marker||{},h=c.line||{},v=M.makeColorScaleFuncFromTrace(i);s.each(function(p){g.select(this).attr("fill",v(p.z)).call(x.stroke,p.mlc||h.color).call(A.dashLine,"",p.mlw||h.width||0).style("opacity",c.opacity)}),A.selectedPointStyle(s,i)}function r(o,a){var i=a[0].node3,n=a[0].trace;n.selectedpoints?A.selectedPointStyle(i.selectAll(".choroplethlocation"),n):t(o,a)}H.exports={style:e,styleOnSelect:r}}}),I5=Ye({"src/traces/choropleth/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=vg(),M=iT().getTopojsonFeatures,e=Yd().findExtremes,t=lT().style;function r(a,i,n){var s=i.layers.backplot.select(".choroplethlayer");x.makeTraceGroups(s,n,"trace choropleth").each(function(c){var h=g.select(this),v=h.selectAll("path.choroplethlocation").data(x.identity);v.enter().append("path").classed("choroplethlocation",!0),v.exit().remove(),t(a,c)})}function o(a,i){for(var n=a[0].trace,s=i[n.geo],c=s._subplot,h=n.locationmode,v=n._length,p=h==="geojson-id"?A.extractTraceFeature(a):M(n,c.topojson),T=[],l=[],_=0;_<v;_++){var w=a[_],S=h==="geojson-id"?w.fOut:A.locationToFeature(h,w.loc,p);if(S){w.geojson=S,w.ct=S.properties.ct,w._polygons=A.feature2polygons(S);var E=A.computeBbox(S);T.push(E[0],E[2]),l.push(E[1],E[3])}else w.geojson=null}if(s.fitbounds==="geojson"&&h==="geojson-id"){var m=A.computeBbox(A.getTraceGeojson(n));T=[m[0],m[2]],l=[m[1],m[3]]}var b={padded:!0};n._extremes.lon=e(s.lonaxis._ax,T,b),n._extremes.lat=e(s.lataxis._ax,l,b)}H.exports={calcGeoJSON:o,plot:r}}}),uT=Ye({"src/traces/choropleth/hover.js"(X,H){"use strict";var g=Co(),x=M1(),A=ta().fillText;H.exports=function(t,r,o){var a=t.cd,i=a[0].trace,n=t.subplot,s,c,h,v,p=[r,o],T=[r+360,o];for(c=0;c<a.length;c++)if(s=a[c],v=!1,s._polygons){for(h=0;h<s._polygons.length;h++)s._polygons[h].contains(p)&&(v=!v),s._polygons[h].contains(T)&&(v=!v);if(v)break}if(!(!v||!s))return t.x0=t.x1=t.xa.c2p(s.ct),t.y0=t.y1=t.ya.c2p(s.ct),t.index=s.index,t.location=s.loc,t.z=s.z,t.zLabel=g.tickText(n.mockAxis,n.mockAxis.c2l(s.z),"hover").text,t.hovertemplate=s.hovertemplate,M(t,i,s),[t]};function M(e,t,r){if(!t.hovertemplate){var o=r.hi||t.hoverinfo,a=String(r.loc),i=o==="all"?x.hoverinfo.flags:o.split("+"),n=i.indexOf("name")!==-1,s=i.indexOf("location")!==-1,c=i.indexOf("z")!==-1,h=i.indexOf("text")!==-1,v=!n&&s,p=[];v?e.nameOverride=a:(n&&(e.nameOverride=t.name),s&&p.push(a)),c&&p.push(e.zLabel),h&&A(r,t,p),e.extraText=p.join("<br>")}}}}),cT=Ye({"src/traces/choropleth/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.location=A.location,x.z=A.z;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x.ct=r.ct,x}}}),fT=Ye({"src/traces/choropleth/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a,i,n,s;if(A===!1)for(o=0;o<M.length;o++)M[o].selected=0;else for(o=0;o<M.length;o++)a=M[o],i=a.ct,i&&(n=e.c2p(i),s=t.c2p(i),A.contains([n,s],null,o,x)?(r.push({pointNumber:o,lon:i[0],lat:i[1]}),a.selected=1):a.selected=0);return r}}}),LU=Ye({"src/traces/choropleth/index.js"(X,H){"use strict";H.exports={attributes:M1(),supplyDefaults:CU(),colorbar:ag(),calc:sT(),calcGeoJSON:I5().calcGeoJSON,plot:I5().plot,style:lT().style,styleOnSelect:lT().styleOnSelect,hoverPoints:uT(),eventData:cT(),selectPoints:fT(),moduleType:"trace",name:"choropleth",basePlotModule:P5(),categories:["geo","noOpacity","showLegend"],meta:{}}}}),PU=Ye({"lib/choropleth.js"(X,H){"use strict";H.exports=LU()}}),hT=Ye({"src/traces/scattergl/hover.js"(X,H){"use strict";var g=Hn(),x=ta(),A=s1();function M(t,r,o,a){var i=t.cd,n=i[0].t,s=i[0].trace,c=t.xa,h=t.ya,v=n.x,p=n.y,T=c.c2p(r),l=h.c2p(o),_=t.distance,w;if(n.tree){var S=c.p2c(T-_),E=c.p2c(T+_),m=h.p2c(l-_),b=h.p2c(l+_);a==="x"?w=n.tree.range(Math.min(S,E),Math.min(h._rl[0],h._rl[1]),Math.max(S,E),Math.max(h._rl[0],h._rl[1])):w=n.tree.range(Math.min(S,E),Math.min(m,b),Math.max(S,E),Math.max(m,b))}else w=n.ids;var d,u,y,f,P,L,z,F,B,O=_;if(a==="x"){var I=!!s.xperiodalignment,N=!!s.yperiodalignment;for(P=0;P<w.length;P++){if(d=w[P],y=v[d],L=Math.abs(c.c2p(y)-T),I){var U=c.c2p(s._xStarts[d]),W=c.c2p(s._xEnds[d]);L=T>=Math.min(U,W)&&T<=Math.max(U,W)?0:1/0}if(L<O){if(O=L,f=p[d],z=h.c2p(f)-l,N){var Q=h.c2p(s._yStarts[d]),ue=h.c2p(s._yEnds[d]);z=l>=Math.min(Q,ue)&&l<=Math.max(Q,ue)?0:1/0}B=Math.sqrt(L*L+z*z),u=w[P]}}}else for(P=w.length-1;P>-1;P--)d=w[P],y=v[d],f=p[d],L=c.c2p(y)-T,z=h.c2p(f)-l,F=Math.sqrt(L*L+z*z),F<O&&(O=B=F,u=d);return t.index=u,t.distance=O,t.dxy=B,u===void 0?[t]:[e(t,v,p,s)]}function e(t,r,o,a){var i=t.xa,n=t.ya,s=t.distance,c=t.dxy,h=t.index,v={pointNumber:h,x:r[h],y:o[h]};v.tx=x.isArrayOrTypedArray(a.text)?a.text[h]:a.text,v.htx=Array.isArray(a.hovertext)?a.hovertext[h]:a.hovertext,v.data=Array.isArray(a.customdata)?a.customdata[h]:a.customdata,v.tp=Array.isArray(a.textposition)?a.textposition[h]:a.textposition;var p=a.textfont;p&&(v.ts=x.isArrayOrTypedArray(p.size)?p.size[h]:p.size,v.tc=x.isArrayOrTypedArray(p.color)?p.color[h]:p.color,v.tf=Array.isArray(p.family)?p.family[h]:p.family,v.tw=Array.isArray(p.weight)?p.weight[h]:p.weight,v.ty=Array.isArray(p.style)?p.style[h]:p.style,v.tv=Array.isArray(p.variant)?p.variant[h]:p.variant);var T=a.marker;T&&(v.ms=x.isArrayOrTypedArray(T.size)?T.size[h]:T.size,v.mo=x.isArrayOrTypedArray(T.opacity)?T.opacity[h]:T.opacity,v.mx=x.isArrayOrTypedArray(T.symbol)?T.symbol[h]:T.symbol,v.ma=x.isArrayOrTypedArray(T.angle)?T.angle[h]:T.angle,v.mc=x.isArrayOrTypedArray(T.color)?T.color[h]:T.color);var l=T&&T.line;l&&(v.mlc=Array.isArray(l.color)?l.color[h]:l.color,v.mlw=x.isArrayOrTypedArray(l.width)?l.width[h]:l.width);var _=T&&T.gradient;_&&_.type!=="none"&&(v.mgt=Array.isArray(_.type)?_.type[h]:_.type,v.mgc=Array.isArray(_.color)?_.color[h]:_.color);var w=i.c2p(v.x,!0),S=n.c2p(v.y,!0),E=v.mrc||1,m=a.hoverlabel;m&&(v.hbg=Array.isArray(m.bgcolor)?m.bgcolor[h]:m.bgcolor,v.hbc=Array.isArray(m.bordercolor)?m.bordercolor[h]:m.bordercolor,v.hts=x.isArrayOrTypedArray(m.font.size)?m.font.size[h]:m.font.size,v.htc=Array.isArray(m.font.color)?m.font.color[h]:m.font.color,v.htf=Array.isArray(m.font.family)?m.font.family[h]:m.font.family,v.hnl=x.isArrayOrTypedArray(m.namelength)?m.namelength[h]:m.namelength);var b=a.hoverinfo;b&&(v.hi=Array.isArray(b)?b[h]:b);var d=a.hovertemplate;d&&(v.ht=Array.isArray(d)?d[h]:d);var u={};u[t.index]=v;var y=a._origX,f=a._origY,P=x.extendFlat({},t,{color:A(a,v),x0:w-E,x1:w+E,xLabelVal:y?y[h]:v.x,y0:S-E,y1:S+E,yLabelVal:f?f[h]:v.y,cd:u,distance:s,spikeDistance:c,hovertemplate:v.ht});return v.htx?P.text=v.htx:v.tx?P.text=v.tx:a.text&&(P.text=a.text),x.fillText(v,a,P),g.getComponentMethod("errorbars","hoverInfo")(v,a,P),P}H.exports={hoverPoints:M,calcHover:e}}}),mg=Ye({"src/traces/scattergl/constants.js"(X,H){"use strict";var g=20;H.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:g,SYMBOL_STROKE:g/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}}}),yx=Ye({"src/traces/scattergl/attributes.js"(X,H){"use strict";var g=Pl(),x=Au(),A=$d(),M=Pc(),e=Cc().axisHoverFormat,t=tu(),r=Km(),o=Oo().extendFlat,a=Ou().overrideAll,i=mg().DASHES,n=M.line,s=M.marker,c=s.line,h=H.exports=a({x:M.x,x0:M.x0,dx:M.dx,y:M.y,y0:M.y0,dy:M.dy,xperiod:M.xperiod,yperiod:M.yperiod,xperiod0:M.xperiod0,yperiod0:M.yperiod0,xperiodalignment:M.xperiodalignment,yperiodalignment:M.yperiodalignment,xhoverformat:e("x"),yhoverformat:e("y"),text:M.text,hovertext:M.hovertext,textposition:M.textposition,textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:n.color,width:n.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:r(i),dflt:"solid"}},marker:o({},t("marker"),{symbol:s.symbol,angle:s.angle,size:s.size,sizeref:s.sizeref,sizemin:s.sizemin,sizemode:s.sizemode,opacity:s.opacity,colorbar:s.colorbar,line:o({},t("marker.line"),{width:c.width})}),connectgaps:M.connectgaps,fill:o({},M.fill,{dflt:"none"}),fillcolor:A(),selected:{marker:M.selected.marker,textfont:M.selected.textfont},unselected:{marker:M.unselected.marker,textfont:M.unselected.textfont},opacity:g.opacity},"calc","nested");h.x.editType=h.y.editType=h.x0.editType=h.y0.editType="calc+clearAxisTypes",h.hovertemplate=M.hovertemplate,h.texttemplate=M.texttemplate}}),pT=Ye({"src/traces/scattergl/helpers.js"(X){"use strict";var H=mg();X.isOpenSymbol=function(g){return typeof g=="string"?H.OPEN_RE.test(g):g%200>100},X.isDotSymbol=function(g){return typeof g=="string"?H.DOT_RE.test(g):g>200}}}),IU=Ye({"src/traces/scattergl/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=pT(),M=yx(),e=Tv(),t=uu(),r=i1(),o=Qd(),a=md(),i=Dd(),n=ev(),s=zd();H.exports=function(h,v,p,T){function l(u,y){return g.coerce(h,v,M,u,y)}var _=h.marker?A.isOpenSymbol(h.marker.symbol):!1,w=t.isBubble(h),S=r(h,v,T,l);if(!S){v.visible=!1;return}o(h,v,T,l),l("xhoverformat"),l("yhoverformat");var E=S<e.PTS_LINESONLY?"lines+markers":"lines";l("text"),l("hovertext"),l("hovertemplate"),l("mode",E),t.hasMarkers(v)&&(a(h,v,p,T,l,{noAngleRef:!0,noStandOff:!0}),l("marker.line.width",_||w?1:0)),t.hasLines(v)&&(l("connectgaps"),i(h,v,p,T,l),l("line.shape")),t.hasText(v)&&(l("texttemplate"),s(h,v,T,l,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var m=(v.line||{}).color,b=(v.marker||{}).color;l("fill"),v.fill!=="none"&&n(h,v,p,l);var d=x.getComponentMethod("errorbars","supplyDefaults");d(h,v,m||b||p,{axis:"y"}),d(h,v,m||b||p,{axis:"x",inherit:"y"}),g.coerceSelectionMarkerOpacity(v,l)}}}),RU=Ye({"src/traces/scattergl/format_labels.js"(X,H){"use strict";var g=L2();H.exports=function(A,M,e){var t=A.i;return"x"in A||(A.x=M._x[t]),"y"in A||(A.y=M._y[t]),g(A,M,e)}}}),DU=Ye({"node_modules/binary-search-bounds/search-bounds.js"(X,H){"use strict";function g(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>=0?(s=c,n=c-1):i=c+1}return s}function x(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>0?(s=c,n=c-1):i=c+1}return s}function A(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<0?(s=c,i=c+1):n=c-1}return s}function M(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<=0?(s=c,i=c+1):n=c-1}return s}function e(r,o,a,i,n){for(;i<=n;){var s=i+n>>>1,c=r[s],h=a!==void 0?a(c,o):c-o;if(h===0)return s;h<=0?i=s+1:n=s-1}return-1}function t(r,o,a,i,n,s){return typeof a=="function"?s(r,o,a,i===void 0?0:i|0,n===void 0?r.length-1:n|0):s(r,o,void 0,a===void 0?0:a|0,i===void 0?r.length-1:i|0)}H.exports={ge:function(r,o,a,i,n){return t(r,o,a,i,n,g)},gt:function(r,o,a,i,n){return t(r,o,a,i,n,x)},lt:function(r,o,a,i,n){return t(r,o,a,i,n,A)},le:function(r,o,a,i,n){return t(r,o,a,i,n,M)},eq:function(r,o,a,i,n){return t(r,o,a,i,n,e)}}}}),Ev=Ye({"node_modules/pick-by-alias/index.js"(X,H){"use strict";H.exports=function(M,e,t){var r={},o,a;if(typeof e=="string"&&(e=x(e)),Array.isArray(e)){var i={};for(a=0;a<e.length;a++)i[e[a]]=!0;e=i}for(o in e)e[o]=x(e[o]);var n={};for(o in e){var s=e[o];if(Array.isArray(s))for(a=0;a<s.length;a++){var c=s[a];if(t&&(n[c]=!0),c in M){if(r[o]=M[c],t)for(var h=a;h<s.length;h++)n[s[h]]=!0;break}}else o in M&&(e[o]&&(r[o]=M[o]),t&&(n[o]=!0))}if(t)for(o in M)n[o]||(r[o]=M[o]);return r};var g={};function x(A){return g[A]?g[A]:(typeof A=="string"&&(A=g[A]=A.split(/\s*,\s*|\s+/)),A)}}}),E1=Ye({"node_modules/parse-rect/index.js"(X,H){"use strict";var g=Ev();H.exports=x;function x(A){var M;return arguments.length>1&&(A=arguments),typeof A=="string"?A=A.split(/\s/).map(parseFloat):typeof A=="number"&&(A=[A]),A.length&&typeof A[0]=="number"?A.length===1?M={width:A[0],height:A[0],x:0,y:0}:A.length===2?M={width:A[0],height:A[1],x:0,y:0}:M={x:A[0],y:A[1],width:A[2]-A[0]||0,height:A[3]-A[1]||0}:A&&(A=g(A,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),M={x:A.left||0,y:A.top||0},A.width==null?A.right?M.width=A.right-M.x:M.width=0:M.width=A.width,A.height==null?A.bottom?M.height=A.bottom-M.y:M.height=0:M.height=A.height),M}}}),d0=Ye({"node_modules/array-bounds/index.js"(X,H){"use strict";H.exports=g;function g(x,A){if(!x||x.length==null)throw Error("Argument should be an array");A==null?A=1:A=Math.floor(A);for(var M=Array(A*2),e=0;e<A;e++){for(var t=-1/0,r=1/0,o=e,a=x.length;o<a;o+=A)x[o]>t&&(t=x[o]),x[o]<r&&(r=x[o]);M[e]=r,M[A+e]=t}return M}}}),zU=Ye({"node_modules/defined/index.js"(X,H){H.exports=function(){for(var g=0;g<arguments.length;g++)if(arguments[g]!==void 0)return arguments[g]}}}),v0=Ye({"node_modules/flatten-vertex-data/index.js"(X,H){var g=$3();H.exports=x;function x(A,M,e){if(!A)throw new TypeError("must specify data as first parameter");if(e=+(e||0)|0,Array.isArray(A)&&A[0]&&typeof A[0][0]=="number"){var t=A[0].length,r=A.length*t,o,a,i,n;(!M||typeof M=="string")&&(M=new(g(M||"float32"))(r+e));var s=M.length-e;if(r!==s)throw new Error("source length "+r+" ("+t+"x"+A.length+") does not match destination length "+s);for(o=0,i=e;o<A.length;o++)for(a=0;a<t;a++)M[i++]=A[o][a]===null?NaN:A[o][a]}else if(!M||typeof M=="string"){var c=g(M||"float32");if(Array.isArray(A)||M==="array")for(M=new c(A.length+e),o=0,i=e,n=M.length;i<n;i++,o++)M[i]=A[o]===null?NaN:A[o];else e===0?M=new c(A):(M=new c(A.length+e),M.set(A,e))}else M.set(A,e);return M}}}),FU=Ye({"node_modules/is-obj/index.js"(X,H){"use strict";H.exports=function(g){var x=typeof g;return g!==null&&(x==="object"||x==="function")}}}),OU=Ye({"node_modules/math-log2/index.js"(X,H){"use strict";H.exports=Math.log2||function(g){return Math.log(g)*Math.LOG2E}}}),BU=Ye({"node_modules/@plotly/point-cluster/quad.js"(X,H){"use strict";var g=DU(),x=dx(),A=E1(),M=d0(),e=Ev(),t=zU(),r=v0(),o=FU(),a=$3(),i=OU(),n=1073741824;H.exports=function(h,v){v||(v={}),h=r(h,"float64"),v=e(v,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let p=t(v.maxDepth,255),T=t(v.bounds,M(h,2));T[0]===T[2]&&T[2]++,T[1]===T[3]&&T[3]++;let l=s(h,T),_=h.length>>>1,w;v.dtype||(v.dtype="array"),typeof v.dtype=="string"?w=new(a(v.dtype))(_):v.dtype&&(w=v.dtype,Array.isArray(w)&&(w.length=_));for(let L=0;L<_;++L)w[L]=L;let S=[],E=[],m=[],b=[];u(0,0,1,w,0,1);let d=0;for(let L=0;L<S.length;L++){let z=S[L];if(w.set)w.set(z,d);else for(let B=0,O=z.length;B<O;B++)w[B+d]=z[B];let F=d+S[L].length;b[L]=[d,F],d=F}return w.range=y,w;function u(L,z,F,B,O,I){if(!B.length)return null;let N=S[O]||(S[O]=[]),U=m[O]||(m[O]=[]),W=E[O]||(E[O]=[]),Q=N.length;if(O++,O>p||I>n){for(let re=0;re<B.length;re++)N.push(B[re]),U.push(I),W.push(null,null,null,null);return Q}if(N.push(B[0]),U.push(I),B.length<=1)return W.push(null,null,null,null),Q;let ue=F*.5,se=L+ue,he=z+ue,G=[],$=[],J=[],Z=[];for(let re=1,ne=B.length;re<ne;re++){let j=B[re],ee=l[j*2],ie=l[j*2+1];ee<se?ie<he?G.push(j):$.push(j):ie<he?J.push(j):Z.push(j)}return I<<=2,W.push(u(L,z,ue,G,O,I),u(L,he,ue,$,O,I+1),u(se,z,ue,J,O,I+2),u(se,he,ue,Z,O,I+3)),Q}function y(...L){let z;if(o(L[L.length-1])){let J=L.pop();!L.length&&(J.x!=null||J.l!=null||J.left!=null)&&(L=[J],z={}),z=e(J,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else z={};L.length||(L=T);let F=A(...L),[B,O,I,N]=[Math.min(F.x,F.x+F.width),Math.min(F.y,F.y+F.height),Math.max(F.x,F.x+F.width),Math.max(F.y,F.y+F.height)],[U,W,Q,ue]=s([B,O,I,N],T),se=t(z.level,S.length);if(z.d!=null){let J;typeof z.d=="number"?J=[z.d,z.d]:z.d.length&&(J=z.d),se=Math.min(Math.max(Math.ceil(-i(Math.abs(J[0])/(T[2]-T[0]))),Math.ceil(-i(Math.abs(J[1])/(T[3]-T[1])))),se)}if(se=Math.min(se,S.length),z.lod)return f(U,W,Q,ue,se);let he=[];G(0,0,1,0,0,1);function G(J,Z,re,ne,j,ee){if(j===null||ee===null)return;let ie=J+re,fe=Z+re;if(U>ie||W>fe||Q<J||ue<Z||ne>=se||j===ee)return;let be=S[ne];ee===void 0&&(ee=be.length);for(let Me=j;Me<ee;Me++){let ge=be[Me],ce=h[ge*2],ze=h[ge*2+1];ce>=B&&ce<=I&&ze>=O&&ze<=N&&he.push(ge)}let Ae=E[ne],Be=Ae[j*4+0],Ie=Ae[j*4+1],Ze=Ae[j*4+2],at=Ae[j*4+3],it=$(Ae,j+1),et=re*.5,lt=ne+1;G(J,Z,et,lt,Be,Ie||Ze||at||it),G(J,Z+et,et,lt,Ie,Ze||at||it),G(J+et,Z,et,lt,Ze,at||it),G(J+et,Z+et,et,lt,at,it)}function $(J,Z){let re=null,ne=0;for(;re===null;)if(re=J[Z*4+ne],ne++,ne>J.length)return null;return re}return he}function f(L,z,F,B,O){let I=[];for(let N=0;N<O;N++){let U=m[N],W=b[N][0],Q=P(L,z,N),ue=P(F,B,N),se=g.ge(U,Q),he=g.gt(U,ue,se,U.length-1);I[N]=[se+W,he+W]}return I}function P(L,z,F){let B=1,O=.5,I=.5,N=.5;for(let U=0;U<F;U++)B<<=2,B+=L<O?z<I?0:1:z<I?2:3,N*=.5,O+=L<O?-N:N,I+=z<I?-N:N;return B}};function s(c,h){let[v,p,T,l]=h,_=1/(T-v),w=1/(l-p),S=new Array(c.length);for(let E=0,m=c.length/2;E<m;E++)S[2*E]=x((c[2*E]-v)*_,0,1),S[2*E+1]=x((c[2*E+1]-p)*w,0,1);return S}}}),dT=Ye({"node_modules/@plotly/point-cluster/index.js"(X,H){"use strict";H.exports=BU()}}),R5=Ye({"node_modules/abs-svg-path/index.js"(X,H){H.exports=g;function g(x){var A=0,M=0,e=0,t=0;return x.map(function(r){r=r.slice();var o=r[0],a=o.toUpperCase();if(o!=a)switch(r[0]=a,o){case"a":r[6]+=e,r[7]+=t;break;case"v":r[1]+=t;break;case"h":r[1]+=e;break;default:for(var i=1;i<r.length;)r[i++]+=e,r[i++]+=t}switch(a){case"Z":e=A,t=M;break;case"H":e=r[1];break;case"V":t=r[1];break;case"M":e=A=r[1],t=M=r[2];break;default:e=r[r.length-2],t=r[r.length-1]}return r})}}}),NU=Ye({"node_modules/svg-arc-to-cubic-bezier/cjs/index.js"(X,H){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var g=function(){function o(a,i){var n=[],s=!0,c=!1,h=void 0;try{for(var v=a[Symbol.iterator](),p;!(s=(p=v.next()).done)&&(n.push(p.value),!(i&&n.length===i));s=!0);}catch(T){c=!0,h=T}finally{try{!s&&v.return&&v.return()}finally{if(c)throw h}}return n}return function(a,i){if(Array.isArray(a))return a;if(Symbol.iterator in Object(a))return o(a,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),x=Math.PI*2,A=function(a,i,n,s,c,h,v){var p=a.x,T=a.y;p*=i,T*=n;var l=s*p-c*T,_=c*p+s*T;return{x:l+h,y:_+v}},M=function(a,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),s=Math.cos(a),c=Math.sin(a),h=Math.cos(a+i),v=Math.sin(a+i);return[{x:s-c*n,y:c+s*n},{x:h+v*n,y:v-h*n},{x:h,y:v}]},e=function(a,i,n,s){var c=a*s-i*n<0?-1:1,h=a*n+i*s;return h>1&&(h=1),h<-1&&(h=-1),c*Math.acos(h)},t=function(a,i,n,s,c,h,v,p,T,l,_,w){var S=Math.pow(c,2),E=Math.pow(h,2),m=Math.pow(_,2),b=Math.pow(w,2),d=S*E-S*b-E*m;d<0&&(d=0),d/=S*b+E*m,d=Math.sqrt(d)*(v===p?-1:1);var u=d*c/h*w,y=d*-h/c*_,f=l*u-T*y+(a+n)/2,P=T*u+l*y+(i+s)/2,L=(_-u)/c,z=(w-y)/h,F=(-_-u)/c,B=(-w-y)/h,O=e(1,0,L,z),I=e(L,z,F,B);return p===0&&I>0&&(I-=x),p===1&&I<0&&(I+=x),[f,P,O,I]},r=function(a){var i=a.px,n=a.py,s=a.cx,c=a.cy,h=a.rx,v=a.ry,p=a.xAxisRotation,T=p===void 0?0:p,l=a.largeArcFlag,_=l===void 0?0:l,w=a.sweepFlag,S=w===void 0?0:w,E=[];if(h===0||v===0)return[];var m=Math.sin(T*x/360),b=Math.cos(T*x/360),d=b*(i-s)/2+m*(n-c)/2,u=-m*(i-s)/2+b*(n-c)/2;if(d===0&&u===0)return[];h=Math.abs(h),v=Math.abs(v);var y=Math.pow(d,2)/Math.pow(h,2)+Math.pow(u,2)/Math.pow(v,2);y>1&&(h*=Math.sqrt(y),v*=Math.sqrt(y));var f=t(i,n,s,c,h,v,_,S,m,b,d,u),P=g(f,4),L=P[0],z=P[1],F=P[2],B=P[3],O=Math.abs(B)/(x/4);Math.abs(1-O)<1e-7&&(O=1);var I=Math.max(Math.ceil(O),1);B/=I;for(var N=0;N<I;N++)E.push(M(F,B)),F+=B;return E.map(function(U){var W=A(U[0],h,v,b,m,L,z),Q=W.x,ue=W.y,se=A(U[1],h,v,b,m,L,z),he=se.x,G=se.y,$=A(U[2],h,v,b,m,L,z),J=$.x,Z=$.y;return{x1:Q,y1:ue,x2:he,y2:G,x:J,y:Z}})};X.default=r,H.exports=X.default}}),UU=Ye({"node_modules/svg-path-bounds/node_modules/normalize-svg-path/index.js"(X,H){"use strict";H.exports=x;var g=NU();function x(e){for(var t,r=[],o=0,a=0,i=0,n=0,s=null,c=null,h=0,v=0,p=0,T=e.length;p<T;p++){var l=e[p],_=l[0];switch(_){case"M":i=l[1],n=l[2];break;case"A":var w=g({px:h,py:v,cx:l[6],cy:l[7],rx:l[1],ry:l[2],xAxisRotation:l[3],largeArcFlag:l[4],sweepFlag:l[5]});if(!w.length)continue;for(var S=0,E;S<w.length;S++)E=w[S],l=["C",E.x1,E.y1,E.x2,E.y2,E.x,E.y],S<w.length-1&&r.push(l);break;case"S":var m=h,b=v;(t=="C"||t=="S")&&(m+=m-o,b+=b-a),l=["C",m,b,l[1],l[2],l[3],l[4]];break;case"T":t=="Q"||t=="T"?(s=h*2-s,c=v*2-c):(s=h,c=v),l=M(h,v,s,c,l[1],l[2]);break;case"Q":s=l[1],c=l[2],l=M(h,v,l[1],l[2],l[3],l[4]);break;case"L":l=A(h,v,l[1],l[2]);break;case"H":l=A(h,v,l[1],v);break;case"V":l=A(h,v,h,l[1]);break;case"Z":l=A(h,v,i,n);break}t=_,h=l[l.length-2],v=l[l.length-1],l.length>4?(o=l[l.length-4],a=l[l.length-3]):(o=h,a=v),r.push(l)}return r}function A(e,t,r,o){return["C",e,t,r,o,r,o]}function M(e,t,r,o,a,i){return["C",e/3+2/3*r,t/3+2/3*o,a/3+2/3*r,i/3+2/3*o,a,i]}}}),D5=Ye({"node_modules/is-svg-path/index.js"(X,H){"use strict";H.exports=function(x){return typeof x!="string"?!1:(x=x.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(x)&&/[\dz]$/i.test(x)&&x.length>4))}}}),jU=Ye({"node_modules/svg-path-bounds/index.js"(X,H){"use strict";var g=A_(),x=R5(),A=UU(),M=D5(),e=X_();H.exports=t;function t(r){if(Array.isArray(r)&&r.length===1&&typeof r[0]=="string"&&(r=r[0]),typeof r=="string"&&(e(M(r),"String is not an SVG path."),r=g(r)),e(Array.isArray(r),"Argument should be a string or an array of path segments."),r=x(r),r=A(r),!r.length)return[0,0,0,0];for(var o=[1/0,1/0,-1/0,-1/0],a=0,i=r.length;a<i;a++)for(var n=r[a].slice(1),s=0;s<n.length;s+=2)n[s+0]<o[0]&&(o[0]=n[s+0]),n[s+1]<o[1]&&(o[1]=n[s+1]),n[s+0]>o[2]&&(o[2]=n[s+0]),n[s+1]>o[3]&&(o[3]=n[s+1]);return o}}}),VU=Ye({"node_modules/normalize-svg-path/index.js"(X,H){var g=Math.PI,x=o(120);H.exports=A;function A(a){for(var i,n=[],s=0,c=0,h=0,v=0,p=null,T=null,l=0,_=0,w=0,S=a.length;w<S;w++){var E=a[w],m=E[0];switch(m){case"M":h=E[1],v=E[2];break;case"A":E=t(l,_,E[1],E[2],o(E[3]),E[4],E[5],E[6],E[7]),E.unshift("C"),E.length>7&&(n.push(E.splice(0,7)),E.unshift("C"));break;case"S":var b=l,d=_;(i=="C"||i=="S")&&(b+=b-s,d+=d-c),E=["C",b,d,E[1],E[2],E[3],E[4]];break;case"T":i=="Q"||i=="T"?(p=l*2-p,T=_*2-T):(p=l,T=_),E=e(l,_,p,T,E[1],E[2]);break;case"Q":p=E[1],T=E[2],E=e(l,_,E[1],E[2],E[3],E[4]);break;case"L":E=M(l,_,E[1],E[2]);break;case"H":E=M(l,_,E[1],_);break;case"V":E=M(l,_,l,E[1]);break;case"Z":E=M(l,_,h,v);break}i=m,l=E[E.length-2],_=E[E.length-1],E.length>4?(s=E[E.length-4],c=E[E.length-3]):(s=l,c=_),n.push(E)}return n}function M(a,i,n,s){return["C",a,i,n,s,n,s]}function e(a,i,n,s,c,h){return["C",a/3+2/3*n,i/3+2/3*s,c/3+2/3*n,h/3+2/3*s,c,h]}function t(a,i,n,s,c,h,v,p,T,l){if(l)f=l[0],P=l[1],u=l[2],y=l[3];else{var _=r(a,i,-c);a=_.x,i=_.y,_=r(p,T,-c),p=_.x,T=_.y;var w=(a-p)/2,S=(i-T)/2,E=w*w/(n*n)+S*S/(s*s);E>1&&(E=Math.sqrt(E),n=E*n,s=E*s);var m=n*n,b=s*s,d=(h==v?-1:1)*Math.sqrt(Math.abs((m*b-m*S*S-b*w*w)/(m*S*S+b*w*w)));d==1/0&&(d=1);var u=d*n*S/s+(a+p)/2,y=d*-s*w/n+(i+T)/2,f=Math.asin(((i-y)/s).toFixed(9)),P=Math.asin(((T-y)/s).toFixed(9));f=a<u?g-f:f,P=p<u?g-P:P,f<0&&(f=g*2+f),P<0&&(P=g*2+P),v&&f>P&&(f=f-g*2),!v&&P>f&&(P=P-g*2)}if(Math.abs(P-f)>x){var L=P,z=p,F=T;P=f+x*(v&&P>f?1:-1),p=u+n*Math.cos(P),T=y+s*Math.sin(P);var B=t(p,T,n,s,c,0,v,z,F,[P,L,u,y])}var O=Math.tan((P-f)/4),I=4/3*n*O,N=4/3*s*O,U=[2*a-(a+I*Math.sin(f)),2*i-(i-N*Math.cos(f)),p+I*Math.sin(P),T-N*Math.cos(P),p,T];if(l)return U;B&&(U=U.concat(B));for(var W=0;W<U.length;){var Q=r(U[W],U[W+1],c);U[W++]=Q.x,U[W++]=Q.y}return U}function r(a,i,n){return{x:a*Math.cos(n)-i*Math.sin(n),y:a*Math.sin(n)+i*Math.cos(n)}}function o(a){return a*(g/180)}}}),qU=Ye({"node_modules/draw-svg-path/index.js"(X,H){var g=R5(),x=VU(),A={M:"moveTo",C:"bezierCurveTo"};H.exports=function(M,e){M.beginPath(),x(g(e)).forEach(function(t){var r=t[0],o=t.slice(1);M[A[r]].apply(M,o)}),M.closePath()}}}),HU=Ye({"node_modules/bitmap-sdf/index.js"(X,H){"use strict";var g=dx();H.exports=A;var x=1e20;function A(t,r){r||(r={});var o=r.cutoff==null?.25:r.cutoff,a=r.radius==null?8:r.radius,i=r.channel||0,n,s,c,h,v,p,T,l,_,w,S;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!r.width||!r.height)throw Error("For raw data width and height should be provided by options");n=r.width,s=r.height,h=t,r.stride?p=r.stride:p=Math.floor(t.length/n/s)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(l=t,T=l.getContext("2d"),n=l.width,s=l.height,_=T.getImageData(0,0,n,s),h=_.data,p=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(l=t.canvas,T=t,n=l.width,s=l.height,_=T.getImageData(0,0,n,s),h=_.data,p=4):window.ImageData&&t instanceof window.ImageData&&(_=t,n=t.width,s=t.height,h=_.data,p=4);if(c=Math.max(n,s),window.Uint8ClampedArray&&h instanceof window.Uint8ClampedArray||window.Uint8Array&&h instanceof window.Uint8Array)for(v=h,h=Array(n*s),w=0,S=v.length;w<S;w++)h[w]=v[w*p+i]/255;else if(p!==1)throw Error("Raw data can have only 1 value per pixel");var E=Array(n*s),m=Array(n*s),b=Array(c),d=Array(c),u=Array(c+1),y=Array(c);for(w=0,S=n*s;w<S;w++){var f=h[w];E[w]=f===1?0:f===0?x:Math.pow(Math.max(0,.5-f),2),m[w]=f===1?x:f===0?0:Math.pow(Math.max(0,f-.5),2)}M(E,n,s,b,d,y,u),M(m,n,s,b,d,y,u);var P=window.Float32Array?new Float32Array(n*s):new Array(n*s);for(w=0,S=n*s;w<S;w++)P[w]=g(1-((E[w]-m[w])/a+o),0,1);return P}function M(t,r,o,a,i,n,s){for(var c=0;c<r;c++){for(var h=0;h<o;h++)a[h]=t[h*r+c];for(e(a,i,n,s,o),h=0;h<o;h++)t[h*r+c]=i[h]}for(h=0;h<o;h++){for(c=0;c<r;c++)a[c]=t[h*r+c];for(e(a,i,n,s,r),c=0;c<r;c++)t[h*r+c]=Math.sqrt(i[c])}}function e(t,r,o,a,i){o[0]=0,a[0]=-x,a[1]=+x;for(var n=1,s=0;n<i;n++){for(var c=(t[n]+n*n-(t[o[s]]+o[s]*o[s]))/(2*n-2*o[s]);c<=a[s];)s--,c=(t[n]+n*n-(t[o[s]]+o[s]*o[s]))/(2*n-2*o[s]);s++,o[s]=n,a[s]=c,a[s+1]=+x}for(n=0,s=0;n<i;n++){for(;a[s+1]<n;)s++;r[n]=(n-o[s])*(n-o[s])+t[o[s]]}}}}),GU=Ye({"node_modules/svg-path-sdf/index.js"(X,H){"use strict";var g=jU(),x=A_(),A=qU(),M=D5(),e=HU(),t=document.createElement("canvas"),r=t.getContext("2d");H.exports=o;function o(n,s){if(!M(n))throw Error("Argument should be valid svg path string");s||(s={});var c,h;s.shape?(c=s.shape[0],h=s.shape[1]):(c=t.width=s.w||s.width||200,h=t.height=s.h||s.height||200);var v=Math.min(c,h),p=s.stroke||0,T=s.viewbox||s.viewBox||g(n),l=[c/(T[2]-T[0]),h/(T[3]-T[1])],_=Math.min(l[0]||0,l[1]||0)/2;if(r.fillStyle="black",r.fillRect(0,0,c,h),r.fillStyle="white",p&&(typeof p!="number"&&(p=1),p>0?r.strokeStyle="white":r.strokeStyle="black",r.lineWidth=Math.abs(p)),r.translate(c*.5,h*.5),r.scale(_,_),i()){var w=new Path2D(n);r.fill(w),p&&r.stroke(w)}else{var S=x(n);A(r,S),r.fill(),p&&r.stroke()}r.setTransform(1,0,0,1,0,0);var E=e(r,{cutoff:s.cutoff!=null?s.cutoff:.5,radius:s.radius!=null?s.radius:v*.5});return E}var a;function i(){if(a!=null)return a;var n=document.createElement("canvas").getContext("2d");if(n.canvas.width=n.canvas.height=1,!window.Path2D)return a=!1;var s=new Path2D("M0,0h1v1h-1v-1Z");n.fillStyle="black",n.fill(s);var c=n.getImageData(0,0,1,1);return a=c&&c.data&&c.data[3]===255}}}),m0=Ye({"src/traces/scattergl/convert.js"(X,H){"use strict";var g=jo(),x=GU(),A=hg(),M=Hn(),e=ta(),t=e.isArrayOrTypedArray,r=Bo(),o=Xc(),a=em().formatColor,i=uu(),n=t1(),s=pT(),c=mg(),h=Xm().DESELECTDIM,v={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},p=Qp().appendArrayPointValue;function T(B,O){var I,N={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},U=B._context.plotGlPixelRatio;if(O.visible!==!0)return N;if(i.hasText(O)&&(N.text=l(B,O),N.textSel=E(B,O,O.selected),N.textUnsel=E(B,O,O.unselected)),i.hasMarkers(O)&&(N.marker=w(B,O),N.markerSel=S(B,O,O.selected),N.markerUnsel=S(B,O,O.unselected),!O.unselected&&t(O.marker.opacity))){var W=O.marker.opacity;for(N.markerUnsel.opacity=new Array(W.length),I=0;I<W.length;I++)N.markerUnsel.opacity[I]=h*W[I]}if(i.hasLines(O)){N.line={overlay:!0,thickness:O.line.width*U,color:O.line.color,opacity:O.opacity};var Q=(c.DASHES[O.line.dash]||[1]).slice();for(I=0;I<Q.length;++I)Q[I]*=O.line.width*U;N.line.dashes=Q}return O.error_x&&O.error_x.visible&&(N.errorX=m(O,O.error_x,U)),O.error_y&&O.error_y.visible&&(N.errorY=m(O,O.error_y,U)),O.fill&&O.fill!=="none"&&(N.fill={closed:!0,fill:O.fillcolor,thickness:0}),N}function l(B,O){var I=B._fullLayout,N=O._length,U=O.textfont,W=O.textposition,Q=t(W)?W:[W],ue=U.color,se=U.size,he=U.family,G=U.weight,$=U.style,J=U.variant,Z={},re,ne=B._context.plotGlPixelRatio,j=O.texttemplate;if(j){Z.text=[];var ee=I._d3locale,ie=Array.isArray(j),fe=ie?Math.min(j.length,N):N,be=ie?function(et){return j[et]}:function(){return j};for(re=0;re<fe;re++){var Ae={i:re},Be=O._module.formatLabels(Ae,O,I),Ie={};p(Ie,O,re);var Ze=O._meta||{};Z.text.push(e.texttemplateString(be(re),Be,ee,Ie,Ae,Ze))}}else t(O.text)&&O.text.length<N?Z.text=O.text.slice():Z.text=O.text;if(t(Z.text))for(re=Z.text.length;re<N;re++)Z.text[re]="";for(Z.opacity=O.opacity,Z.font={},Z.align=[],Z.baseline=[],re=0;re<Q.length;re++){var at=Q[re].split(/\s+/);switch(at[1]){case"left":Z.align.push("right");break;case"right":Z.align.push("left");break;default:Z.align.push(at[1])}switch(at[0]){case"top":Z.baseline.push("bottom");break;case"bottom":Z.baseline.push("top");break;default:Z.baseline.push(at[0])}}if(t(ue))for(Z.color=new Array(N),re=0;re<N;re++)Z.color[re]=ue[re];else Z.color=ue;if(t(se)||Array.isArray(he)||t(G)||Array.isArray($)||Array.isArray(J))for(Z.font=new Array(N),re=0;re<N;re++){var it=Z.font[re]={};it.size=(e.isTypedArray(se)?se[re]:t(se)?g(se[re])?se[re]:0:se)*ne,it.family=Array.isArray(he)?he[re]:he,it.weight=_(t(G)?G[re]:G),it.style=Array.isArray($)?$[re]:$,it.variant=Array.isArray(J)?J[re]:J}else Z.font={size:se*ne,family:he,weight:_(G),style:$,variant:J};return Z}function _(B){return B<=1e3?B>500?"bold":"normal":B}function w(B,O){var I=O._length,N=O.marker,U={},W,Q=t(N.symbol),ue=t(N.angle),se=t(N.color),he=t(N.line.color),G=t(N.opacity),$=t(N.size),J=t(N.line.width),Z;if(Q||(Z=s.isOpenSymbol(N.symbol)),Q||se||he||G||ue){U.symbols=new Array(I),U.angles=new Array(I),U.colors=new Array(I),U.borderColors=new Array(I);var re=N.symbol,ne=N.angle,j=a(N,N.opacity,I),ee=a(N.line,N.opacity,I);if(!t(ee[0])){var ie=ee;for(ee=Array(I),W=0;W<I;W++)ee[W]=ie}if(!t(j[0])){var fe=j;for(j=Array(I),W=0;W<I;W++)j[W]=fe}if(!t(re)){var be=re;for(re=Array(I),W=0;W<I;W++)re[W]=be}if(!t(ne)){var Ae=ne;for(ne=Array(I),W=0;W<I;W++)ne[W]=Ae}for(U.symbols=re,U.angles=ne,U.colors=j,U.borderColors=ee,W=0;W<I;W++)Q&&(Z=s.isOpenSymbol(N.symbol[W])),Z&&(ee[W]=j[W].slice(),j[W]=j[W].slice(),j[W][3]=0);for(U.opacity=O.opacity,U.markers=new Array(I),W=0;W<I;W++)U.markers[W]=P({mx:U.symbols[W],ma:U.angles[W]},O)}else Z?(U.color=A(N.color,"uint8"),U.color[3]=0,U.borderColor=A(N.color,"uint8")):(U.color=A(N.color,"uint8"),U.borderColor=A(N.line.color,"uint8")),U.opacity=O.opacity*N.opacity,U.marker=P({mx:N.symbol,ma:N.angle},O);var Be=1,Ie=n(O,Be),Ze;if($||J){var at=U.sizes=new Array(I),it=U.borderSizes=new Array(I),et=0,lt;if($){for(W=0;W<I;W++)at[W]=Ie(N.size[W]),et+=at[W];lt=et/I}else for(Ze=Ie(N.size),W=0;W<I;W++)at[W]=Ze;if(J)for(W=0;W<I;W++)it[W]=N.line.width[W];else for(Ze=N.line.width,W=0;W<I;W++)it[W]=Ze;U.sizeAvg=lt}else U.size=Ie(N&&N.size||10),U.borderSizes=Ie(N.line.width);return U}function S(B,O,I){var N=O.marker,U={};return I&&(I.marker&&I.marker.symbol?U=w(B,e.extendFlat({},N,I.marker)):I.marker&&(I.marker.size&&(U.size=I.marker.size),I.marker.color&&(U.colors=I.marker.color),I.marker.opacity!==void 0&&(U.opacity=I.marker.opacity))),U}function E(B,O,I){var N={};if(!I)return N;if(I.textfont){var U={opacity:1,text:O.text,texttemplate:O.texttemplate,textposition:O.textposition,textfont:e.extendFlat({},O.textfont)};I.textfont&&e.extendFlat(U.textfont,I.textfont),N=l(B,U)}return N}function m(B,O,I){var N={capSize:O.width*2*I,lineWidth:O.thickness*I,color:O.color};return O.copy_ystyle&&(N=B.error_y),N}var b=c.SYMBOL_SDF_SIZE,d=c.SYMBOL_SIZE,u=c.SYMBOL_STROKE,y={},f=r.symbolFuncs[0](d*.05);function P(B,O){var I=B.mx;if(I==="circle")return null;var N,U,W=r.symbolNumber(I),Q=r.symbolFuncs[W%100],ue=!!r.symbolNoDot[W%100],se=!!r.symbolNoFill[W%100],he=s.isDotSymbol(I);if(B.ma&&(I+="_"+B.ma),y[I])return y[I];var G=r.getMarkerAngle(B,O);return he&&!ue?N=Q(d*1.1,G)+f:N=Q(d,G),U=x(N,{w:b,h:b,viewBox:[-d,-d,d,d],stroke:se?u:-u}),y[I]=U,U||null}function L(B,O,I){var N=I.length,U=N/2,W,Q;if(i.hasLines(O)&&U)if(O.line.shape==="hv"){for(W=[],Q=0;Q<U-1;Q++)isNaN(I[Q*2])||isNaN(I[Q*2+1])?W.push(NaN,NaN,NaN,NaN):(W.push(I[Q*2],I[Q*2+1]),!isNaN(I[Q*2+2])&&!isNaN(I[Q*2+3])?W.push(I[Q*2+2],I[Q*2+1]):W.push(NaN,NaN));W.push(I[N-2],I[N-1])}else if(O.line.shape==="hvh"){for(W=[],Q=0;Q<U-1;Q++)if(isNaN(I[Q*2])||isNaN(I[Q*2+1])||isNaN(I[Q*2+2])||isNaN(I[Q*2+3]))!isNaN(I[Q*2])&&!isNaN(I[Q*2+1])?W.push(I[Q*2],I[Q*2+1]):W.push(NaN,NaN),W.push(NaN,NaN);else{var ue=(I[Q*2]+I[Q*2+2])/2;W.push(I[Q*2],I[Q*2+1],ue,I[Q*2+1],ue,I[Q*2+3])}W.push(I[N-2],I[N-1])}else if(O.line.shape==="vhv"){for(W=[],Q=0;Q<U-1;Q++)if(isNaN(I[Q*2])||isNaN(I[Q*2+1])||isNaN(I[Q*2+2])||isNaN(I[Q*2+3]))!isNaN(I[Q*2])&&!isNaN(I[Q*2+1])?W.push(I[Q*2],I[Q*2+1]):W.push(NaN,NaN),W.push(NaN,NaN);else{var se=(I[Q*2+1]+I[Q*2+3])/2;W.push(I[Q*2],I[Q*2+1],I[Q*2],se,I[Q*2+2],se)}W.push(I[N-2],I[N-1])}else if(O.line.shape==="vh"){for(W=[],Q=0;Q<U-1;Q++)isNaN(I[Q*2])||isNaN(I[Q*2+1])?W.push(NaN,NaN,NaN,NaN):(W.push(I[Q*2],I[Q*2+1]),!isNaN(I[Q*2+2])&&!isNaN(I[Q*2+3])?W.push(I[Q*2],I[Q*2+3]):W.push(NaN,NaN));W.push(I[N-2],I[N-1])}else W=I;var he=!1;for(Q=0;Q<W.length;Q++)if(isNaN(W[Q])){he=!0;break}var G=he||W.length>c.TOO_MANY_POINTS||i.hasMarkers(O)?"rect":"round";if(he&&O.connectgaps){var $=W[0],J=W[1];for(Q=0;Q<W.length;Q+=2)isNaN(W[Q])||isNaN(W[Q+1])?(W[Q]=$,W[Q+1]=J):($=W[Q],J=W[Q+1])}return{join:G,positions:W}}function z(B,O,I,N,U){var W=M.getComponentMethod("errorbars","makeComputeError"),Q=o.getFromId(B,O.xaxis,"x"),ue=o.getFromId(B,O.yaxis,"y"),se=I.length/2,he={};function G($,J){var Z=J._id.charAt(0),re=O["error_"+Z];if(re&&re.visible&&(J.type==="linear"||J.type==="log")){for(var ne=W(re),j={x:0,y:1}[Z],ee={x:[0,1,2,3],y:[2,3,0,1]}[Z],ie=new Float64Array(4*se),fe=1/0,be=-1/0,Ae=0,Be=0;Ae<se;Ae++,Be+=4){var Ie=$[Ae];if(g(Ie)){var Ze=I[Ae*2+j],at=ne(Ie,Ae),it=at[0],et=at[1];if(g(it)&&g(et)){var lt=Ie-it,Me=Ie+et;ie[Be+ee[0]]=Ze-J.c2l(lt),ie[Be+ee[1]]=J.c2l(Me)-Ze,ie[Be+ee[2]]=0,ie[Be+ee[3]]=0,fe=Math.min(fe,Ie-it),be=Math.max(be,Ie+et)}}}he[Z]={positions:I,errors:ie,_bnds:[fe,be]}}}return G(N,Q),G(U,ue),he}function F(B,O,I,N){var U=O._length,W={},Q;if(i.hasMarkers(O)){var ue=I.font,se=I.align,he=I.baseline;for(W.offset=new Array(U),Q=0;Q<U;Q++){var G=N.sizes?N.sizes[Q]:N.size,$=t(ue)?ue[Q].size:ue.size,J=t(se)?se.length>1?se[Q]:se[0]:se,Z=t(he)?he.length>1?he[Q]:he[0]:he,re=v[J],ne=v[Z],j=G?G/.8+1:0,ee=-ne*j-ne*.5;W.offset[Q]=[re*j/$,ee/$]}}return W}H.exports={style:T,markerStyle:w,markerSelection:S,linePositions:L,errorBarPositions:z,textPosition:F}}}),z5=Ye({"src/traces/scattergl/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=M._scene,t={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},r={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return M._scene||(e=M._scene={},e.init=function(){g.extendFlat(e,r,t)},e.init(),e.update=function(a){var i=g.repeat(a,e.count);if(e.fill2d&&e.fill2d.update(i),e.scatter2d&&e.scatter2d.update(i),e.line2d&&e.line2d.update(i),e.error2d&&e.error2d.update(i.concat(i)),e.select2d&&e.select2d.update(i),e.glText)for(var n=0;n<e.count;n++)e.glText[n].update(a)},e.draw=function(){for(var a=e.count,i=e.fill2d,n=e.error2d,s=e.line2d,c=e.scatter2d,h=e.glText,v=e.select2d,p=e.selectBatch,T=e.unselectBatch,l=0;l<a;l++){if(i&&e.fillOrder[l]&&i.draw(e.fillOrder[l]),s&&e.lineOptions[l]&&s.draw(l),n&&(e.errorXOptions[l]&&n.draw(l),e.errorYOptions[l]&&n.draw(l+a)),c&&e.markerOptions[l])if(T[l].length){var _=g.repeat([],e.count);_[l]=T[l],c.draw(_)}else p[l].length||c.draw(l);h[l]&&e.textOptions[l]&&h[l].render()}v&&v.draw(p),e.dirty=!1},e.destroy=function(){e.fill2d&&e.fill2d.destroy&&e.fill2d.destroy(),e.scatter2d&&e.scatter2d.destroy&&e.scatter2d.destroy(),e.error2d&&e.error2d.destroy&&e.error2d.destroy(),e.line2d&&e.line2d.destroy&&e.line2d.destroy(),e.select2d&&e.select2d.destroy&&e.select2d.destroy(),e.glText&&e.glText.forEach(function(a){a.destroy&&a.destroy()}),e.lineOptions=null,e.fillOptions=null,e.markerOptions=null,e.markerSelectedOptions=null,e.markerUnselectedOptions=null,e.errorXOptions=null,e.errorYOptions=null,e.textOptions=null,e.textSelectedOptions=null,e.textUnselectedOptions=null,e.selectBatch=null,e.unselectBatch=null,M._scene=null}),e.dirty||g.extendFlat(e,t),e}}}),WU=Ye({"src/traces/scattergl/calc.js"(X,H){"use strict";var g=dT(),x=ta(),A=Xc(),M=Yd().findExtremes,e=tv(),t=Bd(),r=t.calcMarkerSize,o=t.calcAxisExpansion,a=t.setFirstScatter,i=Fd(),n=m0(),s=z5(),c=ks().BADNUM,h=mg().TOO_MANY_POINTS;H.exports=function(l,_){var w=l._fullLayout,S=_._xA=A.getFromId(l,_.xaxis,"x"),E=_._yA=A.getFromId(l,_.yaxis,"y"),m=w._plots[_.xaxis+_.yaxis],b=_._length,d=b>=h,u=b*2,y={},f,P=S.makeCalcdata(_,"x"),L=E.makeCalcdata(_,"y"),z=e(_,S,"x",P),F=e(_,E,"y",L),B=z.vals,O=F.vals;_._x=B,_._y=O,_.xperiodalignment&&(_._origX=P,_._xStarts=z.starts,_._xEnds=z.ends),_.yperiodalignment&&(_._origY=L,_._yStarts=F.starts,_._yEnds=F.ends);var I=new Array(u),N=new Array(b);for(f=0;f<b;f++)I[f*2]=B[f]===c?NaN:B[f],I[f*2+1]=O[f]===c?NaN:O[f],N[f]=f;if(S.type==="log")for(f=0;f<u;f+=2)I[f]=S.c2l(I[f]);if(E.type==="log")for(f=1;f<u;f+=2)I[f]=E.c2l(I[f]);d&&S.type!=="log"&&E.type!=="log"?y.tree=g(I):y.ids=N,i(l,_);var U=p(l,m,_,I,B,O),W=s(l,m);a(w,_);var Q;return d?U.marker&&(Q=U.marker.sizeAvg||Math.max(U.marker.size,3)):Q=r(_,b),o(l,_,S,E,B,O,Q),U.errorX&&v(_,S,U.errorX),U.errorY&&v(_,E,U.errorY),U.fill&&!W.fill2d&&(W.fill2d=!0),U.marker&&!W.scatter2d&&(W.scatter2d=!0),U.line&&!W.line2d&&(W.line2d=!0),(U.errorX||U.errorY)&&!W.error2d&&(W.error2d=!0),U.text&&!W.glText&&(W.glText=!0),U.marker&&(U.marker.snap=b),W.lineOptions.push(U.line),W.errorXOptions.push(U.errorX),W.errorYOptions.push(U.errorY),W.fillOptions.push(U.fill),W.markerOptions.push(U.marker),W.markerSelectedOptions.push(U.markerSel),W.markerUnselectedOptions.push(U.markerUnsel),W.textOptions.push(U.text),W.textSelectedOptions.push(U.textSel),W.textUnselectedOptions.push(U.textUnsel),W.selectBatch.push([]),W.unselectBatch.push([]),y._scene=W,y.index=W.count,y.x=B,y.y=O,y.positions=I,W.count++,[{x:!1,y:!1,t:y,trace:_}]};function v(T,l,_){var w=T._extremes[l._id],S=M(l,_._bnds,{padded:!0});w.min=w.min.concat(S.min),w.max=w.max.concat(S.max)}function p(T,l,_,w,S,E){var m=n.style(T,_);if(m.marker&&(m.marker.positions=w),m.line&&w.length>1&&x.extendFlat(m.line,n.linePositions(T,_,w)),m.errorX||m.errorY){var b=n.errorBarPositions(T,_,w,S,E);m.errorX&&x.extendFlat(m.errorX,b.x),m.errorY&&x.extendFlat(m.errorY,b.y)}return m.text&&(x.extendFlat(m.text,{positions:w},n.textPosition(T,_,m.text,m.marker)),x.extendFlat(m.textSel,{positions:w},n.textPosition(T,_,m.text,m.markerSel)),x.extendFlat(m.textUnsel,{positions:w},n.textPosition(T,_,m.text,m.markerUnsel))),m}}}),F5=Ye({"src/traces/scattergl/edit_style.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xm().DESELECTDIM;function M(e){var t=e[0],r=t.trace,o=t.t,a=o._scene,i=o.index,n=a.selectBatch[i],s=a.unselectBatch[i],c=a.textOptions[i],h=a.textSelectedOptions[i]||{},v=a.textUnselectedOptions[i]||{},p=g.extendFlat({},c),T,l;if(n.length||s.length){var _=h.color,w=v.color,S=c.color,E=g.isArrayOrTypedArray(S);for(p.color=new Array(r._length),T=0;T<n.length;T++)l=n[T],p.color[l]=_||(E?S[l]:S);for(T=0;T<s.length;T++){l=s[T];var m=E?S[l]:S;p.color[l]=w||(_?m:x.addOpacity(m,A))}}a.glText[i].update(p)}H.exports={styleTextSelection:M}}}),O5=Ye({"src/traces/scattergl/select.js"(X,H){"use strict";var g=uu(),x=F5().styleTextSelection;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n=t[0].t,s=i._length,c=n.x,h=n.y,v=n._scene,p=n.index;if(!v)return a;var T=g.hasText(i),l=g.hasMarkers(i),_=!l&&!T;if(i.visible!==!0||_)return a;var w=[],S=[];if(e!==!1&&!e.degenerate)for(var E=0;E<s;E++)e.contains([n.xpx[E],n.ypx[E]],!1,E,M)?(w.push(E),a.push({pointNumber:E,x:r.c2d(c[E]),y:o.c2d(h[E])})):S.push(E);if(l){var m=v.scatter2d;if(!w.length&&!S.length){var b=new Array(v.count);b[p]=v.markerOptions[p],m.update.apply(m,b)}else if(!v.selectBatch[p].length&&!v.unselectBatch[p].length){var d=new Array(v.count);d[p]=v.markerUnselectedOptions[p],m.update.apply(m,d)}}return v.selectBatch[p]=w,v.unselectBatch[p]=S,T&&x(t),a}}}),ZU=Ye({"src/traces/scattergl/base_index.js"(X,H){"use strict";var g=hT();H.exports={moduleType:"trace",name:"scattergl",basePlotModule:Pf(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:yx(),supplyDefaults:IU(),crossTraceDefaults:RS(),colorbar:cp(),formatLabels:RU(),calc:WU(),hoverPoints:g.hoverPoints,selectPoints:O5(),meta:{}}}}),XU=Ye({"node_modules/color-id/index.js"(X,H){"use strict";var g=dx();H.exports=x,H.exports.to=x,H.exports.from=A;function x(M,e){e==null&&(e=!0);var t=M[0],r=M[1],o=M[2],a=M[3];a==null&&(a=e?1:255),e&&(t*=255,r*=255,o*=255,a*=255),t=g(t,0,255)&255,r=g(r,0,255)&255,o=g(o,0,255)&255,a=g(a,0,255)&255;var i=t*16777216+(r<<16)+(o<<8)+a;return i}function A(M,e){M=+M;var t=M>>>24,r=(M&16711680)>>>16,o=(M&65280)>>>8,a=M&255;return e===!1?[t,r,o,a]:[t/255,r/255,o/255,a/255]}}}),Wf=Ye({"node_modules/object-assign/index.js"(X,H){"use strict";var g=Object.getOwnPropertySymbols,x=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable;function M(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function e(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var r={},o=0;o<10;o++)r["_"+String.fromCharCode(o)]=o;var a=Object.getOwnPropertyNames(r).map(function(n){return r[n]});if(a.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(n){i[n]=n}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}H.exports=e()?Object.assign:function(t,r){for(var o,a=M(t),i,n=1;n<arguments.length;n++){o=Object(arguments[n]);for(var s in o)x.call(o,s)&&(a[s]=o[s]);if(g){i=g(o);for(var c=0;c<i.length;c++)A.call(o,i[c])&&(a[i[c]]=o[i[c]])}}return a}}}),YU=Ye({"node_modules/glslify/browser.js"(X,H){H.exports=function(g){typeof g=="string"&&(g=[g]);for(var x=[].slice.call(arguments,1),A=[],M=0;M<g.length-1;M++)A.push(g[M],x[M]||"");return A.push(g[M]),A.join("")}}}),B5=Ye({"node_modules/update-diff/index.js"(X,H){"use strict";H.exports=function(x,A,M){Array.isArray(M)||(M=[].slice.call(arguments,2));for(var e=0,t=M.length;e<t;e++){var r=M[e];for(var o in r)if(!(A[o]!==void 0&&!Array.isArray(A[o])&&x[o]===A[o])&&o in A){var a;if(r[o]===!0)a=A[o];else{if(r[o]===!1)continue;if(typeof r[o]=="function"&&(a=r[o](A[o],x,A),a===void 0))continue}x[o]=a}}return x}}}),KU=Ye({"node_modules/is-iexplorer/index.js"(X,H){"use strict";H.exports=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))}}),vT=Ye({"node_modules/to-float32/index.js"(X,H){"use strict";H.exports=A,H.exports.float32=H.exports.float=A,H.exports.fract32=H.exports.fract=x;var g=new Float32Array(1);function x(M,e){if(M.length){if(M instanceof Float32Array)return new Float32Array(M.length);e instanceof Float32Array||(e=A(M));for(var t=0,r=e.length;t<r;t++)e[t]=M[t]-e[t];return e}return A(M-A(M))}function A(M){return M.length?M instanceof Float32Array?M:new Float32Array(M):(g[0]=M,g[0])}}}),N5=Ye({"node_modules/regl-scatter2d/bundle.js"(X,H){"use strict";function g(y,f){var P=y==null?null:typeof Symbol<"u"&&y[Symbol.iterator]||y["@@iterator"];if(P!=null){var L,z,F,B,O=[],I=!0,N=!1;try{if(F=(P=P.call(y)).next,f===0){if(Object(P)!==P)return;I=!1}else for(;!(I=(L=F.call(P)).done)&&(O.push(L.value),O.length!==f);I=!0);}catch(U){N=!0,z=U}finally{try{if(!I&&P.return!=null&&(B=P.return(),Object(B)!==B))return}finally{if(N)throw z}}return O}}function x(y,f){return e(y)||g(y,f)||r(y,f)||i()}function A(y){return M(y)||t(y)||r(y)||a()}function M(y){if(Array.isArray(y))return o(y)}function e(y){if(Array.isArray(y))return y}function t(y){if(typeof Symbol<"u"&&y[Symbol.iterator]!=null||y["@@iterator"]!=null)return Array.from(y)}function r(y,f){if(y){if(typeof y=="string")return o(y,f);var P=Object.prototype.toString.call(y).slice(8,-1);if(P==="Object"&&y.constructor&&(P=y.constructor.name),P==="Map"||P==="Set")return Array.from(y);if(P==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(P))return o(y,f)}}function o(y,f){(f==null||f>y.length)&&(f=y.length);for(var P=0,L=new Array(f);P<f;P++)L[P]=y[P];return L}function a(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function i(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var n=hg(),s=d0(),c=XU(),h=dT(),v=Wf(),p=YU(),T=Ev(),l=B5(),_=v0(),w=KU(),S=vT(),E=E1(),m=b;function b(y,f){var P=this;if(!(this instanceof b))return new b(y,f);typeof y=="function"?(f||(f={}),f.regl=y):(f=y,y=null),f&&f.length&&(f.positions=f),y=f.regl;var L=y._gl,z,F=[],B={},O=[],I=[null],N=[null],U=255,W=100;this.tooManyColors=w,z=y.texture({data:new Uint8Array(U*4),width:U,height:1,type:"uint8",format:"rgba",wrapS:"clamp",wrapT:"clamp",mag:"nearest",min:"nearest"}),v(this,{regl:y,gl:L,groups:O,markerCache:N,markerTextures:I,palette:F,paletteIds:B,paletteTexture:z,maxColors:U,maxSize:W,canvas:L.canvas}),this.update(f);var Q={uniforms:{constPointSize:!!f.constPointSize,opacity:y.prop("opacity"),paletteSize:function(G,$){return[P.tooManyColors?0:U,z.height]},pixelRatio:y.context("pixelRatio"),scale:y.prop("scale"),scaleFract:y.prop("scaleFract"),translate:y.prop("translate"),translateFract:y.prop("translateFract"),markerTexture:y.prop("markerTexture"),paletteTexture:z},attributes:{x:function(G,$){return $.xAttr||{buffer:$.positionBuffer,stride:8,offset:0}},y:function(G,$){return $.yAttr||{buffer:$.positionBuffer,stride:8,offset:4}},xFract:function(G,$){return $.xAttr?{constant:[0,0]}:{buffer:$.positionFractBuffer,stride:8,offset:0}},yFract:function(G,$){return $.yAttr?{constant:[0,0]}:{buffer:$.positionFractBuffer,stride:8,offset:4}},size:function(G,$){return $.size.length?{buffer:$.sizeBuffer,stride:2,offset:0}:{constant:[Math.round($.size*255/P.maxSize)]}},borderSize:function(G,$){return $.borderSize.length?{buffer:$.sizeBuffer,stride:2,offset:1}:{constant:[Math.round($.borderSize*255/P.maxSize)]}},colorId:function(G,$){return $.color.length?{buffer:$.colorBuffer,stride:P.tooManyColors?8:4,offset:0}:{constant:P.tooManyColors?F.slice($.color*4,$.color*4+4):[$.color]}},borderColorId:function(G,$){return $.borderColor.length?{buffer:$.colorBuffer,stride:P.tooManyColors?8:4,offset:P.tooManyColors?4:2}:{constant:P.tooManyColors?F.slice($.borderColor*4,$.borderColor*4+4):[$.borderColor]}},isActive:function(G,$){return $.activation===!0?{constant:[1]}:$.activation?$.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},scissor:{enable:!0,box:y.prop("viewport")},viewport:y.prop("viewport"),stencil:{enable:!1},depth:{enable:!1},elements:y.prop("elements"),count:y.prop("count"),offset:y.prop("offset"),primitive:"points"},ue=v({},Q);ue.frag=p([`precision highp float;
#define GLSLIFY 1

uniform float opacity;
uniform sampler2D markerTexture;

varying vec4 fragColor, fragBorderColor;
varying float fragWidth, fragBorderColorLevel, fragColorLevel;

float smoothStep(float x, float y) {
  return 1.0 / (1.0 + exp(50.0*(x - y)));
}

void main() {
  float dist = texture2D(markerTexture, gl_PointCoord).r, delta = fragWidth;

  // max-distance alpha
  if (dist < 0.003) discard;

  // null-border case
  if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {
    float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);
    gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);
  }
  else {
    float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);
    float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);

    vec4 color = fragBorderColor;
    color.a *= borderColorAmt;
    color = mix(color, fragColor, colorAmt);
    color.a *= opacity;

    gl_FragColor = color;
  }

}
`]),ue.vert=p([`precision highp float;
#define GLSLIFY 1

attribute float x, y, xFract, yFract;
attribute float size, borderSize;
attribute vec4 colorId, borderColorId;
attribute float isActive;

// \`invariant\` effectively turns off optimizations for the position.
// We need this because -fast-math on M1 Macs is re-ordering
// floating point operations in a way that causes floating point
// precision limits to put points in the wrong locations.
invariant gl_Position;

uniform bool constPointSize;
uniform float pixelRatio;
uniform vec2 scale, scaleFract, translate, translateFract, paletteSize;
uniform sampler2D paletteTexture;

const float maxSize = 100.;
const float borderLevel = .5;

varying vec4 fragColor, fragBorderColor;
varying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;

float pointSizeScale = (constPointSize) ? 2. : pixelRatio;

bool isDirect = (paletteSize.x < 1.);

vec4 getColor(vec4 id) {
  return isDirect ? id / 255. : texture2D(paletteTexture,
    vec2(
      (id.x + .5) / paletteSize.x,
      (id.y + .5) / paletteSize.y
    )
  );
}

void main() {
  // ignore inactive points
  if (isActive == 0.) return;

  vec2 position = vec2(x, y);
  vec2 positionFract = vec2(xFract, yFract);

  vec4 color = getColor(colorId);
  vec4 borderColor = getColor(borderColorId);

  float size = size * maxSize / 255.;
  float borderSize = borderSize * maxSize / 255.;

  gl_PointSize = 2. * size * pointSizeScale;
  fragPointSize = size * pixelRatio;

  vec2 pos = (position + translate) * scale
      + (positionFract + translateFract) * scale
      + (position + translate) * scaleFract
      + (positionFract + translateFract) * scaleFract;

  gl_Position = vec4(pos * 2. - 1., 0., 1.);

  fragColor = color;
  fragBorderColor = borderColor;
  fragWidth = 1. / gl_PointSize;

  fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);
  fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);
}
`]),this.drawMarker=y(ue);var se=v({},Q);se.frag=p([`precision highp float;
#define GLSLIFY 1

varying vec4 fragColor, fragBorderColor;
varying float fragBorderRadius, fragWidth;

uniform float opacity;

float smoothStep(float edge0, float edge1, float x) {
	float t;
	t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
	return t * t * (3.0 - 2.0 * t);
}

void main() {
	float radius, alpha = 1.0, delta = fragWidth;

	radius = length(2.0 * gl_PointCoord.xy - 1.0);

	if (radius > 1.0 + delta) {
		discard;
	}

	alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);

	float borderRadius = fragBorderRadius;
	float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);
	vec4 color = mix(fragColor, fragBorderColor, ratio);
	color.a *= alpha * opacity;
	gl_FragColor = color;
}
`]),se.vert=p([`precision highp float;
#define GLSLIFY 1

attribute float x, y, xFract, yFract;
attribute float size, borderSize;
attribute vec4 colorId, borderColorId;
attribute float isActive;

// \`invariant\` effectively turns off optimizations for the position.
// We need this because -fast-math on M1 Macs is re-ordering
// floating point operations in a way that causes floating point
// precision limits to put points in the wrong locations.
invariant gl_Position;

uniform bool constPointSize;
uniform float pixelRatio;
uniform vec2 paletteSize, scale, scaleFract, translate, translateFract;
uniform sampler2D paletteTexture;

const float maxSize = 100.;

varying vec4 fragColor, fragBorderColor;
varying float fragBorderRadius, fragWidth;

float pointSizeScale = (constPointSize) ? 2. : pixelRatio;

bool isDirect = (paletteSize.x < 1.);

vec4 getColor(vec4 id) {
  return isDirect ? id / 255. : texture2D(paletteTexture,
    vec2(
      (id.x + .5) / paletteSize.x,
      (id.y + .5) / paletteSize.y
    )
  );
}

void main() {
  // ignore inactive points
  if (isActive == 0.) return;

  vec2 position = vec2(x, y);
  vec2 positionFract = vec2(xFract, yFract);

  vec4 color = getColor(colorId);
  vec4 borderColor = getColor(borderColorId);

  float size = size * maxSize / 255.;
  float borderSize = borderSize * maxSize / 255.;

  gl_PointSize = (size + borderSize) * pointSizeScale;

  vec2 pos = (position + translate) * scale
      + (positionFract + translateFract) * scale
      + (position + translate) * scaleFract
      + (positionFract + translateFract) * scaleFract;

  gl_Position = vec4(pos * 2. - 1., 0., 1.);

  fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);
  fragColor = color;
  fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;
  fragWidth = 1. / gl_PointSize;
}
`]),w&&(se.frag=se.frag.replace("smoothstep","smoothStep"),ue.frag=ue.frag.replace("smoothstep","smoothStep")),this.drawCircle=y(se)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;L<f;L++)P[L]=arguments[L];var z=this.groups;if(P.length===1&&Array.isArray(P[0])&&(P[0][0]===null||Array.isArray(P[0][0]))&&(P=P[0]),this.regl._refresh(),P.length)for(var F=0;F<P.length;F++)this.drawItem(F,P[F]);else z.forEach(function(B,O){y.drawItem(O)});return this},b.prototype.drawItem=function(y,f){var P=this.groups,L=P[y];if(typeof f=="number"&&(y=f,L=P[f],f=null),!!(L&&L.count&&L.opacity)){L.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,L,f));for(var z=[],F=1;F<L.activation.length;F++)!L.activation[F]||L.activation[F]!==!0&&!L.activation[F].data.length||z.push.apply(z,A(this.getMarkerDrawOptions(F,L,f)));z.length&&this.drawMarker(z)}},b.prototype.getMarkerDrawOptions=function(y,f,P){var L=f.range,z=f.tree,F=f.viewport,B=f.activation,O=f.selectionBuffer,I=f.count,N=this.regl;if(!z)return P?[v({},f,{markerTexture:this.markerTextures[y],activation:B[y],count:P.length,elements:P,offset:0})]:[v({},f,{markerTexture:this.markerTextures[y],activation:B[y],offset:0})];var U=[],W=z.range(L,{lod:!0,px:[(L[2]-L[0])/F.width,(L[3]-L[1])/F.height]});if(P){for(var Q=B[y],ue=Q.data,se=new Uint8Array(I),he=0;he<P.length;he++){var G=P[he];se[G]=ue?ue[G]:1}O.subdata(se)}for(var $=W.length;$--;){var J=x(W[$],2),Z=J[0],re=J[1];U.push(v({},f,{markerTexture:this.markerTextures[y],activation:P?O:B[y],offset:Z,count:re-Z}))}return U},b.prototype.update=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;L<f;L++)P[L]=arguments[L];if(P.length){P.length===1&&Array.isArray(P[0])&&(P=P[0]);var z=this.groups,F=this.gl,B=this.regl,O=this.maxSize,I=this.maxColors,N=this.palette;this.groups=z=P.map(function(U,W){var Q=z[W];if(U===void 0)return Q;U===null?U={positions:null}:typeof U=="function"?U={ondraw:U}:typeof U[0]=="number"&&(U={positions:U}),U=T(U,{positions:"positions data points",snap:"snap cluster lod tree",size:"sizes size radius",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",color:"colors color fill fill-color fillColor",borderColor:"borderColors borderColor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range dataBox databox",viewport:"viewport viewPort viewBox viewbox",opacity:"opacity alpha transparency",bounds:"bound bounds boundaries limits",tooManyColors:"tooManyColors palette paletteMode optimizePalette enablePalette"}),U.positions===null&&(U.positions=[]),U.tooManyColors!=null&&(y.tooManyColors=U.tooManyColors),Q||(z[W]=Q={id:W,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:B.buffer({data:new Uint8Array(0),usage:"stream",type:"uint8"}),sizeBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),colorBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),positionBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"}),positionFractBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"})},U=v({},b.defaults,U)),U.positions&&!("marker"in U)&&(U.marker=Q.marker,delete Q.marker),U.marker&&!("positions"in U)&&(U.positions=Q.positions,delete Q.positions);var ue=0,se=0;if(l(Q,U,[{snap:!0,size:function(et,lt){return et==null&&(et=b.defaults.size),ue+=et&&et.length?1:0,et},borderSize:function(et,lt){return et==null&&(et=b.defaults.borderSize),ue+=et&&et.length?1:0,et},opacity:parseFloat,color:function(et,lt){return et==null&&(et=b.defaults.color),et=y.updateColor(et),se++,et},borderColor:function(et,lt){return et==null&&(et=b.defaults.borderColor),et=y.updateColor(et),se++,et},bounds:function(et,lt,Me){return"range"in Me||(Me.range=null),et},positions:function(et,lt,Me){var ge=lt.snap,ce=lt.positionBuffer,ze=lt.positionFractBuffer,tt=lt.selectionBuffer;if(et.x||et.y)return et.x.length?lt.xAttr={buffer:B.buffer(et.x),offset:0,stride:4,count:et.x.length}:lt.xAttr={buffer:et.x.buffer,offset:et.x.offset*4||0,stride:(et.x.stride||1)*4,count:et.x.count},et.y.length?lt.yAttr={buffer:B.buffer(et.y),offset:0,stride:4,count:et.y.length}:lt.yAttr={buffer:et.y.buffer,offset:et.y.offset*4||0,stride:(et.y.stride||1)*4,count:et.y.count},lt.count=Math.max(lt.xAttr.count,lt.yAttr.count),et;et=_(et,"float64");var nt=lt.count=Math.floor(et.length/2),Qe=lt.bounds=nt?s(et,2):null;if(!Me.range&&!lt.range&&(delete lt.range,Me.range=Qe),!Me.marker&&!lt.marker&&(delete lt.marker,Me.marker=null),ge&&(ge===!0||nt>ge)?lt.tree=h(et,{bounds:Qe}):ge&&ge.length&&(lt.tree=ge),lt.tree){var Ct={primitive:"points",usage:"static",data:lt.tree,type:"uint32"};lt.elements?lt.elements(Ct):lt.elements=B.elements(Ct)}var St=S.float32(et);ce({data:St,usage:"dynamic"});var Ot=S.fract32(et,St);return ze({data:Ot,usage:"dynamic"}),tt({data:new Uint8Array(nt),type:"uint8",usage:"stream"}),et}},{marker:function(et,lt,Me){var ge=lt.activation;if(ge.forEach(function(Ot){return Ot&&Ot.destroy&&Ot.destroy()}),ge.length=0,!et||typeof et[0]=="number"){var ce=y.addMarker(et);ge[ce]=!0}else{for(var ze=[],tt=0,nt=Math.min(et.length,lt.count);tt<nt;tt++){var Qe=y.addMarker(et[tt]);ze[Qe]||(ze[Qe]=new Uint8Array(lt.count)),ze[Qe][tt]=1}for(var Ct=0;Ct<ze.length;Ct++)if(ze[Ct]){var St={data:ze[Ct],type:"uint8",usage:"static"};ge[Ct]?ge[Ct](St):ge[Ct]=B.buffer(St),ge[Ct].data=ze[Ct]}}return et},range:function(et,lt,Me){var ge=lt.bounds;if(ge)return et||(et=ge),lt.scale=[1/(et[2]-et[0]),1/(et[3]-et[1])],lt.translate=[-et[0],-et[1]],lt.scaleFract=S.fract(lt.scale),lt.translateFract=S.fract(lt.translate),et},viewport:function(et){var lt=E(et||[F.drawingBufferWidth,F.drawingBufferHeight]);return lt}}]),ue){var he=Q,G=he.count,$=he.size,J=he.borderSize,Z=he.sizeBuffer,re=new Uint8Array(G*2);if($.length||J.length)for(var ne=0;ne<G;ne++)re[ne*2]=Math.round(($[ne]==null?$:$[ne])*255/O),re[ne*2+1]=Math.round((J[ne]==null?J:J[ne])*255/O);Z({data:re,usage:"dynamic"})}if(se){var j=Q,ee=j.count,ie=j.color,fe=j.borderColor,be=j.colorBuffer,Ae;if(y.tooManyColors){if(ie.length||fe.length){Ae=new Uint8Array(ee*8);for(var Be=0;Be<ee;Be++){var Ie=ie[Be];Ae[Be*8]=N[Ie*4],Ae[Be*8+1]=N[Ie*4+1],Ae[Be*8+2]=N[Ie*4+2],Ae[Be*8+3]=N[Ie*4+3];var Ze=fe[Be];Ae[Be*8+4]=N[Ze*4],Ae[Be*8+5]=N[Ze*4+1],Ae[Be*8+6]=N[Ze*4+2],Ae[Be*8+7]=N[Ze*4+3]}}}else if(ie.length||fe.length){Ae=new Uint8Array(ee*4+2);for(var at=0;at<ee;at++)ie[at]!=null&&(Ae[at*4]=ie[at]%I,Ae[at*4+1]=Math.floor(ie[at]/I)),fe[at]!=null&&(Ae[at*4+2]=fe[at]%I,Ae[at*4+3]=Math.floor(fe[at]/I))}be({data:Ae||new Uint8Array(0),type:"uint8",usage:"dynamic"})}return Q})}},b.prototype.addMarker=function(y){var f=this.markerTextures,P=this.regl,L=this.markerCache,z=y==null?0:L.indexOf(y);if(z>=0)return z;var F;if(y instanceof Uint8Array||y instanceof Uint8ClampedArray)F=y;else{F=new Uint8Array(y.length);for(var B=0,O=y.length;B<O;B++)F[B]=y[B]*255}var I=Math.floor(Math.sqrt(F.length));return z=f.length,L.push(y),f.push(P.texture({channels:1,data:F,radius:I,mag:"linear",min:"linear"})),z},b.prototype.updateColor=function(y){var f=this.paletteIds,P=this.palette,L=this.maxColors;Array.isArray(y)||(y=[y]);var z=[];if(typeof y[0]=="number"){var F=[];if(Array.isArray(y))for(var B=0;B<y.length;B+=4)F.push(y.slice(B,B+4));else for(var O=0;O<y.length;O+=4)F.push(y.subarray(O,O+4));y=F}for(var I=0;I<y.length;I++){var N=y[I];N=n(N,"uint8");var U=c(N,!1);if(f[U]==null){var W=P.length;f[U]=Math.floor(W/4),P[W]=N[0],P[W+1]=N[1],P[W+2]=N[2],P[W+3]=N[3]}z[I]=f[U]}return!this.tooManyColors&&P.length>L*4&&(this.tooManyColors=!0),this.updatePalette(P),z.length===1?z[0]:z},b.prototype.updatePalette=function(y){if(!this.tooManyColors){var f=this.maxColors,P=this.paletteTexture,L=Math.ceil(y.length*.25/f);if(L>1){y=y.slice();for(var z=y.length*.25%f;z<L*f;z++)y.push(0,0,0,0)}P.height<L&&P.resize(f,L),P.subimage({width:Math.min(y.length*.25,f),height:L,data:y},0,0)}},b.prototype.destroy=function(){return this.groups.forEach(function(y){y.sizeBuffer.destroy(),y.positionBuffer.destroy(),y.positionFractBuffer.destroy(),y.colorBuffer.destroy(),y.activation.forEach(function(f){return f&&f.destroy&&f.destroy()}),y.selectionBuffer.destroy(),y.elements&&y.elements.destroy()}),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach(function(y){return y&&y.destroy&&y.destroy()}),this};var d=Wf(),u=function(f,P){var L=new m(f,P),z=L.render.bind(L);return d(z,{render:z,update:L.update.bind(L),draw:L.draw.bind(L),destroy:L.destroy.bind(L),regl:L.regl,gl:L.gl,canvas:L.gl.canvas,groups:L.groups,markers:L.markerCache,palette:L.palette}),z};H.exports=u}}),JU=Ye({"node_modules/earcut/src/earcut.js"(X,H){"use strict";H.exports=g,H.exports.default=g;function g(B,O,I){I=I||2;var N=O&&O.length,U=N?O[0]*I:B.length,W=x(B,0,U,I,!0),Q=[];if(!W||W.next===W.prev)return Q;var ue,se,he,G,$,J,Z;if(N&&(W=a(B,O,W,I)),B.length>80*I){ue=he=B[0],se=G=B[1];for(var re=I;re<U;re+=I)$=B[re],J=B[re+1],$<ue&&(ue=$),J<se&&(se=J),$>he&&(he=$),J>G&&(G=J);Z=Math.max(he-ue,G-se),Z=Z!==0?32767/Z:0}return M(W,Q,I,ue,se,Z,0),Q}function x(B,O,I,N,U){var W,Q;if(U===F(B,O,I,N)>0)for(W=O;W<I;W+=N)Q=P(W,B[W],B[W+1],Q);else for(W=I-N;W>=O;W-=N)Q=P(W,B[W],B[W+1],Q);return Q&&S(Q,Q.next)&&(L(Q),Q=Q.next),Q}function A(B,O){if(!B)return B;O||(O=B);var I=B,N;do if(N=!1,!I.steiner&&(S(I,I.next)||w(I.prev,I,I.next)===0)){if(L(I),I=O=I.prev,I===I.next)break;N=!0}else I=I.next;while(N||I!==O);return O}function M(B,O,I,N,U,W,Q){if(B){!Q&&W&&h(B,N,U,W);for(var ue=B,se,he;B.prev!==B.next;){if(se=B.prev,he=B.next,W?t(B,N,U,W):e(B)){O.push(se.i/I|0),O.push(B.i/I|0),O.push(he.i/I|0),L(B),B=he.next,ue=he.next;continue}if(B=he,B===ue){Q?Q===1?(B=r(A(B),O,I),M(B,O,I,N,U,W,2)):Q===2&&o(B,O,I,N,U,W):M(A(B),O,I,N,U,W,1);break}}}}function e(B){var O=B.prev,I=B,N=B.next;if(w(O,I,N)>=0)return!1;for(var U=O.x,W=I.x,Q=N.x,ue=O.y,se=I.y,he=N.y,G=U<W?U<Q?U:Q:W<Q?W:Q,$=ue<se?ue<he?ue:he:se<he?se:he,J=U>W?U>Q?U:Q:W>Q?W:Q,Z=ue>se?ue>he?ue:he:se>he?se:he,re=N.next;re!==O;){if(re.x>=G&&re.x<=J&&re.y>=$&&re.y<=Z&&l(U,ue,W,se,Q,he,re.x,re.y)&&w(re.prev,re,re.next)>=0)return!1;re=re.next}return!0}function t(B,O,I,N){var U=B.prev,W=B,Q=B.next;if(w(U,W,Q)>=0)return!1;for(var ue=U.x,se=W.x,he=Q.x,G=U.y,$=W.y,J=Q.y,Z=ue<se?ue<he?ue:he:se<he?se:he,re=G<$?G<J?G:J:$<J?$:J,ne=ue>se?ue>he?ue:he:se>he?se:he,j=G>$?G>J?G:J:$>J?$:J,ee=p(Z,re,O,I,N),ie=p(ne,j,O,I,N),fe=B.prevZ,be=B.nextZ;fe&&fe.z>=ee&&be&&be.z<=ie;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0||(fe=fe.prevZ,be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0))return!1;be=be.nextZ}for(;fe&&fe.z>=ee;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0)return!1;fe=fe.prevZ}for(;be&&be.z<=ie;){if(be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0)return!1;be=be.nextZ}return!0}function r(B,O,I){var N=B;do{var U=N.prev,W=N.next.next;!S(U,W)&&E(U,N,N.next,W)&&u(U,W)&&u(W,U)&&(O.push(U.i/I|0),O.push(N.i/I|0),O.push(W.i/I|0),L(N),L(N.next),N=B=W),N=N.next}while(N!==B);return A(N)}function o(B,O,I,N,U,W){var Q=B;do{for(var ue=Q.next.next;ue!==Q.prev;){if(Q.i!==ue.i&&_(Q,ue)){var se=f(Q,ue);Q=A(Q,Q.next),se=A(se,se.next),M(Q,O,I,N,U,W,0),M(se,O,I,N,U,W,0);return}ue=ue.next}Q=Q.next}while(Q!==B)}function a(B,O,I,N){var U=[],W,Q,ue,se,he;for(W=0,Q=O.length;W<Q;W++)ue=O[W]*N,se=W<Q-1?O[W+1]*N:B.length,he=x(B,ue,se,N,!1),he===he.next&&(he.steiner=!0),U.push(T(he));for(U.sort(i),W=0;W<U.length;W++)I=n(U[W],I);return I}function i(B,O){return B.x-O.x}function n(B,O){var I=s(B,O);if(!I)return O;var N=f(I,B);return A(N,N.next),A(I,I.next)}function s(B,O){var I=O,N=B.x,U=B.y,W=-1/0,Q;do{if(U<=I.y&&U>=I.next.y&&I.next.y!==I.y){var ue=I.x+(U-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(ue<=N&&ue>W&&(W=ue,Q=I.x<I.next.x?I:I.next,ue===N))return Q}I=I.next}while(I!==O);if(!Q)return null;var se=Q,he=Q.x,G=Q.y,$=1/0,J;I=Q;do N>=I.x&&I.x>=he&&N!==I.x&&l(U<G?N:W,U,he,G,U<G?W:N,U,I.x,I.y)&&(J=Math.abs(U-I.y)/(N-I.x),u(I,B)&&(J<$||J===$&&(I.x>Q.x||I.x===Q.x&&c(Q,I)))&&(Q=I,$=J)),I=I.next;while(I!==se);return Q}function c(B,O){return w(B.prev,B,O.prev)<0&&w(O.next,B,B.next)<0}function h(B,O,I,N){var U=B;do U.z===0&&(U.z=p(U.x,U.y,O,I,N)),U.prevZ=U.prev,U.nextZ=U.next,U=U.next;while(U!==B);U.prevZ.nextZ=null,U.prevZ=null,v(U)}function v(B){var O,I,N,U,W,Q,ue,se,he=1;do{for(I=B,B=null,W=null,Q=0;I;){for(Q++,N=I,ue=0,O=0;O<he&&(ue++,N=N.nextZ,!!N);O++);for(se=he;ue>0||se>0&&N;)ue!==0&&(se===0||!N||I.z<=N.z)?(U=I,I=I.nextZ,ue--):(U=N,N=N.nextZ,se--),W?W.nextZ=U:B=U,U.prevZ=W,W=U;I=N}W.nextZ=null,he*=2}while(Q>1);return B}function p(B,O,I,N,U){return B=(B-I)*U|0,O=(O-N)*U|0,B=(B|B<<8)&16711935,B=(B|B<<4)&252645135,B=(B|B<<2)&858993459,B=(B|B<<1)&1431655765,O=(O|O<<8)&16711935,O=(O|O<<4)&252645135,O=(O|O<<2)&858993459,O=(O|O<<1)&1431655765,B|O<<1}function T(B){var O=B,I=B;do(O.x<I.x||O.x===I.x&&O.y<I.y)&&(I=O),O=O.next;while(O!==B);return I}function l(B,O,I,N,U,W,Q,ue){return(U-Q)*(O-ue)>=(B-Q)*(W-ue)&&(B-Q)*(N-ue)>=(I-Q)*(O-ue)&&(I-Q)*(W-ue)>=(U-Q)*(N-ue)}function _(B,O){return B.next.i!==O.i&&B.prev.i!==O.i&&!d(B,O)&&(u(B,O)&&u(O,B)&&y(B,O)&&(w(B.prev,B,O.prev)||w(B,O.prev,O))||S(B,O)&&w(B.prev,B,B.next)>0&&w(O.prev,O,O.next)>0)}function w(B,O,I){return(O.y-B.y)*(I.x-O.x)-(O.x-B.x)*(I.y-O.y)}function S(B,O){return B.x===O.x&&B.y===O.y}function E(B,O,I,N){var U=b(w(B,O,I)),W=b(w(B,O,N)),Q=b(w(I,N,B)),ue=b(w(I,N,O));return!!(U!==W&&Q!==ue||U===0&&m(B,I,O)||W===0&&m(B,N,O)||Q===0&&m(I,B,N)||ue===0&&m(I,O,N))}function m(B,O,I){return O.x<=Math.max(B.x,I.x)&&O.x>=Math.min(B.x,I.x)&&O.y<=Math.max(B.y,I.y)&&O.y>=Math.min(B.y,I.y)}function b(B){return B>0?1:B<0?-1:0}function d(B,O){var I=B;do{if(I.i!==B.i&&I.next.i!==B.i&&I.i!==O.i&&I.next.i!==O.i&&E(I,I.next,B,O))return!0;I=I.next}while(I!==B);return!1}function u(B,O){return w(B.prev,B,B.next)<0?w(B,O,B.next)>=0&&w(B,B.prev,O)>=0:w(B,O,B.prev)<0||w(B,B.next,O)<0}function y(B,O){var I=B,N=!1,U=(B.x+O.x)/2,W=(B.y+O.y)/2;do I.y>W!=I.next.y>W&&I.next.y!==I.y&&U<(I.next.x-I.x)*(W-I.y)/(I.next.y-I.y)+I.x&&(N=!N),I=I.next;while(I!==B);return N}function f(B,O){var I=new z(B.i,B.x,B.y),N=new z(O.i,O.x,O.y),U=B.next,W=O.prev;return B.next=O,O.prev=B,I.next=U,U.prev=I,N.next=I,I.prev=N,W.next=N,N.prev=W,N}function P(B,O,I,N){var U=new z(B,O,I);return N?(U.next=N.next,U.prev=N,N.next.prev=U,N.next=U):(U.prev=U,U.next=U),U}function L(B){B.next.prev=B.prev,B.prev.next=B.next,B.prevZ&&(B.prevZ.nextZ=B.nextZ),B.nextZ&&(B.nextZ.prevZ=B.prevZ)}function z(B,O,I){this.i=B,this.x=O,this.y=I,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}g.deviation=function(B,O,I,N){var U=O&&O.length,W=U?O[0]*I:B.length,Q=Math.abs(F(B,0,W,I));if(U)for(var ue=0,se=O.length;ue<se;ue++){var he=O[ue]*I,G=ue<se-1?O[ue+1]*I:B.length;Q-=Math.abs(F(B,he,G,I))}var $=0;for(ue=0;ue<N.length;ue+=3){var J=N[ue]*I,Z=N[ue+1]*I,re=N[ue+2]*I;$+=Math.abs((B[J]-B[re])*(B[Z+1]-B[J+1])-(B[J]-B[Z])*(B[re+1]-B[J+1]))}return Q===0&&$===0?0:Math.abs(($-Q)/Q)};function F(B,O,I,N){for(var U=0,W=O,Q=I-N;W<I;W+=N)U+=(B[Q]-B[W])*(B[W+1]+B[Q+1]),Q=W;return U}g.flatten=function(B){for(var O=B[0][0].length,I={vertices:[],holes:[],dimensions:O},N=0,U=0;U<B.length;U++){for(var W=0;W<B[U].length;W++)for(var Q=0;Q<O;Q++)I.vertices.push(B[U][W][Q]);U>0&&(N+=B[U-1].length,I.holes.push(N))}return I}}}),$U=Ye({"node_modules/array-normalize/index.js"(X,H){"use strict";var g=d0();H.exports=x;function x(A,M,e){if(!A||A.length==null)throw Error("Argument should be an array");M==null&&(M=1),e==null&&(e=g(A,M));for(var t=0;t<M;t++){var r=e[M+t],o=e[t],a=t,i=A.length;if(r===1/0&&o===-1/0)for(a=t;a<i;a+=M)A[a]=A[a]===r?1:A[a]===o?0:.5;else if(r===1/0)for(a=t;a<i;a+=M)A[a]=A[a]===r?1:0;else if(o===-1/0)for(a=t;a<i;a+=M)A[a]=A[a]===o?0:1;else{var n=r-o;for(a=t;a<i;a+=M)isNaN(A[a])||(A[a]=n===0?.5:(A[a]-o)/n)}}return A}}}),QU=Ye({"node_modules/es6-weak-map/is-implemented.js"(X,H){"use strict";H.exports=function(){var g,x;if(typeof WeakMap!="function")return!1;try{g=new WeakMap([[x={},"one"],[{},"two"],[{},"three"]])}catch{return!1}return!(String(g)!=="[object WeakMap]"||typeof g.set!="function"||g.set({},1)!==g||typeof g.delete!="function"||typeof g.has!="function"||g.get(x)!=="one")}}}),ej=Ye({"node_modules/es5-ext/function/noop.js"(X,H){"use strict";H.exports=function(){}}}),gg=Ye({"node_modules/es5-ext/object/is-value.js"(X,H){"use strict";var g=ej()();H.exports=function(x){return x!==g&&x!==null}}}),U5=Ye({"node_modules/es5-ext/object/set-prototype-of/is-implemented.js"(X,H){"use strict";var g=Object.create,x=Object.getPrototypeOf,A={};H.exports=function(){var M=Object.setPrototypeOf,e=arguments[0]||g;return typeof M!="function"?!1:x(M(e(null),A))===A}}}),j5=Ye({"node_modules/es5-ext/object/is-object.js"(X,H){"use strict";var g=gg(),x={function:!0,object:!0};H.exports=function(A){return g(A)&&x[typeof A]||!1}}}),tm=Ye({"node_modules/es5-ext/object/valid-value.js"(X,H){"use strict";var g=gg();H.exports=function(x){if(!g(x))throw new TypeError("Cannot use null or undefined");return x}}}),tj=Ye({"node_modules/es5-ext/object/create.js"(X,H){"use strict";var g=Object.create,x;U5()()||(x=V5()),H.exports=function(){var A,M,e;return!x||x.level!==1?g:(A={},M={},e={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){if(t==="__proto__"){M[t]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}M[t]=e}),Object.defineProperties(A,M),Object.defineProperty(x,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:A}),function(t,r){return g(t===null?A:t,r)})}()}}),V5=Ye({"node_modules/es5-ext/object/set-prototype-of/shim.js"(X,H){"use strict";var g=j5(),x=tm(),A=Object.prototype.isPrototypeOf,M=Object.defineProperty,e={configurable:!0,enumerable:!1,writable:!0,value:void 0},t;t=function(r,o){if(x(r),o===null||g(o))return r;throw new TypeError("Prototype must be null or an object")},H.exports=function(r){var o,a;return r?(r.level===2?r.set?(a=r.set,o=function(i,n){return a.call(t(i,n),n),i}):o=function(i,n){return t(i,n).__proto__=n,i}:o=function i(n,s){var c;return t(n,s),c=A.call(i.nullPolyfill,n),c&&delete i.nullPolyfill.__proto__,s===null&&(s=i.nullPolyfill),n.__proto__=s,c&&M(i.nullPolyfill,"__proto__",e),n},Object.defineProperty(o,"level",{configurable:!1,enumerable:!1,writable:!1,value:r.level})):null}(function(){var r=Object.create(null),o={},a,i=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(i){try{a=i.set,a.call(r,o)}catch{}if(Object.getPrototypeOf(r)===o)return{set:a,level:2}}return r.__proto__=o,Object.getPrototypeOf(r)===o?{level:2}:(r={},r.__proto__=o,Object.getPrototypeOf(r)===o?{level:1}:!1)}()),tj()}}),mT=Ye({"node_modules/es5-ext/object/set-prototype-of/index.js"(X,H){"use strict";H.exports=U5()()?Object.setPrototypeOf:V5()}}),rj=Ye({"node_modules/es5-ext/object/valid-object.js"(X,H){"use strict";var g=j5();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not an Object");return x}}}),aj=Ye({"node_modules/es5-ext/string/random-uniq.js"(X,H){"use strict";var g=Object.create(null),x=Math.random;H.exports=function(){var A;do A=x().toString(36).slice(2);while(g[A]);return A}}}),g0=Ye({"node_modules/type/value/is.js"(X,H){"use strict";var g=void 0;H.exports=function(x){return x!==g&&x!==null}}}),gT=Ye({"node_modules/type/object/is.js"(X,H){"use strict";var g=g0(),x={object:!0,function:!0,undefined:!0};H.exports=function(A){return g(A)?hasOwnProperty.call(x,typeof A):!1}}}),ij=Ye({"node_modules/type/prototype/is.js"(X,H){"use strict";var g=gT();H.exports=function(x){if(!g(x))return!1;try{return x.constructor?x.constructor.prototype===x:!1}catch{return!1}}}}),nj=Ye({"node_modules/type/function/is.js"(X,H){"use strict";var g=ij();H.exports=function(x){if(typeof x!="function"||!hasOwnProperty.call(x,"length"))return!1;try{if(typeof x.length!="number"||typeof x.call!="function"||typeof x.apply!="function")return!1}catch{return!1}return!g(x)}}}),q5=Ye({"node_modules/type/plain-function/is.js"(X,H){"use strict";var g=nj(),x=/^\s*class[\s{/}]/,A=Function.prototype.toString;H.exports=function(M){return!(!g(M)||x.test(A.call(M)))}}}),oj=Ye({"node_modules/es5-ext/object/assign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Object.assign,x;return typeof g!="function"?!1:(x={foo:"raz"},g(x,{bar:"dwa"},{trzy:"trzy"}),x.foo+x.bar+x.trzy==="razdwatrzy")}}}),sj=Ye({"node_modules/es5-ext/object/keys/is-implemented.js"(X,H){"use strict";H.exports=function(){try{return Object.keys("primitive"),!0}catch{return!1}}}}),lj=Ye({"node_modules/es5-ext/object/keys/shim.js"(X,H){"use strict";var g=gg(),x=Object.keys;H.exports=function(A){return x(g(A)?Object(A):A)}}}),uj=Ye({"node_modules/es5-ext/object/keys/index.js"(X,H){"use strict";H.exports=sj()()?Object.keys:lj()}}),cj=Ye({"node_modules/es5-ext/object/assign/shim.js"(X,H){"use strict";var g=uj(),x=tm(),A=Math.max;H.exports=function(M,e){var t,r,o=A(arguments.length,2),a;for(M=Object(x(M)),a=function(i){try{M[i]=e[i]}catch(n){t||(t=n)}},r=1;r<o;++r)e=arguments[r],g(e).forEach(a);if(t!==void 0)throw t;return M}}}),yT=Ye({"node_modules/es5-ext/object/assign/index.js"(X,H){"use strict";H.exports=oj()()?Object.assign:cj()}}),H5=Ye({"node_modules/es5-ext/object/normalize-options.js"(X,H){"use strict";var g=gg(),x=Array.prototype.forEach,A=Object.create,M=function(e,t){var r;for(r in e)t[r]=e[r]};H.exports=function(e){var t=A(null);return x.call(arguments,function(r){g(r)&&M(Object(r),t)}),t}}}),fj=Ye({"node_modules/es5-ext/string/#/contains/is-implemented.js"(X,H){"use strict";var g="razdwatrzy";H.exports=function(){return typeof g.contains!="function"?!1:g.contains("dwa")===!0&&g.contains("foo")===!1}}}),hj=Ye({"node_modules/es5-ext/string/#/contains/shim.js"(X,H){"use strict";var g=String.prototype.indexOf;H.exports=function(x){return g.call(this,x,arguments[1])>-1}}}),G5=Ye({"node_modules/es5-ext/string/#/contains/index.js"(X,H){"use strict";H.exports=fj()()?String.prototype.contains:hj()}}),rm=Ye({"node_modules/d/index.js"(X,H){"use strict";var g=g0(),x=q5(),A=yT(),M=H5(),e=G5(),t=H.exports=function(r,o){var a,i,n,s,c;return arguments.length<2||typeof r!="string"?(s=o,o=r,r=null):s=arguments[2],g(r)?(a=e.call(r,"c"),i=e.call(r,"e"),n=e.call(r,"w")):(a=n=!0,i=!1),c={value:o,configurable:a,enumerable:i,writable:n},s?A(M(s),c):c};t.gs=function(r,o,a){var i,n,s,c;return typeof r!="string"?(s=a,a=o,o=r,r=null):s=arguments[3],g(o)?x(o)?g(a)?x(a)||(s=a,a=void 0):a=void 0:(s=o,o=a=void 0):o=void 0,g(r)?(i=e.call(r,"c"),n=e.call(r,"e")):(i=!0,n=!1),c={get:o,set:a,configurable:i,enumerable:n},s?A(M(s),c):c}}}),_x=Ye({"node_modules/es5-ext/function/is-arguments.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call(function(){return arguments}());H.exports=function(A){return g.call(A)===x}}}),xx=Ye({"node_modules/es5-ext/string/is-string.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call("");H.exports=function(A){return typeof A=="string"||A&&typeof A=="object"&&(A instanceof String||g.call(A)===x)||!1}}}),pj=Ye({"node_modules/ext/global-this/is-implemented.js"(X,H){"use strict";H.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}}}),dj=Ye({"node_modules/ext/global-this/implementation.js"(X,H){var g=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};H.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return g()}try{return __global__||g()}finally{delete Object.prototype.__global__}}()}}),bx=Ye({"node_modules/ext/global-this/index.js"(X,H){"use strict";H.exports=pj()()?globalThis:dj()}}),vj=Ye({"node_modules/es6-symbol/is-implemented.js"(X,H){"use strict";var g=bx(),x={object:!0,symbol:!0};H.exports=function(){var A=g.Symbol,M;if(typeof A!="function")return!1;M=A("test symbol");try{String(M)}catch{return!1}return!(!x[typeof A.iterator]||!x[typeof A.toPrimitive]||!x[typeof A.toStringTag])}}}),mj=Ye({"node_modules/es6-symbol/is-symbol.js"(X,H){"use strict";H.exports=function(g){return g?typeof g=="symbol"?!0:!g.constructor||g.constructor.name!=="Symbol"?!1:g[g.constructor.toStringTag]==="Symbol":!1}}}),W5=Ye({"node_modules/es6-symbol/validate-symbol.js"(X,H){"use strict";var g=mj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not a symbol");return x}}}),gj=Ye({"node_modules/es6-symbol/lib/private/generate-name.js"(X,H){"use strict";var g=rm(),x=Object.create,A=Object.defineProperty,M=Object.prototype,e=x(null);H.exports=function(t){for(var r=0,o,a;e[t+(r||"")];)++r;return t+=r||"",e[t]=!0,o="@@"+t,A(M,o,g.gs(null,function(i){a||(a=!0,A(this,o,g(i)),a=!1)})),o}}}),yj=Ye({"node_modules/es6-symbol/lib/private/setup/standard-symbols.js"(X,H){"use strict";var g=rm(),x=bx().Symbol;H.exports=function(A){return Object.defineProperties(A,{hasInstance:g("",x&&x.hasInstance||A("hasInstance")),isConcatSpreadable:g("",x&&x.isConcatSpreadable||A("isConcatSpreadable")),iterator:g("",x&&x.iterator||A("iterator")),match:g("",x&&x.match||A("match")),replace:g("",x&&x.replace||A("replace")),search:g("",x&&x.search||A("search")),species:g("",x&&x.species||A("species")),split:g("",x&&x.split||A("split")),toPrimitive:g("",x&&x.toPrimitive||A("toPrimitive")),toStringTag:g("",x&&x.toStringTag||A("toStringTag")),unscopables:g("",x&&x.unscopables||A("unscopables"))})}}}),_j=Ye({"node_modules/es6-symbol/lib/private/setup/symbol-registry.js"(X,H){"use strict";var g=rm(),x=W5(),A=Object.create(null);H.exports=function(M){return Object.defineProperties(M,{for:g(function(e){return A[e]?A[e]:A[e]=M(String(e))}),keyFor:g(function(e){var t;x(e);for(t in A)if(A[t]===e)return t})})}}}),xj=Ye({"node_modules/es6-symbol/polyfill.js"(X,H){"use strict";var g=rm(),x=W5(),A=bx().Symbol,M=gj(),e=yj(),t=_j(),r=Object.create,o=Object.defineProperties,a=Object.defineProperty,i,n,s;if(typeof A=="function")try{String(A()),s=!0}catch{}else A=null;n=function(h){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return i(h)},H.exports=i=function c(h){var v;if(this instanceof c)throw new TypeError("Symbol is not a constructor");return s?A(h):(v=r(n.prototype),h=h===void 0?"":String(h),o(v,{__description__:g("",h),__name__:g("",M(h))}))},e(i),t(i),o(n.prototype,{constructor:g(i),toString:g("",function(){return this.__name__})}),o(i.prototype,{toString:g(function(){return"Symbol ("+x(this).__description__+")"}),valueOf:g(function(){return x(this)})}),a(i.prototype,i.toPrimitive,g("",function(){var c=x(this);return typeof c=="symbol"?c:c.toString()})),a(i.prototype,i.toStringTag,g("c","Symbol")),a(n.prototype,i.toStringTag,g("c",i.prototype[i.toStringTag])),a(n.prototype,i.toPrimitive,g("c",i.prototype[i.toPrimitive]))}}),yg=Ye({"node_modules/es6-symbol/index.js"(X,H){"use strict";H.exports=vj()()?bx().Symbol:xj()}}),bj=Ye({"node_modules/es5-ext/array/#/clear.js"(X,H){"use strict";var g=tm();H.exports=function(){return g(this).length=0,this}}}),k1=Ye({"node_modules/es5-ext/object/valid-callable.js"(X,H){"use strict";H.exports=function(g){if(typeof g!="function")throw new TypeError(g+" is not a function");return g}}}),wj=Ye({"node_modules/type/string/coerce.js"(X,H){"use strict";var g=g0(),x=gT(),A=Object.prototype.toString;H.exports=function(M){if(!g(M))return null;if(x(M)){var e=M.toString;if(typeof e!="function"||e===A)return null}try{return""+M}catch{return null}}}}),Tj=Ye({"node_modules/type/lib/safe-to-string.js"(X,H){"use strict";H.exports=function(g){try{return g.toString()}catch{try{return String(g)}catch{return null}}}}}),Aj=Ye({"node_modules/type/lib/to-short-string.js"(X,H){"use strict";var g=Tj(),x=/[\n\r\u2028\u2029]/g;H.exports=function(A){var M=g(A);return M===null?"<Non-coercible to string value>":(M.length>100&&(M=M.slice(0,99)+"\u2026"),M=M.replace(x,function(e){switch(e){case`
`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),M)}}}),Z5=Ye({"node_modules/type/lib/resolve-exception.js"(X,H){"use strict";var g=g0(),x=gT(),A=wj(),M=Aj(),e=function(t,r){return t.replace("%v",M(r))};H.exports=function(t,r,o){if(!x(o))throw new TypeError(e(r,t));if(!g(t)){if("default"in o)return o.default;if(o.isOptional)return null}var a=A(o.errorMessage);throw g(a)||(a=r),new TypeError(e(a,t))}}}),Sj=Ye({"node_modules/type/value/ensure.js"(X,H){"use strict";var g=Z5(),x=g0();H.exports=function(A){return x(A)?A:g(A,"Cannot use %v",arguments[1])}}}),Mj=Ye({"node_modules/type/plain-function/ensure.js"(X,H){"use strict";var g=Z5(),x=q5();H.exports=function(A){return x(A)?A:g(A,"%v is not a plain function",arguments[1])}}}),Ej=Ye({"node_modules/es5-ext/array/from/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Array.from,x,A;return typeof g!="function"?!1:(x=["raz","dwa"],A=g(x),!!(A&&A!==x&&A[1]==="dwa"))}}}),kj=Ye({"node_modules/es5-ext/function/is-function.js"(X,H){"use strict";var g=Object.prototype.toString,x=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);H.exports=function(A){return typeof A=="function"&&x(g.call(A))}}}),Cj=Ye({"node_modules/es5-ext/math/sign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Math.sign;return typeof g!="function"?!1:g(10)===1&&g(-20)===-1}}}),Lj=Ye({"node_modules/es5-ext/math/sign/shim.js"(X,H){"use strict";H.exports=function(g){return g=Number(g),isNaN(g)||g===0?g:g>0?1:-1}}}),Pj=Ye({"node_modules/es5-ext/math/sign/index.js"(X,H){"use strict";H.exports=Cj()()?Math.sign:Lj()}}),Ij=Ye({"node_modules/es5-ext/number/to-integer.js"(X,H){"use strict";var g=Pj(),x=Math.abs,A=Math.floor;H.exports=function(M){return isNaN(M)?0:(M=Number(M),M===0||!isFinite(M)?M:g(M)*A(x(M)))}}}),Rj=Ye({"node_modules/es5-ext/number/to-pos-integer.js"(X,H){"use strict";var g=Ij(),x=Math.max;H.exports=function(A){return x(0,g(A))}}}),Dj=Ye({"node_modules/es5-ext/array/from/shim.js"(X,H){"use strict";var g=yg().iterator,x=_x(),A=kj(),M=Rj(),e=k1(),t=tm(),r=gg(),o=xx(),a=Array.isArray,i=Function.prototype.call,n={configurable:!0,enumerable:!0,writable:!0,value:null},s=Object.defineProperty;H.exports=function(c){var h=arguments[1],v=arguments[2],p,T,l,_,w,S,E,m,b,d;if(c=Object(t(c)),r(h)&&e(h),!this||this===Array||!A(this)){if(!h){if(x(c))return w=c.length,w!==1?Array.apply(null,c):(_=new Array(1),_[0]=c[0],_);if(a(c)){for(_=new Array(w=c.length),T=0;T<w;++T)_[T]=c[T];return _}}_=[]}else p=this;if(!a(c)){if((b=c[g])!==void 0){for(E=e(b).call(c),p&&(_=new p),m=E.next(),T=0;!m.done;)d=h?i.call(h,v,m.value,T):m.value,p?(n.value=d,s(_,T,n)):_[T]=d,m=E.next(),++T;w=T}else if(o(c)){for(w=c.length,p&&(_=new p),T=0,l=0;T<w;++T)d=c[T],T+1<w&&(S=d.charCodeAt(0),S>=55296&&S<=56319&&(d+=c[++T])),d=h?i.call(h,v,d,l):d,p?(n.value=d,s(_,l,n)):_[l]=d,++l;w=l}}if(w===void 0)for(w=M(c.length),p&&(_=new p(w)),T=0;T<w;++T)d=h?i.call(h,v,c[T],T):c[T],p?(n.value=d,s(_,T,n)):_[T]=d;return p&&(n.value=null,_.length=w),_}}}),zj=Ye({"node_modules/es5-ext/array/from/index.js"(X,H){"use strict";H.exports=Ej()()?Array.from:Dj()}}),Fj=Ye({"node_modules/es5-ext/object/copy.js"(X,H){"use strict";var g=zj(),x=yT(),A=tm();H.exports=function(M){var e=Object(A(M)),t=arguments[1],r=Object(arguments[2]);if(e!==M&&!t)return e;var o={};return t?g(t,function(a){(r.ensure||a in M)&&(o[a]=M[a])}):x(o,M),o}}}),Oj=Ye({"node_modules/es5-ext/object/_iterate.js"(X,H){"use strict";var g=k1(),x=tm(),A=Function.prototype.bind,M=Function.prototype.call,e=Object.keys,t=Object.prototype.propertyIsEnumerable;H.exports=function(r,o){return function(a,i){var n,s=arguments[2],c=arguments[3];return a=Object(x(a)),g(i),n=e(a),c&&n.sort(typeof c=="function"?A.call(c,a):void 0),typeof r!="function"&&(r=n[r]),M.call(r,n,function(h,v){return t.call(a,h)?M.call(i,s,a[h],h,a,v):o})}}}}),Bj=Ye({"node_modules/es5-ext/object/for-each.js"(X,H){"use strict";H.exports=Oj()("forEach")}}),Nj=Ye({"node_modules/es5-ext/object/map.js"(X,H){"use strict";var g=k1(),x=Bj(),A=Function.prototype.call;H.exports=function(M,e){var t={},r=arguments[2];return g(e),x(M,function(o,a,i,n){t[a]=A.call(e,r,o,a,i,n)}),t}}}),Uj=Ye({"node_modules/d/auto-bind.js"(X,H){"use strict";var g=g0(),x=Sj(),A=Mj(),M=Fj(),e=H5(),t=Nj(),r=Function.prototype.bind,o=Object.defineProperty,a=Object.prototype.hasOwnProperty,i;i=function(n,s,c){var h=x(s)&&A(s.value),v;return v=M(s),delete v.writable,delete v.value,v.get=function(){return!c.overwriteDefinition&&a.call(this,n)?h:(s.value=r.call(h,c.resolveContext?c.resolveContext(this):this),o(this,n,s),this[n])},v},H.exports=function(n){var s=e(arguments[1]);return g(s.resolveContext)&&A(s.resolveContext),t(n,function(c,h){return i(h,c,s)})}}}),X5=Ye({"node_modules/es6-iterator/index.js"(X,H){"use strict";var g=bj(),x=yT(),A=k1(),M=tm(),e=rm(),t=Uj(),r=yg(),o=Object.defineProperty,a=Object.defineProperties,i;H.exports=i=function(n,s){if(!(this instanceof i))throw new TypeError("Constructor requires 'new'");a(this,{__list__:e("w",M(n)),__context__:e("w",s),__nextIndex__:e("w",0)}),s&&(A(s.on),s.on("_add",this._onAdd),s.on("_delete",this._onDelete),s.on("_clear",this._onClear))},delete i.prototype.constructor,a(i.prototype,x({_next:e(function(){var n;if(this.__list__){if(this.__redo__&&(n=this.__redo__.shift(),n!==void 0))return n;if(this.__nextIndex__<this.__list__.length)return this.__nextIndex__++;this._unBind()}}),next:e(function(){return this._createResult(this._next())}),_createResult:e(function(n){return n===void 0?{done:!0,value:void 0}:{done:!1,value:this._resolve(n)}}),_resolve:e(function(n){return this.__list__[n]}),_unBind:e(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off("_add",this._onAdd),this.__context__.off("_delete",this._onDelete),this.__context__.off("_clear",this._onClear),this.__context__=null)}),toString:e(function(){return"[object "+(this[r.toStringTag]||"Object")+"]"})},t({_onAdd:e(function(n){if(!(n>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){o(this,"__redo__",e("c",[n]));return}this.__redo__.forEach(function(s,c){s>=n&&(this.__redo__[c]=++s)},this),this.__redo__.push(n)}}),_onDelete:e(function(n){var s;n>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(s=this.__redo__.indexOf(n),s!==-1&&this.__redo__.splice(s,1),this.__redo__.forEach(function(c,h){c>n&&(this.__redo__[h]=--c)},this)))}),_onClear:e(function(){this.__redo__&&g.call(this.__redo__),this.__nextIndex__=0})}))),o(i.prototype,r.iterator,e(function(){return this}))}}),jj=Ye({"node_modules/es6-iterator/array.js"(X,H){"use strict";var g=mT(),x=G5(),A=rm(),M=yg(),e=X5(),t=Object.defineProperty,r;r=H.exports=function(o,a){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");e.call(this,o),a?x.call(a,"key+value")?a="key+value":x.call(a,"key")?a="key":a="value":a="value",t(this,"__kind__",A("",a))},g&&g(r,e),delete r.prototype.constructor,r.prototype=Object.create(e.prototype,{_resolve:A(function(o){return this.__kind__==="value"?this.__list__[o]:this.__kind__==="key+value"?[o,this.__list__[o]]:o})}),t(r.prototype,M.toStringTag,A("c","Array Iterator"))}}),Vj=Ye({"node_modules/es6-iterator/string.js"(X,H){"use strict";var g=mT(),x=rm(),A=yg(),M=X5(),e=Object.defineProperty,t;t=H.exports=function(r){if(!(this instanceof t))throw new TypeError("Constructor requires 'new'");r=String(r),M.call(this,r),e(this,"__length__",x("",r.length))},g&&g(t,M),delete t.prototype.constructor,t.prototype=Object.create(M.prototype,{_next:x(function(){if(this.__list__){if(this.__nextIndex__<this.__length__)return this.__nextIndex__++;this._unBind()}}),_resolve:x(function(r){var o=this.__list__[r],a;return this.__nextIndex__===this.__length__?o:(a=o.charCodeAt(0),a>=55296&&a<=56319?o+this.__list__[this.__nextIndex__++]:o)})}),e(t.prototype,A.toStringTag,x("c","String Iterator"))}}),qj=Ye({"node_modules/es6-iterator/is-iterable.js"(X,H){"use strict";var g=_x(),x=gg(),A=xx(),M=yg().iterator,e=Array.isArray;H.exports=function(t){return x(t)?e(t)||A(t)||g(t)?!0:typeof t[M]=="function":!1}}}),Hj=Ye({"node_modules/es6-iterator/valid-iterable.js"(X,H){"use strict";var g=qj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not iterable");return x}}}),Y5=Ye({"node_modules/es6-iterator/get.js"(X,H){"use strict";var g=_x(),x=xx(),A=jj(),M=Vj(),e=Hj(),t=yg().iterator;H.exports=function(r){return typeof e(r)[t]=="function"?r[t]():g(r)?new A(r):x(r)?new M(r):new A(r)}}}),Gj=Ye({"node_modules/es6-iterator/for-of.js"(X,H){"use strict";var g=_x(),x=k1(),A=xx(),M=Y5(),e=Array.isArray,t=Function.prototype.call,r=Array.prototype.some;H.exports=function(o,a){var i,n=arguments[2],s,c,h,v,p,T,l;if(e(o)||g(o)?i="array":A(o)?i="string":o=M(o),x(a),c=function(){h=!0},i==="array"){r.call(o,function(_){return t.call(a,n,_,c),h});return}if(i==="string"){for(p=o.length,v=0;v<p&&(T=o[v],v+1<p&&(l=T.charCodeAt(0),l>=55296&&l<=56319&&(T+=o[++v])),t.call(a,n,T,c),!h);++v);return}for(s=o.next();!s.done;){if(t.call(a,n,s.value,c),h)return;s=o.next()}}}}),Wj=Ye({"node_modules/es6-weak-map/is-native-implemented.js"(X,H){"use strict";H.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()}}),Zj=Ye({"node_modules/es6-weak-map/polyfill.js"(X,H){"use strict";var g=gg(),x=mT(),A=rj(),M=tm(),e=aj(),t=rm(),r=Y5(),o=Gj(),a=yg().toStringTag,i=Wj(),n=Array.isArray,s=Object.defineProperty,c=Object.prototype.hasOwnProperty,h=Object.getPrototypeOf,v;H.exports=v=function(){var p=arguments[0],T;if(!(this instanceof v))throw new TypeError("Constructor requires 'new'");return T=i&&x&&WeakMap!==v?x(new WeakMap,h(this)):this,g(p)&&(n(p)||(p=r(p))),s(T,"__weakMapData__",t("c","$weakMap$"+e())),p&&o(p,function(l){M(l),T.set(l[0],l[1])}),T},i&&(x&&x(v,WeakMap),v.prototype=Object.create(WeakMap.prototype,{constructor:t(v)})),Object.defineProperties(v.prototype,{delete:t(function(p){return c.call(A(p),this.__weakMapData__)?(delete p[this.__weakMapData__],!0):!1}),get:t(function(p){if(c.call(A(p),this.__weakMapData__))return p[this.__weakMapData__]}),has:t(function(p){return c.call(A(p),this.__weakMapData__)}),set:t(function(p,T){return s(A(p),this.__weakMapData__,t("c",T)),this}),toString:t(function(){return"[object WeakMap]"})}),s(v.prototype,a,t("c","WeakMap"))}}),K5=Ye({"node_modules/es6-weak-map/index.js"(X,H){"use strict";H.exports=QU()()?WeakMap:Zj()}}),Xj=Ye({"node_modules/array-find-index/index.js"(X,H){"use strict";H.exports=function(g,x,A){if(typeof Array.prototype.findIndex=="function")return g.findIndex(x,A);if(typeof x!="function")throw new TypeError("predicate must be a function");var M=Object(g),e=M.length;if(e===0)return-1;for(var t=0;t<e;t++)if(x.call(A,M[t],t,M))return t;return-1}}}),J5=Ye({"node_modules/regl-line2d/index.js"(X,H){"use strict";var g=hg(),x=d0(),A=Wf(),M=Ev(),e=v0(),t=JU(),r=$U(),{float32:o,fract32:a}=vT(),i=K5(),n=E1(),s=Xj(),c=`
precision highp float;

attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;
attribute vec4 color;
attribute float lineEnd, lineTop;

uniform vec2 scale, scaleFract, translate, translateFract;
uniform float thickness, pixelRatio, id, depth;
uniform vec4 viewport;

varying vec4 fragColor;
varying vec2 tangent;

vec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {
	// the order is important
	return position * scale + translate
       + positionFract * scale + translateFract
       + position * scaleFract
       + positionFract * scaleFract;
}

void main() {
	float lineStart = 1. - lineEnd;
	float lineOffset = lineTop * 2. - 1.;

	vec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);
	tangent = normalize(diff * scale * viewport.zw);
	vec2 normal = vec2(-tangent.y, tangent.x);

	vec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart
		+ project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd

		+ thickness * normal * .5 * lineOffset / viewport.zw;

	gl_Position = vec4(position * 2.0 - 1.0, depth, 1);

	fragColor = color / 255.;
}
`,h=`
precision highp float;

uniform float dashLength, pixelRatio, thickness, opacity, id;
uniform sampler2D dashTexture;

varying vec4 fragColor;
varying vec2 tangent;

void main() {
	float alpha = 1.;

	float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
	float dash = texture2D(dashTexture, vec2(t, .5)).r;

	gl_FragColor = fragColor;
	gl_FragColor.a *= alpha * opacity * dash;
}
`,v=`
precision highp float;

attribute vec2 position, positionFract;

uniform vec4 color;
uniform vec2 scale, scaleFract, translate, translateFract;
uniform float pixelRatio, id;
uniform vec4 viewport;
uniform float opacity;

varying vec4 fragColor;

const float MAX_LINES = 256.;

void main() {
	float depth = (MAX_LINES - 4. - id) / (MAX_LINES);

	vec2 position = position * scale + translate
       + positionFract * scale + translateFract
       + position * scaleFract
       + positionFract * scaleFract;

	gl_Position = vec4(position * 2.0 - 1.0, depth, 1);

	fragColor = color / 255.;
	fragColor.a *= opacity;
}
`,p=`
precision highp float;
varying vec4 fragColor;

void main() {
	gl_FragColor = fragColor;
}
`,T=`
precision highp float;

attribute vec2 aCoord, bCoord, nextCoord, prevCoord;
attribute vec4 aColor, bColor;
attribute float lineEnd, lineTop;

uniform vec2 scale, translate;
uniform float thickness, pixelRatio, id, depth;
uniform vec4 viewport;
uniform float miterLimit, miterMode;

varying vec4 fragColor;
varying vec4 startCutoff, endCutoff;
varying vec2 tangent;
varying vec2 startCoord, endCoord;
varying float enableStartMiter, enableEndMiter;

const float REVERSE_THRESHOLD = -.875;
const float MIN_DIFF = 1e-6;

// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead
// TODO: precalculate dot products, normalize things beforehead etc.
// TODO: refactor to rectangular algorithm

float distToLine(vec2 p, vec2 a, vec2 b) {
	vec2 diff = b - a;
	vec2 perp = normalize(vec2(-diff.y, diff.x));
	return dot(p - a, perp);
}

bool isNaN( float val ){
  return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;
}

void main() {
	vec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;

  vec2 adjustedScale;
  adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;
  adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;

  vec2 scaleRatio = adjustedScale * viewport.zw;
	vec2 normalWidth = thickness / scaleRatio;

	float lineStart = 1. - lineEnd;
	float lineBot = 1. - lineTop;

	fragColor = (lineStart * aColor + lineEnd * bColor) / 255.;

	if (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;

	if (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);
	if (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);


	vec2 prevDiff = aCoord - prevCoord;
	vec2 currDiff = bCoord - aCoord;
	vec2 nextDiff = nextCoord - bCoord;

	vec2 prevTangent = normalize(prevDiff * scaleRatio);
	vec2 currTangent = normalize(currDiff * scaleRatio);
	vec2 nextTangent = normalize(nextDiff * scaleRatio);

	vec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);
	vec2 currNormal = vec2(-currTangent.y, currTangent.x);
	vec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);

	vec2 startJoinDirection = normalize(prevTangent - currTangent);
	vec2 endJoinDirection = normalize(currTangent - nextTangent);

	// collapsed/unidirectional segment cases
	// FIXME: there should be more elegant solution
	vec2 prevTanDiff = abs(prevTangent - currTangent);
	vec2 nextTanDiff = abs(nextTangent - currTangent);
	if (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {
		startJoinDirection = currNormal;
	}
	if (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {
		endJoinDirection = currNormal;
	}
	if (aCoord == bCoord) {
		endJoinDirection = startJoinDirection;
		currNormal = prevNormal;
		currTangent = prevTangent;
	}

	tangent = currTangent;

	//calculate join shifts relative to normals
	float startJoinShift = dot(currNormal, startJoinDirection);
	float endJoinShift = dot(currNormal, endJoinDirection);

	float startMiterRatio = abs(1. / startJoinShift);
	float endMiterRatio = abs(1. / endJoinShift);

	vec2 startJoin = startJoinDirection * startMiterRatio;
	vec2 endJoin = endJoinDirection * endMiterRatio;

	vec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;
	startTopJoin = sign(startJoinShift) * startJoin * .5;
	startBotJoin = -startTopJoin;

	endTopJoin = sign(endJoinShift) * endJoin * .5;
	endBotJoin = -endTopJoin;

	vec2 aTopCoord = aCoord + normalWidth * startTopJoin;
	vec2 bTopCoord = bCoord + normalWidth * endTopJoin;
	vec2 aBotCoord = aCoord + normalWidth * startBotJoin;
	vec2 bBotCoord = bCoord + normalWidth * endBotJoin;

	//miter anti-clipping
	float baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));
	float abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));

	//prevent close to reverse direction switch
	bool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) <  length(normalWidth * currNormal);
	bool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) <  length(normalWidth * currNormal);

	if (prevReverse) {
		//make join rectangular
		vec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;
		float normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);
		aBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
		aTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
	}
	else if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {
		//handle miter clipping
		bTopCoord -= normalWidth * endTopJoin;
		bTopCoord += normalize(endTopJoin * normalWidth) * baClipping;
	}

	if (nextReverse) {
		//make join rectangular
		vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;
		float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);
		bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
		bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
	}
	else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {
		//handle miter clipping
		aBotCoord -= normalWidth * startBotJoin;
		aBotCoord += normalize(startBotJoin * normalWidth) * abClipping;
	}

	vec2 aTopPosition = (aTopCoord) * adjustedScale + translate;
	vec2 aBotPosition = (aBotCoord) * adjustedScale + translate;

	vec2 bTopPosition = (bTopCoord) * adjustedScale + translate;
	vec2 bBotPosition = (bBotCoord) * adjustedScale + translate;

	//position is normalized 0..1 coord on the screen
	vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;

	startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;
	endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;

	gl_Position = vec4(position  * 2.0 - 1.0, depth, 1);

	enableStartMiter = step(dot(currTangent, prevTangent), .5);
	enableEndMiter = step(dot(currTangent, nextTangent), .5);

	//bevel miter cutoffs
	if (miterMode == 1.) {
		if (enableStartMiter == 1.) {
			vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;
			startCutoff = vec4(aCoord, aCoord);
			startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
			startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
			startCutoff += viewport.xyxy;
			startCutoff += startMiterWidth.xyxy;
		}

		if (enableEndMiter == 1.) {
			vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;
			endCutoff = vec4(bCoord, bCoord);
			endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x)  / scaleRatio;
			endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
			endCutoff += viewport.xyxy;
			endCutoff += endMiterWidth.xyxy;
		}
	}

	//round miter cutoffs
	else if (miterMode == 2.) {
		if (enableStartMiter == 1.) {
			vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;
			startCutoff = vec4(aCoord, aCoord);
			startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
			startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
			startCutoff += viewport.xyxy;
			startCutoff += startMiterWidth.xyxy;
		}

		if (enableEndMiter == 1.) {
			vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;
			endCutoff = vec4(bCoord, bCoord);
			endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x)  / scaleRatio;
			endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
			endCutoff += viewport.xyxy;
			endCutoff += endMiterWidth.xyxy;
		}
	}
}
`,l=`
precision highp float;

uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;
uniform sampler2D dashTexture;

varying vec4 fragColor;
varying vec2 tangent;
varying vec4 startCutoff, endCutoff;
varying vec2 startCoord, endCoord;
varying float enableStartMiter, enableEndMiter;

float distToLine(vec2 p, vec2 a, vec2 b) {
	vec2 diff = b - a;
	vec2 perp = normalize(vec2(-diff.y, diff.x));
	return dot(p - a, perp);
}

void main() {
	float alpha = 1., distToStart, distToEnd;
	float cutoff = thickness * .5;

	//bevel miter
	if (miterMode == 1.) {
		if (enableStartMiter == 1.) {
			distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
			if (distToStart < -1.) {
				discard;
				return;
			}
			alpha *= min(max(distToStart + 1., 0.), 1.);
		}

		if (enableEndMiter == 1.) {
			distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
			if (distToEnd < -1.) {
				discard;
				return;
			}
			alpha *= min(max(distToEnd + 1., 0.), 1.);
		}
	}

	// round miter
	else if (miterMode == 2.) {
		if (enableStartMiter == 1.) {
			distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
			if (distToStart < 0.) {
				float radius = length(gl_FragCoord.xy - startCoord);

				if(radius > cutoff + .5) {
					discard;
					return;
				}

				alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
			}
		}

		if (enableEndMiter == 1.) {
			distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
			if (distToEnd < 0.) {
				float radius = length(gl_FragCoord.xy - endCoord);

				if(radius > cutoff + .5) {
					discard;
					return;
				}

				alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
			}
		}
	}

	float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
	float dash = texture2D(dashTexture, vec2(t, .5)).r;

	gl_FragColor = fragColor;
	gl_FragColor.a *= alpha * opacity * dash;
}
`;H.exports=_;function _(w,S){if(!(this instanceof _))return new _(w,S);if(typeof w=="function"?(S||(S={}),S.regl=w):S=w,S.length&&(S.positions=S),w=S.regl,!w.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=w._gl,this.regl=w,this.passes=[],this.shaders=_.shaders.has(w)?_.shaders.get(w):_.shaders.set(w,_.createShaders(w)).get(w),this.update(S)}_.dashMult=2,_.maxPatternLength=256,_.precisionThreshold=3e6,_.maxPoints=1e4,_.maxLines=2048,_.shaders=new i,_.createShaders=function(w){let S=w.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),E={primitive:"triangle strip",instances:w.prop("count"),count:4,offset:0,uniforms:{miterMode:(u,y)=>y.join==="round"?2:1,miterLimit:w.prop("miterLimit"),scale:w.prop("scale"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),thickness:w.prop("thickness"),dashTexture:w.prop("dashTexture"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),dashLength:w.prop("dashLength"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight],depth:w.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(u,y)=>!y.overlay},stencil:{enable:!1},scissor:{enable:!0,box:w.prop("viewport")},viewport:w.prop("viewport")},m=w(A({vert:c,frag:h,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},E)),b;try{b=w(A({cull:{enable:!0,face:"back"},vert:T,frag:l,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aColor:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:w.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},E))}catch{b=m}return{fill:w({primitive:"triangle",elements:(u,y)=>y.triangles,offset:0,vert:v,frag:p,uniforms:{scale:w.prop("scale"),color:w.prop("fill"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight]},attributes:{position:{buffer:w.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8}},blend:E.blend,depth:{enable:!1},scissor:E.scissor,stencil:E.stencil,viewport:E.viewport}),rect:m,miter:b}},_.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},_.prototype.render=function(...w){w.length&&this.update(...w),this.draw()},_.prototype.draw=function(...w){return(w.length?w:this.passes).forEach((S,E)=>{if(S&&Array.isArray(S))return this.draw(...S);typeof S=="number"&&(S=this.passes[S]),S&&S.count>1&&S.opacity&&(this.regl._refresh(),S.fill&&S.triangles&&S.triangles.length>2&&this.shaders.fill(S),S.thickness&&(S.scale[0]*S.viewport.width>_.precisionThreshold||S.scale[1]*S.viewport.height>_.precisionThreshold?this.shaders.rect(S):S.join==="rect"||!S.join&&(S.thickness<=2||S.count>=_.maxPoints)?this.shaders.rect(S):this.shaders.miter(S)))}),this},_.prototype.update=function(w){if(!w)return;w.length!=null?typeof w[0]=="number"&&(w=[{positions:w}]):Array.isArray(w)||(w=[w]);let{regl:S,gl:E}=this;if(w.forEach((b,d)=>{let u=this.passes[d];if(b!==void 0){if(b===null){this.passes[d]=null;return}if(typeof b[0]=="number"&&(b={positions:b}),b=M(b,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),u||(this.passes[d]=u={id:d,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:S.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:S.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},b=A({},_.defaults,b)),b.thickness!=null&&(u.thickness=parseFloat(b.thickness)),b.opacity!=null&&(u.opacity=parseFloat(b.opacity)),b.miterLimit!=null&&(u.miterLimit=parseFloat(b.miterLimit)),b.overlay!=null&&(u.overlay=!!b.overlay,d<_.maxLines&&(u.depth=2*(_.maxLines-1-d%_.maxLines)/_.maxLines-1)),b.join!=null&&(u.join=b.join),b.hole!=null&&(u.hole=b.hole),b.fill!=null&&(u.fill=b.fill?g(b.fill,"uint8"):null),b.viewport!=null&&(u.viewport=n(b.viewport)),u.viewport||(u.viewport=n([E.drawingBufferWidth,E.drawingBufferHeight])),b.close!=null&&(u.close=b.close),b.positions===null&&(b.positions=[]),b.positions){let P,L;if(b.positions.x&&b.positions.y){let O=b.positions.x,I=b.positions.y;L=u.count=Math.max(O.length,I.length),P=new Float64Array(L*2);for(let N=0;N<L;N++)P[N*2]=O[N],P[N*2+1]=I[N]}else P=e(b.positions,"float64"),L=u.count=Math.floor(P.length/2);let z=u.bounds=x(P,2);if(u.fill){let O=[],I={},N=0;for(let U=0,W=0,Q=u.count;U<Q;U++){let ue=P[U*2],se=P[U*2+1];isNaN(ue)||isNaN(se)||ue==null||se==null?(ue=P[N*2],se=P[N*2+1],I[U]=N):N=U,O[W++]=ue,O[W++]=se}if(b.splitNull){u.count-1 in I||(I[u.count]=u.count-1);let U=Object.keys(I).map(Number).sort((se,he)=>se-he),W=[],Q=0,ue=u.hole!=null?u.hole[0]:null;if(ue!=null){let se=s(U,he=>he>=ue);U=U.slice(0,se),U.push(ue)}for(let se=0;se<U.length;se++){let he=O.slice(Q*2,U[se]*2).concat(ue?O.slice(ue*2):[]),G=(u.hole||[]).map(J=>J-ue+(U[se]-Q)),$=t(he,G);$=$.map(J=>J+Q+(J+Q<U[se]?0:ue-U[se])),W.push(...$),Q=U[se]+1}for(let se=0,he=W.length;se<he;se++)I[W[se]]!=null&&(W[se]=I[W[se]]);u.triangles=W}else{let U=t(O,u.hole||[]);for(let W=0,Q=U.length;W<Q;W++)I[U[W]]!=null&&(U[W]=I[U[W]]);u.triangles=U}}let F=new Float64Array(P);r(F,2,z);let B=new Float64Array(L*2+6);u.close?P[0]===P[L*2-2]&&P[1]===P[L*2-1]?(B[0]=F[L*2-4],B[1]=F[L*2-3]):(B[0]=F[L*2-2],B[1]=F[L*2-1]):(B[0]=F[0],B[1]=F[1]),B.set(F,2),u.close?P[0]===P[L*2-2]&&P[1]===P[L*2-1]?(B[L*2+2]=F[2],B[L*2+3]=F[3],u.count-=1):(B[L*2+2]=F[0],B[L*2+3]=F[1],B[L*2+4]=F[2],B[L*2+5]=F[3]):(B[L*2+2]=F[L*2-2],B[L*2+3]=F[L*2-1],B[L*2+4]=F[L*2-2],B[L*2+5]=F[L*2-1]);var y=o(B);u.positionBuffer(y);var f=a(B,y);u.positionFractBuffer(f)}if(b.range?u.range=b.range:u.range||(u.range=u.bounds),(b.range||b.positions)&&u.count){let P=u.bounds,L=P[2]-P[0],z=P[3]-P[1],F=u.range[2]-u.range[0],B=u.range[3]-u.range[1];u.scale=[L/F,z/B],u.translate=[-u.range[0]/F+P[0]/F||0,-u.range[1]/B+P[1]/B||0],u.scaleFract=a(u.scale),u.translateFract=a(u.translate)}if(b.dashes){let P=0,L;if(!b.dashes||b.dashes.length<2)P=1,L=new Uint8Array([255,255,255,255,255,255,255,255]);else{P=0;for(let B=0;B<b.dashes.length;++B)P+=b.dashes[B];L=new Uint8Array(P*_.dashMult);let z=0,F=255;for(let B=0;B<2;B++)for(let O=0;O<b.dashes.length;++O){for(let I=0,N=b.dashes[O]*_.dashMult*.5;I<N;++I)L[z++]=F;F^=255}}u.dashLength=P,u.dashTexture({channels:1,data:L,width:L.length,height:1,mag:"linear",min:"linear"},0,0)}if(b.color){let P=u.count,L=b.color;L||(L="transparent");let z=new Uint8Array(P*4+4);if(!Array.isArray(L)||typeof L[0]=="number"){let F=g(L,"uint8");for(let B=0;B<P+1;B++)z.set(F,B*4)}else{for(let F=0;F<P;F++){let B=g(L[F],"uint8");z.set(B,F*4)}z.set(g(L[0],"uint8"),P*4)}u.colorBuffer({usage:"dynamic",type:"uint8",data:z})}}}),w.length<this.passes.length){for(let b=w.length;b<this.passes.length;b++){let d=this.passes[b];d&&(d.colorBuffer.destroy(),d.positionBuffer.destroy(),d.dashTexture.destroy())}this.passes.length=w.length}let m=[];for(let b=0;b<this.passes.length;b++)this.passes[b]!==null&&m.push(this.passes[b]);return this.passes=m,this},_.prototype.destroy=function(){return this.passes.forEach(w=>{w.colorBuffer.destroy(),w.positionBuffer.destroy(),w.dashTexture.destroy()}),this.passes.length=0,this}}}),Yj=Ye({"node_modules/regl-error2d/index.js"(X,H){"use strict";var g=d0(),x=hg(),A=B5(),M=Ev(),e=Wf(),t=v0(),{float32:r,fract32:o}=vT();H.exports=i;var a=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function i(n,s){if(typeof n=="function"?(s||(s={}),s.regl=n):s=n,s.length&&(s.positions=s),n=s.regl,!n.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let c=n._gl,h,v,p,T,l,_,w={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},S=[];return T=n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),v=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),p=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),_=n.buffer({usage:"static",type:"float",data:a}),d(s),h=n({vert:`
		precision highp float;

		attribute vec2 position, positionFract;
		attribute vec4 error;
		attribute vec4 color;

		attribute vec2 direction, lineOffset, capOffset;

		uniform vec4 viewport;
		uniform float lineWidth, capSize;
		uniform vec2 scale, scaleFract, translate, translateFract;

		varying vec4 fragColor;

		void main() {
			fragColor = color / 255.;

			vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;

			vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;

			vec2 position = position + dxy;

			vec2 pos = (position + translate) * scale
				+ (positionFract + translateFract) * scale
				+ (position + translate) * scaleFract
				+ (positionFract + translateFract) * scaleFract;

			pos += pixelOffset / viewport.zw;

			gl_Position = vec4(pos * 2. - 1., 0, 1);
		}
		`,frag:`
		precision highp float;

		varying vec4 fragColor;

		uniform float opacity;

		void main() {
			gl_FragColor = fragColor;
			gl_FragColor.a *= opacity;
		}
		`,uniforms:{range:n.prop("range"),lineWidth:n.prop("lineWidth"),capSize:n.prop("capSize"),opacity:n.prop("opacity"),scale:n.prop("scale"),translate:n.prop("translate"),scaleFract:n.prop("scaleFract"),translateFract:n.prop("translateFract"),viewport:(y,f)=>[f.viewport.x,f.viewport.y,y.viewportWidth,y.viewportHeight]},attributes:{color:{buffer:T,offset:(y,f)=>f.offset*4,divisor:1},position:{buffer:v,offset:(y,f)=>f.offset*8,divisor:1},positionFract:{buffer:p,offset:(y,f)=>f.offset*8,divisor:1},error:{buffer:l,offset:(y,f)=>f.offset*16,divisor:1},direction:{buffer:_,stride:24,offset:0},lineOffset:{buffer:_,stride:24,offset:8},capOffset:{buffer:_,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:n.prop("viewport")},viewport:n.prop("viewport"),stencil:!1,instances:n.prop("count"),count:a.length}),e(E,{update:d,draw:m,destroy:u,regl:n,gl:c,canvas:c.canvas,groups:S}),E;function E(y){y?d(y):y===null&&u(),m()}function m(y){if(typeof y=="number")return b(y);y&&!Array.isArray(y)&&(y=[y]),n._refresh(),S.forEach((f,P)=>{if(f){if(y&&(y[P]?f.draw=!0:f.draw=!1),!f.draw){f.draw=!0;return}b(P)}})}function b(y){typeof y=="number"&&(y=S[y]),y!=null&&y&&y.count&&y.color&&y.opacity&&y.positions&&y.positions.length>1&&(y.scaleRatio=[y.scale[0]*y.viewport.width,y.scale[1]*y.viewport.height],h(y),y.after&&y.after(y))}function d(y){if(!y)return;y.length!=null?typeof y[0]=="number"&&(y=[{positions:y}]):Array.isArray(y)||(y=[y]);let f=0,P=0;if(E.groups=S=y.map((F,B)=>{let O=S[B];if(F)typeof F=="function"?F={after:F}:typeof F[0]=="number"&&(F={positions:F});else return O;return F=M(F,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),O||(S[B]=O={id:B,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},F=e({},w,F)),A(O,F,[{lineWidth:I=>+I*.5,capSize:I=>+I*.5,opacity:parseFloat,errors:I=>(I=t(I),P+=I.length,I),positions:(I,N)=>(I=t(I,"float64"),N.count=Math.floor(I.length/2),N.bounds=g(I,2),N.offset=f,f+=N.count,I)},{color:(I,N)=>{let U=N.count;if(I||(I="transparent"),!Array.isArray(I)||typeof I[0]=="number"){let Q=I;I=Array(U);for(let ue=0;ue<U;ue++)I[ue]=Q}if(I.length<U)throw Error("Not enough colors");let W=new Uint8Array(U*4);for(let Q=0;Q<U;Q++){let ue=x(I[Q],"uint8");W.set(ue,Q*4)}return W},range:(I,N,U)=>{let W=N.bounds;return I||(I=W),N.scale=[1/(I[2]-I[0]),1/(I[3]-I[1])],N.translate=[-I[0],-I[1]],N.scaleFract=o(N.scale),N.translateFract=o(N.translate),I},viewport:I=>{let N;return Array.isArray(I)?N={x:I[0],y:I[1],width:I[2]-I[0],height:I[3]-I[1]}:I?(N={x:I.x||I.left||0,y:I.y||I.top||0},I.right?N.width=I.right-N.x:N.width=I.w||I.width||0,I.bottom?N.height=I.bottom-N.y:N.height=I.h||I.height||0):N={x:0,y:0,width:c.drawingBufferWidth,height:c.drawingBufferHeight},N}}]),O}),f||P){let F=S.reduce((N,U,W)=>N+(U?U.count:0),0),B=new Float64Array(F*2),O=new Uint8Array(F*4),I=new Float32Array(F*4);S.forEach((N,U)=>{if(!N)return;let{positions:W,count:Q,offset:ue,color:se,errors:he}=N;Q&&(O.set(se,ue*4),I.set(he,ue*4),B.set(W,ue*2))});var L=r(B);v(L);var z=o(B,L);p(z),T(O),l(I)}}function u(){v.destroy(),p.destroy(),T.destroy(),l.destroy(),_.destroy()}}}}),Kj=Ye({"node_modules/unquote/index.js"(X,H){var g=/[\'\"]/;H.exports=function(A){return A?(g.test(A.charAt(0))&&(A=A.substr(1)),g.test(A.charAt(A.length-1))&&(A=A.substr(0,A.length-1)),A):""}}}),$5=Ye({"node_modules/css-global-keywords/index.json"(){}}),Q5=Ye({"node_modules/css-system-font-keywords/index.json"(){}}),ek=Ye({"node_modules/css-font-weight-keywords/index.json"(){}}),tk=Ye({"node_modules/css-font-style-keywords/index.json"(){}}),rk=Ye({"node_modules/css-font-stretch-keywords/index.json"(){}}),Jj=Ye({"node_modules/parenthesis/index.js"(X,H){"use strict";function g(M,e){if(typeof M!="string")return[M];var t=[M];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],o=e.escape||"___",a=!!e.flat;r.forEach(function(s){var c=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),h=[];function v(p,T,l){var _=t.push(p.slice(s[0].length,-s[1].length))-1;return h.push(_),o+_+o}t.forEach(function(p,T){for(var l,_=0;p!=l;)if(l=p,p=p.replace(c,v),_++>1e4)throw Error("References have circular dependency. Please, check them.");t[T]=p}),h=h.reverse(),t=t.map(function(p){return h.forEach(function(T){p=p.replace(new RegExp("(\\"+o+T+"\\"+o+")","g"),s[0]+"$1"+s[1])}),p})});var i=new RegExp("\\"+o+"([0-9]+)\\"+o);function n(s,c,h){for(var v=[],p,T=0;p=i.exec(s);){if(T++>1e4)throw Error("Circular references in parenthesis");v.push(s.slice(0,p.index)),v.push(n(c[p[1]],c)),s=s.slice(p.index+p[0].length)}return v.push(s),v}return a?t:n(t[0],t)}function x(M,e){if(e&&e.flat){var t=e&&e.escape||"___",r=M[0],o;if(!r)return"";for(var a=new RegExp("\\"+t+"([0-9]+)\\"+t),i=0;r!=o;){if(i++>1e4)throw Error("Circular references in "+M);o=r,r=r.replace(a,n)}return r}return M.reduce(function s(c,h){return Array.isArray(h)&&(h=h.reduce(s,"")),c+h},"");function n(s,c){if(M[c]==null)throw Error("Reference "+c+"is undefined");return M[c]}}function A(M,e){return Array.isArray(M)?x(M,e):g(M,e)}A.parse=g,A.stringify=x,H.exports=A}}),$j=Ye({"node_modules/string-split-by/index.js"(X,H){"use strict";var g=Jj();H.exports=function(A,M,e){if(A==null)throw Error("First argument should be a string");if(M==null)throw Error("Separator should be a string or a RegExp");e?(typeof e=="string"||Array.isArray(e))&&(e={ignore:e}):e={},e.escape==null&&(e.escape=!0),e.ignore==null?e.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof e.ignore=="string"&&(e.ignore=[e.ignore]),e.ignore=e.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var t=g.parse(A,{flat:!0,brackets:e.ignore}),r=t[0],o=r.split(M);if(e.escape){for(var a=[],i=0;i<o.length;i++){var n=o[i],s=o[i+1];n[n.length-1]==="\\"&&n[n.length-2]!=="\\"?(a.push(n+M+s),i++):a.push(n)}o=a}for(var i=0;i<o.length;i++)t[0]=o[i],o[i]=g.stringify(t,{flat:!0});return o}}}),Qj=Ye({"node_modules/css-font-size-keywords/index.json"(){}}),ak=Ye({"node_modules/css-font/lib/util.js"(X,H){"use strict";var g=Qj();H.exports={isSize:function(A){return/^[\d\.]/.test(A)||A.indexOf("/")!==-1||g.indexOf(A)!==-1}}}}),eV=Ye({"node_modules/css-font/parse.js"(X,H){"use strict";var g=Kj(),x=$5(),A=Q5(),M=ek(),e=tk(),t=rk(),r=$j(),o=ak().isSize;H.exports=i;var a=i.cache={};function i(s){if(typeof s!="string")throw new Error("Font argument must be a string.");if(a[s])return a[s];if(s==="")throw new Error("Cannot parse an empty string.");if(A.indexOf(s)!==-1)return a[s]={system:s};for(var c={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},h=r(s,/\s+/),v;v=h.shift();){if(x.indexOf(v)!==-1)return["style","variant","weight","stretch"].forEach(function(T){c[T]=v}),a[s]=c;if(e.indexOf(v)!==-1){c.style=v;continue}if(v==="normal"||v==="small-caps"){c.variant=v;continue}if(t.indexOf(v)!==-1){c.stretch=v;continue}if(M.indexOf(v)!==-1){c.weight=v;continue}if(o(v)){var p=r(v,"/");if(c.size=p[0],p[1]!=null?c.lineHeight=n(p[1]):h[0]==="/"&&(h.shift(),c.lineHeight=n(h.shift())),!h.length)throw new Error("Missing required font-family.");return c.family=r(h.join(" "),/\s*,\s*/).map(g),a[s]=c}throw new Error("Unknown or unsupported font token: "+v)}throw new Error("Missing required font-size.")}function n(s){var c=parseFloat(s);return c.toString()===s?c:s}}}),ik=Ye({"node_modules/css-font/stringify.js"(X,H){"use strict";var g=Ev(),x=ak().isSize,A=s($5()),M=s(Q5()),e=s(ek()),t=s(tk()),r=s(rk()),o={normal:1,"small-caps":1},a={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},i={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};H.exports=function(h){if(h=g(h,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),h.system)return h.system&&n(h.system,M),h.system;if(n(h.style,t),n(h.variant,o),n(h.weight,e),n(h.stretch,r),h.size==null&&(h.size=i.size),typeof h.size=="number"&&(h.size+="px"),!x)throw Error("Bad size value `"+h.size+"`");h.family||(h.family=i.family),Array.isArray(h.family)&&(h.family.length||(h.family=[i.family]),h.family=h.family.map(function(p){return a[p]?p:'"'+p+'"'}).join(", "));var v=[];return v.push(h.style),h.variant!==h.style&&v.push(h.variant),h.weight!==h.variant&&h.weight!==h.style&&v.push(h.weight),h.stretch!==h.weight&&h.stretch!==h.variant&&h.stretch!==h.style&&v.push(h.stretch),v.push(h.size+(h.lineHeight==null||h.lineHeight==="normal"||h.lineHeight+""=="1"?"":"/"+h.lineHeight)),v.push(h.family),v.filter(Boolean).join(" ")};function n(c,h){if(c&&!h[c]&&!A[c])throw Error("Unknown keyword `"+c+"`");return c}function s(c){for(var h={},v=0;v<c.length;v++)h[c[v]]=1;return h}}}),tV=Ye({"node_modules/css-font/index.js"(X,H){"use strict";H.exports={parse:eV(),stringify:ik()}}}),nk=Ye({"node_modules/regl/dist/regl.unchecked.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():g.createREGL=x()})(X,function(){"use strict";var g=function(Qt,ra){for(var Ta=Object.keys(ra),si=0;si<Ta.length;++si)Qt[Ta[si]]=ra[Ta[si]];return Qt},x=0,A=0,M=5,e=6;function t(Qt,ra){this.id=x++,this.type=Qt,this.data=ra}function r(Qt){return Qt.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function o(Qt){if(Qt.length===0)return[];var ra=Qt.charAt(0),Ta=Qt.charAt(Qt.length-1);if(Qt.length>1&&ra===Ta&&(ra==='"'||ra==="'"))return['"'+r(Qt.substr(1,Qt.length-2))+'"'];var si=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Qt);if(si)return o(Qt.substr(0,si.index)).concat(o(si[1])).concat(o(Qt.substr(si.index+si[0].length)));var wi=Qt.split(".");if(wi.length===1)return['"'+r(Qt)+'"'];for(var xi=[],bi=0;bi<wi.length;++bi)xi=xi.concat(o(wi[bi]));return xi}function a(Qt){return"["+o(Qt).join("][")+"]"}function i(Qt,ra){return new t(Qt,a(ra+""))}function n(Qt){return typeof Qt=="function"&&!Qt._reglType||Qt instanceof t}function s(Qt,ra){if(typeof Qt=="function")return new t(A,Qt);if(typeof Qt=="number"||typeof Qt=="boolean")return new t(M,Qt);if(Array.isArray(Qt))return new t(e,Qt.map(function(Ta,si){return s(Ta,ra+"["+si+"]")}));if(Qt instanceof t)return Qt}var c={DynamicVariable:t,define:i,isDynamic:n,unbox:s,accessor:a},h={next:typeof requestAnimationFrame=="function"?function(Qt){return requestAnimationFrame(Qt)}:function(Qt){return setTimeout(Qt,16)},cancel:typeof cancelAnimationFrame=="function"?function(Qt){return cancelAnimationFrame(Qt)}:clearTimeout},v=typeof performance<"u"&&performance.now?function(){return performance.now()}:function(){return+new Date};function p(){var Qt={"":0},ra=[""];return{id:function(Ta){var si=Qt[Ta];return si||(si=Qt[Ta]=ra.length,ra.push(Ta),si)},str:function(Ta){return ra[Ta]}}}function T(Qt,ra,Ta){var si=document.createElement("canvas");g(si.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Qt.appendChild(si),Qt===document.body&&(si.style.position="absolute",g(Qt.style,{margin:0,padding:0}));function wi(){var Fi=window.innerWidth,cn=window.innerHeight;if(Qt!==document.body){var fn=si.getBoundingClientRect();Fi=fn.right-fn.left,cn=fn.bottom-fn.top}si.width=Ta*Fi,si.height=Ta*cn}var xi;Qt!==document.body&&typeof ResizeObserver=="function"?(xi=new ResizeObserver(function(){setTimeout(wi)}),xi.observe(Qt)):window.addEventListener("resize",wi,!1);function bi(){xi?xi.disconnect():window.removeEventListener("resize",wi),Qt.removeChild(si)}return wi(),{canvas:si,onDestroy:bi}}function l(Qt,ra){function Ta(si){try{return Qt.getContext(si,ra)}catch{return null}}return Ta("webgl")||Ta("experimental-webgl")||Ta("webgl-experimental")}function _(Qt){return typeof Qt.nodeName=="string"&&typeof Qt.appendChild=="function"&&typeof Qt.getBoundingClientRect=="function"}function w(Qt){return typeof Qt.drawArrays=="function"||typeof Qt.drawElements=="function"}function S(Qt){return typeof Qt=="string"?Qt.split():Qt}function E(Qt){return typeof Qt=="string"?document.querySelector(Qt):Qt}function m(Qt){var ra=Qt||{},Ta,si,wi,xi,bi={},Fi=[],cn=[],fn=typeof window>"u"?1:window.devicePixelRatio,Gi=!1,Io={},nn=function(ui){},on=function(){};if(typeof ra=="string"?Ta=document.querySelector(ra):typeof ra=="object"&&(_(ra)?Ta=ra:w(ra)?(xi=ra,wi=xi.canvas):("gl"in ra?xi=ra.gl:"canvas"in ra?wi=E(ra.canvas):"container"in ra&&(si=E(ra.container)),"attributes"in ra&&(bi=ra.attributes),"extensions"in ra&&(Fi=S(ra.extensions)),"optionalExtensions"in ra&&(cn=S(ra.optionalExtensions)),"onDone"in ra&&(nn=ra.onDone),"profile"in ra&&(Gi=!!ra.profile),"pixelRatio"in ra&&(fn=+ra.pixelRatio),"cachedCode"in ra&&(Io=ra.cachedCode))),Ta&&(Ta.nodeName.toLowerCase()==="canvas"?wi=Ta:si=Ta),!xi){if(!wi){var Oi=T(si||document.body,nn,fn);if(!Oi)return null;wi=Oi.canvas,on=Oi.onDestroy}bi.premultipliedAlpha===void 0&&(bi.premultipliedAlpha=!0),xi=l(wi,bi)}return xi?{gl:xi,canvas:wi,container:si,extensions:Fi,optionalExtensions:cn,pixelRatio:fn,profile:Gi,cachedCode:Io,onDone:nn,onDestroy:on}:(on(),nn("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function b(Qt,ra){var Ta={};function si(bi){var Fi=bi.toLowerCase(),cn;try{cn=Ta[Fi]=Qt.getExtension(Fi)}catch{}return!!cn}for(var wi=0;wi<ra.extensions.length;++wi){var xi=ra.extensions[wi];if(!si(xi))return ra.onDestroy(),ra.onDone('"'+xi+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return ra.optionalExtensions.forEach(si),{extensions:Ta,restore:function(){Object.keys(Ta).forEach(function(bi){if(Ta[bi]&&!si(bi))throw new Error("(regl): error restoring extension "+bi)})}}}function d(Qt,ra){for(var Ta=Array(Qt),si=0;si<Qt;++si)Ta[si]=ra(si);return Ta}var u=5120,y=5121,f=5122,P=5123,L=5124,z=5125,F=5126;function B(Qt){for(var ra=16;ra<=1<<28;ra*=16)if(Qt<=ra)return ra;return 0}function O(Qt){var ra,Ta;return ra=(Qt>65535)<<4,Qt>>>=ra,Ta=(Qt>255)<<3,Qt>>>=Ta,ra|=Ta,Ta=(Qt>15)<<2,Qt>>>=Ta,ra|=Ta,Ta=(Qt>3)<<1,Qt>>>=Ta,ra|=Ta,ra|Qt>>1}function I(){var Qt=d(8,function(){return[]});function ra(xi){var bi=B(xi),Fi=Qt[O(bi)>>2];return Fi.length>0?Fi.pop():new ArrayBuffer(bi)}function Ta(xi){Qt[O(xi.byteLength)>>2].push(xi)}function si(xi,bi){var Fi=null;switch(xi){case u:Fi=new Int8Array(ra(bi),0,bi);break;case y:Fi=new Uint8Array(ra(bi),0,bi);break;case f:Fi=new Int16Array(ra(2*bi),0,bi);break;case P:Fi=new Uint16Array(ra(2*bi),0,bi);break;case L:Fi=new Int32Array(ra(4*bi),0,bi);break;case z:Fi=new Uint32Array(ra(4*bi),0,bi);break;case F:Fi=new Float32Array(ra(4*bi),0,bi);break;default:return null}return Fi.length!==bi?Fi.subarray(0,bi):Fi}function wi(xi){Ta(xi.buffer)}return{alloc:ra,free:Ta,allocType:si,freeType:wi}}var N=I();N.zero=I();var U=3408,W=3410,Q=3411,ue=3412,se=3413,he=3414,G=3415,$=33901,J=33902,Z=3379,re=3386,ne=34921,j=36347,ee=36348,ie=35661,fe=35660,be=34930,Ae=36349,Be=34076,Ie=34024,Ze=7936,at=7937,it=7938,et=35724,lt=34047,Me=36063,ge=34852,ce=3553,ze=34067,tt=34069,nt=33984,Qe=6408,Ct=5126,St=5121,Ot=36160,jt=36053,ur=36064,ar=16384,Cr=function(Qt,ra){var Ta=1;ra.ext_texture_filter_anisotropic&&(Ta=Qt.getParameter(lt));var si=1,wi=1;ra.webgl_draw_buffers&&(si=Qt.getParameter(ge),wi=Qt.getParameter(Me));var xi=!!ra.oes_texture_float;if(xi){var bi=Qt.createTexture();Qt.bindTexture(ce,bi),Qt.texImage2D(ce,0,Qe,1,1,0,Qe,Ct,null);var Fi=Qt.createFramebuffer();if(Qt.bindFramebuffer(Ot,Fi),Qt.framebufferTexture2D(Ot,ur,ce,bi,0),Qt.bindTexture(ce,null),Qt.checkFramebufferStatus(Ot)!==jt)xi=!1;else{Qt.viewport(0,0,1,1),Qt.clearColor(1,0,0,1),Qt.clear(ar);var cn=N.allocType(Ct,4);Qt.readPixels(0,0,1,1,Qe,Ct,cn),Qt.getError()?xi=!1:(Qt.deleteFramebuffer(Fi),Qt.deleteTexture(bi),xi=cn[0]===1),N.freeType(cn)}}var fn=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Gi=!0;if(!fn){var Io=Qt.createTexture(),nn=N.allocType(St,36);Qt.activeTexture(nt),Qt.bindTexture(ze,Io),Qt.texImage2D(tt,0,Qe,3,3,0,Qe,St,nn),N.freeType(nn),Qt.bindTexture(ze,null),Qt.deleteTexture(Io),Gi=!Qt.getError()}return{colorBits:[Qt.getParameter(W),Qt.getParameter(Q),Qt.getParameter(ue),Qt.getParameter(se)],depthBits:Qt.getParameter(he),stencilBits:Qt.getParameter(G),subpixelBits:Qt.getParameter(U),extensions:Object.keys(ra).filter(function(on){return!!ra[on]}),maxAnisotropic:Ta,maxDrawbuffers:si,maxColorAttachments:wi,pointSizeDims:Qt.getParameter($),lineWidthDims:Qt.getParameter(J),maxViewportDims:Qt.getParameter(re),maxCombinedTextureUnits:Qt.getParameter(ie),maxCubeMapSize:Qt.getParameter(Be),maxRenderbufferSize:Qt.getParameter(Ie),maxTextureUnits:Qt.getParameter(be),maxTextureSize:Qt.getParameter(Z),maxAttributes:Qt.getParameter(ne),maxVertexUniforms:Qt.getParameter(j),maxVertexTextureUnits:Qt.getParameter(fe),maxVaryingVectors:Qt.getParameter(ee),maxFragmentUniforms:Qt.getParameter(Ae),glsl:Qt.getParameter(et),renderer:Qt.getParameter(at),vendor:Qt.getParameter(Ze),version:Qt.getParameter(it),readFloat:xi,npotTextureCube:Gi}},vr=function(Qt){return Qt instanceof Uint8Array||Qt instanceof Uint16Array||Qt instanceof Uint32Array||Qt instanceof Int8Array||Qt instanceof Int16Array||Qt instanceof Int32Array||Qt instanceof Float32Array||Qt instanceof Float64Array||Qt instanceof Uint8ClampedArray};function _r(Qt){return!!Qt&&typeof Qt=="object"&&Array.isArray(Qt.shape)&&Array.isArray(Qt.stride)&&typeof Qt.offset=="number"&&Qt.shape.length===Qt.stride.length&&(Array.isArray(Qt.data)||vr(Qt.data))}var yt=function(Qt){return Object.keys(Qt).map(function(ra){return Qt[ra]})},Fe={shape:Te,flatten:ke};function Ke(Qt,ra,Ta){for(var si=0;si<ra;++si)Ta[si]=Qt[si]}function Ne(Qt,ra,Ta,si){for(var wi=0,xi=0;xi<ra;++xi)for(var bi=Qt[xi],Fi=0;Fi<Ta;++Fi)si[wi++]=bi[Fi]}function Ee(Qt,ra,Ta,si,wi,xi){for(var bi=xi,Fi=0;Fi<ra;++Fi)for(var cn=Qt[Fi],fn=0;fn<Ta;++fn)for(var Gi=cn[fn],Io=0;Io<si;++Io)wi[bi++]=Gi[Io]}function Ve(Qt,ra,Ta,si,wi){for(var xi=1,bi=Ta+1;bi<ra.length;++bi)xi*=ra[bi];var Fi=ra[Ta];if(ra.length-Ta===4){var cn=ra[Ta+1],fn=ra[Ta+2],Gi=ra[Ta+3];for(bi=0;bi<Fi;++bi)Ee(Qt[bi],cn,fn,Gi,si,wi),wi+=xi}else for(bi=0;bi<Fi;++bi)Ve(Qt[bi],ra,Ta+1,si,wi),wi+=xi}function ke(Qt,ra,Ta,si){var wi=1;if(ra.length)for(var xi=0;xi<ra.length;++xi)wi*=ra[xi];else wi=0;var bi=si||N.allocType(Ta,wi);switch(ra.length){case 0:break;case 1:Ke(Qt,ra[0],bi);break;case 2:Ne(Qt,ra[0],ra[1],bi);break;case 3:Ee(Qt,ra[0],ra[1],ra[2],bi,0);break;default:Ve(Qt,ra,0,bi,0)}return bi}function Te(Qt){for(var ra=[],Ta=Qt;Ta.length;Ta=Ta[0])ra.push(Ta.length);return ra}var Le={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,"[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,"[object ArrayBuffer]":5121},rt=5120,dt=5122,xt=5124,It=5121,Bt=5123,Gt=5125,Kt=5126,sr=5126,sa={int8:rt,int16:dt,int32:xt,uint8:It,uint16:Bt,uint32:Gt,float:Kt,float32:sr},Aa=35048,La=35040,ka={dynamic:Aa,stream:La,static:35044},Ga=Fe.flatten,Ma=Fe.shape,Ua=35044,ni=35040,Wt=5121,zt=5126,Vt=[];Vt[5120]=1,Vt[5122]=2,Vt[5124]=4,Vt[5121]=1,Vt[5123]=2,Vt[5125]=4,Vt[5126]=4;function Ut(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function xr(Qt,ra){for(var Ta=0;Ta<ra.length;++Ta)Qt[Ta]=ra[Ta]}function Zr(Qt,ra,Ta,si,wi,xi,bi){for(var Fi=0,cn=0;cn<Ta;++cn)for(var fn=0;fn<si;++fn)Qt[Fi++]=ra[wi*cn+xi*fn+bi]}function pa(Qt,ra,Ta,si){var wi=0,xi={};function bi(ui){this.id=wi++,this.buffer=Qt.createBuffer(),this.type=ui,this.usage=Ua,this.byteLength=0,this.dimension=1,this.dtype=Wt,this.persistentData=null,Ta.profile&&(this.stats={size:0})}bi.prototype.bind=function(){Qt.bindBuffer(this.type,this.buffer)},bi.prototype.destroy=function(){nn(this)};var Fi=[];function cn(ui,Mi){var tn=Fi.pop();return tn||(tn=new bi(ui)),tn.bind(),Io(tn,Mi,ni,0,1,!1),tn}function fn(ui){Fi.push(ui)}function Gi(ui,Mi,tn){ui.byteLength=Mi.byteLength,Qt.bufferData(ui.type,Mi,tn)}function Io(ui,Mi,tn,pn,qi,Dn){var bn;if(ui.usage=tn,Array.isArray(Mi)){if(ui.dtype=pn||zt,Mi.length>0){var _o;if(Array.isArray(Mi[0])){bn=Ma(Mi);for(var Zi=1,Ui=1;Ui<bn.length;++Ui)Zi*=bn[Ui];ui.dimension=Zi,_o=Ga(Mi,bn,ui.dtype),Gi(ui,_o,tn),Dn?ui.persistentData=_o:N.freeType(_o)}else if(typeof Mi[0]=="number"){ui.dimension=qi;var Zn=N.allocType(ui.dtype,Mi.length);xr(Zn,Mi),Gi(ui,Zn,tn),Dn?ui.persistentData=Zn:N.freeType(Zn)}else vr(Mi[0])&&(ui.dimension=Mi[0].length,ui.dtype=pn||Ut(Mi[0])||zt,_o=Ga(Mi,[Mi.length,Mi[0].length],ui.dtype),Gi(ui,_o,tn),Dn?ui.persistentData=_o:N.freeType(_o))}}else if(vr(Mi))ui.dtype=pn||Ut(Mi),ui.dimension=qi,Gi(ui,Mi,tn),Dn&&(ui.persistentData=new Uint8Array(new Uint8Array(Mi.buffer)));else if(_r(Mi)){bn=Mi.shape;var Rn=Mi.stride,xn=Mi.offset,dn=0,jn=0,Ro=0,rs=0;bn.length===1?(dn=bn[0],jn=1,Ro=Rn[0],rs=0):bn.length===2&&(dn=bn[0],jn=bn[1],Ro=Rn[0],rs=Rn[1]),ui.dtype=pn||Ut(Mi.data)||zt,ui.dimension=jn;var wn=N.allocType(ui.dtype,dn*jn);Zr(wn,Mi.data,dn,jn,Ro,rs,xn),Gi(ui,wn,tn),Dn?ui.persistentData=wn:N.freeType(wn)}else Mi instanceof ArrayBuffer&&(ui.dtype=Wt,ui.dimension=qi,Gi(ui,Mi,tn),Dn&&(ui.persistentData=new Uint8Array(new Uint8Array(Mi))))}function nn(ui){ra.bufferCount--,si(ui);var Mi=ui.buffer;Qt.deleteBuffer(Mi),ui.buffer=null,delete xi[ui.id]}function on(ui,Mi,tn,pn){ra.bufferCount++;var qi=new bi(Mi);xi[qi.id]=qi;function Dn(Zi){var Ui=Ua,Zn=null,Rn=0,xn=0,dn=1;return Array.isArray(Zi)||vr(Zi)||_r(Zi)||Zi instanceof ArrayBuffer?Zn=Zi:typeof Zi=="number"?Rn=Zi|0:Zi&&("data"in Zi&&(Zn=Zi.data),"usage"in Zi&&(Ui=ka[Zi.usage]),"type"in Zi&&(xn=sa[Zi.type]),"dimension"in Zi&&(dn=Zi.dimension|0),"length"in Zi&&(Rn=Zi.length|0)),qi.bind(),Zn?Io(qi,Zn,Ui,xn,dn,pn):(Rn&&Qt.bufferData(qi.type,Rn,Ui),qi.dtype=xn||Wt,qi.usage=Ui,qi.dimension=dn,qi.byteLength=Rn),Ta.profile&&(qi.stats.size=qi.byteLength*Vt[qi.dtype]),Dn}function bn(Zi,Ui){Qt.bufferSubData(qi.type,Ui,Zi)}function _o(Zi,Ui){var Zn=(Ui||0)|0,Rn;if(qi.bind(),vr(Zi)||Zi instanceof ArrayBuffer)bn(Zi,Zn);else if(Array.isArray(Zi)){if(Zi.length>0){if(typeof Zi[0]=="number"){var xn=N.allocType(qi.dtype,Zi.length);xr(xn,Zi),bn(xn,Zn),N.freeType(xn)}else if(Array.isArray(Zi[0])||vr(Zi[0])){Rn=Ma(Zi);var dn=Ga(Zi,Rn,qi.dtype);bn(dn,Zn),N.freeType(dn)}}}else if(_r(Zi)){Rn=Zi.shape;var jn=Zi.stride,Ro=0,rs=0,wn=0,oo=0;Rn.length===1?(Ro=Rn[0],rs=1,wn=jn[0],oo=0):Rn.length===2&&(Ro=Rn[0],rs=Rn[1],wn=jn[0],oo=jn[1]);var Xo=Array.isArray(Zi.data)?qi.dtype:Ut(Zi.data),os=N.allocType(Xo,Ro*rs);Zr(os,Zi.data,Ro,rs,wn,oo,Zi.offset),bn(os,Zn),N.freeType(os)}return Dn}return tn||Dn(ui),Dn._reglType="buffer",Dn._buffer=qi,Dn.subdata=_o,Ta.profile&&(Dn.stats=qi.stats),Dn.destroy=function(){nn(qi)},Dn}function Oi(){yt(xi).forEach(function(ui){ui.buffer=Qt.createBuffer(),Qt.bindBuffer(ui.type,ui.buffer),Qt.bufferData(ui.type,ui.persistentData||ui.byteLength,ui.usage)})}return Ta.profile&&(ra.getTotalBufferSize=function(){var ui=0;return Object.keys(xi).forEach(function(Mi){ui+=xi[Mi].stats.size}),ui}),{create:on,createStream:cn,destroyStream:fn,clear:function(){yt(xi).forEach(nn),Fi.forEach(nn)},getBuffer:function(ui){return ui&&ui._buffer instanceof bi?ui._buffer:null},restore:Oi,_initBuffer:Io}}var Xr=0,Ea=0,Fa=1,qa=1,ya=4,$a=4,mt={points:Xr,point:Ea,lines:Fa,line:qa,triangles:ya,triangle:$a,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},gt=0,Er=1,kr=4,br=5120,Tr=5121,Mr=5122,Fr=5123,Lr=5124,Jr=5125,oa=34963,ca=35040,kt=35044;function ir(Qt,ra,Ta,si){var wi={},xi=0,bi={uint8:Tr,uint16:Fr};ra.oes_element_index_uint&&(bi.uint32=Jr);function Fi(Oi){this.id=xi++,wi[this.id]=this,this.buffer=Oi,this.primType=kr,this.vertCount=0,this.type=0}Fi.prototype.bind=function(){this.buffer.bind()};var cn=[];function fn(Oi){var ui=cn.pop();return ui||(ui=new Fi(Ta.create(null,oa,!0,!1)._buffer)),Io(ui,Oi,ca,-1,-1,0,0),ui}function Gi(Oi){cn.push(Oi)}function Io(Oi,ui,Mi,tn,pn,qi,Dn){Oi.buffer.bind();var bn;if(ui){var _o=Dn;!Dn&&(!vr(ui)||_r(ui)&&!vr(ui.data))&&(_o=ra.oes_element_index_uint?Jr:Fr),Ta._initBuffer(Oi.buffer,ui,Mi,_o,3)}else Qt.bufferData(oa,qi,Mi),Oi.buffer.dtype=bn||Tr,Oi.buffer.usage=Mi,Oi.buffer.dimension=3,Oi.buffer.byteLength=qi;if(bn=Dn,!Dn){switch(Oi.buffer.dtype){case Tr:case br:bn=Tr;break;case Fr:case Mr:bn=Fr;break;case Jr:case Lr:bn=Jr;break;default:}Oi.buffer.dtype=bn}Oi.type=bn;var Zi=pn;Zi<0&&(Zi=Oi.buffer.byteLength,bn===Fr?Zi>>=1:bn===Jr&&(Zi>>=2)),Oi.vertCount=Zi;var Ui=tn;if(tn<0){Ui=kr;var Zn=Oi.buffer.dimension;Zn===1&&(Ui=gt),Zn===2&&(Ui=Er),Zn===3&&(Ui=kr)}Oi.primType=Ui}function nn(Oi){si.elementsCount--,delete wi[Oi.id],Oi.buffer.destroy(),Oi.buffer=null}function on(Oi,ui){var Mi=Ta.create(null,oa,!0),tn=new Fi(Mi._buffer);si.elementsCount++;function pn(qi){if(!qi)Mi(),tn.primType=kr,tn.vertCount=0,tn.type=Tr;else if(typeof qi=="number")Mi(qi),tn.primType=kr,tn.vertCount=qi|0,tn.type=Tr;else{var Dn=null,bn=kt,_o=-1,Zi=-1,Ui=0,Zn=0;Array.isArray(qi)||vr(qi)||_r(qi)?Dn=qi:("data"in qi&&(Dn=qi.data),"usage"in qi&&(bn=ka[qi.usage]),"primitive"in qi&&(_o=mt[qi.primitive]),"count"in qi&&(Zi=qi.count|0),"type"in qi&&(Zn=bi[qi.type]),"length"in qi?Ui=qi.length|0:(Ui=Zi,Zn===Fr||Zn===Mr?Ui*=2:(Zn===Jr||Zn===Lr)&&(Ui*=4))),Io(tn,Dn,bn,_o,Zi,Ui,Zn)}return pn}return pn(Oi),pn._reglType="elements",pn._elements=tn,pn.subdata=function(qi,Dn){return Mi.subdata(qi,Dn),pn},pn.destroy=function(){nn(tn)},pn}return{create:on,createStream:fn,destroyStream:Gi,getElements:function(Oi){return typeof Oi=="function"&&Oi._elements instanceof Fi?Oi._elements:null},clear:function(){yt(wi).forEach(nn)}}}var mr=new Float32Array(1),$r=new Uint32Array(mr.buffer),ma=5123;function Ba(Qt){for(var ra=N.allocType(ma,Qt.length),Ta=0;Ta<Qt.length;++Ta)if(isNaN(Qt[Ta]))ra[Ta]=65535;else if(Qt[Ta]===1/0)ra[Ta]=31744;else if(Qt[Ta]===-1/0)ra[Ta]=64512;else{mr[0]=Qt[Ta];var si=$r[0],wi=si>>>31<<15,xi=(si<<1>>>24)-127,bi=si>>13&1023;if(xi<-24)ra[Ta]=wi;else if(xi<-14){var Fi=-14-xi;ra[Ta]=wi+(bi+1024>>Fi)}else xi>15?ra[Ta]=wi+31744:ra[Ta]=wi+(xi+15<<10)+bi}return ra}function Ca(Qt){return Array.isArray(Qt)||vr(Qt)}var da=34467,Sa=3553,Ti=34067,ai=34069,an=6408,sn=6406,Mn=6407,On=6409,$n=6410,Cn=32854,Lo=32855,Xi=36194,Jo=32819,zo=32820,as=33635,Pn=34042,go=6402,In=34041,Do=35904,Ho=35906,Qo=36193,Xn=33776,po=33777,ys=33778,Is=33779,Fs=35986,$o=35987,fi=34798,mn=35840,ol=35841,Os=35842,so=35843,Ns=36196,fs=5121,al=5123,vl=5125,ji=5126,To=10242,Yn=10243,_s=10497,Yo=33071,Nn=33648,Wl=10240,Zu=10241,ml=9728,Bu=9729,El=9984,qs=9985,Jl=9986,Nu=9987,Ic=33170,Xu=4352,Th=4353,bf=4354,Rs=34046,Yc=3317,If=37440,Zl=37441,yl=37443,oc=37444,_c=33984,Zs=[El,Jl,qs,Nu],_l=[0,On,$n,Mn,an],Bs={};Bs[On]=Bs[sn]=Bs[go]=1,Bs[In]=Bs[$n]=2,Bs[Mn]=Bs[Do]=3,Bs[an]=Bs[Ho]=4;function $s(Qt){return"[object "+Qt+"]"}var sc=$s("HTMLCanvasElement"),zl=$s("OffscreenCanvas"),Yu=$s("CanvasRenderingContext2D"),Qs=$s("ImageBitmap"),fp=$s("HTMLImageElement"),es=$s("HTMLVideoElement"),Wh=Object.keys(Le).concat([sc,zl,Yu,Qs,fp,es]),Ss=[];Ss[fs]=1,Ss[ji]=4,Ss[Qo]=2,Ss[al]=2,Ss[vl]=4;var So=[];So[Cn]=2,So[Lo]=2,So[Xi]=2,So[In]=4,So[Xn]=.5,So[po]=.5,So[ys]=1,So[Is]=1,So[Fs]=.5,So[$o]=1,So[fi]=1,So[mn]=.5,So[ol]=.25,So[Os]=.5,So[so]=.25,So[Ns]=.5;function hf(Qt){return Array.isArray(Qt)&&(Qt.length===0||typeof Qt[0]=="number")}function Ku(Qt){if(!Array.isArray(Qt))return!1;var ra=Qt.length;return!(ra===0||!Ca(Qt[0]))}function cu(Qt){return Object.prototype.toString.call(Qt)}function Zf(Qt){return cu(Qt)===sc}function Rc(Qt){return cu(Qt)===zl}function pf(Qt){return cu(Qt)===Yu}function Fl(Qt){return cu(Qt)===Qs}function lh(Qt){return cu(Qt)===fp}function Xf(Qt){return cu(Qt)===es}function Rf(Qt){if(!Qt)return!1;var ra=cu(Qt);return Wh.indexOf(ra)>=0?!0:hf(Qt)||Ku(Qt)||_r(Qt)}function Kc(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function Yf(Qt,ra){var Ta=ra.length;switch(Qt.type){case fs:case al:case vl:case ji:var si=N.allocType(Qt.type,Ta);si.set(ra),Qt.data=si;break;case Qo:Qt.data=Ba(ra);break;default:}}function uh(Qt,ra){return N.allocType(Qt.type===Qo?ji:Qt.type,ra)}function Ju(Qt,ra){Qt.type===Qo?(Qt.data=Ba(ra),N.freeType(ra)):Qt.data=ra}function Df(Qt,ra,Ta,si,wi,xi){for(var bi=Qt.width,Fi=Qt.height,cn=Qt.channels,fn=bi*Fi*cn,Gi=uh(Qt,fn),Io=0,nn=0;nn<Fi;++nn)for(var on=0;on<bi;++on)for(var Oi=0;Oi<cn;++Oi)Gi[Io++]=ra[Ta*on+si*nn+wi*Oi+xi];Ju(Qt,Gi)}function Dc(Qt,ra,Ta,si,wi,xi){var bi;if(typeof So[Qt]<"u"?bi=So[Qt]:bi=Bs[Qt]*Ss[ra],xi&&(bi*=6),wi){for(var Fi=0,cn=Ta;cn>=1;)Fi+=bi*cn*cn,cn/=2;return Fi}else return bi*Ta*si}function Jc(Qt,ra,Ta,si,wi,xi,bi){var Fi={"don't care":Xu,"dont care":Xu,nice:bf,fast:Th},cn={repeat:_s,clamp:Yo,mirror:Nn},fn={nearest:ml,linear:Bu},Gi=g({mipmap:Nu,"nearest mipmap nearest":El,"linear mipmap nearest":qs,"nearest mipmap linear":Jl,"linear mipmap linear":Nu},fn),Io={none:0,browser:oc},nn={uint8:fs,rgba4:Jo,rgb565:as,"rgb5 a1":zo},on={alpha:sn,luminance:On,"luminance alpha":$n,rgb:Mn,rgba:an,rgba4:Cn,"rgb5 a1":Lo,rgb565:Xi},Oi={};ra.ext_srgb&&(on.srgb=Do,on.srgba=Ho),ra.oes_texture_float&&(nn.float32=nn.float=ji),ra.oes_texture_half_float&&(nn.float16=nn["half float"]=Qo),ra.webgl_depth_texture&&(g(on,{depth:go,"depth stencil":In}),g(nn,{uint16:al,uint32:vl,"depth stencil":Pn})),ra.webgl_compressed_texture_s3tc&&g(Oi,{"rgb s3tc dxt1":Xn,"rgba s3tc dxt1":po,"rgba s3tc dxt3":ys,"rgba s3tc dxt5":Is}),ra.webgl_compressed_texture_atc&&g(Oi,{"rgb atc":Fs,"rgba atc explicit alpha":$o,"rgba atc interpolated alpha":fi}),ra.webgl_compressed_texture_pvrtc&&g(Oi,{"rgb pvrtc 4bppv1":mn,"rgb pvrtc 2bppv1":ol,"rgba pvrtc 4bppv1":Os,"rgba pvrtc 2bppv1":so}),ra.webgl_compressed_texture_etc1&&(Oi["rgb etc1"]=Ns);var ui=Array.prototype.slice.call(Qt.getParameter(da));Object.keys(Oi).forEach(function(He){var st=Oi[He];ui.indexOf(st)>=0&&(on[He]=st)});var Mi=Object.keys(on);Ta.textureFormats=Mi;var tn=[];Object.keys(on).forEach(function(He){var st=on[He];tn[st]=He});var pn=[];Object.keys(nn).forEach(function(He){var st=nn[He];pn[st]=He});var qi=[];Object.keys(fn).forEach(function(He){var st=fn[He];qi[st]=He});var Dn=[];Object.keys(Gi).forEach(function(He){var st=Gi[He];Dn[st]=He});var bn=[];Object.keys(cn).forEach(function(He){var st=cn[He];bn[st]=He});var _o=Mi.reduce(function(He,st){var Et=on[st];return Et===On||Et===sn||Et===On||Et===$n||Et===go||Et===In||ra.ext_srgb&&(Et===Do||Et===Ho)?He[Et]=Et:Et===Lo||st.indexOf("rgba")>=0?He[Et]=an:He[Et]=Mn,He},{});function Zi(){this.internalformat=an,this.format=an,this.type=fs,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=oc,this.width=0,this.height=0,this.channels=0}function Ui(He,st){He.internalformat=st.internalformat,He.format=st.format,He.type=st.type,He.compressed=st.compressed,He.premultiplyAlpha=st.premultiplyAlpha,He.flipY=st.flipY,He.unpackAlignment=st.unpackAlignment,He.colorSpace=st.colorSpace,He.width=st.width,He.height=st.height,He.channels=st.channels}function Zn(He,st){if(!(typeof st!="object"||!st)){if("premultiplyAlpha"in st&&(He.premultiplyAlpha=st.premultiplyAlpha),"flipY"in st&&(He.flipY=st.flipY),"alignment"in st&&(He.unpackAlignment=st.alignment),"colorSpace"in st&&(He.colorSpace=Io[st.colorSpace]),"type"in st){var Et=st.type;He.type=nn[Et]}var Ht=He.width,yr=He.height,Ir=He.channels,wr=!1;"shape"in st?(Ht=st.shape[0],yr=st.shape[1],st.shape.length===3&&(Ir=st.shape[2],wr=!0)):("radius"in st&&(Ht=yr=st.radius),"width"in st&&(Ht=st.width),"height"in st&&(yr=st.height),"channels"in st&&(Ir=st.channels,wr=!0)),He.width=Ht|0,He.height=yr|0,He.channels=Ir|0;var qt=!1;if("format"in st){var tr=st.format,dr=He.internalformat=on[tr];He.format=_o[dr],tr in nn&&("type"in st||(He.type=nn[tr])),tr in Oi&&(He.compressed=!0),qt=!0}!wr&&qt?He.channels=Bs[He.format]:wr&&!qt&&He.channels!==_l[He.format]&&(He.format=He.internalformat=_l[He.channels])}}function Rn(He){Qt.pixelStorei(If,He.flipY),Qt.pixelStorei(Zl,He.premultiplyAlpha),Qt.pixelStorei(yl,He.colorSpace),Qt.pixelStorei(Yc,He.unpackAlignment)}function xn(){Zi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function dn(He,st){var Et=null;if(Rf(st)?Et=st:st&&(Zn(He,st),"x"in st&&(He.xOffset=st.x|0),"y"in st&&(He.yOffset=st.y|0),Rf(st.data)&&(Et=st.data)),st.copy){var Ht=wi.viewportWidth,yr=wi.viewportHeight;He.width=He.width||Ht-He.xOffset,He.height=He.height||yr-He.yOffset,He.needsCopy=!0}else if(!Et)He.width=He.width||1,He.height=He.height||1,He.channels=He.channels||4;else if(vr(Et))He.channels=He.channels||4,He.data=Et,!("type"in st)&&He.type===fs&&(He.type=Kc(Et));else if(hf(Et))He.channels=He.channels||4,Yf(He,Et),He.alignment=1,He.needsFree=!0;else if(_r(Et)){var Ir=Et.data;!Array.isArray(Ir)&&He.type===fs&&(He.type=Kc(Ir));var wr=Et.shape,qt=Et.stride,tr,dr,Pr,Vr,Hr,aa;wr.length===3?(Pr=wr[2],aa=qt[2]):(Pr=1,aa=1),tr=wr[0],dr=wr[1],Vr=qt[0],Hr=qt[1],He.alignment=1,He.width=tr,He.height=dr,He.channels=Pr,He.format=He.internalformat=_l[Pr],He.needsFree=!0,Df(He,Ir,Vr,Hr,aa,Et.offset)}else if(Zf(Et)||Rc(Et)||pf(Et))Zf(Et)||Rc(Et)?He.element=Et:He.element=Et.canvas,He.width=He.element.width,He.height=He.element.height,He.channels=4;else if(Fl(Et))He.element=Et,He.width=Et.width,He.height=Et.height,He.channels=4;else if(lh(Et))He.element=Et,He.width=Et.naturalWidth,He.height=Et.naturalHeight,He.channels=4;else if(Xf(Et))He.element=Et,He.width=Et.videoWidth,He.height=Et.videoHeight,He.channels=4;else if(Ku(Et)){var Qr=He.width||Et[0].length,Gr=He.height||Et.length,ia=He.channels;Ca(Et[0][0])?ia=ia||Et[0][0].length:ia=ia||1;for(var Ur=Fe.shape(Et),wa=1,Oa=0;Oa<Ur.length;++Oa)wa*=Ur[Oa];var ri=uh(He,wa);Fe.flatten(Et,Ur,"",ri),Ju(He,ri),He.alignment=1,He.width=Qr,He.height=Gr,He.channels=ia,He.format=He.internalformat=_l[ia],He.needsFree=!0}He.type===ji||He.type}function jn(He,st,Et){var Ht=He.element,yr=He.data,Ir=He.internalformat,wr=He.format,qt=He.type,tr=He.width,dr=He.height;Rn(He),Ht?Qt.texImage2D(st,Et,wr,wr,qt,Ht):He.compressed?Qt.compressedTexImage2D(st,Et,Ir,tr,dr,0,yr):He.needsCopy?(si(),Qt.copyTexImage2D(st,Et,wr,He.xOffset,He.yOffset,tr,dr,0)):Qt.texImage2D(st,Et,wr,tr,dr,0,wr,qt,yr||null)}function Ro(He,st,Et,Ht,yr){var Ir=He.element,wr=He.data,qt=He.internalformat,tr=He.format,dr=He.type,Pr=He.width,Vr=He.height;Rn(He),Ir?Qt.texSubImage2D(st,yr,Et,Ht,tr,dr,Ir):He.compressed?Qt.compressedTexSubImage2D(st,yr,Et,Ht,qt,Pr,Vr,wr):He.needsCopy?(si(),Qt.copyTexSubImage2D(st,yr,Et,Ht,He.xOffset,He.yOffset,Pr,Vr)):Qt.texSubImage2D(st,yr,Et,Ht,Pr,Vr,tr,dr,wr)}var rs=[];function wn(){return rs.pop()||new xn}function oo(He){He.needsFree&&N.freeType(He.data),xn.call(He),rs.push(He)}function Xo(){Zi.call(this),this.genMipmaps=!1,this.mipmapHint=Xu,this.mipmask=0,this.images=Array(16)}function os(He,st,Et){var Ht=He.images[0]=wn();He.mipmask=1,Ht.width=He.width=st,Ht.height=He.height=Et,Ht.channels=He.channels=4}function As(He,st){var Et=null;if(Rf(st))Et=He.images[0]=wn(),Ui(Et,He),dn(Et,st),He.mipmask=1;else if(Zn(He,st),Array.isArray(st.mipmap))for(var Ht=st.mipmap,yr=0;yr<Ht.length;++yr)Et=He.images[yr]=wn(),Ui(Et,He),Et.width>>=yr,Et.height>>=yr,dn(Et,Ht[yr]),He.mipmask|=1<<yr;else Et=He.images[0]=wn(),Ui(Et,He),dn(Et,st),He.mipmask=1;Ui(He,He.images[0]),He.compressed&&(He.internalformat===Xn||He.internalformat===po||He.internalformat===ys||He.internalformat)}function $l(He,st){for(var Et=He.images,Ht=0;Ht<Et.length;++Ht){if(!Et[Ht])return;jn(Et[Ht],st,Ht)}}var Uc=[];function Ws(){var He=Uc.pop()||new Xo;Zi.call(He),He.mipmask=0;for(var st=0;st<16;++st)He.images[st]=null;return He}function jc(He){for(var st=He.images,Et=0;Et<st.length;++Et)st[Et]&&oo(st[Et]),st[Et]=null;Uc.push(He)}function Ol(){this.minFilter=ml,this.magFilter=ml,this.wrapS=Yo,this.wrapT=Yo,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=Xu}function vc(He,st){if("min"in st){var Et=st.min;He.minFilter=Gi[Et],Zs.indexOf(He.minFilter)>=0&&!("faces"in st)&&(He.genMipmaps=!0)}if("mag"in st){var Ht=st.mag;He.magFilter=fn[Ht]}var yr=He.wrapS,Ir=He.wrapT;if("wrap"in st){var wr=st.wrap;typeof wr=="string"?yr=Ir=cn[wr]:Array.isArray(wr)&&(yr=cn[wr[0]],Ir=cn[wr[1]])}else{if("wrapS"in st){var qt=st.wrapS;yr=cn[qt]}if("wrapT"in st){var tr=st.wrapT;Ir=cn[tr]}}if(He.wrapS=yr,He.wrapT=Ir,"anisotropic"in st){var dr=st.anisotropic;He.anisotropic=st.anisotropic}if("mipmap"in st){var Pr=!1;switch(typeof st.mipmap){case"string":He.mipmapHint=Fi[st.mipmap],He.genMipmaps=!0,Pr=!0;break;case"boolean":Pr=He.genMipmaps=st.mipmap;break;case"object":He.genMipmaps=!1,Pr=!0;break;default:}Pr&&!("min"in st)&&(He.minFilter=El)}}function mc(He,st){Qt.texParameteri(st,Zu,He.minFilter),Qt.texParameteri(st,Wl,He.magFilter),Qt.texParameteri(st,To,He.wrapS),Qt.texParameteri(st,Yn,He.wrapT),ra.ext_texture_filter_anisotropic&&Qt.texParameteri(st,Rs,He.anisotropic),He.genMipmaps&&(Qt.hint(Ic,He.mipmapHint),Qt.generateMipmap(st))}var rf=0,Yl={},Mc=Ta.maxTextureUnits,Vc=Array(Mc).map(function(){return null});function Ds(He){Zi.call(this),this.mipmask=0,this.internalformat=an,this.id=rf++,this.refCount=1,this.target=He,this.texture=Qt.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ol,bi.profile&&(this.stats={size:0})}function af(He){Qt.activeTexture(_c),Qt.bindTexture(He.target,He.texture)}function Cs(){var He=Vc[0];He?Qt.bindTexture(He.target,He.texture):Qt.bindTexture(Sa,null)}function ve(He){var st=He.texture,Et=He.unit,Ht=He.target;Et>=0&&(Qt.activeTexture(_c+Et),Qt.bindTexture(Ht,null),Vc[Et]=null),Qt.deleteTexture(st),He.texture=null,He.params=null,He.pixels=null,He.refCount=0,delete Yl[He.id],xi.textureCount--}g(Ds.prototype,{bind:function(){var He=this;He.bindCount+=1;var st=He.unit;if(st<0){for(var Et=0;Et<Mc;++Et){var Ht=Vc[Et];if(Ht){if(Ht.bindCount>0)continue;Ht.unit=-1}Vc[Et]=He,st=Et;break}st>=Mc,bi.profile&&xi.maxTextureUnits<st+1&&(xi.maxTextureUnits=st+1),He.unit=st,Qt.activeTexture(_c+st),Qt.bindTexture(He.target,He.texture)}return st},unbind:function(){this.bindCount-=1},decRef:function(){--this.refCount<=0&&ve(this)}});function K(He,st){var Et=new Ds(Sa);Yl[Et.id]=Et,xi.textureCount++;function Ht(wr,qt){var tr=Et.texInfo;Ol.call(tr);var dr=Ws();return typeof wr=="number"?typeof qt=="number"?os(dr,wr|0,qt|0):os(dr,wr|0,wr|0):wr?(vc(tr,wr),As(dr,wr)):os(dr,1,1),tr.genMipmaps&&(dr.mipmask=(dr.width<<1)-1),Et.mipmask=dr.mipmask,Ui(Et,dr),Et.internalformat=dr.internalformat,Ht.width=dr.width,Ht.height=dr.height,af(Et),$l(dr,Sa),mc(tr,Sa),Cs(),jc(dr),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,dr.width,dr.height,tr.genMipmaps,!1)),Ht.format=tn[Et.internalformat],Ht.type=pn[Et.type],Ht.mag=qi[tr.magFilter],Ht.min=Dn[tr.minFilter],Ht.wrapS=bn[tr.wrapS],Ht.wrapT=bn[tr.wrapT],Ht}function yr(wr,qt,tr,dr){var Pr=qt|0,Vr=tr|0,Hr=dr|0,aa=wn();return Ui(aa,Et),aa.width=0,aa.height=0,dn(aa,wr),aa.width=aa.width||(Et.width>>Hr)-Pr,aa.height=aa.height||(Et.height>>Hr)-Vr,af(Et),Ro(aa,Sa,Pr,Vr,Hr),Cs(),oo(aa),Ht}function Ir(wr,qt){var tr=wr|0,dr=qt|0||tr;if(tr===Et.width&&dr===Et.height)return Ht;Ht.width=Et.width=tr,Ht.height=Et.height=dr,af(Et);for(var Pr=0;Et.mipmask>>Pr;++Pr){var Vr=tr>>Pr,Hr=dr>>Pr;if(!Vr||!Hr)break;Qt.texImage2D(Sa,Pr,Et.format,Vr,Hr,0,Et.format,Et.type,null)}return Cs(),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,tr,dr,!1,!1)),Ht}return Ht(He,st),Ht.subimage=yr,Ht.resize=Ir,Ht._reglType="texture2d",Ht._texture=Et,bi.profile&&(Ht.stats=Et.stats),Ht.destroy=function(){Et.decRef()},Ht}function ye(He,st,Et,Ht,yr,Ir){var wr=new Ds(Ti);Yl[wr.id]=wr,xi.cubeCount++;var qt=new Array(6);function tr(Vr,Hr,aa,Qr,Gr,ia){var Ur,wa=wr.texInfo;for(Ol.call(wa),Ur=0;Ur<6;++Ur)qt[Ur]=Ws();if(typeof Vr=="number"||!Vr){var Oa=Vr|0||1;for(Ur=0;Ur<6;++Ur)os(qt[Ur],Oa,Oa)}else if(typeof Vr=="object")if(Hr)As(qt[0],Vr),As(qt[1],Hr),As(qt[2],aa),As(qt[3],Qr),As(qt[4],Gr),As(qt[5],ia);else if(vc(wa,Vr),Zn(wr,Vr),"faces"in Vr){var ri=Vr.faces;for(Ur=0;Ur<6;++Ur)Ui(qt[Ur],wr),As(qt[Ur],ri[Ur])}else for(Ur=0;Ur<6;++Ur)As(qt[Ur],Vr);for(Ui(wr,qt[0]),wa.genMipmaps?wr.mipmask=(qt[0].width<<1)-1:wr.mipmask=qt[0].mipmask,wr.internalformat=qt[0].internalformat,tr.width=qt[0].width,tr.height=qt[0].height,af(wr),Ur=0;Ur<6;++Ur)$l(qt[Ur],ai+Ur);for(mc(wa,Ti),Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,wa.genMipmaps,!0)),tr.format=tn[wr.internalformat],tr.type=pn[wr.type],tr.mag=qi[wa.magFilter],tr.min=Dn[wa.minFilter],tr.wrapS=bn[wa.wrapS],tr.wrapT=bn[wa.wrapT],Ur=0;Ur<6;++Ur)jc(qt[Ur]);return tr}function dr(Vr,Hr,aa,Qr,Gr){var ia=aa|0,Ur=Qr|0,wa=Gr|0,Oa=wn();return Ui(Oa,wr),Oa.width=0,Oa.height=0,dn(Oa,Hr),Oa.width=Oa.width||(wr.width>>wa)-ia,Oa.height=Oa.height||(wr.height>>wa)-Ur,af(wr),Ro(Oa,ai+Vr,ia,Ur,wa),Cs(),oo(Oa),tr}function Pr(Vr){var Hr=Vr|0;if(Hr!==wr.width){tr.width=wr.width=Hr,tr.height=wr.height=Hr,af(wr);for(var aa=0;aa<6;++aa)for(var Qr=0;wr.mipmask>>Qr;++Qr)Qt.texImage2D(ai+aa,Qr,wr.format,Hr>>Qr,Hr>>Qr,0,wr.format,wr.type,null);return Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,!1,!0)),tr}}return tr(He,st,Et,Ht,yr,Ir),tr.subimage=dr,tr.resize=Pr,tr._reglType="textureCube",tr._texture=wr,bi.profile&&(tr.stats=wr.stats),tr.destroy=function(){wr.decRef()},tr}function te(){for(var He=0;He<Mc;++He)Qt.activeTexture(_c+He),Qt.bindTexture(Sa,null),Vc[He]=null;yt(Yl).forEach(ve),xi.cubeCount=0,xi.textureCount=0}bi.profile&&(xi.getTotalTextureSize=function(){var He=0;return Object.keys(Yl).forEach(function(st){He+=Yl[st].stats.size}),He});function xe(){for(var He=0;He<Mc;++He){var st=Vc[He];st&&(st.bindCount=0,st.unit=-1,Vc[He]=null)}yt(Yl).forEach(function(Et){Et.texture=Qt.createTexture(),Qt.bindTexture(Et.target,Et.texture);for(var Ht=0;Ht<32;++Ht)if(Et.mipmask&1<<Ht)if(Et.target===Sa)Qt.texImage2D(Sa,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);else for(var yr=0;yr<6;++yr)Qt.texImage2D(ai+yr,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);mc(Et.texInfo,Et.target)})}function We(){for(var He=0;He<Mc;++He){var st=Vc[He];st&&(st.bindCount=0,st.unit=-1,Vc[He]=null),Qt.activeTexture(_c+He),Qt.bindTexture(Sa,null),Qt.bindTexture(Ti,null)}}return{create2D:K,createCube:ye,clear:te,getTexture:function(He){return null},restore:xe,refresh:We}}var Eu=36161,wf=32854,zc=32855,Us=36194,Kf=33189,Zh=36168,ch=34041,df=35907,Ah=34836,ku=34842,fh=34843,ru=[];ru[wf]=2,ru[zc]=2,ru[Us]=2,ru[Kf]=2,ru[Zh]=1,ru[ch]=4,ru[df]=4,ru[Ah]=16,ru[ku]=8,ru[fh]=6;function Cu(Qt,ra,Ta){return ru[Qt]*ra*Ta}var xc=function(Qt,ra,Ta,si,wi){var xi={rgba4:wf,rgb565:Us,"rgb5 a1":zc,depth:Kf,stencil:Zh,"depth stencil":ch};ra.ext_srgb&&(xi.srgba=df),ra.ext_color_buffer_half_float&&(xi.rgba16f=ku,xi.rgb16f=fh),ra.webgl_color_buffer_float&&(xi.rgba32f=Ah);var bi=[];Object.keys(xi).forEach(function(on){var Oi=xi[on];bi[Oi]=on});var Fi=0,cn={};function fn(on){this.id=Fi++,this.refCount=1,this.renderbuffer=on,this.format=wf,this.width=0,this.height=0,wi.profile&&(this.stats={size:0})}fn.prototype.decRef=function(){--this.refCount<=0&&Gi(this)};function Gi(on){var Oi=on.renderbuffer;Qt.bindRenderbuffer(Eu,null),Qt.deleteRenderbuffer(Oi),on.renderbuffer=null,on.refCount=0,delete cn[on.id],si.renderbufferCount--}function Io(on,Oi){var ui=new fn(Qt.createRenderbuffer());cn[ui.id]=ui,si.renderbufferCount++;function Mi(pn,qi){var Dn=0,bn=0,_o=wf;if(typeof pn=="object"&&pn){var Zi=pn;if("shape"in Zi){var Ui=Zi.shape;Dn=Ui[0]|0,bn=Ui[1]|0}else"radius"in Zi&&(Dn=bn=Zi.radius|0),"width"in Zi&&(Dn=Zi.width|0),"height"in Zi&&(bn=Zi.height|0);"format"in Zi&&(_o=xi[Zi.format])}else typeof pn=="number"?(Dn=pn|0,typeof qi=="number"?bn=qi|0:bn=Dn):pn||(Dn=bn=1);if(!(Dn===ui.width&&bn===ui.height&&_o===ui.format))return Mi.width=ui.width=Dn,Mi.height=ui.height=bn,ui.format=_o,Qt.bindRenderbuffer(Eu,ui.renderbuffer),Qt.renderbufferStorage(Eu,_o,Dn,bn),wi.profile&&(ui.stats.size=Cu(ui.format,ui.width,ui.height)),Mi.format=bi[ui.format],Mi}function tn(pn,qi){var Dn=pn|0,bn=qi|0||Dn;return Dn===ui.width&&bn===ui.height||(Mi.width=ui.width=Dn,Mi.height=ui.height=bn,Qt.bindRenderbuffer(Eu,ui.renderbuffer),Qt.renderbufferStorage(Eu,ui.format,Dn,bn),wi.profile&&(ui.stats.size=Cu(ui.format,ui.width,ui.height))),Mi}return Mi(on,Oi),Mi.resize=tn,Mi._reglType="renderbuffer",Mi._renderbuffer=ui,wi.profile&&(Mi.stats=ui.stats),Mi.destroy=function(){ui.decRef()},Mi}wi.profile&&(si.getTotalRenderbufferSize=function(){var on=0;return Object.keys(cn).forEach(function(Oi){on+=cn[Oi].stats.size}),on});function nn(){yt(cn).forEach(function(on){on.renderbuffer=Qt.createRenderbuffer(),Qt.bindRenderbuffer(Eu,on.renderbuffer),Qt.renderbufferStorage(Eu,on.format,on.width,on.height)}),Qt.bindRenderbuffer(Eu,null)}return{create:Io,clear:function(){yt(cn).forEach(Gi)},restore:nn}},kl=36160,Fc=36161,$u=3553,vu=34069,xl=36064,hh=36096,Sh=36128,Uu=33306,bc=36053,lc=36193,hp=5121,vf=5126,Tf=6407,Lu=6408,zf=[];zf[Lu]=4,zf[Tf]=3;var au=[];au[hp]=1,au[vf]=4,au[lc]=2;function $c(Qt,ra,Ta,si,wi,xi){var bi={cur:null,next:null,dirty:!1,setFBO:null},Fi=["rgba"],cn=["rgba4","rgb565","rgb5 a1"];ra.ext_srgb&&cn.push("srgba"),ra.ext_color_buffer_half_float&&cn.push("rgba16f","rgb16f"),ra.webgl_color_buffer_float&&cn.push("rgba32f");var fn=["uint8"];ra.oes_texture_half_float&&fn.push("half float","float16"),ra.oes_texture_float&&fn.push("float","float32");function Gi(xn,dn,jn){this.target=xn,this.texture=dn,this.renderbuffer=jn;var Ro=0,rs=0;dn?(Ro=dn.width,rs=dn.height):jn&&(Ro=jn.width,rs=jn.height),this.width=Ro,this.height=rs}function Io(xn){xn&&(xn.texture&&xn.texture._texture.decRef(),xn.renderbuffer&&xn.renderbuffer._renderbuffer.decRef())}function nn(xn,dn,jn){if(xn)if(xn.texture){var Ro=xn.texture._texture,rs=Math.max(1,Ro.width),wn=Math.max(1,Ro.height);Ro.refCount+=1}else{var oo=xn.renderbuffer._renderbuffer;oo.refCount+=1}}function on(xn,dn){dn&&(dn.texture?Qt.framebufferTexture2D(kl,xn,dn.target,dn.texture._texture.texture,0):Qt.framebufferRenderbuffer(kl,xn,Fc,dn.renderbuffer._renderbuffer.renderbuffer))}function Oi(xn){var dn=$u,jn=null,Ro=null,rs=xn;typeof xn=="object"&&(rs=xn.data,"target"in xn&&(dn=xn.target|0));var wn=rs._reglType;return wn==="texture2d"||wn==="textureCube"?jn=rs:wn==="renderbuffer"&&(Ro=rs,dn=Fc),new Gi(dn,jn,Ro)}function ui(xn,dn,jn,Ro,rs){if(jn){var wn=si.create2D({width:xn,height:dn,format:Ro,type:rs});return wn._texture.refCount=0,new Gi($u,wn,null)}else{var oo=wi.create({width:xn,height:dn,format:Ro});return oo._renderbuffer.refCount=0,new Gi(Fc,null,oo)}}function Mi(xn){return xn&&(xn.texture||xn.renderbuffer)}function tn(xn,dn,jn){xn&&(xn.texture?xn.texture.resize(dn,jn):xn.renderbuffer&&xn.renderbuffer.resize(dn,jn),xn.width=dn,xn.height=jn)}var pn=0,qi={};function Dn(){this.id=pn++,qi[this.id]=this,this.framebuffer=Qt.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function bn(xn){xn.colorAttachments.forEach(Io),Io(xn.depthAttachment),Io(xn.stencilAttachment),Io(xn.depthStencilAttachment)}function _o(xn){var dn=xn.framebuffer;Qt.deleteFramebuffer(dn),xn.framebuffer=null,xi.framebufferCount--,delete qi[xn.id]}function Zi(xn){var dn;Qt.bindFramebuffer(kl,xn.framebuffer);var jn=xn.colorAttachments;for(dn=0;dn<jn.length;++dn)on(xl+dn,jn[dn]);for(dn=jn.length;dn<Ta.maxColorAttachments;++dn)Qt.framebufferTexture2D(kl,xl+dn,$u,null,0);Qt.framebufferTexture2D(kl,Uu,$u,null,0),Qt.framebufferTexture2D(kl,hh,$u,null,0),Qt.framebufferTexture2D(kl,Sh,$u,null,0),on(hh,xn.depthAttachment),on(Sh,xn.stencilAttachment),on(Uu,xn.depthStencilAttachment);var Ro=Qt.checkFramebufferStatus(kl);Qt.isContextLost(),Qt.bindFramebuffer(kl,bi.next?bi.next.framebuffer:null),bi.cur=bi.next,Qt.getError()}function Ui(xn,dn){var jn=new Dn;xi.framebufferCount++;function Ro(wn,oo){var Xo,os=0,As=0,$l=!0,Uc=!0,Ws=null,jc=!0,Ol="rgba",vc="uint8",mc=1,rf=null,Yl=null,Mc=null,Vc=!1;if(typeof wn=="number")os=wn|0,As=oo|0||os;else if(!wn)os=As=1;else{var Ds=wn;if("shape"in Ds){var af=Ds.shape;os=af[0],As=af[1]}else"radius"in Ds&&(os=As=Ds.radius),"width"in Ds&&(os=Ds.width),"height"in Ds&&(As=Ds.height);("color"in Ds||"colors"in Ds)&&(Ws=Ds.color||Ds.colors,Array.isArray(Ws)),Ws||("colorCount"in Ds&&(mc=Ds.colorCount|0),"colorTexture"in Ds&&(jc=!!Ds.colorTexture,Ol="rgba4"),"colorType"in Ds&&(vc=Ds.colorType,jc||(vc==="half float"||vc==="float16"?Ol="rgba16f":(vc==="float"||vc==="float32")&&(Ol="rgba32f"))),"colorFormat"in Ds&&(Ol=Ds.colorFormat,Fi.indexOf(Ol)>=0?jc=!0:cn.indexOf(Ol)>=0&&(jc=!1))),("depthTexture"in Ds||"depthStencilTexture"in Ds)&&(Vc=!!(Ds.depthTexture||Ds.depthStencilTexture)),"depth"in Ds&&(typeof Ds.depth=="boolean"?$l=Ds.depth:(rf=Ds.depth,Uc=!1)),"stencil"in Ds&&(typeof Ds.stencil=="boolean"?Uc=Ds.stencil:(Yl=Ds.stencil,$l=!1)),"depthStencil"in Ds&&(typeof Ds.depthStencil=="boolean"?$l=Uc=Ds.depthStencil:(Mc=Ds.depthStencil,$l=!1,Uc=!1))}var Cs=null,ve=null,K=null,ye=null;if(Array.isArray(Ws))Cs=Ws.map(Oi);else if(Ws)Cs=[Oi(Ws)];else for(Cs=new Array(mc),Xo=0;Xo<mc;++Xo)Cs[Xo]=ui(os,As,jc,Ol,vc);os=os||Cs[0].width,As=As||Cs[0].height,rf?ve=Oi(rf):$l&&!Uc&&(ve=ui(os,As,Vc,"depth","uint32")),Yl?K=Oi(Yl):Uc&&!$l&&(K=ui(os,As,!1,"stencil","uint8")),Mc?ye=Oi(Mc):!rf&&!Yl&&Uc&&$l&&(ye=ui(os,As,Vc,"depth stencil","depth stencil"));var te=null;for(Xo=0;Xo<Cs.length;++Xo)if(nn(Cs[Xo],os,As),Cs[Xo]&&Cs[Xo].texture){var xe=zf[Cs[Xo].texture._texture.format]*au[Cs[Xo].texture._texture.type];te===null&&(te=xe)}return nn(ve,os,As),nn(K,os,As),nn(ye,os,As),bn(jn),jn.width=os,jn.height=As,jn.colorAttachments=Cs,jn.depthAttachment=ve,jn.stencilAttachment=K,jn.depthStencilAttachment=ye,Ro.color=Cs.map(Mi),Ro.depth=Mi(ve),Ro.stencil=Mi(K),Ro.depthStencil=Mi(ye),Ro.width=jn.width,Ro.height=jn.height,Zi(jn),Ro}function rs(wn,oo){var Xo=Math.max(wn|0,1),os=Math.max(oo|0||Xo,1);if(Xo===jn.width&&os===jn.height)return Ro;for(var As=jn.colorAttachments,$l=0;$l<As.length;++$l)tn(As[$l],Xo,os);return tn(jn.depthAttachment,Xo,os),tn(jn.stencilAttachment,Xo,os),tn(jn.depthStencilAttachment,Xo,os),jn.width=Ro.width=Xo,jn.height=Ro.height=os,Zi(jn),Ro}return Ro(xn,dn),g(Ro,{resize:rs,_reglType:"framebuffer",_framebuffer:jn,destroy:function(){_o(jn),bn(jn)},use:function(wn){bi.setFBO({framebuffer:Ro},wn)}})}function Zn(xn){var dn=Array(6);function jn(rs){var wn,oo={color:null},Xo=0,os=null,As="rgba",$l="uint8",Uc=1;if(typeof rs=="number")Xo=rs|0;else if(!rs)Xo=1;else{var Ws=rs;if("shape"in Ws){var jc=Ws.shape;Xo=jc[0]}else"radius"in Ws&&(Xo=Ws.radius|0),"width"in Ws?(Xo=Ws.width|0,"height"in Ws):"height"in Ws&&(Xo=Ws.height|0);("color"in Ws||"colors"in Ws)&&(os=Ws.color||Ws.colors,Array.isArray(os)),os||("colorCount"in Ws&&(Uc=Ws.colorCount|0),"colorType"in Ws&&($l=Ws.colorType),"colorFormat"in Ws&&(As=Ws.colorFormat)),"depth"in Ws&&(oo.depth=Ws.depth),"stencil"in Ws&&(oo.stencil=Ws.stencil),"depthStencil"in Ws&&(oo.depthStencil=Ws.depthStencil)}var Ol;if(os)if(Array.isArray(os))for(Ol=[],wn=0;wn<os.length;++wn)Ol[wn]=os[wn];else Ol=[os];else{Ol=Array(Uc);var vc={radius:Xo,format:As,type:$l};for(wn=0;wn<Uc;++wn)Ol[wn]=si.createCube(vc)}for(oo.color=Array(Ol.length),wn=0;wn<Ol.length;++wn){var mc=Ol[wn];Xo=Xo||mc.width,oo.color[wn]={target:vu,data:Ol[wn]}}for(wn=0;wn<6;++wn){for(var rf=0;rf<Ol.length;++rf)oo.color[rf].target=vu+wn;wn>0&&(oo.depth=dn[0].depth,oo.stencil=dn[0].stencil,oo.depthStencil=dn[0].depthStencil),dn[wn]?dn[wn](oo):dn[wn]=Ui(oo)}return g(jn,{width:Xo,height:Xo,color:Ol})}function Ro(rs){var wn,oo=rs|0;if(oo===jn.width)return jn;var Xo=jn.color;for(wn=0;wn<Xo.length;++wn)Xo[wn].resize(oo);for(wn=0;wn<6;++wn)dn[wn].resize(oo);return jn.width=jn.height=oo,jn}return jn(xn),g(jn,{faces:dn,resize:Ro,_reglType:"framebufferCube",destroy:function(){dn.forEach(function(rs){rs.destroy()})}})}function Rn(){bi.cur=null,bi.next=null,bi.dirty=!0,yt(qi).forEach(function(xn){xn.framebuffer=Qt.createFramebuffer(),Zi(xn)})}return g(bi,{getFramebuffer:function(xn){if(typeof xn=="function"&&xn._reglType==="framebuffer"){var dn=xn._framebuffer;if(dn instanceof Dn)return dn}return null},create:Ui,createCube:Zn,clear:function(){yt(qi).forEach(_o)},restore:Rn})}var Mh=5126,Ff=34962,il=34963;function mu(){this.state=0,this.x=0,this.y=0,this.z=0,this.w=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=Mh,this.offset=0,this.stride=0,this.divisor=0}function gu(Qt,ra,Ta,si,wi,xi,bi){for(var Fi=Ta.maxAttributes,cn=new Array(Fi),fn=0;fn<Fi;++fn)cn[fn]=new mu;var Gi=0,Io={},nn={Record:mu,scope:{},state:cn,currentVAO:null,targetVAO:null,restore:Oi()?bn:function(){},createVAO:_o,getVAO:Mi,destroyBuffer:on,setVAO:Oi()?tn:pn,clear:Oi()?qi:function(){}};function on(Zi){for(var Ui=0;Ui<cn.length;++Ui){var Zn=cn[Ui];Zn.buffer===Zi&&(Qt.disableVertexAttribArray(Ui),Zn.buffer=null)}}function Oi(){return ra.oes_vertex_array_object}function ui(){return ra.angle_instanced_arrays}function Mi(Zi){return typeof Zi=="function"&&Zi._vao?Zi._vao:null}function tn(Zi){if(Zi!==nn.currentVAO){var Ui=Oi();Zi?Ui.bindVertexArrayOES(Zi.vao):Ui.bindVertexArrayOES(null),nn.currentVAO=Zi}}function pn(Zi){if(Zi!==nn.currentVAO){if(Zi)Zi.bindAttrs();else{for(var Ui=ui(),Zn=0;Zn<cn.length;++Zn){var Rn=cn[Zn];Rn.buffer?(Qt.enableVertexAttribArray(Zn),Rn.buffer.bind(),Qt.vertexAttribPointer(Zn,Rn.size,Rn.type,Rn.normalized,Rn.stride,Rn.offfset),Ui&&Rn.divisor&&Ui.vertexAttribDivisorANGLE(Zn,Rn.divisor)):(Qt.disableVertexAttribArray(Zn),Qt.vertexAttrib4f(Zn,Rn.x,Rn.y,Rn.z,Rn.w))}bi.elements?Qt.bindBuffer(il,bi.elements.buffer.buffer):Qt.bindBuffer(il,null)}nn.currentVAO=Zi}}function qi(){yt(Io).forEach(function(Zi){Zi.destroy()})}function Dn(){this.id=++Gi,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var Zi=Oi();Zi?this.vao=Zi.createVertexArrayOES():this.vao=null,Io[this.id]=this,this.buffers=[]}Dn.prototype.bindAttrs=function(){for(var Zi=ui(),Ui=this.attributes,Zn=0;Zn<Ui.length;++Zn){var Rn=Ui[Zn];Rn.buffer?(Qt.enableVertexAttribArray(Zn),Qt.bindBuffer(Ff,Rn.buffer.buffer),Qt.vertexAttribPointer(Zn,Rn.size,Rn.type,Rn.normalized,Rn.stride,Rn.offset),Zi&&Rn.divisor&&Zi.vertexAttribDivisorANGLE(Zn,Rn.divisor)):(Qt.disableVertexAttribArray(Zn),Qt.vertexAttrib4f(Zn,Rn.x,Rn.y,Rn.z,Rn.w))}for(var xn=Ui.length;xn<Fi;++xn)Qt.disableVertexAttribArray(xn);var dn=xi.getElements(this.elements);dn?Qt.bindBuffer(il,dn.buffer.buffer):Qt.bindBuffer(il,null)},Dn.prototype.refresh=function(){var Zi=Oi();Zi&&(Zi.bindVertexArrayOES(this.vao),this.bindAttrs(),nn.currentVAO=null,Zi.bindVertexArrayOES(null))},Dn.prototype.destroy=function(){if(this.vao){var Zi=Oi();this===nn.currentVAO&&(nn.currentVAO=null,Zi.bindVertexArrayOES(null)),Zi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Io[this.id]&&(delete Io[this.id],si.vaoCount-=1)};function bn(){var Zi=Oi();Zi&&yt(Io).forEach(function(Ui){Ui.refresh()})}function _o(Zi){var Ui=new Dn;si.vaoCount+=1;function Zn(Rn){var xn;if(Array.isArray(Rn))xn=Rn,Ui.elements&&Ui.ownsElements&&Ui.elements.destroy(),Ui.elements=null,Ui.ownsElements=!1,Ui.offset=0,Ui.count=0,Ui.instances=-1,Ui.primitive=4;else{if(Rn.elements){var dn=Rn.elements;Ui.ownsElements?typeof dn=="function"&&dn._reglType==="elements"?(Ui.elements.destroy(),Ui.ownsElements=!1):(Ui.elements(dn),Ui.ownsElements=!1):xi.getElements(Rn.elements)?(Ui.elements=Rn.elements,Ui.ownsElements=!1):(Ui.elements=xi.create(Rn.elements),Ui.ownsElements=!0)}else Ui.elements=null,Ui.ownsElements=!1;xn=Rn.attributes,Ui.offset=0,Ui.count=-1,Ui.instances=-1,Ui.primitive=4,Ui.elements&&(Ui.count=Ui.elements._elements.vertCount,Ui.primitive=Ui.elements._elements.primType),"offset"in Rn&&(Ui.offset=Rn.offset|0),"count"in Rn&&(Ui.count=Rn.count|0),"instances"in Rn&&(Ui.instances=Rn.instances|0),"primitive"in Rn&&(Ui.primitive=mt[Rn.primitive])}var jn={},Ro=Ui.attributes;Ro.length=xn.length;for(var rs=0;rs<xn.length;++rs){var wn=xn[rs],oo=Ro[rs]=new mu,Xo=wn.data||wn;if(Array.isArray(Xo)||vr(Xo)||_r(Xo)){var os;Ui.buffers[rs]&&(os=Ui.buffers[rs],vr(Xo)&&os._buffer.byteLength>=Xo.byteLength?os.subdata(Xo):(os.destroy(),Ui.buffers[rs]=null)),Ui.buffers[rs]||(os=Ui.buffers[rs]=wi.create(wn,Ff,!1,!0)),oo.buffer=wi.getBuffer(os),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1,jn[rs]=1}else wi.getBuffer(wn)?(oo.buffer=wi.getBuffer(wn),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1):wi.getBuffer(wn.buffer)?(oo.buffer=wi.getBuffer(wn.buffer),oo.size=(+wn.size||oo.buffer.dimension)|0,oo.normalized=!!wn.normalized||!1,"type"in wn?oo.type=sa[wn.type]:oo.type=oo.buffer.dtype,oo.offset=(wn.offset||0)|0,oo.stride=(wn.stride||0)|0,oo.divisor=(wn.divisor||0)|0,oo.state=1):"x"in wn&&(oo.x=+wn.x||0,oo.y=+wn.y||0,oo.z=+wn.z||0,oo.w=+wn.w||0,oo.state=2)}for(var As=0;As<Ui.buffers.length;++As)!jn[As]&&Ui.buffers[As]&&(Ui.buffers[As].destroy(),Ui.buffers[As]=null);return Ui.refresh(),Zn}return Zn.destroy=function(){for(var Rn=0;Rn<Ui.buffers.length;++Rn)Ui.buffers[Rn]&&Ui.buffers[Rn].destroy();Ui.buffers.length=0,Ui.ownsElements&&(Ui.elements.destroy(),Ui.elements=null,Ui.ownsElements=!1),Ui.destroy()},Zn._vao=Ui,Zn._reglType="vao",Zn(Zi)}return nn}var Jf=35632,el=35633,mf=35718,wc=35721;function ju(Qt,ra,Ta,si){var wi={},xi={};function bi(ui,Mi,tn,pn){this.name=ui,this.id=Mi,this.location=tn,this.info=pn}function Fi(ui,Mi){for(var tn=0;tn<ui.length;++tn)if(ui[tn].id===Mi.id){ui[tn].location=Mi.location;return}ui.push(Mi)}function cn(ui,Mi,tn){var pn=ui===Jf?wi:xi,qi=pn[Mi];if(!qi){var Dn=ra.str(Mi);qi=Qt.createShader(ui),Qt.shaderSource(qi,Dn),Qt.compileShader(qi),pn[Mi]=qi}return qi}var fn={},Gi=[],Io=0;function nn(ui,Mi){this.id=Io++,this.fragId=ui,this.vertId=Mi,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,si.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function on(ui,Mi,tn){var pn,qi,Dn=cn(Jf,ui.fragId),bn=cn(el,ui.vertId),_o=ui.program=Qt.createProgram();if(Qt.attachShader(_o,Dn),Qt.attachShader(_o,bn),tn)for(pn=0;pn<tn.length;++pn){var Zi=tn[pn];Qt.bindAttribLocation(_o,Zi[0],Zi[1])}Qt.linkProgram(_o);var Ui=Qt.getProgramParameter(_o,mf);si.profile&&(ui.stats.uniformsCount=Ui);var Zn=ui.uniforms;for(pn=0;pn<Ui;++pn)if(qi=Qt.getActiveUniform(_o,pn),qi)if(qi.size>1)for(var Rn=0;Rn<qi.size;++Rn){var xn=qi.name.replace("[0]","["+Rn+"]");Fi(Zn,new bi(xn,ra.id(xn),Qt.getUniformLocation(_o,xn),qi))}else Fi(Zn,new bi(qi.name,ra.id(qi.name),Qt.getUniformLocation(_o,qi.name),qi));var dn=Qt.getProgramParameter(_o,wc);si.profile&&(ui.stats.attributesCount=dn);var jn=ui.attributes;for(pn=0;pn<dn;++pn)qi=Qt.getActiveAttrib(_o,pn),qi&&Fi(jn,new bi(qi.name,ra.id(qi.name),Qt.getAttribLocation(_o,qi.name),qi))}si.profile&&(Ta.getMaxUniformsCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.uniformsCount>ui&&(ui=Mi.stats.uniformsCount)}),ui},Ta.getMaxAttributesCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.attributesCount>ui&&(ui=Mi.stats.attributesCount)}),ui});function Oi(){wi={},xi={};for(var ui=0;ui<Gi.length;++ui)on(Gi[ui],null,Gi[ui].attributes.map(function(Mi){return[Mi.location,Mi.name]}))}return{clear:function(){var ui=Qt.deleteShader.bind(Qt);yt(wi).forEach(ui),wi={},yt(xi).forEach(ui),xi={},Gi.forEach(function(Mi){Qt.deleteProgram(Mi.program)}),Gi.length=0,fn={},Ta.shaderCount=0},program:function(ui,Mi,tn,pn){var qi=fn[Mi];qi||(qi=fn[Mi]={});var Dn=qi[ui];if(Dn&&(Dn.refCount++,!pn))return Dn;var bn=new nn(Mi,ui);return Ta.shaderCount++,on(bn,tn,pn),Dn||(qi[ui]=bn),Gi.push(bn),g(bn,{destroy:function(){if(bn.refCount--,bn.refCount<=0){Qt.deleteProgram(bn.program);var _o=Gi.indexOf(bn);Gi.splice(_o,1),Ta.shaderCount--}qi[bn.vertId].refCount<=0&&(Qt.deleteShader(xi[bn.vertId]),delete xi[bn.vertId],delete fn[bn.fragId][bn.vertId]),Object.keys(fn[bn.fragId]).length||(Qt.deleteShader(wi[bn.fragId]),delete wi[bn.fragId],delete fn[bn.fragId])}})},restore:Oi,shader:cn,frag:-1,vert:-1}}var Af=6408,uc=5121,Qc=3333,$f=5126;function Vl(Qt,ra,Ta,si,wi,xi,bi){function Fi(Gi){var Io;ra.next===null?Io=uc:Io=ra.next.colorAttachments[0].texture._texture.type;var nn=0,on=0,Oi=si.framebufferWidth,ui=si.framebufferHeight,Mi=null;vr(Gi)?Mi=Gi:Gi&&(nn=Gi.x|0,on=Gi.y|0,Oi=(Gi.width||si.framebufferWidth-nn)|0,ui=(Gi.height||si.framebufferHeight-on)|0,Mi=Gi.data||null),Ta();var tn=Oi*ui*4;return Mi||(Io===uc?Mi=new Uint8Array(tn):Io===$f&&(Mi=Mi||new Float32Array(tn))),Qt.pixelStorei(Qc,4),Qt.readPixels(nn,on,Oi,ui,Af,Io,Mi),Mi}function cn(Gi){var Io;return ra.setFBO({framebuffer:Gi.framebuffer},function(){Io=Fi(Gi)}),Io}function fn(Gi){return!Gi||!("framebuffer"in Gi)?Fi(Gi):cn(Gi)}return fn}var Qf=0,Vu="";function Tc(Qt){return iu(cc(Qu(Qt)))}function cc(Qt){return Zt(li(ef(Qt),Qt.length*8))}function Cl(Qt,ra){var Ta=ef(Qt);Ta.length>16&&(Ta=li(Ta,Qt.length*8));for(var si=Array(16),wi=Array(16),xi=0;xi<16;xi++)si[xi]=Ta[xi]^909522486,wi[xi]=Ta[xi]^1549556828;var bi=li(si.concat(ef(ra)),512+ra.length*8);return Zt(li(wi.concat(bi),768))}function iu(Qt){for(var ra=Qf?"0123456789ABCDEF":"0123456789abcdef",Ta="",si,wi=0;wi<Qt.length;wi++)si=Qt.charCodeAt(wi),Ta+=ra.charAt(si>>>4&15)+ra.charAt(si&15);return Ta}function fc(Qt){for(var ra="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ta="",si=Qt.length,wi=0;wi<si;wi+=3)for(var xi=Qt.charCodeAt(wi)<<16|(wi+1<si?Qt.charCodeAt(wi+1)<<8:0)|(wi+2<si?Qt.charCodeAt(wi+2):0),bi=0;bi<4;bi++)wi*8+bi*6>Qt.length*8?Ta+=Vu:Ta+=ra.charAt(xi>>>6*(3-bi)&63);return Ta}function Oc(Qt,ra){var Ta=ra.length,si=Array(),wi,xi,bi,Fi,cn=Array(Math.ceil(Qt.length/2));for(wi=0;wi<cn.length;wi++)cn[wi]=Qt.charCodeAt(wi*2)<<8|Qt.charCodeAt(wi*2+1);for(;cn.length>0;){for(Fi=Array(),bi=0,wi=0;wi<cn.length;wi++)bi=(bi<<16)+cn[wi],xi=Math.floor(bi/Ta),bi-=xi*Ta,(Fi.length>0||xi>0)&&(Fi[Fi.length]=xi);si[si.length]=bi,cn=Fi}var fn="";for(wi=si.length-1;wi>=0;wi--)fn+=ra.charAt(si[wi]);var Gi=Math.ceil(Qt.length*8/(Math.log(ra.length)/Math.log(2)));for(wi=fn.length;wi<Gi;wi++)fn=ra[0]+fn;return fn}function Qu(Qt){for(var ra="",Ta=-1,si,wi;++Ta<Qt.length;)si=Qt.charCodeAt(Ta),wi=Ta+1<Qt.length?Qt.charCodeAt(Ta+1):0,55296<=si&&si<=56319&&56320<=wi&&wi<=57343&&(si=65536+((si&1023)<<10)+(wi&1023),Ta++),si<=127?ra+=String.fromCharCode(si):si<=2047?ra+=String.fromCharCode(192|si>>>6&31,128|si&63):si<=65535?ra+=String.fromCharCode(224|si>>>12&15,128|si>>>6&63,128|si&63):si<=2097151&&(ra+=String.fromCharCode(240|si>>>18&7,128|si>>>12&63,128|si>>>6&63,128|si&63));return ra}function ef(Qt){for(var ra=Array(Qt.length>>2),Ta=0;Ta<ra.length;Ta++)ra[Ta]=0;for(var Ta=0;Ta<Qt.length*8;Ta+=8)ra[Ta>>5]|=(Qt.charCodeAt(Ta/8)&255)<<24-Ta%32;return ra}function Zt(Qt){for(var ra="",Ta=0;Ta<Qt.length*32;Ta+=8)ra+=String.fromCharCode(Qt[Ta>>5]>>>24-Ta%32&255);return ra}function fr(Qt,ra){return Qt>>>ra|Qt<<32-ra}function Yr(Qt,ra){return Qt>>>ra}function qr(Qt,ra,Ta){return Qt&ra^~Qt&Ta}function ba(Qt,ra,Ta){return Qt&ra^Qt&Ta^ra&Ta}function Ka(Qt){return fr(Qt,2)^fr(Qt,13)^fr(Qt,22)}function oi(Qt){return fr(Qt,6)^fr(Qt,11)^fr(Qt,25)}function yi(Qt){return fr(Qt,7)^fr(Qt,18)^Yr(Qt,3)}function ki(Qt){return fr(Qt,17)^fr(Qt,19)^Yr(Qt,10)}var Bi=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function li(Qt,ra){var Ta=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),si=new Array(64),wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui;for(Qt[ra>>5]|=128<<24-ra%32,Qt[(ra+64>>9<<4)+15]=ra,nn=0;nn<Qt.length;nn+=16){for(wi=Ta[0],xi=Ta[1],bi=Ta[2],Fi=Ta[3],cn=Ta[4],fn=Ta[5],Gi=Ta[6],Io=Ta[7],on=0;on<64;on++)on<16?si[on]=Qt[on+nn]:si[on]=_i(_i(_i(ki(si[on-2]),si[on-7]),yi(si[on-15])),si[on-16]),Oi=_i(_i(_i(_i(Io,oi(cn)),qr(cn,fn,Gi)),Bi[on]),si[on]),ui=_i(Ka(wi),ba(wi,xi,bi)),Io=Gi,Gi=fn,fn=cn,cn=_i(Fi,Oi),Fi=bi,bi=xi,xi=wi,wi=_i(Oi,ui);Ta[0]=_i(wi,Ta[0]),Ta[1]=_i(xi,Ta[1]),Ta[2]=_i(bi,Ta[2]),Ta[3]=_i(Fi,Ta[3]),Ta[4]=_i(cn,Ta[4]),Ta[5]=_i(fn,Ta[5]),Ta[6]=_i(Gi,Ta[6]),Ta[7]=_i(Io,Ta[7])}return Ta}function _i(Qt,ra){var Ta=(Qt&65535)+(ra&65535),si=(Qt>>16)+(ra>>16)+(Ta>>16);return si<<16|Ta&65535}function vi(Qt){return Array.prototype.slice.call(Qt)}function ti(Qt){return vi(Qt).join("")}function rn(Qt){var ra=Qt&&Qt.cache,Ta=0,si=[],wi=[],xi=[];function bi(Oi,ui){var Mi=ui&&ui.stable;if(!Mi){for(var tn=0;tn<wi.length;++tn)if(wi[tn]===Oi&&!xi[tn])return si[tn]}var pn="g"+Ta++;return si.push(pn),wi.push(Oi),xi.push(Mi),pn}function Fi(){var Oi=[];function ui(){Oi.push.apply(Oi,vi(arguments))}var Mi=[];function tn(){var pn="v"+Ta++;return Mi.push(pn),arguments.length>0&&(Oi.push(pn,"="),Oi.push.apply(Oi,vi(arguments)),Oi.push(";")),pn}return g(ui,{def:tn,toString:function(){return ti([Mi.length>0?"var "+Mi.join(",")+";":"",ti(Oi)])}})}function cn(){var Oi=Fi(),ui=Fi(),Mi=Oi.toString,tn=ui.toString;function pn(qi,Dn){ui(qi,Dn,"=",Oi.def(qi,Dn),";")}return g(function(){Oi.apply(Oi,vi(arguments))},{def:Oi.def,entry:Oi,exit:ui,save:pn,set:function(qi,Dn,bn){pn(qi,Dn),Oi(qi,Dn,"=",bn,";")},toString:function(){return Mi()+tn()}})}function fn(){var Oi=ti(arguments),ui=cn(),Mi=cn(),tn=ui.toString,pn=Mi.toString;return g(ui,{then:function(){return ui.apply(ui,vi(arguments)),this},else:function(){return Mi.apply(Mi,vi(arguments)),this},toString:function(){var qi=pn();return qi&&(qi="else{"+qi+"}"),ti(["if(",Oi,"){",tn(),"}",qi])}})}var Gi=Fi(),Io={};function nn(Oi,ui){var Mi=[];function tn(){var _o="a"+Mi.length;return Mi.push(_o),_o}ui=ui||0;for(var pn=0;pn<ui;++pn)tn();var qi=cn(),Dn=qi.toString,bn=Io[Oi]=g(qi,{arg:tn,toString:function(){return ti(["function(",Mi.join(),"){",Dn(),"}"])}});return bn}function on(){var Oi=['"use strict";',Gi,"return {"];Object.keys(Io).forEach(function(pn){Oi.push('"',pn,'":',Io[pn].toString(),",")}),Oi.push("}");var ui=ti(Oi).replace(/;/g,`;
`).replace(/}/g,`}
`).replace(/{/g,`{
`),Mi;if(ra&&(Mi=Tc(ui),ra[Mi]))return ra[Mi].apply(null,wi);var tn=Function.apply(null,si.concat(ui));return ra&&(ra[Mi]=tn),tn.apply(null,wi)}return{global:Gi,link:bi,block:Fi,proc:nn,scope:cn,cond:fn,compile:on}}var Kn="xyzw".split(""),Wn=5121,Jn=1,no=2,en=0,Ri=1,co=2,Wo=3,bs=4,Xs=5,Ms=6,Hs="dither",vs="blend.enable",Il="blend.color",fl="blend.equation",tl="blend.func",Ln="depth.enable",Ao="depth.func",js="depth.range",Ts="depth.mask",nu="colorMask",Pu="cull.enable",ec="cull.face",tf="frontFace",yu="lineWidth",Bc="polygonOffset.enable",Iu="polygonOffset.offset",Ac="sample.alpha",ro="sample.enable",Po="sample.coverage",Nc="stencil.enable",hc="stencil.mask",pc="stencil.func",Oe="stencil.opFront",R="stencil.opBack",ae="scissor.enable",we="scissor.box",Se="viewport",De="profile",ft="framebuffer",bt="vert",Dt="frag",Yt="elements",cr="primitive",hr="count",jr="offset",ea="instances",qe="vao",Je="Width",ot="Height",ht=ft+Je,At=ft+ot,_t=Se+Je,Pt=Se+ot,er="drawingBuffer",nr=er+Je,pr=er+ot,Sr=[tl,fl,pc,Oe,R,Po,Se,we,Iu],Wr=34962,ha=34963,ga=2884,Pa=3042,Ja=3024,di=2960,pi=2929,Ci=3089,$i=32823,Bn=32926,Sn=32928,ho=5126,ts=35664,yo=35665,Vo=35666,ls=5124,rl=35667,Ys=35668,Zo=35669,Go=35670,Rl=35671,Xl=35672,qu=35673,fu=35674,bl=35675,ou=35676,Sc=35678,ql=35680,Hl=4,de=1028,Re=1029,$e=2304,pt=2305,vt=32775,wt=32776,Jt=519,Rt=7680,or=0,Dr=1,Or=32774,va=513,fa=36160,Va=36064,Xa={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},_a={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ra={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Na={cw:$e,ccw:pt};function Qa(Qt){return Array.isArray(Qt)||vr(Qt)||_r(Qt)}function Ya(Qt){return Qt.sort(function(ra,Ta){return ra===Se?-1:Ta===Se?1:ra<Ta?-1:1})}function Da(Qt,ra,Ta,si){this.thisDep=Qt,this.contextDep=ra,this.propDep=Ta,this.append=si}function zi(Qt){return Qt&&!(Qt.thisDep||Qt.contextDep||Qt.propDep)}function Ni(Qt){return new Da(!1,!1,!1,Qt)}function Qi(Qt,ra){var Ta=Qt.type;if(Ta===en){var si=Qt.data.length;return new Da(!0,si>=1,si>=2,ra)}else if(Ta===bs){var wi=Qt.data;return new Da(wi.thisDep,wi.contextDep,wi.propDep,ra)}else{if(Ta===Xs)return new Da(!1,!1,!1,ra);if(Ta===Ms){for(var xi=!1,bi=!1,Fi=!1,cn=0;cn<Qt.data.length;++cn){var fn=Qt.data[cn];if(fn.type===Ri)Fi=!0;else if(fn.type===co)bi=!0;else if(fn.type===Wo)xi=!0;else if(fn.type===en){xi=!0;var Gi=fn.data;Gi>=1&&(bi=!0),Gi>=2&&(Fi=!0)}else fn.type===bs&&(xi=xi||fn.data.thisDep,bi=bi||fn.data.contextDep,Fi=Fi||fn.data.propDep)}return new Da(xi,bi,Fi,ra)}else return new Da(Ta===Wo,Ta===co,Ta===Ri,ra)}}var hn=new Da(!1,!1,!1,function(){});function Un(Qt,ra,Ta,si,wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui){var Mi=fn.Record,tn={add:32774,subtract:32778,"reverse subtract":32779};Ta.ext_blend_minmax&&(tn.min=vt,tn.max=wt);var pn=Ta.angle_instanced_arrays,qi=Ta.webgl_draw_buffers,Dn=Ta.oes_vertex_array_object,bn={dirty:!0,profile:ui.profile},_o={},Zi=[],Ui={},Zn={};function Rn(qt){return qt.replace(".","_")}function xn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),_o[Pr]=bn[Pr]=!!dr,Ui[Pr]=tr}function dn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),Array.isArray(dr)?(bn[Pr]=dr.slice(),_o[Pr]=dr.slice()):bn[Pr]=_o[Pr]=dr,Zn[Pr]=tr}function jn(qt){return!!isNaN(qt)}xn(Hs,Ja),xn(vs,Pa),dn(Il,"blendColor",[0,0,0,0]),dn(fl,"blendEquationSeparate",[Or,Or]),dn(tl,"blendFuncSeparate",[Dr,or,Dr,or]),xn(Ln,pi,!0),dn(Ao,"depthFunc",va),dn(js,"depthRange",[0,1]),dn(Ts,"depthMask",!0),dn(nu,nu,[!0,!0,!0,!0]),xn(Pu,ga),dn(ec,"cullFace",Re),dn(tf,tf,pt),dn(yu,yu,1),xn(Bc,$i),dn(Iu,"polygonOffset",[0,0]),xn(Ac,Bn),xn(ro,Sn),dn(Po,"sampleCoverage",[1,!1]),xn(Nc,di),dn(hc,"stencilMask",-1),dn(pc,"stencilFunc",[Jt,0,-1]),dn(Oe,"stencilOpSeparate",[de,Rt,Rt,Rt]),dn(R,"stencilOpSeparate",[Re,Rt,Rt,Rt]),xn(ae,Ci),dn(we,"scissor",[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]),dn(Se,Se,[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]);var Ro={gl:Qt,context:nn,strings:ra,next:_o,current:bn,draw:Io,elements:xi,buffer:wi,shader:Gi,attributes:fn.state,vao:fn,uniforms:cn,framebuffer:Fi,extensions:Ta,timer:on,isBufferArgs:Qa},rs={primTypes:mt,compareFuncs:_a,blendFuncs:Xa,blendEquations:tn,stencilOps:Ra,glTypes:sa,orientationType:Na};qi&&(rs.backBuffer=[Re],rs.drawBuffer=d(si.maxDrawbuffers,function(qt){return qt===0?[0]:d(qt,function(tr){return Va+tr})}));var wn=0;function oo(){var qt=rn({cache:Oi}),tr=qt.link,dr=qt.global;qt.id=wn++,qt.batchId="0";var Pr=tr(Ro),Vr=qt.shared={props:"a0"};Object.keys(Ro).forEach(function(ia){Vr[ia]=dr.def(Pr,".",ia)});var Hr=qt.next={},aa=qt.current={};Object.keys(Zn).forEach(function(ia){Array.isArray(bn[ia])&&(Hr[ia]=dr.def(Vr.next,".",ia),aa[ia]=dr.def(Vr.current,".",ia))});var Qr=qt.constants={};Object.keys(rs).forEach(function(ia){Qr[ia]=dr.def(JSON.stringify(rs[ia]))}),qt.invoke=function(ia,Ur){switch(Ur.type){case en:var wa=["this",Vr.context,Vr.props,qt.batchId];return ia.def(tr(Ur.data),".call(",wa.slice(0,Math.max(Ur.data.length+1,4)),")");case Ri:return ia.def(Vr.props,Ur.data);case co:return ia.def(Vr.context,Ur.data);case Wo:return ia.def("this",Ur.data);case bs:return Ur.data.append(qt,ia),Ur.data.ref;case Xs:return Ur.data.toString();case Ms:return Ur.data.map(function(Oa){return qt.invoke(ia,Oa)})}},qt.attribCache={};var Gr={};return qt.scopeAttrib=function(ia){var Ur=ra.id(ia);if(Ur in Gr)return Gr[Ur];var wa=fn.scope[Ur];wa||(wa=fn.scope[Ur]=new Mi);var Oa=Gr[Ur]=tr(wa);return Oa},qt}function Xo(qt){var tr=qt.static,dr=qt.dynamic,Pr;if(De in tr){var Vr=!!tr[De];Pr=Ni(function(aa,Qr){return Vr}),Pr.enable=Vr}else if(De in dr){var Hr=dr[De];Pr=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}return Pr}function os(qt,tr){var dr=qt.static,Pr=qt.dynamic;if(ft in dr){var Vr=dr[ft];return Vr?(Vr=Fi.getFramebuffer(Vr),Ni(function(aa,Qr){var Gr=aa.link(Vr),ia=aa.shared;Qr.set(ia.framebuffer,".next",Gr);var Ur=ia.context;return Qr.set(Ur,"."+ht,Gr+".width"),Qr.set(Ur,"."+At,Gr+".height"),Gr})):Ni(function(aa,Qr){var Gr=aa.shared;Qr.set(Gr.framebuffer,".next","null");var ia=Gr.context;return Qr.set(ia,"."+ht,ia+"."+nr),Qr.set(ia,"."+At,ia+"."+pr),"null"})}else if(ft in Pr){var Hr=Pr[ft];return Qi(Hr,function(aa,Qr){var Gr=aa.invoke(Qr,Hr),ia=aa.shared,Ur=ia.framebuffer,wa=Qr.def(Ur,".getFramebuffer(",Gr,")");Qr.set(Ur,".next",wa);var Oa=ia.context;return Qr.set(Oa,"."+ht,wa+"?"+wa+".width:"+Oa+"."+nr),Qr.set(Oa,"."+At,wa+"?"+wa+".height:"+Oa+"."+pr),wa})}else return null}function As(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Gr){if(Gr in Pr){var ia=Pr[Gr],Ur=!0,wa=ia.x|0,Oa=ia.y|0,ri,Pi;return"width"in ia?ri=ia.width|0:Ur=!1,"height"in ia?Pi=ia.height|0:Ur=!1,new Da(!Ur&&tr&&tr.thisDep,!Ur&&tr&&tr.contextDep,!Ur&&tr&&tr.propDep,function(An,ln){var Ii=An.shared.context,Wi=ri;"width"in ia||(Wi=ln.def(Ii,".",ht,"-",wa));var Hi=Pi;return"height"in ia||(Hi=ln.def(Ii,".",At,"-",Oa)),[wa,Oa,Wi,Hi]})}else if(Gr in Vr){var mi=Vr[Gr],Di=Qi(mi,function(An,ln){var Ii=An.invoke(ln,mi),Wi=An.shared.context,Hi=ln.def(Ii,".x|0"),yn=ln.def(Ii,".y|0"),zn=ln.def('"width" in ',Ii,"?",Ii,".width|0:","(",Wi,".",ht,"-",Hi,")"),ms=ln.def('"height" in ',Ii,"?",Ii,".height|0:","(",Wi,".",At,"-",yn,")");return[Hi,yn,zn,ms]});return tr&&(Di.thisDep=Di.thisDep||tr.thisDep,Di.contextDep=Di.contextDep||tr.contextDep,Di.propDep=Di.propDep||tr.propDep),Di}else return tr?new Da(tr.thisDep,tr.contextDep,tr.propDep,function(An,ln){var Ii=An.shared.context;return[0,0,ln.def(Ii,".",ht),ln.def(Ii,".",At)]}):null}var aa=Hr(Se);if(aa){var Qr=aa;aa=new Da(aa.thisDep,aa.contextDep,aa.propDep,function(Gr,ia){var Ur=Qr.append(Gr,ia),wa=Gr.shared.context;return ia.set(wa,"."+_t,Ur[2]),ia.set(wa,"."+Pt,Ur[3]),Ur})}return{viewport:aa,scissor_box:Hr(we)}}function $l(qt,tr){var dr=qt.static,Pr=typeof dr[Dt]=="string"&&typeof dr[bt]=="string";if(Pr){if(Object.keys(tr.dynamic).length>0)return null;var Vr=tr.static,Hr=Object.keys(Vr);if(Hr.length>0&&typeof Vr[Hr[0]]=="number"){for(var aa=[],Qr=0;Qr<Hr.length;++Qr)aa.push([Vr[Hr[Qr]]|0,Hr[Qr]]);return aa}}return null}function Uc(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Ur){if(Ur in Pr){var wa=ra.id(Pr[Ur]),Oa=Ni(function(){return wa});return Oa.id=wa,Oa}else if(Ur in Vr){var ri=Vr[Ur];return Qi(ri,function(Pi,mi){var Di=Pi.invoke(mi,ri),An=mi.def(Pi.shared.strings,".id(",Di,")");return An})}return null}var aa=Hr(Dt),Qr=Hr(bt),Gr=null,ia;return zi(aa)&&zi(Qr)?(Gr=Gi.program(Qr.id,aa.id,null,dr),ia=Ni(function(Ur,wa){return Ur.link(Gr)})):ia=new Da(aa&&aa.thisDep||Qr&&Qr.thisDep,aa&&aa.contextDep||Qr&&Qr.contextDep,aa&&aa.propDep||Qr&&Qr.propDep,function(Ur,wa){var Oa=Ur.shared.shader,ri;aa?ri=aa.append(Ur,wa):ri=wa.def(Oa,".",Dt);var Pi;Qr?Pi=Qr.append(Ur,wa):Pi=wa.def(Oa,".",bt);var mi=Oa+".program("+Pi+","+ri;return wa.def(mi+")")}),{frag:aa,vert:Qr,progVar:ia,program:Gr}}function Ws(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={},Hr=!1;function aa(){if(qe in dr){var ln=dr[qe];return ln!==null&&fn.getVAO(ln)===null&&(ln=fn.createVAO(ln)),Hr=!0,Vr.vao=ln,Ni(function(Wi){var Hi=fn.getVAO(ln);return Hi?Wi.link(Hi):"null"})}else if(qe in Pr){Hr=!0;var Ii=Pr[qe];return Qi(Ii,function(Wi,Hi){var yn=Wi.invoke(Hi,Ii);return Hi.def(Wi.shared.vao+".getVAO("+yn+")")})}return null}var Qr=aa(),Gr=!1;function ia(){if(Yt in dr){var ln=dr[Yt];if(Vr.elements=ln,Qa(ln)){var Ii=Vr.elements=xi.create(ln,!0);ln=xi.getElements(Ii),Gr=!0}else ln&&(ln=xi.getElements(ln),Gr=!0);var Wi=Ni(function(yn,zn){if(ln){var ms=yn.link(ln);return yn.ELEMENTS=ms,ms}return yn.ELEMENTS=null,null});return Wi.value=ln,Wi}else if(Yt in Pr){Gr=!0;var Hi=Pr[Yt];return Qi(Hi,function(yn,zn){var ms=yn.shared,us=ms.isBufferArgs,Vs=ms.elements,qo=yn.invoke(zn,Hi),Ls=zn.def("null"),wl=zn.def(us,"(",qo,")"),Ru=yn.cond(wl).then(Ls,"=",Vs,".createStream(",qo,");").else(Ls,"=",Vs,".getElements(",qo,");");return zn.entry(Ru),zn.exit(yn.cond(wl).then(Vs,".destroyStream(",Ls,");")),yn.ELEMENTS=Ls,Ls})}else if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.elements+".getElements("+yn.shared.vao+".currentVAO.elements):null")});return null}var Ur=ia();function wa(){if(cr in dr){var ln=dr[cr];return Vr.primitive=ln,Ni(function(Wi,Hi){return mt[ln]})}else if(cr in Pr){var Ii=Pr[cr];return Qi(Ii,function(Wi,Hi){var yn=Wi.constants.primTypes,zn=Wi.invoke(Hi,Ii);return Hi.def(yn,"[",zn,"]")})}else{if(Gr)return zi(Ur)?Ur.value?Ni(function(Wi,Hi){return Hi.def(Wi.ELEMENTS,".primType")}):Ni(function(){return Hl}):new Da(Ur.thisDep,Ur.contextDep,Ur.propDep,function(Wi,Hi){var yn=Wi.ELEMENTS;return Hi.def(yn,"?",yn,".primType:",Hl)});if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(Wi,Hi){return Hi.def(Wi.shared.vao+".currentVAO?"+Wi.shared.vao+".currentVAO.primitive:"+Hl)})}return null}function Oa(ln,Ii){if(ln in dr){var Wi=dr[ln]|0;return Ii?Vr.offset=Wi:Vr.instances=Wi,Ni(function(yn,zn){return Ii&&(yn.OFFSET=Wi),Wi})}else if(ln in Pr){var Hi=Pr[ln];return Qi(Hi,function(yn,zn){var ms=yn.invoke(zn,Hi);return Ii&&(yn.OFFSET=ms),ms})}else if(Ii){if(Gr)return Ni(function(yn,zn){return yn.OFFSET=0,0});if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.vao+".currentVAO.offset:0")})}else if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.vao+".currentVAO.instances:-1")});return null}var ri=Oa(jr,!0);function Pi(){if(hr in dr){var ln=dr[hr]|0;return Vr.count=ln,Ni(function(){return ln})}else if(hr in Pr){var Ii=Pr[hr];return Qi(Ii,function(zn,ms){var us=zn.invoke(ms,Ii);return us})}else if(Gr)if(zi(Ur)){if(Ur)return ri?new Da(ri.thisDep,ri.contextDep,ri.propDep,function(zn,ms){var us=ms.def(zn.ELEMENTS,".vertCount-",zn.OFFSET);return us}):Ni(function(zn,ms){return ms.def(zn.ELEMENTS,".vertCount")});var Wi=Ni(function(){return-1});return Wi}else{var Hi=new Da(Ur.thisDep||ri.thisDep,Ur.contextDep||ri.contextDep,Ur.propDep||ri.propDep,function(zn,ms){var us=zn.ELEMENTS;return zn.OFFSET?ms.def(us,"?",us,".vertCount-",zn.OFFSET,":-1"):ms.def(us,"?",us,".vertCount:-1")});return Hi}else if(Hr){var yn=new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(zn,ms){return ms.def(zn.shared.vao,".currentVAO?",zn.shared.vao,".currentVAO.count:-1")});return yn}return null}var mi=wa(),Di=Pi(),An=Oa(ea,!1);return{elements:Ur,primitive:mi,count:Di,instances:An,offset:ri,vao:Qr,vaoActive:Hr,elementsActive:Gr,static:Vr}}function jc(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Zi.forEach(function(Hr){var aa=Rn(Hr);function Qr(Gr,ia){if(Hr in dr){var Ur=Gr(dr[Hr]);Vr[aa]=Ni(function(){return Ur})}else if(Hr in Pr){var wa=Pr[Hr];Vr[aa]=Qi(wa,function(Oa,ri){return ia(Oa,ri,Oa.invoke(ri,wa))})}}switch(Hr){case Pu:case vs:case Hs:case Nc:case Ln:case ae:case Bc:case Ac:case ro:case Ts:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){return Ur});case Ao:return Qr(function(Gr){return _a[Gr]},function(Gr,ia,Ur){var wa=Gr.constants.compareFuncs;return ia.def(wa,"[",Ur,"]")});case js:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){var wa=ia.def("+",Ur,"[0]"),Oa=ia.def("+",Ur,"[1]");return[wa,Oa]});case tl:return Qr(function(Gr){var ia="srcRGB"in Gr?Gr.srcRGB:Gr.src,Ur="srcAlpha"in Gr?Gr.srcAlpha:Gr.src,wa="dstRGB"in Gr?Gr.dstRGB:Gr.dst,Oa="dstAlpha"in Gr?Gr.dstAlpha:Gr.dst;return[Xa[ia],Xa[wa],Xa[Ur],Xa[Oa]]},function(Gr,ia,Ur){var wa=Gr.constants.blendFuncs;function Oa(Ii,Wi){var Hi=ia.def('"',Ii,Wi,'" in ',Ur,"?",Ur,".",Ii,Wi,":",Ur,".",Ii);return Hi}var ri=Oa("src","RGB"),Pi=Oa("dst","RGB"),mi=ia.def(wa,"[",ri,"]"),Di=ia.def(wa,"[",Oa("src","Alpha"),"]"),An=ia.def(wa,"[",Pi,"]"),ln=ia.def(wa,"[",Oa("dst","Alpha"),"]");return[mi,An,Di,ln]});case fl:return Qr(function(Gr){if(typeof Gr=="string")return[tn[Gr],tn[Gr]];if(typeof Gr=="object")return[tn[Gr.rgb],tn[Gr.alpha]]},function(Gr,ia,Ur){var wa=Gr.constants.blendEquations,Oa=ia.def(),ri=ia.def(),Pi=Gr.cond("typeof ",Ur,'==="string"');return Pi.then(Oa,"=",ri,"=",wa,"[",Ur,"];"),Pi.else(Oa,"=",wa,"[",Ur,".rgb];",ri,"=",wa,"[",Ur,".alpha];"),ia(Pi),[Oa,ri]});case Il:return Qr(function(Gr){return d(4,function(ia){return+Gr[ia]})},function(Gr,ia,Ur){return d(4,function(wa){return ia.def("+",Ur,"[",wa,"]")})});case hc:return Qr(function(Gr){return Gr|0},function(Gr,ia,Ur){return ia.def(Ur,"|0")});case pc:return Qr(function(Gr){var ia=Gr.cmp||"keep",Ur=Gr.ref||0,wa="mask"in Gr?Gr.mask:-1;return[_a[ia],Ur,wa]},function(Gr,ia,Ur){var wa=Gr.constants.compareFuncs,Oa=ia.def('"cmp" in ',Ur,"?",wa,"[",Ur,".cmp]",":",Rt),ri=ia.def(Ur,".ref|0"),Pi=ia.def('"mask" in ',Ur,"?",Ur,".mask|0:-1");return[Oa,ri,Pi]});case Oe:case R:return Qr(function(Gr){var ia=Gr.fail||"keep",Ur=Gr.zfail||"keep",wa=Gr.zpass||"keep";return[Hr===R?Re:de,Ra[ia],Ra[Ur],Ra[wa]]},function(Gr,ia,Ur){var wa=Gr.constants.stencilOps;function Oa(ri){return ia.def('"',ri,'" in ',Ur,"?",wa,"[",Ur,".",ri,"]:",Rt)}return[Hr===R?Re:de,Oa("fail"),Oa("zfail"),Oa("zpass")]});case Iu:return Qr(function(Gr){var ia=Gr.factor|0,Ur=Gr.units|0;return[ia,Ur]},function(Gr,ia,Ur){var wa=ia.def(Ur,".factor|0"),Oa=ia.def(Ur,".units|0");return[wa,Oa]});case ec:return Qr(function(Gr){var ia=0;return Gr==="front"?ia=de:Gr==="back"&&(ia=Re),ia},function(Gr,ia,Ur){return ia.def(Ur,'==="front"?',de,":",Re)});case yu:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){return Ur});case tf:return Qr(function(Gr){return Na[Gr]},function(Gr,ia,Ur){return ia.def(Ur+'==="cw"?'+$e+":"+pt)});case nu:return Qr(function(Gr){return Gr.map(function(ia){return!!ia})},function(Gr,ia,Ur){return d(4,function(wa){return"!!"+Ur+"["+wa+"]"})});case Po:return Qr(function(Gr){var ia="value"in Gr?Gr.value:1,Ur=!!Gr.invert;return[ia,Ur]},function(Gr,ia,Ur){var wa=ia.def('"value" in ',Ur,"?+",Ur,".value:1"),Oa=ia.def("!!",Ur,".invert");return[wa,Oa]})}}),Vr}function Ol(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Object.keys(dr).forEach(function(Hr){var aa=dr[Hr],Qr;if(typeof aa=="number"||typeof aa=="boolean")Qr=Ni(function(){return aa});else if(typeof aa=="function"){var Gr=aa._reglType;Gr==="texture2d"||Gr==="textureCube"?Qr=Ni(function(ia){return ia.link(aa)}):(Gr==="framebuffer"||Gr==="framebufferCube")&&(Qr=Ni(function(ia){return ia.link(aa.color[0])}))}else Ca(aa)&&(Qr=Ni(function(ia){var Ur=ia.global.def("[",d(aa.length,function(wa){return aa[wa]}),"]");return Ur}));Qr.value=aa,Vr[Hr]=Qr}),Object.keys(Pr).forEach(function(Hr){var aa=Pr[Hr];Vr[Hr]=Qi(aa,function(Qr,Gr){return Qr.invoke(Gr,aa)})}),Vr}function vc(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Object.keys(dr).forEach(function(Hr){var aa=dr[Hr],Qr=ra.id(Hr),Gr=new Mi;if(Qa(aa))Gr.state=Jn,Gr.buffer=wi.getBuffer(wi.create(aa,Wr,!1,!0)),Gr.type=0;else{var ia=wi.getBuffer(aa);if(ia)Gr.state=Jn,Gr.buffer=ia,Gr.type=0;else if("constant"in aa){var Ur=aa.constant;Gr.buffer="null",Gr.state=no,typeof Ur=="number"?Gr.x=Ur:Kn.forEach(function(An,ln){ln<Ur.length&&(Gr[An]=Ur[ln])})}else{Qa(aa.buffer)?ia=wi.getBuffer(wi.create(aa.buffer,Wr,!1,!0)):ia=wi.getBuffer(aa.buffer);var wa=aa.offset|0,Oa=aa.stride|0,ri=aa.size|0,Pi=!!aa.normalized,mi=0;"type"in aa&&(mi=sa[aa.type]);var Di=aa.divisor|0;Gr.buffer=ia,Gr.state=Jn,Gr.size=ri,Gr.normalized=Pi,Gr.type=mi||ia.dtype,Gr.offset=wa,Gr.stride=Oa,Gr.divisor=Di}}Vr[Hr]=Ni(function(An,ln){var Ii=An.attribCache;if(Qr in Ii)return Ii[Qr];var Wi={isStream:!1};return Object.keys(Gr).forEach(function(Hi){Wi[Hi]=Gr[Hi]}),Gr.buffer&&(Wi.buffer=An.link(Gr.buffer),Wi.type=Wi.type||Wi.buffer+".dtype"),Ii[Qr]=Wi,Wi})}),Object.keys(Pr).forEach(function(Hr){var aa=Pr[Hr];function Qr(Gr,ia){var Ur=Gr.invoke(ia,aa),wa=Gr.shared,Oa=Gr.constants,ri=wa.isBufferArgs,Pi=wa.buffer,mi={isStream:ia.def(!1)},Di=new Mi;Di.state=Jn,Object.keys(Di).forEach(function(Wi){mi[Wi]=ia.def(""+Di[Wi])});var An=mi.buffer,ln=mi.type;ia("if(",ri,"(",Ur,")){",mi.isStream,"=true;",An,"=",Pi,".createStream(",Wr,",",Ur,");",ln,"=",An,".dtype;","}else{",An,"=",Pi,".getBuffer(",Ur,");","if(",An,"){",ln,"=",An,".dtype;",'}else if("constant" in ',Ur,"){",mi.state,"=",no,";","if(typeof "+Ur+'.constant === "number"){',mi[Kn[0]],"=",Ur,".constant;",Kn.slice(1).map(function(Wi){return mi[Wi]}).join("="),"=0;","}else{",Kn.map(function(Wi,Hi){return mi[Wi]+"="+Ur+".constant.length>"+Hi+"?"+Ur+".constant["+Hi+"]:0;"}).join(""),"}}else{","if(",ri,"(",Ur,".buffer)){",An,"=",Pi,".createStream(",Wr,",",Ur,".buffer);","}else{",An,"=",Pi,".getBuffer(",Ur,".buffer);","}",ln,'="type" in ',Ur,"?",Oa.glTypes,"[",Ur,".type]:",An,".dtype;",mi.normalized,"=!!",Ur,".normalized;");function Ii(Wi){ia(mi[Wi],"=",Ur,".",Wi,"|0;")}return Ii("size"),Ii("offset"),Ii("stride"),Ii("divisor"),ia("}}"),ia.exit("if(",mi.isStream,"){",Pi,".destroyStream(",An,");","}"),mi}Vr[Hr]=Qi(aa,Qr)}),Vr}function mc(qt){var tr=qt.static,dr=qt.dynamic,Pr={};return Object.keys(tr).forEach(function(Vr){var Hr=tr[Vr];Pr[Vr]=Ni(function(aa,Qr){return typeof Hr=="number"||typeof Hr=="boolean"?""+Hr:aa.link(Hr)})}),Object.keys(dr).forEach(function(Vr){var Hr=dr[Vr];Pr[Vr]=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}),Pr}function rf(qt,tr,dr,Pr,Vr){var Hr=qt.static,aa=qt.dynamic,Qr=$l(qt,tr),Gr=os(qt,Vr),ia=As(qt,Gr,Vr),Ur=Ws(qt,Vr),wa=jc(qt,Vr),Oa=Uc(qt,Vr,Qr);function ri(Ii){var Wi=ia[Ii];Wi&&(wa[Ii]=Wi)}ri(Se),ri(Rn(we));var Pi=Object.keys(wa).length>0,mi={framebuffer:Gr,draw:Ur,shader:Oa,state:wa,dirty:Pi,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(mi.profile=Xo(qt,Vr),mi.uniforms=Ol(dr,Vr),mi.drawVAO=mi.scopeVAO=Ur.vao,!mi.drawVAO&&Oa.program&&!Qr&&Ta.angle_instanced_arrays&&Ur.static.elements){var Di=!0,An=Oa.program.attributes.map(function(Ii){var Wi=tr.static[Ii];return Di=Di&&!!Wi,Wi});if(Di&&An.length>0){var ln=fn.getVAO(fn.createVAO({attributes:An,elements:Ur.static.elements}));mi.drawVAO=new Da(null,null,null,function(Ii,Wi){return Ii.link(ln)}),mi.useVAO=!0}}return Qr?mi.useVAO=!0:mi.attributes=vc(tr,Vr),mi.context=mc(Pr,Vr),mi}function Yl(qt,tr,dr){var Pr=qt.shared,Vr=Pr.context,Hr=qt.scope();Object.keys(dr).forEach(function(aa){tr.save(Vr,"."+aa);var Qr=dr[aa],Gr=Qr.append(qt,tr);Array.isArray(Gr)?Hr(Vr,".",aa,"=[",Gr.join(),"];"):Hr(Vr,".",aa,"=",Gr,";")}),tr(Hr)}function Mc(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.framebuffer,Qr;qi&&(Qr=tr.def(Vr.extensions,".webgl_draw_buffers"));var Gr=qt.constants,ia=Gr.drawBuffer,Ur=Gr.backBuffer,wa;dr?wa=dr.append(qt,tr):wa=tr.def(aa,".next"),Pr||tr("if(",wa,"!==",aa,".cur){"),tr("if(",wa,"){",Hr,".bindFramebuffer(",fa,",",wa,".framebuffer);"),qi&&tr(Qr,".drawBuffersWEBGL(",ia,"[",wa,".colorAttachments.length]);"),tr("}else{",Hr,".bindFramebuffer(",fa,",null);"),qi&&tr(Qr,".drawBuffersWEBGL(",Ur,");"),tr("}",aa,".cur=",wa,";"),Pr||tr("}")}function Vc(qt,tr,dr){var Pr=qt.shared,Vr=Pr.gl,Hr=qt.current,aa=qt.next,Qr=Pr.current,Gr=Pr.next,ia=qt.cond(Qr,".dirty");Zi.forEach(function(Ur){var wa=Rn(Ur);if(!(wa in dr.state)){var Oa,ri;if(wa in aa){Oa=aa[wa],ri=Hr[wa];var Pi=d(bn[wa].length,function(Di){return ia.def(Oa,"[",Di,"]")});ia(qt.cond(Pi.map(function(Di,An){return Di+"!=="+ri+"["+An+"]"}).join("||")).then(Vr,".",Zn[wa],"(",Pi,");",Pi.map(function(Di,An){return ri+"["+An+"]="+Di}).join(";"),";"))}else{Oa=ia.def(Gr,".",wa);var mi=qt.cond(Oa,"!==",Qr,".",wa);ia(mi),wa in Ui?mi(qt.cond(Oa).then(Vr,".enable(",Ui[wa],");").else(Vr,".disable(",Ui[wa],");"),Qr,".",wa,"=",Oa,";"):mi(Vr,".",Zn[wa],"(",Oa,");",Qr,".",wa,"=",Oa,";")}}}),Object.keys(dr.state).length===0&&ia(Qr,".dirty=false;"),tr(ia)}function Ds(qt,tr,dr,Pr){var Vr=qt.shared,Hr=qt.current,aa=Vr.current,Qr=Vr.gl,Gr;Ya(Object.keys(dr)).forEach(function(ia){var Ur=dr[ia];if(!(Pr&&!Pr(Ur))){var wa=Ur.append(qt,tr);if(Ui[ia]){var Oa=Ui[ia];zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(qt.cond(Gr).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",Gr,";")):(tr(qt.cond(wa).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",wa,";"))}else if(Ca(wa)){var ri=Hr[ia];tr(Qr,".",Zn[ia],"(",wa,");",wa.map(function(Pi,mi){return ri+"["+mi+"]="+Pi}).join(";"),";")}else zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(Qr,".",Zn[ia],"(",Gr,");",aa,".",ia,"=",Gr,";")):tr(Qr,".",Zn[ia],"(",wa,");",aa,".",ia,"=",wa,";")}})}function af(qt,tr){pn&&(qt.instancing=tr.def(qt.shared.extensions,".angle_instanced_arrays"))}function Cs(qt,tr,dr,Pr,Vr){var Hr=qt.shared,aa=qt.stats,Qr=Hr.current,Gr=Hr.timer,ia=dr.profile;function Ur(){return typeof performance>"u"?"Date.now()":"performance.now()"}var wa,Oa;function ri(Ii){wa=tr.def(),Ii(wa,"=",Ur(),";"),typeof Vr=="string"?Ii(aa,".count+=",Vr,";"):Ii(aa,".count++;"),on&&(Pr?(Oa=tr.def(),Ii(Oa,"=",Gr,".getNumPendingQueries();")):Ii(Gr,".beginQuery(",aa,");"))}function Pi(Ii){Ii(aa,".cpuTime+=",Ur(),"-",wa,";"),on&&(Pr?Ii(Gr,".pushScopeStats(",Oa,",",Gr,".getNumPendingQueries(),",aa,");"):Ii(Gr,".endQuery();"))}function mi(Ii){var Wi=tr.def(Qr,".profile");tr(Qr,".profile=",Ii,";"),tr.exit(Qr,".profile=",Wi,";")}var Di;if(ia){if(zi(ia)){ia.enable?(ri(tr),Pi(tr.exit),mi("true")):mi("false");return}Di=ia.append(qt,tr),mi(Di)}else Di=tr.def(Qr,".profile");var An=qt.block();ri(An),tr("if(",Di,"){",An,"}");var ln=qt.block();Pi(ln),tr.exit("if(",Di,"){",ln,"}")}function ve(qt,tr,dr,Pr,Vr){var Hr=qt.shared;function aa(Gr){switch(Gr){case ts:case rl:case Rl:return 2;case yo:case Ys:case Xl:return 3;case Vo:case Zo:case qu:return 4;default:return 1}}function Qr(Gr,ia,Ur){var wa=Hr.gl,Oa=tr.def(Gr,".location"),ri=tr.def(Hr.attributes,"[",Oa,"]"),Pi=Ur.state,mi=Ur.buffer,Di=[Ur.x,Ur.y,Ur.z,Ur.w],An=["buffer","normalized","offset","stride"];function ln(){tr("if(!",ri,".buffer){",wa,".enableVertexAttribArray(",Oa,");}");var Wi=Ur.type,Hi;if(Ur.size?Hi=tr.def(Ur.size,"||",ia):Hi=ia,tr("if(",ri,".type!==",Wi,"||",ri,".size!==",Hi,"||",An.map(function(zn){return ri+"."+zn+"!=="+Ur[zn]}).join("||"),"){",wa,".bindBuffer(",Wr,",",mi,".buffer);",wa,".vertexAttribPointer(",[Oa,Hi,Wi,Ur.normalized,Ur.stride,Ur.offset],");",ri,".type=",Wi,";",ri,".size=",Hi,";",An.map(function(zn){return ri+"."+zn+"="+Ur[zn]+";"}).join(""),"}"),pn){var yn=Ur.divisor;tr("if(",ri,".divisor!==",yn,"){",qt.instancing,".vertexAttribDivisorANGLE(",[Oa,yn],");",ri,".divisor=",yn,";}")}}function Ii(){tr("if(",ri,".buffer){",wa,".disableVertexAttribArray(",Oa,");",ri,".buffer=null;","}if(",Kn.map(function(Wi,Hi){return ri+"."+Wi+"!=="+Di[Hi]}).join("||"),"){",wa,".vertexAttrib4f(",Oa,",",Di,");",Kn.map(function(Wi,Hi){return ri+"."+Wi+"="+Di[Hi]+";"}).join(""),"}")}Pi===Jn?ln():Pi===no?Ii():(tr("if(",Pi,"===",Jn,"){"),ln(),tr("}else{"),Ii(),tr("}"))}Pr.forEach(function(Gr){var ia=Gr.name,Ur=dr.attributes[ia],wa;if(Ur){if(!Vr(Ur))return;wa=Ur.append(qt,tr)}else{if(!Vr(hn))return;var Oa=qt.scopeAttrib(ia);wa={},Object.keys(new Mi).forEach(function(ri){wa[ri]=tr.def(Oa,".",ri)})}Qr(qt.link(Gr),aa(Gr.info.type),wa)})}function K(qt,tr,dr,Pr,Vr,Hr){for(var aa=qt.shared,Qr=aa.gl,Gr,ia=0;ia<Pr.length;++ia){var Ur=Pr[ia],wa=Ur.name,Oa=Ur.info.type,ri=dr.uniforms[wa],Pi=qt.link(Ur),mi=Pi+".location",Di;if(ri){if(!Vr(ri))continue;if(zi(ri)){var An=ri.value;if(Oa===Sc||Oa===ql){var ln=qt.link(An._texture||An.color[0]._texture);tr(Qr,".uniform1i(",mi,",",ln+".bind());"),tr.exit(ln,".unbind();")}else if(Oa===fu||Oa===bl||Oa===ou){var Ii=qt.global.def("new Float32Array(["+Array.prototype.slice.call(An)+"])"),Wi=2;Oa===bl?Wi=3:Oa===ou&&(Wi=4),tr(Qr,".uniformMatrix",Wi,"fv(",mi,",false,",Ii,");")}else{switch(Oa){case ho:Gr="1f";break;case ts:Gr="2f";break;case yo:Gr="3f";break;case Vo:Gr="4f";break;case Go:Gr="1i";break;case ls:Gr="1i";break;case Rl:Gr="2i";break;case rl:Gr="2i";break;case Xl:Gr="3i";break;case Ys:Gr="3i";break;case qu:Gr="4i";break;case Zo:Gr="4i";break}tr(Qr,".uniform",Gr,"(",mi,",",Ca(An)?Array.prototype.slice.call(An):An,");")}continue}else Di=ri.append(qt,tr)}else{if(!Vr(hn))continue;Di=tr.def(aa.uniforms,"[",ra.id(wa),"]")}Oa===Sc?tr("if(",Di,"&&",Di,'._reglType==="framebuffer"){',Di,"=",Di,".color[0];","}"):Oa===ql&&tr("if(",Di,"&&",Di,'._reglType==="framebufferCube"){',Di,"=",Di,".color[0];","}");var Hi=1;switch(Oa){case Sc:case ql:var yn=tr.def(Di,"._texture");tr(Qr,".uniform1i(",mi,",",yn,".bind());"),tr.exit(yn,".unbind();");continue;case ls:case Go:Gr="1i";break;case rl:case Rl:Gr="2i",Hi=2;break;case Ys:case Xl:Gr="3i",Hi=3;break;case Zo:case qu:Gr="4i",Hi=4;break;case ho:Gr="1f";break;case ts:Gr="2f",Hi=2;break;case yo:Gr="3f",Hi=3;break;case Vo:Gr="4f",Hi=4;break;case fu:Gr="Matrix2fv";break;case bl:Gr="Matrix3fv";break;case ou:Gr="Matrix4fv";break}if(Gr.charAt(0)==="M"){tr(Qr,".uniform",Gr,"(",mi,",");var zn=Math.pow(Oa-fu+2,2),ms=qt.global.def("new Float32Array(",zn,")");Array.isArray(Di)?tr("false,(",d(zn,function(wl){return ms+"["+wl+"]="+Di[wl]}),",",ms,")"):tr("false,(Array.isArray(",Di,")||",Di," instanceof Float32Array)?",Di,":(",d(zn,function(wl){return ms+"["+wl+"]="+Di+"["+wl+"]"}),",",ms,")"),tr(");")}else if(Hi>1){for(var us=[],Vs=[],qo=0;qo<Hi;++qo)Array.isArray(Di)?Vs.push(Di[qo]):Vs.push(tr.def(Di+"["+qo+"]")),Hr&&us.push(tr.def());Hr&&tr("if(!",qt.batchId,"||",us.map(function(wl,Ru){return wl+"!=="+Vs[Ru]}).join("||"),"){",us.map(function(wl,Ru){return wl+"="+Vs[Ru]+";"}).join("")),tr(Qr,".uniform",Gr,"(",mi,",",Vs.join(","),");"),Hr&&tr("}")}else{if(Hr){var Ls=tr.def();tr("if(!",qt.batchId,"||",Ls,"!==",Di,"){",Ls,"=",Di,";")}tr(Qr,".uniform",Gr,"(",mi,",",Di,");"),Hr&&tr("}")}}}function ye(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.draw,Qr=Pr.draw;function Gr(){var Hi=Qr.elements,yn,zn=tr;return Hi?((Hi.contextDep&&Pr.contextDynamic||Hi.propDep)&&(zn=dr),yn=Hi.append(qt,zn),Qr.elementsActive&&zn("if("+yn+")"+Hr+".bindBuffer("+ha+","+yn+".buffer.buffer);")):(yn=zn.def(),zn(yn,"=",aa,".",Yt,";","if(",yn,"){",Hr,".bindBuffer(",ha,",",yn,".buffer.buffer);}","else if(",Vr.vao,".currentVAO){",yn,"=",qt.shared.elements+".getElements("+Vr.vao,".currentVAO.elements);",Dn?"":"if("+yn+")"+Hr+".bindBuffer("+ha+","+yn+".buffer.buffer);","}")),yn}function ia(){var Hi=Qr.count,yn,zn=tr;return Hi?((Hi.contextDep&&Pr.contextDynamic||Hi.propDep)&&(zn=dr),yn=Hi.append(qt,zn)):yn=zn.def(aa,".",hr),yn}var Ur=Gr();function wa(Hi){var yn=Qr[Hi];return yn?yn.contextDep&&Pr.contextDynamic||yn.propDep?yn.append(qt,dr):yn.append(qt,tr):tr.def(aa,".",Hi)}var Oa=wa(cr),ri=wa(jr),Pi=ia();if(typeof Pi=="number"){if(Pi===0)return}else dr("if(",Pi,"){"),dr.exit("}");var mi,Di;pn&&(mi=wa(ea),Di=qt.instancing);var An=Ur+".type",ln=Qr.elements&&zi(Qr.elements)&&!Qr.vaoActive;function Ii(){function Hi(){dr(Di,".drawElementsInstancedANGLE(",[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)",mi],");")}function yn(){dr(Di,".drawArraysInstancedANGLE(",[Oa,ri,Pi,mi],");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}function Wi(){function Hi(){dr(Hr+".drawElements("+[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)"]+");")}function yn(){dr(Hr+".drawArrays("+[Oa,ri,Pi]+");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}pn&&(typeof mi!="number"||mi>=0)?typeof mi=="string"?(dr("if(",mi,">0){"),Ii(),dr("}else if(",mi,"<0){"),Wi(),dr("}")):Ii():Wi()}function te(qt,tr,dr,Pr,Vr){var Hr=oo(),aa=Hr.proc("body",Vr);return pn&&(Hr.instancing=aa.def(Hr.shared.extensions,".angle_instanced_arrays")),qt(Hr,aa,dr,Pr),Hr.compile().body}function xe(qt,tr,dr,Pr){af(qt,tr),dr.useVAO?dr.drawVAO?tr(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,tr),");"):tr(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(tr(qt.shared.vao,".setVAO(null);"),ve(qt,tr,dr,Pr.attributes,function(){return!0})),K(qt,tr,dr,Pr.uniforms,function(){return!0},!1),ye(qt,tr,tr,dr)}function We(qt,tr){var dr=qt.proc("draw",1);af(qt,dr),Yl(qt,dr,tr.context),Mc(qt,dr,tr.framebuffer),Vc(qt,dr,tr),Ds(qt,dr,tr.state),Cs(qt,dr,tr,!1,!0);var Pr=tr.shader.progVar.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",Pr,".program);"),tr.shader.program)xe(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Vr=qt.global.def("{}"),Hr=dr.def(Pr,".id"),aa=dr.def(Vr,"[",Hr,"]");dr(qt.cond(aa).then(aa,".call(this,a0);").else(aa,"=",Vr,"[",Hr,"]=",qt.link(function(Qr){return te(xe,qt,tr,Qr,1)}),"(",Pr,");",aa,".call(this,a0);"))}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function He(qt,tr,dr,Pr){qt.batchId="a1",af(qt,tr);function Vr(){return!0}ve(qt,tr,dr,Pr.attributes,Vr),K(qt,tr,dr,Pr.uniforms,Vr,!1),ye(qt,tr,tr,dr)}function st(qt,tr,dr,Pr){af(qt,tr);var Vr=dr.contextDep,Hr=tr.def(),aa="a0",Qr="a1",Gr=tr.def();qt.shared.props=Gr,qt.batchId=Hr;var ia=qt.scope(),Ur=qt.scope();tr(ia.entry,"for(",Hr,"=0;",Hr,"<",Qr,";++",Hr,"){",Gr,"=",aa,"[",Hr,"];",Ur,"}",ia.exit);function wa(An){return An.contextDep&&Vr||An.propDep}function Oa(An){return!wa(An)}if(dr.needsContext&&Yl(qt,Ur,dr.context),dr.needsFramebuffer&&Mc(qt,Ur,dr.framebuffer),Ds(qt,Ur,dr.state,wa),dr.profile&&wa(dr.profile)&&Cs(qt,Ur,dr,!1,!0),Pr)dr.useVAO?dr.drawVAO?wa(dr.drawVAO)?Ur(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,Ur),");"):ia(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,ia),");"):ia(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(ia(qt.shared.vao,".setVAO(null);"),ve(qt,ia,dr,Pr.attributes,Oa),ve(qt,Ur,dr,Pr.attributes,wa)),K(qt,ia,dr,Pr.uniforms,Oa,!1),K(qt,Ur,dr,Pr.uniforms,wa,!0),ye(qt,ia,Ur,dr);else{var ri=qt.global.def("{}"),Pi=dr.shader.progVar.append(qt,Ur),mi=Ur.def(Pi,".id"),Di=Ur.def(ri,"[",mi,"]");Ur(qt.shared.gl,".useProgram(",Pi,".program);","if(!",Di,"){",Di,"=",ri,"[",mi,"]=",qt.link(function(An){return te(He,qt,dr,An,2)}),"(",Pi,");}",Di,".call(this,a0[",Hr,"],",Hr,");")}}function Et(qt,tr){var dr=qt.proc("batch",2);qt.batchId="0",af(qt,dr);var Pr=!1,Vr=!0;Object.keys(tr.context).forEach(function(ri){Pr=Pr||tr.context[ri].propDep}),Pr||(Yl(qt,dr,tr.context),Vr=!1);var Hr=tr.framebuffer,aa=!1;Hr?(Hr.propDep?Pr=aa=!0:Hr.contextDep&&Pr&&(aa=!0),aa||Mc(qt,dr,Hr)):Mc(qt,dr,null),tr.state.viewport&&tr.state.viewport.propDep&&(Pr=!0);function Qr(ri){return ri.contextDep&&Pr||ri.propDep}Vc(qt,dr,tr),Ds(qt,dr,tr.state,function(ri){return!Qr(ri)}),(!tr.profile||!Qr(tr.profile))&&Cs(qt,dr,tr,!1,"a1"),tr.contextDep=Pr,tr.needsContext=Vr,tr.needsFramebuffer=aa;var Gr=tr.shader.progVar;if(Gr.contextDep&&Pr||Gr.propDep)st(qt,dr,tr,null);else{var ia=Gr.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",ia,".program);"),tr.shader.program)st(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Ur=qt.global.def("{}"),wa=dr.def(ia,".id"),Oa=dr.def(Ur,"[",wa,"]");dr(qt.cond(Oa).then(Oa,".call(this,a0,a1);").else(Oa,"=",Ur,"[",wa,"]=",qt.link(function(ri){return te(st,qt,tr,ri,2)}),"(",ia,");",Oa,".call(this,a0,a1);"))}}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function Ht(qt,tr){var dr=qt.proc("scope",3);qt.batchId="a2";var Pr=qt.shared,Vr=Pr.current;if(Yl(qt,dr,tr.context),tr.framebuffer&&tr.framebuffer.append(qt,dr),Ya(Object.keys(tr.state)).forEach(function(Qr){var Gr=tr.state[Qr],ia=Gr.append(qt,dr);Ca(ia)?ia.forEach(function(Ur,wa){jn(Ur)?dr.set(qt.next[Qr],"["+wa+"]",Ur):dr.set(qt.next[Qr],"["+wa+"]",qt.link(Ur,{stable:!0}))}):zi(Gr)?dr.set(Pr.next,"."+Qr,qt.link(ia,{stable:!0})):dr.set(Pr.next,"."+Qr,ia)}),Cs(qt,dr,tr,!0,!0),[Yt,jr,hr,ea,cr].forEach(function(Qr){var Gr=tr.draw[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.draw,"."+Qr,ia):dr.set(Pr.draw,"."+Qr,qt.link(ia),{stable:!0})}}),Object.keys(tr.uniforms).forEach(function(Qr){var Gr=tr.uniforms[Qr].append(qt,dr);Array.isArray(Gr)&&(Gr="["+Gr.map(function(ia){return jn(ia)?ia:qt.link(ia,{stable:!0})})+"]"),dr.set(Pr.uniforms,"["+qt.link(ra.id(Qr),{stable:!0})+"]",Gr)}),Object.keys(tr.attributes).forEach(function(Qr){var Gr=tr.attributes[Qr].append(qt,dr),ia=qt.scopeAttrib(Qr);Object.keys(new Mi).forEach(function(Ur){dr.set(ia,"."+Ur,Gr[Ur])})}),tr.scopeVAO){var Hr=tr.scopeVAO.append(qt,dr);jn(Hr)?dr.set(Pr.vao,".targetVAO",Hr):dr.set(Pr.vao,".targetVAO",qt.link(Hr,{stable:!0}))}function aa(Qr){var Gr=tr.shader[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.shader,"."+Qr,ia):dr.set(Pr.shader,"."+Qr,qt.link(ia,{stable:!0}))}}aa(bt),aa(Dt),Object.keys(tr.state).length>0&&(dr(Vr,".dirty=true;"),dr.exit(Vr,".dirty=true;")),dr("a1(",qt.shared.context,",a0,",qt.batchId,");")}function yr(qt){if(!(typeof qt!="object"||Ca(qt))){for(var tr=Object.keys(qt),dr=0;dr<tr.length;++dr)if(c.isDynamic(qt[tr[dr]]))return!0;return!1}}function Ir(qt,tr,dr){var Pr=tr.static[dr];if(!Pr||!yr(Pr))return;var Vr=qt.global,Hr=Object.keys(Pr),aa=!1,Qr=!1,Gr=!1,ia=qt.global.def("{}");Hr.forEach(function(wa){var Oa=Pr[wa];if(c.isDynamic(Oa)){typeof Oa=="function"&&(Oa=Pr[wa]=c.unbox(Oa));var ri=Qi(Oa,null);aa=aa||ri.thisDep,Gr=Gr||ri.propDep,Qr=Qr||ri.contextDep}else{switch(Vr(ia,".",wa,"="),typeof Oa){case"number":Vr(Oa);break;case"string":Vr('"',Oa,'"');break;case"object":Array.isArray(Oa)&&Vr("[",Oa.join(),"]");break;default:Vr(qt.link(Oa));break}Vr(";")}});function Ur(wa,Oa){Hr.forEach(function(ri){var Pi=Pr[ri];if(c.isDynamic(Pi)){var mi=wa.invoke(Oa,Pi);Oa(ia,".",ri,"=",mi,";")}})}tr.dynamic[dr]=new c.DynamicVariable(bs,{thisDep:aa,contextDep:Qr,propDep:Gr,ref:ia,append:Ur}),delete tr.static[dr]}function wr(qt,tr,dr,Pr,Vr){var Hr=oo();Hr.stats=Hr.link(Vr),Object.keys(tr.static).forEach(function(Qr){Ir(Hr,tr,Qr)}),Sr.forEach(function(Qr){Ir(Hr,qt,Qr)});var aa=rf(qt,tr,dr,Pr,Hr);return aa.shader.program&&(aa.shader.program.attributes.sort(function(Qr,Gr){return Qr.name<Gr.name?-1:1}),aa.shader.program.uniforms.sort(function(Qr,Gr){return Qr.name<Gr.name?-1:1})),We(Hr,aa),Ht(Hr,aa),Et(Hr,aa),g(Hr.compile(),{destroy:function(){aa.shader.program.destroy()}})}return{next:_o,current:bn,procs:function(){var qt=oo(),tr=qt.proc("poll"),dr=qt.proc("refresh"),Pr=qt.block();tr(Pr),dr(Pr);var Vr=qt.shared,Hr=Vr.gl,aa=Vr.next,Qr=Vr.current;Pr(Qr,".dirty=false;"),Mc(qt,tr),Mc(qt,dr,null,!0);var Gr;pn&&(Gr=qt.link(pn)),Ta.oes_vertex_array_object&&dr(qt.link(Ta.oes_vertex_array_object),".bindVertexArrayOES(null);");var ia=dr.def(Vr.attributes),Ur=dr.def(0),wa=qt.cond(Ur,".buffer");wa.then(Hr,".enableVertexAttribArray(i);",Hr,".bindBuffer(",Wr,",",Ur,".buffer.buffer);",Hr,".vertexAttribPointer(i,",Ur,".size,",Ur,".type,",Ur,".normalized,",Ur,".stride,",Ur,".offset);").else(Hr,".disableVertexAttribArray(i);",Hr,".vertexAttrib4f(i,",Ur,".x,",Ur,".y,",Ur,".z,",Ur,".w);",Ur,".buffer=null;");var Oa=qt.link(si.maxAttributes,{stable:!0});return dr("for(var i=0;i<",Oa,";++i){",Ur,"=",ia,"[i];",wa,"}"),pn&&dr("for(var i=0;i<",Oa,";++i){",Gr,".vertexAttribDivisorANGLE(i,",ia,"[i].divisor);","}"),dr(qt.shared.vao,".currentVAO=null;",qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"),Object.keys(Ui).forEach(function(ri){var Pi=Ui[ri],mi=Pr.def(aa,".",ri),Di=qt.block();Di("if(",mi,"){",Hr,".enable(",Pi,")}else{",Hr,".disable(",Pi,")}",Qr,".",ri,"=",mi,";"),dr(Di),tr("if(",mi,"!==",Qr,".",ri,"){",Di,"}")}),Object.keys(Zn).forEach(function(ri){var Pi=Zn[ri],mi=bn[ri],Di,An,ln=qt.block();if(ln(Hr,".",Pi,"("),Ca(mi)){var Ii=mi.length;Di=qt.global.def(aa,".",ri),An=qt.global.def(Qr,".",ri),ln(d(Ii,function(Wi){return Di+"["+Wi+"]"}),");",d(Ii,function(Wi){return An+"["+Wi+"]="+Di+"["+Wi+"];"}).join("")),tr("if(",d(Ii,function(Wi){return Di+"["+Wi+"]!=="+An+"["+Wi+"]"}).join("||"),"){",ln,"}")}else Di=Pr.def(aa,".",ri),An=Pr.def(Qr,".",ri),ln(Di,");",Qr,".",ri,"=",Di,";"),tr("if(",Di,"!==",An,"){",ln,"}");dr(ln)}),qt.compile()}(),compile:wr}}function Vn(){return{vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0}}var No=34918,Gn=34919,Fo=35007,Ks=function(Qt,ra){if(!ra.ext_disjoint_timer_query)return null;var Ta=[];function si(){return Ta.pop()||ra.ext_disjoint_timer_query.createQueryEXT()}function wi(tn){Ta.push(tn)}var xi=[];function bi(tn){var pn=si();ra.ext_disjoint_timer_query.beginQueryEXT(Fo,pn),xi.push(pn),on(xi.length-1,xi.length,tn)}function Fi(){ra.ext_disjoint_timer_query.endQueryEXT(Fo)}function cn(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var fn=[];function Gi(){return fn.pop()||new cn}function Io(tn){fn.push(tn)}var nn=[];function on(tn,pn,qi){var Dn=Gi();Dn.startQueryIndex=tn,Dn.endQueryIndex=pn,Dn.sum=0,Dn.stats=qi,nn.push(Dn)}var Oi=[],ui=[];function Mi(){var tn,pn,qi=xi.length;if(qi!==0){ui.length=Math.max(ui.length,qi+1),Oi.length=Math.max(Oi.length,qi+1),Oi[0]=0,ui[0]=0;var Dn=0;for(tn=0,pn=0;pn<xi.length;++pn){var bn=xi[pn];ra.ext_disjoint_timer_query.getQueryObjectEXT(bn,Gn)?(Dn+=ra.ext_disjoint_timer_query.getQueryObjectEXT(bn,No),wi(bn)):xi[tn++]=bn,Oi[pn+1]=Dn,ui[pn+1]=tn}for(xi.length=tn,tn=0,pn=0;pn<nn.length;++pn){var _o=nn[pn],Zi=_o.startQueryIndex,Ui=_o.endQueryIndex;_o.sum+=Oi[Ui]-Oi[Zi];var Zn=ui[Zi],Rn=ui[Ui];Rn===Zn?(_o.stats.gpuTime+=_o.sum/1e6,Io(_o)):(_o.startQueryIndex=Zn,_o.endQueryIndex=Rn,nn[tn++]=_o)}nn.length=tn}}return{beginQuery:bi,endQuery:Fi,pushScopeStats:on,update:Mi,getNumPendingQueries:function(){return xi.length},clear:function(){Ta.push.apply(Ta,xi);for(var tn=0;tn<Ta.length;tn++)ra.ext_disjoint_timer_query.deleteQueryEXT(Ta[tn]);xi.length=0,Ta.length=0},restore:function(){xi.length=0,Ta.length=0}}},Gs=16384,sl=256,Vi=1024,ao=34962,ns="webglcontextlost",hs="webglcontextrestored",hl=1,Dl=2,hu=3;function Ll(Qt,ra){for(var Ta=0;Ta<Qt.length;++Ta)if(Qt[Ta]===ra)return Ta;return-1}function dc(Qt){var ra=m(Qt);if(!ra)return null;var Ta=ra.gl,si=Ta.getContextAttributes(),wi=Ta.isContextLost(),xi=b(Ta,ra);if(!xi)return null;var bi=p(),Fi=Vn(),cn=ra.cachedCode||{},fn=xi.extensions,Gi=Ks(Ta,fn),Io=v(),nn=Ta.drawingBufferWidth,on=Ta.drawingBufferHeight,Oi={tick:0,time:0,viewportWidth:nn,viewportHeight:on,framebufferWidth:nn,framebufferHeight:on,drawingBufferWidth:nn,drawingBufferHeight:on,pixelRatio:ra.pixelRatio},ui={},Mi={elements:null,primitive:4,count:-1,offset:0,instances:-1},tn=Cr(Ta,fn),pn=pa(Ta,Fi,ra,bn),qi=ir(Ta,fn,pn,Fi),Dn=gu(Ta,fn,tn,Fi,pn,qi,Mi);function bn(te){return Dn.destroyBuffer(te)}var _o=ju(Ta,bi,Fi,ra),Zi=Jc(Ta,fn,tn,function(){Rn.procs.poll()},Oi,Fi,ra),Ui=xc(Ta,fn,tn,Fi,ra),Zn=$c(Ta,fn,tn,Zi,Ui,Fi),Rn=Un(Ta,bi,fn,tn,pn,qi,Zi,Zn,ui,Dn,_o,Mi,Oi,Gi,cn,ra),xn=Vl(Ta,Zn,Rn.procs.poll,Oi,si,fn,tn),dn=Rn.next,jn=Ta.canvas,Ro=[],rs=[],wn=[],oo=[ra.onDestroy],Xo=null;function os(){if(Ro.length===0){Gi&&Gi.update(),Xo=null;return}Xo=h.next(os),Vc();for(var te=Ro.length-1;te>=0;--te){var xe=Ro[te];xe&&xe(Oi,null,0)}Ta.flush(),Gi&&Gi.update()}function As(){!Xo&&Ro.length>0&&(Xo=h.next(os))}function $l(){Xo&&(h.cancel(os),Xo=null)}function Uc(te){te.preventDefault(),wi=!0,$l(),rs.forEach(function(xe){xe()})}function Ws(te){Ta.getError(),wi=!1,xi.restore(),_o.restore(),pn.restore(),Zi.restore(),Ui.restore(),Zn.restore(),Dn.restore(),Gi&&Gi.restore(),Rn.procs.refresh(),As(),wn.forEach(function(xe){xe()})}jn&&(jn.addEventListener(ns,Uc,!1),jn.addEventListener(hs,Ws,!1));function jc(){Ro.length=0,$l(),jn&&(jn.removeEventListener(ns,Uc),jn.removeEventListener(hs,Ws)),_o.clear(),Zn.clear(),Ui.clear(),Dn.clear(),Zi.clear(),qi.clear(),pn.clear(),Gi&&Gi.clear(),oo.forEach(function(te){te()})}function Ol(te){function xe(Hr){var aa=g({},Hr);delete aa.uniforms,delete aa.attributes,delete aa.context,delete aa.vao,"stencil"in aa&&aa.stencil.op&&(aa.stencil.opBack=aa.stencil.opFront=aa.stencil.op,delete aa.stencil.op);function Qr(Gr){if(Gr in aa){var ia=aa[Gr];delete aa[Gr],Object.keys(ia).forEach(function(Ur){aa[Gr+"."+Ur]=ia[Ur]})}}return Qr("blend"),Qr("depth"),Qr("cull"),Qr("stencil"),Qr("polygonOffset"),Qr("scissor"),Qr("sample"),"vao"in Hr&&(aa.vao=Hr.vao),aa}function We(Hr,aa){var Qr={},Gr={};return Object.keys(Hr).forEach(function(ia){var Ur=Hr[ia];if(c.isDynamic(Ur)){Gr[ia]=c.unbox(Ur,ia);return}else if(aa&&Array.isArray(Ur)){for(var wa=0;wa<Ur.length;++wa)if(c.isDynamic(Ur[wa])){Gr[ia]=c.unbox(Ur,ia);return}}Qr[ia]=Ur}),{dynamic:Gr,static:Qr}}var He=We(te.context||{},!0),st=We(te.uniforms||{},!0),Et=We(te.attributes||{},!1),Ht=We(xe(te),!1),yr={gpuTime:0,cpuTime:0,count:0},Ir=Rn.compile(Ht,Et,st,He,yr),wr=Ir.draw,qt=Ir.batch,tr=Ir.scope,dr=[];function Pr(Hr){for(;dr.length<Hr;)dr.push(null);return dr}function Vr(Hr,aa){var Qr;if(typeof Hr=="function")return tr.call(this,null,Hr,0);if(typeof aa=="function")if(typeof Hr=="number")for(Qr=0;Qr<Hr;++Qr)tr.call(this,null,aa,Qr);else if(Array.isArray(Hr))for(Qr=0;Qr<Hr.length;++Qr)tr.call(this,Hr[Qr],aa,Qr);else return tr.call(this,Hr,aa,0);else if(typeof Hr=="number"){if(Hr>0)return qt.call(this,Pr(Hr|0),Hr|0)}else if(Array.isArray(Hr)){if(Hr.length)return qt.call(this,Hr,Hr.length)}else return wr.call(this,Hr)}return g(Vr,{stats:yr,destroy:function(){Ir.destroy()}})}var vc=Zn.setFBO=Ol({framebuffer:c.define.call(null,hl,"framebuffer")});function mc(te,xe){var We=0;Rn.procs.poll();var He=xe.color;He&&(Ta.clearColor(+He[0]||0,+He[1]||0,+He[2]||0,+He[3]||0),We|=Gs),"depth"in xe&&(Ta.clearDepth(+xe.depth),We|=sl),"stencil"in xe&&(Ta.clearStencil(xe.stencil|0),We|=Vi),Ta.clear(We)}function rf(te){if("framebuffer"in te)if(te.framebuffer&&te.framebuffer_reglType==="framebufferCube")for(var xe=0;xe<6;++xe)vc(g({framebuffer:te.framebuffer.faces[xe]},te),mc);else vc(te,mc);else mc(null,te)}function Yl(te){Ro.push(te);function xe(){var We=Ll(Ro,te);function He(){var st=Ll(Ro,He);Ro[st]=Ro[Ro.length-1],Ro.length-=1,Ro.length<=0&&$l()}Ro[We]=He}return As(),{cancel:xe}}function Mc(){var te=dn.viewport,xe=dn.scissor_box;te[0]=te[1]=xe[0]=xe[1]=0,Oi.viewportWidth=Oi.framebufferWidth=Oi.drawingBufferWidth=te[2]=xe[2]=Ta.drawingBufferWidth,Oi.viewportHeight=Oi.framebufferHeight=Oi.drawingBufferHeight=te[3]=xe[3]=Ta.drawingBufferHeight}function Vc(){Oi.tick+=1,Oi.time=af(),Mc(),Rn.procs.poll()}function Ds(){Zi.refresh(),Mc(),Rn.procs.refresh(),Gi&&Gi.update()}function af(){return(v()-Io)/1e3}Ds();function Cs(te,xe){var We;switch(te){case"frame":return Yl(xe);case"lost":We=rs;break;case"restore":We=wn;break;case"destroy":We=oo;break;default:}return We.push(xe),{cancel:function(){for(var He=0;He<We.length;++He)if(We[He]===xe){We[He]=We[We.length-1],We.pop();return}}}}function ve(){return cn}function K(te){Object.entries(te).forEach(function(xe){cn[xe[0]]=xe[1]})}var ye=g(Ol,{clear:rf,prop:c.define.bind(null,hl),context:c.define.bind(null,Dl),this:c.define.bind(null,hu),draw:Ol({}),buffer:function(te){return pn.create(te,ao,!1,!1)},elements:function(te){return qi.create(te,!1)},texture:Zi.create2D,cube:Zi.createCube,renderbuffer:Ui.create,framebuffer:Zn.create,framebufferCube:Zn.createCube,vao:Dn.createVAO,attributes:si,frame:Yl,on:Cs,limits:tn,hasExtension:function(te){return tn.extensions.indexOf(te.toLowerCase())>=0},read:xn,destroy:jc,_gl:Ta,_refresh:Ds,poll:function(){Vc(),Gi&&Gi.update()},now:af,stats:Fi,getCachedCode:ve,preloadCachedCode:K});return ra.onDone(null,ye),ye}return dc})}}),rV=Ye({"node_modules/gl-util/context.js"(X,H){"use strict";var g=Ev();H.exports=function(o){if(o?typeof o=="string"&&(o={container:o}):o={},A(o)?o={container:o}:M(o)?o={container:o}:e(o)?o={gl:o}:o=g(o,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),o.pixelRatio||(o.pixelRatio=window.pixelRatio||1),o.gl)return o.gl;if(o.canvas&&(o.container=o.canvas.parentNode),o.container){if(typeof o.container=="string"){var a=document.querySelector(o.container);if(!a)throw Error("Element "+o.container+" is not found");o.container=a}A(o.container)?(o.canvas=o.container,o.container=o.canvas.parentNode):o.canvas||(o.canvas=t(),o.container.appendChild(o.canvas),x(o))}else if(!o.canvas)if(typeof document<"u")o.container=document.body||document.documentElement,o.canvas=t(),o.container.appendChild(o.canvas),x(o);else throw Error("Not DOM environment. Use headless-gl.");return o.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(i){try{o.gl=o.canvas.getContext(i,o.attrs)}catch{}return o.gl}),o.gl};function x(r){if(r.container)if(r.container==document.body)document.body.style.width||(r.canvas.width=r.width||r.pixelRatio*window.innerWidth),document.body.style.height||(r.canvas.height=r.height||r.pixelRatio*window.innerHeight);else{var o=r.container.getBoundingClientRect();r.canvas.width=r.width||o.right-o.left,r.canvas.height=r.height||o.bottom-o.top}}function A(r){return typeof r.getContext=="function"&&"width"in r&&"height"in r}function M(r){return typeof r.nodeName=="string"&&typeof r.appendChild=="function"&&typeof r.getBoundingClientRect=="function"}function e(r){return typeof r.drawArrays=="function"||typeof r.drawElements=="function"}function t(){var r=document.createElement("canvas");return r.style.position="absolute",r.style.top=0,r.style.left=0,r}}}),aV=Ye({"node_modules/font-atlas/index.js"(X,H){"use strict";var g=ik(),x=[32,126];H.exports=A;function A(M){M=M||{};var e=M.shape?M.shape:M.canvas?[M.canvas.width,M.canvas.height]:[512,512],t=M.canvas||document.createElement("canvas"),r=M.font,o=typeof M.step=="number"?[M.step,M.step]:M.step||[32,32],a=M.chars||x;if(r&&typeof r!="string"&&(r=g(r)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var i=[],n=a[0],s=0;n<=a[1];n++)i[s++]=String.fromCharCode(n);a=i}e=e.slice(),t.width=e[0],t.height=e[1];var c=t.getContext("2d");c.fillStyle="#000",c.fillRect(0,0,t.width,t.height),c.font=r,c.textAlign="center",c.textBaseline="middle",c.fillStyle="#fff";for(var h=o[0]/2,v=o[1]/2,n=0;n<a.length;n++)c.fillText(a[n],h,v),(h+=o[0])>e[0]-o[0]/2&&(h=o[0]/2,v+=o[1]);return t}}}),ok=Ye({"node_modules/bit-twiddle/twiddle.js"(X){"use strict";"use restrict";var H=32;X.INT_BITS=H,X.INT_MAX=2147483647,X.INT_MIN=-1<<H-1,X.sign=function(A){return(A>0)-(A<0)},X.abs=function(A){var M=A>>H-1;return(A^M)-M},X.min=function(A,M){return M^(A^M)&-(A<M)},X.max=function(A,M){return A^(A^M)&-(A<M)},X.isPow2=function(A){return!(A&A-1)&&!!A},X.log2=function(A){var M,e;return M=(A>65535)<<4,A>>>=M,e=(A>255)<<3,A>>>=e,M|=e,e=(A>15)<<2,A>>>=e,M|=e,e=(A>3)<<1,A>>>=e,M|=e,M|A>>1},X.log10=function(A){return A>=1e9?9:A>=1e8?8:A>=1e7?7:A>=1e6?6:A>=1e5?5:A>=1e4?4:A>=1e3?3:A>=100?2:A>=10?1:0},X.popCount=function(A){return A=A-(A>>>1&1431655765),A=(A&858993459)+(A>>>2&858993459),(A+(A>>>4)&252645135)*16843009>>>24};function g(A){var M=32;return A&=-A,A&&M--,A&65535&&(M-=16),A&16711935&&(M-=8),A&252645135&&(M-=4),A&858993459&&(M-=2),A&1431655765&&(M-=1),M}X.countTrailingZeros=g,X.nextPow2=function(A){return A+=A===0,--A,A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A+1},X.prevPow2=function(A){return A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A-(A>>>1)},X.parity=function(A){return A^=A>>>16,A^=A>>>8,A^=A>>>4,A&=15,27030>>>A&1};var x=new Array(256);(function(A){for(var M=0;M<256;++M){var e=M,t=M,r=7;for(e>>>=1;e;e>>>=1)t<<=1,t|=e&1,--r;A[M]=t<<r&255}})(x),X.reverse=function(A){return x[A&255]<<24|x[A>>>8&255]<<16|x[A>>>16&255]<<8|x[A>>>24&255]},X.interleave2=function(A,M){return A&=65535,A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,M&=65535,M=(M|M<<8)&16711935,M=(M|M<<4)&252645135,M=(M|M<<2)&858993459,M=(M|M<<1)&1431655765,A|M<<1},X.deinterleave2=function(A,M){return A=A>>>M&1431655765,A=(A|A>>>1)&858993459,A=(A|A>>>2)&252645135,A=(A|A>>>4)&16711935,A=(A|A>>>16)&65535,A<<16>>16},X.interleave3=function(A,M,e){return A&=1023,A=(A|A<<16)&4278190335,A=(A|A<<8)&251719695,A=(A|A<<4)&3272356035,A=(A|A<<2)&1227133513,M&=1023,M=(M|M<<16)&4278190335,M=(M|M<<8)&251719695,M=(M|M<<4)&3272356035,M=(M|M<<2)&1227133513,A|=M<<1,e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,A|e<<2},X.deinterleave3=function(A,M){return A=A>>>M&1227133513,A=(A|A>>>2)&3272356035,A=(A|A>>>4)&251719695,A=(A|A>>>8)&4278190335,A=(A|A>>>16)&1023,A<<22>>22},X.nextCombination=function(A){var M=A|A-1;return M+1|(~M&-~M)-1>>>g(A)+1}}}),iV=Ye({"node_modules/dup/dup.js"(X,H){"use strict";function g(M,e,t){var r=M[t]|0;if(r<=0)return[];var o=new Array(r),a;if(t===M.length-1)for(a=0;a<r;++a)o[a]=e;else for(a=0;a<r;++a)o[a]=g(M,e,t+1);return o}function x(M,e){var t,r;for(t=new Array(M),r=0;r<M;++r)t[r]=e;return t}function A(M,e){switch(typeof e>"u"&&(e=0),typeof M){case"number":if(M>0)return x(M|0,e);break;case"object":if(typeof M.length=="number")return g(M,e,0);break}return[]}H.exports=A}}),nV=Ye({"node_modules/typedarray-pool/pool.js"(X){"use strict";var H=ok(),g=iV(),x=t0().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:g([32,0]),UINT16:g([32,0]),UINT32:g([32,0]),BIGUINT64:g([32,0]),INT8:g([32,0]),INT16:g([32,0]),INT32:g([32,0]),BIGINT64:g([32,0]),FLOAT:g([32,0]),DOUBLE:g([32,0]),DATA:g([32,0]),UINT8C:g([32,0]),BUFFER:g([32,0])});var A=typeof Uint8ClampedArray<"u",M=typeof BigUint64Array<"u",e=typeof BigInt64Array<"u",t=window.__TYPEDARRAY_POOL;t.UINT8C||(t.UINT8C=g([32,0])),t.BIGUINT64||(t.BIGUINT64=g([32,0])),t.BIGINT64||(t.BIGINT64=g([32,0])),t.BUFFER||(t.BUFFER=g([32,0]));var r=t.DATA,o=t.BUFFER;X.free=function(u){if(x.isBuffer(u))o[H.log2(u.length)].push(u);else{if(Object.prototype.toString.call(u)!=="[object ArrayBuffer]"&&(u=u.buffer),!u)return;var y=u.length||u.byteLength,f=H.log2(y)|0;r[f].push(u)}};function a(d){if(d){var u=d.length||d.byteLength,y=H.log2(u);r[y].push(d)}}function i(d){a(d.buffer)}X.freeUint8=X.freeUint16=X.freeUint32=X.freeBigUint64=X.freeInt8=X.freeInt16=X.freeInt32=X.freeBigInt64=X.freeFloat32=X.freeFloat=X.freeFloat64=X.freeDouble=X.freeUint8Clamped=X.freeDataView=i,X.freeArrayBuffer=a,X.freeBuffer=function(u){o[H.log2(u.length)].push(u)},X.malloc=function(u,y){if(y===void 0||y==="arraybuffer")return n(u);switch(y){case"uint8":return s(u);case"uint16":return c(u);case"uint32":return h(u);case"int8":return v(u);case"int16":return p(u);case"int32":return T(u);case"float":case"float32":return l(u);case"double":case"float64":return _(u);case"uint8_clamped":return w(u);case"bigint64":return E(u);case"biguint64":return S(u);case"buffer":return b(u);case"data":case"dataview":return m(u);default:return null}return null};function n(u){var u=H.nextPow2(u),y=H.log2(u),f=r[y];return f.length>0?f.pop():new ArrayBuffer(u)}X.mallocArrayBuffer=n;function s(d){return new Uint8Array(n(d),0,d)}X.mallocUint8=s;function c(d){return new Uint16Array(n(2*d),0,d)}X.mallocUint16=c;function h(d){return new Uint32Array(n(4*d),0,d)}X.mallocUint32=h;function v(d){return new Int8Array(n(d),0,d)}X.mallocInt8=v;function p(d){return new Int16Array(n(2*d),0,d)}X.mallocInt16=p;function T(d){return new Int32Array(n(4*d),0,d)}X.mallocInt32=T;function l(d){return new Float32Array(n(4*d),0,d)}X.mallocFloat32=X.mallocFloat=l;function _(d){return new Float64Array(n(8*d),0,d)}X.mallocFloat64=X.mallocDouble=_;function w(d){return A?new Uint8ClampedArray(n(d),0,d):s(d)}X.mallocUint8Clamped=w;function S(d){return M?new BigUint64Array(n(8*d),0,d):null}X.mallocBigUint64=S;function E(d){return e?new BigInt64Array(n(8*d),0,d):null}X.mallocBigInt64=E;function m(d){return new DataView(n(d),0,d)}X.mallocDataView=m;function b(d){d=H.nextPow2(d);var u=H.log2(d),y=o[u];return y.length>0?y.pop():new x(d)}X.mallocBuffer=b,X.clearCache=function(){for(var u=0;u<32;++u)t.UINT8[u].length=0,t.UINT16[u].length=0,t.UINT32[u].length=0,t.INT8[u].length=0,t.INT16[u].length=0,t.INT32[u].length=0,t.FLOAT[u].length=0,t.DOUBLE[u].length=0,t.BIGUINT64[u].length=0,t.BIGINT64[u].length=0,t.UINT8C[u].length=0,r[u].length=0,o[u].length=0}}}),oV=Ye({"node_modules/is-plain-obj/index.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(x){var A;return g.call(x)==="[object Object]"&&(A=Object.getPrototypeOf(x),A===null||A===Object.getPrototypeOf({}))}}}),sk=Ye({"node_modules/parse-unit/index.js"(X,H){H.exports=function(x,A){A||(A=[0,""]),x=String(x);var M=parseFloat(x,10);return A[0]=M,A[1]=x.match(/[\d.\-\+]*\s*(.*)/)[1]||"",A}}}),sV=Ye({"node_modules/to-px/topx.js"(X,H){"use strict";var g=sk();H.exports=e;var x=96;function A(t,r){var o=g(getComputedStyle(t).getPropertyValue(r));return o[0]*e(o[1],t)}function M(t,r){var o=document.createElement("div");o.style["font-size"]="128"+t,r.appendChild(o);var a=A(o,"font-size")/128;return r.removeChild(o),a}function e(t,r){switch(r=r||document.body,t=(t||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),t){case"%":return r.clientHeight/100;case"ch":case"ex":return M(t,r);case"em":return A(r,"font-size");case"rem":return A(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return x;case"cm":return x/2.54;case"mm":return x/25.4;case"pt":return x/72;case"pc":return x/6}return 1}}}),lV=Ye({"node_modules/detect-kerning/index.js"(X,H){"use strict";H.exports=M;var g=M.canvas=document.createElement("canvas"),x=g.getContext("2d"),A=e([32,126]);M.createPairs=e,M.ascii=A;function M(t,r){Array.isArray(t)&&(t=t.join(", "));var o={},a,i=16,n=.05;r&&(r.length===2&&typeof r[0]=="number"?a=e(r):Array.isArray(r)?a=r:(r.o?a=e(r.o):r.pairs&&(a=r.pairs),r.fontSize&&(i=r.fontSize),r.threshold!=null&&(n=r.threshold))),a||(a=A),x.font=i+"px "+t;for(var s=0;s<a.length;s++){var c=a[s],h=x.measureText(c[0]).width+x.measureText(c[1]).width,v=x.measureText(c).width;if(Math.abs(h-v)>i*n){var p=(v-h)/i;o[c]=p*1e3}}return o}function e(t){for(var r=[],o=t[0];o<=t[1];o++)for(var a=String.fromCharCode(o),i=t[0];i<t[1];i++){var n=String.fromCharCode(i),s=a+n;r.push(s)}return r}}}),uV=Ye({"node_modules/font-measure/index.js"(X,H){"use strict";H.exports=g,g.canvas=document.createElement("canvas"),g.cache={};function g(n,t){t||(t={}),(typeof n=="string"||Array.isArray(n))&&(t.family=n);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var o=t.size||t.fontSize||t.em||48,a=t.weight||t.fontWeight||"",i=t.style||t.fontStyle||"",n=[i,a,o].join(" ")+"px "+r,s=t.origin||"top";if(g.cache[r]&&o<=g.cache[r].em)return x(g.cache[r],s);var c=t.canvas||g.canvas,h=c.getContext("2d"),v={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},p=Math.ceil(o*1.5);c.height=p,c.width=p*.5,h.font=n;var T="H",l={top:0};h.clearRect(0,0,p,p),h.textBaseline="top",h.fillStyle="black",h.fillText(T,0,0);var _=A(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline="bottom",h.fillText(T,0,p);var w=A(h.getImageData(0,0,p,p));l.lineHeight=l.bottom=p-w+_,h.clearRect(0,0,p,p),h.textBaseline="alphabetic",h.fillText(T,0,p);var S=A(h.getImageData(0,0,p,p)),E=p-S-1+_;l.baseline=l.alphabetic=E,h.clearRect(0,0,p,p),h.textBaseline="middle",h.fillText(T,0,p*.5);var m=A(h.getImageData(0,0,p,p));l.median=l.middle=p-m-1+_-p*.5,h.clearRect(0,0,p,p),h.textBaseline="hanging",h.fillText(T,0,p*.5);var b=A(h.getImageData(0,0,p,p));l.hanging=p-b-1+_-p*.5,h.clearRect(0,0,p,p),h.textBaseline="ideographic",h.fillText(T,0,p);var d=A(h.getImageData(0,0,p,p));if(l.ideographic=p-d-1+_,v.upper&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.upper,0,0),l.upper=A(h.getImageData(0,0,p,p)),l.capHeight=l.baseline-l.upper),v.lower&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.lower,0,0),l.lower=A(h.getImageData(0,0,p,p)),l.xHeight=l.baseline-l.lower),v.tittle&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.tittle,0,0),l.tittle=A(h.getImageData(0,0,p,p))),v.ascent&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.ascent,0,0),l.ascent=A(h.getImageData(0,0,p,p))),v.descent&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.descent,0,0),l.descent=M(h.getImageData(0,0,p,p))),v.overshoot){h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.overshoot,0,0);var u=M(h.getImageData(0,0,p,p));l.overshoot=u-E}for(var y in l)l[y]/=o;return l.em=o,g.cache[r]=l,x(l,s)}function x(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var o in e)o!=="em"&&(r[o]=e[o]-t);return r}function A(e){for(var t=e.height,r=e.data,o=3;o<r.length;o+=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}function M(e){for(var t=e.height,r=e.data,o=r.length-1;o>0;o-=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}}}),cV=Ye({"node_modules/gl-text/dist.js"(X,H){"use strict";var g=tV(),x=Ev(),A=nk(),M=rV(),e=K5(),t=hg(),r=aV(),o=nV(),a=E1(),i=oV(),n=sk(),s=sV(),c=lV(),h=Wf(),v=uV(),p=v0(),T=ok(),l=T.nextPow2,_=new e,w=!1;document.body&&(S=document.body.appendChild(document.createElement("div")),S.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(S).fontStretch&&(w=!0),document.body.removeChild(S));var S,E=function(d){m(d)?(d={regl:d},this.gl=d.regl._gl):this.gl=M(d),this.shader=_.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=d.regl||A({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),_.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(i(d)?d:{})};E.prototype.createShader=function(){var d=this.regl,u=d({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:d.prop("count"),offset:d.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:d.this("sizeBuffer")},width:{offset:0,stride:8,buffer:d.this("sizeBuffer")},char:d.this("charBuffer"),position:d.this("position")},uniforms:{atlasSize:function(f,P){return[P.atlas.width,P.atlas.height]},atlasDim:function(f,P){return[P.atlas.cols,P.atlas.rows]},atlas:function(f,P){return P.atlas.texture},charStep:function(f,P){return P.atlas.step},em:function(f,P){return P.atlas.em},color:d.prop("color"),opacity:d.prop("opacity"),viewport:d.this("viewportArray"),scale:d.this("scale"),align:d.prop("align"),baseline:d.prop("baseline"),translate:d.this("translate"),positionOffset:d.prop("positionOffset")},primitive:"points",viewport:d.this("viewport"),vert:`
			precision highp float;
			attribute float width, charOffset, char;
			attribute vec2 position;
			uniform float fontSize, charStep, em, align, baseline;
			uniform vec4 viewport;
			uniform vec4 color;
			uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;
			varying vec2 charCoord, charId;
			varying float charWidth;
			varying vec4 fontColor;
			void main () {
				vec2 offset = floor(em * (vec2(align + charOffset, baseline)
					+ vec2(positionOffset.x, -positionOffset.y)))
					/ (viewport.zw * scale.xy);

				vec2 position = (position + translate) * scale;
				position += offset * scale;

				charCoord = position * viewport.zw + viewport.xy;

				gl_Position = vec4(position * 2. - 1., 0, 1);

				gl_PointSize = charStep;

				charId.x = mod(char, atlasDim.x);
				charId.y = floor(char / atlasDim.x);

				charWidth = width * em;

				fontColor = color / 255.;
			}`,frag:`
			precision highp float;
			uniform float fontSize, charStep, opacity;
			uniform vec2 atlasSize;
			uniform vec4 viewport;
			uniform sampler2D atlas;
			varying vec4 fontColor;
			varying vec2 charCoord, charId;
			varying float charWidth;

			float lightness(vec4 color) {
				return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
			}

			void main () {
				vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;
				float halfCharStep = floor(charStep * .5 + .5);

				// invert y and shift by 1px (FF expecially needs that)
				uv.y = charStep - uv.y;

				// ignore points outside of character bounding box
				float halfCharWidth = ceil(charWidth * .5);
				if (floor(uv.x) > halfCharStep + halfCharWidth ||
					floor(uv.x) < halfCharStep - halfCharWidth) return;

				uv += charId * charStep;
				uv = uv / atlasSize;

				vec4 color = fontColor;
				vec4 mask = texture2D(atlas, uv);

				float maskY = lightness(mask);
				// float colorY = lightness(color);
				color.a *= maskY;
				color.a *= opacity;

				// color.a += .1;

				// antialiasing, see yiq color space y-channel formula
				// color.rgb += (1. - color.rgb) * (1. - mask.rgb);

				gl_FragColor = color;
			}`}),y={};return{regl:d,draw:u,atlas:y}},E.prototype.update=function(d){var u=this;if(typeof d=="string")d={text:d};else if(!d)return;d=x(d,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),d.opacity!=null&&(Array.isArray(d.opacity)?this.opacity=d.opacity.map(function(ce){return parseFloat(ce)}):this.opacity=parseFloat(d.opacity)),d.viewport!=null&&(this.viewport=a(d.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),d.kerning!=null&&(this.kerning=d.kerning),d.offset!=null&&(typeof d.offset=="number"&&(d.offset=[d.offset,0]),this.positionOffset=p(d.offset)),d.direction&&(this.direction=d.direction),d.range&&(this.range=d.range,this.scale=[1/(d.range[2]-d.range[0]),1/(d.range[3]-d.range[1])],this.translate=[-d.range[0],-d.range[1]]),d.scale&&(this.scale=d.scale),d.translate&&(this.translate=d.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!d.font&&(d.font=E.baseFontSize+"px sans-serif");var y=!1,f=!1;if(d.font&&(Array.isArray(d.font)?d.font:[d.font]).forEach(function(ce,ze){if(typeof ce=="string")try{ce=g.parse(ce)}catch{ce=g.parse(E.baseFontSize+"px "+ce)}else{var tt=ce.style,nt=ce.weight,Qe=ce.stretch,Ct=ce.variant;ce=g.parse(g.stringify(ce)),tt&&(ce.style=tt),nt&&(ce.weight=nt),Qe&&(ce.stretch=Qe),Ct&&(ce.variant=Ct)}var St=g.stringify({size:E.baseFontSize,family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style}),Ot=n(ce.size),jt=Math.round(Ot[0]*s(Ot[1]));if(jt!==u.fontSize[ze]&&(f=!0,u.fontSize[ze]=jt),(!u.font[ze]||St!=u.font[ze].baseString)&&(y=!0,u.font[ze]=E.fonts[St],!u.font[ze])){var ur=ce.family.join(", "),ar=[ce.style];ce.style!=ce.variant&&ar.push(ce.variant),ce.variant!=ce.weight&&ar.push(ce.weight),w&&ce.weight!=ce.stretch&&ar.push(ce.stretch),u.font[ze]={baseString:St,family:ur,weight:ce.weight,stretch:ce.stretch,style:ce.style,variant:ce.variant,width:{},kerning:{},metrics:v(ur,{origin:"top",fontSize:E.baseFontSize,fontStyle:ar.join(" ")})},E.fonts[St]=u.font[ze]}}),(y||f)&&this.font.forEach(function(ce,ze){var tt=g.stringify({size:u.fontSize[ze],family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style});if(u.fontAtlas[ze]=u.shader.atlas[tt],!u.fontAtlas[ze]){var nt=ce.metrics;u.shader.atlas[tt]=u.fontAtlas[ze]={fontString:tt,step:Math.ceil(u.fontSize[ze]*nt.bottom*.5)*2,em:u.fontSize[ze],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:u.regl.texture()}}d.text==null&&(d.text=u.text)}),typeof d.text=="string"&&d.position&&d.position.length>2){for(var P=Array(d.position.length*.5),L=0;L<P.length;L++)P[L]=d.text;d.text=P}var z;if(d.text!=null||y){if(this.textOffsets=[0],Array.isArray(d.text)){this.count=d.text[0].length,this.counts=[this.count];for(var F=1;F<d.text.length;F++)this.textOffsets[F]=this.textOffsets[F-1]+d.text[F-1].length,this.count+=d.text[F].length,this.counts.push(d.text[F].length);this.text=d.text.join("")}else this.text=d.text,this.count=this.text.length,this.counts=[this.count];z=[],this.font.forEach(function(ce,ze){E.atlasContext.font=ce.baseString;for(var tt=u.fontAtlas[ze],nt=0;nt<u.text.length;nt++){var Qe=u.text.charAt(nt);if(tt.ids[Qe]==null&&(tt.ids[Qe]=tt.chars.length,tt.chars.push(Qe),z.push(Qe)),ce.width[Qe]==null&&(ce.width[Qe]=E.atlasContext.measureText(Qe).width/E.baseFontSize,u.kerning)){var Ct=[];for(var St in ce.width)Ct.push(St+Qe,Qe+St);h(ce.kerning,c(ce.family,{pairs:Ct}))}}})}if(d.position)if(d.position.length>2){for(var B=!d.position[0].length,O=o.mallocFloat(this.count*2),I=0,N=0;I<this.counts.length;I++){var U=this.counts[I];if(B)for(var W=0;W<U;W++)O[N++]=d.position[I*2],O[N++]=d.position[I*2+1];else for(var Q=0;Q<U;Q++)O[N++]=d.position[I][0],O[N++]=d.position[I][1]}this.position.call?this.position({type:"float",data:O}):this.position=this.regl.buffer({type:"float",data:O}),o.freeFloat(O)}else this.position.destroy&&this.position.destroy(),this.position={constant:d.position};if(d.text||y){var ue=o.mallocUint8(this.count),se=o.mallocFloat(this.count*2);this.textWidth=[];for(var he=0,G=0;he<this.counts.length;he++){for(var $=this.counts[he],J=this.font[he]||this.font[0],Z=this.fontAtlas[he]||this.fontAtlas[0],re=0;re<$;re++){var ne=this.text.charAt(G),j=this.text.charAt(G-1);if(ue[G]=Z.ids[ne],se[G*2]=J.width[ne],re){var ee=se[G*2-2],ie=se[G*2],fe=se[G*2-1],be=fe+ee*.5+ie*.5;if(this.kerning){var Ae=J.kerning[j+ne];Ae&&(be+=Ae*.001)}se[G*2+1]=be}else se[G*2+1]=se[G*2]*.5;G++}this.textWidth.push(se.length?se[G*2-2]*.5+se[G*2-1]:0)}d.align||(d.align=this.align),this.charBuffer({data:ue,type:"uint8",usage:"stream"}),this.sizeBuffer({data:se,type:"float",usage:"stream"}),o.freeUint8(ue),o.freeFloat(se),z.length&&this.font.forEach(function(ce,ze){var tt=u.fontAtlas[ze],nt=tt.step,Qe=Math.floor(E.maxAtlasSize/nt),Ct=Math.min(Qe,tt.chars.length),St=Math.ceil(tt.chars.length/Ct),Ot=l(Ct*nt),jt=l(St*nt);tt.width=Ot,tt.height=jt,tt.rows=St,tt.cols=Ct,tt.em&&tt.texture({data:r({canvas:E.atlasCanvas,font:tt.fontString,chars:tt.chars,shape:[Ot,jt],step:[nt,nt]})})})}if(d.align&&(this.align=d.align,this.alignOffset=this.textWidth.map(function(ce,ze){var tt=Array.isArray(u.align)?u.align.length>1?u.align[ze]:u.align[0]:u.align;if(typeof tt=="number")return tt;switch(tt){case"right":case"end":return-ce;case"center":case"centre":case"middle":return-ce*.5}return 0})),this.baseline==null&&d.baseline==null&&(d.baseline=0),d.baseline!=null&&(this.baseline=d.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ce,ze){var tt=(u.font[ze]||u.font[0]).metrics,nt=0;return nt+=tt.bottom*.5,typeof ce=="number"?nt+=ce-tt.baseline:nt+=-tt[ce],nt*=-1,nt})),d.color!=null)if(d.color||(d.color="transparent"),typeof d.color=="string"||!isNaN(d.color))this.color=t(d.color,"uint8");else{var Be;if(typeof d.color[0]=="number"&&d.color.length>this.counts.length){var Ie=d.color.length;Be=o.mallocUint8(Ie);for(var Ze=(d.color.subarray||d.color.slice).bind(d.color),at=0;at<Ie;at+=4)Be.set(t(Ze(at,at+4),"uint8"),at)}else{var it=d.color.length;Be=o.mallocUint8(it*4);for(var et=0;et<it;et++)Be.set(t(d.color[et]||0,"uint8"),et*4)}this.color=Be}if(d.position||d.text||d.color||d.baseline||d.align||d.font||d.offset||d.opacity){var lt=this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(lt){var Me=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(Me);for(var ge=0;ge<this.batch.length;ge++)this.batch[ge]={count:this.counts.length>1?this.counts[ge]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[ge]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(ge*4,ge*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[ge]:this.opacity,baseline:this.baselineOffset[ge]!=null?this.baselineOffset[ge]:this.baselineOffset[0],align:this.align?this.alignOffset[ge]!=null?this.alignOffset[ge]:this.alignOffset[0]:0,atlas:this.fontAtlas[ge]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(ge*2,ge*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}},E.prototype.destroy=function(){},E.prototype.kerning=!0,E.prototype.position={constant:new Float32Array(2)},E.prototype.translate=null,E.prototype.scale=null,E.prototype.font=null,E.prototype.text="",E.prototype.positionOffset=[0,0],E.prototype.opacity=1,E.prototype.color=new Uint8Array([0,0,0,255]),E.prototype.alignOffset=[0,0],E.maxAtlasSize=1024,E.atlasCanvas=document.createElement("canvas"),E.atlasContext=E.atlasCanvas.getContext("2d",{alpha:!1}),E.baseFontSize=64,E.fonts={};function m(b){return typeof b=="function"&&b._gl&&b.prop&&b.texture&&b.buffer}H.exports=E}}),_T=Ye({"src/lib/prepare_regl.js"(X,H){"use strict";var g=g5(),x=nk();H.exports=function(M,e,t){var r=M._fullLayout,o=!0;return r._glcanvas.each(function(a){if(a.regl){a.regl.preloadCachedCode(t);return}if(!(a.pick&&!r._has("parcoords"))){try{a.regl=x({canvas:this,attributes:{antialias:!a.pick,preserveDrawingBuffer:!0},pixelRatio:M._context.plotGlPixelRatio||window.devicePixelRatio,extensions:e||[],cachedCode:t||{}})}catch{o=!1}a.regl||(o=!1),o&&this.addEventListener("webglcontextlost",function(i){M&&M.emit&&M.emit("plotly_webglcontextlost",{event:i,layer:a.key})},!1)}}),o||g({container:r._glcontainer.node()}),o}}}),lk=Ye({"src/traces/scattergl/plot.js"(c,H){"use strict";var g=N5(),x=J5(),A=Yj(),M=cV(),e=ta(),t=Jd().selectMode,r=_T(),o=uu(),a=zS(),i=F5().styleTextSelection,n={};function s(h,v,p,T){var l=h._size,_=h.width*T,w=h.height*T,S=l.l*T,E=l.b*T,m=l.r*T,b=l.t*T,d=l.w*T,u=l.h*T;return[S+v.domain[0]*d,E+p.domain[0]*u,_-m-(1-v.domain[1])*d,w-b-(1-p.domain[1])*u]}var c=H.exports=function(v,p,T){if(T.length){var l=v._fullLayout,_=p._scene,w=p.xaxis,S=p.yaxis,E,m;if(_){var b=r(v,["ANGLE_instanced_arrays","OES_element_index_uint"],n);if(!b){_.init();return}var d=_.count,u=l._glcanvas.data()[0].regl;if(a(v,p,T),_.dirty){if((_.line2d||_.error2d)&&!(_.scatter2d||_.fill2d||_.glText)&&u.clear({}),_.error2d===!0&&(_.error2d=A(u)),_.line2d===!0&&(_.line2d=x(u)),_.scatter2d===!0&&(_.scatter2d=g(u)),_.fill2d===!0&&(_.fill2d=x(u)),_.glText===!0)for(_.glText=new Array(d),E=0;E<d;E++)_.glText[E]=new M(u);if(_.glText){if(d>_.glText.length){var y=d-_.glText.length;for(E=0;E<y;E++)_.glText.push(new M(u))}else if(d<_.glText.length){var f=_.glText.length-d,P=_.glText.splice(d,f);P.forEach(function(j){j.destroy()})}for(E=0;E<d;E++)_.glText[E].update(_.textOptions[E])}if(_.line2d&&(_.line2d.update(_.lineOptions),_.lineOptions=_.lineOptions.map(function(j){if(j&&j.positions){for(var ee=j.positions,ie=0;ie<ee.length&&(isNaN(ee[ie])||isNaN(ee[ie+1]));)ie+=2;for(var fe=ee.length-2;fe>ie&&(isNaN(ee[fe])||isNaN(ee[fe+1]));)fe-=2;j.positions=ee.slice(ie,fe+2)}return j}),_.line2d.update(_.lineOptions)),_.error2d){var L=(_.errorXOptions||[]).concat(_.errorYOptions||[]);_.error2d.update(L)}_.scatter2d&&_.scatter2d.update(_.markerOptions),_.fillOrder=e.repeat(null,d),_.fill2d&&(_.fillOptions=_.fillOptions.map(function(j,ee){var ie=T[ee];if(!(!j||!ie||!ie[0]||!ie[0].trace)){var fe=ie[0],be=fe.trace,Ae=fe.t,Be=_.lineOptions[ee],Ie,Ze,at=[];be._ownfill&&at.push(ee),be._nexttrace&&at.push(ee+1),at.length&&(_.fillOrder[ee]=at);var it=[],et=Be&&Be.positions||Ae.positions,lt,Me;if(be.fill==="tozeroy"){for(lt=0;lt<et.length&&isNaN(et[lt+1]);)lt+=2;for(Me=et.length-2;Me>lt&&isNaN(et[Me+1]);)Me-=2;et[lt+1]!==0&&(it=[et[lt],0]),it=it.concat(et.slice(lt,Me+2)),et[Me+1]!==0&&(it=it.concat([et[Me],0]))}else if(be.fill==="tozerox"){for(lt=0;lt<et.length&&isNaN(et[lt]);)lt+=2;for(Me=et.length-2;Me>lt&&isNaN(et[Me]);)Me-=2;et[lt]!==0&&(it=[0,et[lt+1]]),it=it.concat(et.slice(lt,Me+2)),et[Me]!==0&&(it=it.concat([0,et[Me+1]]))}else if(be.fill==="toself"||be.fill==="tonext"){for(it=[],Ie=0,j.splitNull=!0,Ze=0;Ze<et.length;Ze+=2)(isNaN(et[Ze])||isNaN(et[Ze+1]))&&(it=it.concat(et.slice(Ie,Ze)),it.push(et[Ie],et[Ie+1]),it.push(null,null),Ie=Ze+2);it=it.concat(et.slice(Ie)),Ie&&it.push(et[Ie],et[Ie+1])}else{var ge=be._nexttrace;if(ge){var ce=_.lineOptions[ee+1];if(ce){var ze=ce.positions;if(be.fill==="tonexty"){for(it=et.slice(),ee=Math.floor(ze.length/2);ee--;){var tt=ze[ee*2],nt=ze[ee*2+1];isNaN(tt)||isNaN(nt)||it.push(tt,nt)}j.fill=ge.fillcolor}}}}if(be._prevtrace&&be._prevtrace.fill==="tonext"){var Qe=_.lineOptions[ee-1].positions,Ct=it.length/2;Ie=Ct;var St=[Ie];for(Ze=0;Ze<Qe.length;Ze+=2)(isNaN(Qe[Ze])||isNaN(Qe[Ze+1]))&&(St.push(Ze/2+Ct+1),Ie=Ze+2);it=it.concat(Qe),j.hole=St}return j.fillmode=be.fill,j.opacity=be.opacity,j.positions=it,j}}),_.fill2d.update(_.fillOptions))}var z=l.dragmode,F=t(z),B=l.clickmode.indexOf("select")>-1;for(E=0;E<d;E++){var O=T[E][0],I=O.trace,N=O.t,U=N.index,W=I._length,Q=N.x,ue=N.y;if(I.selectedpoints||F||B){if(F||(F=!0),I.selectedpoints){var se=_.selectBatch[U]=e.selIndices2selPoints(I),he={};for(m=0;m<se.length;m++)he[se[m]]=1;var G=[];for(m=0;m<W;m++)he[m]||G.push(m);_.unselectBatch[U]=G}var $=N.xpx=new Array(W),J=N.ypx=new Array(W);for(m=0;m<W;m++)$[m]=w.c2p(Q[m]),J[m]=S.c2p(ue[m])}else N.xpx=N.ypx=null}if(F){if(_.select2d||(_.select2d=g(l._glcanvas.data()[1].regl)),_.scatter2d){var Z=new Array(d);for(E=0;E<d;E++)Z[E]=_.selectBatch[E].length||_.unselectBatch[E].length?_.markerUnselectedOptions[E]:{};_.scatter2d.update(Z)}_.select2d&&(_.select2d.update(_.markerOptions),_.select2d.update(_.markerSelectedOptions)),_.glText&&T.forEach(function(j){var ee=((j||[])[0]||{}).trace||{};o.hasText(ee)&&i(j)})}else _.scatter2d&&_.scatter2d.update(_.markerOptions);var re={viewport:s(l,w,S,v._context.plotGlPixelRatio),range:[(w._rl||w.range)[0],(S._rl||S.range)[0],(w._rl||w.range)[1],(S._rl||S.range)[1]]},ne=e.repeat(re,_.count);_.fill2d&&_.fill2d.update(ne),_.line2d&&_.line2d.update(ne),_.error2d&&_.error2d.update(ne.concat(ne)),_.scatter2d&&_.scatter2d.update(ne),_.select2d&&_.select2d.update(ne),_.glText&&_.glText.forEach(function(j){j.update(re)})}}};c.reglPrecompiled=n}}),fV=Ye({"src/traces/scattergl/index.js"(X,H){"use strict";var g=ZU();g.plot=lk(),H.exports=g}}),hV=Ye({"lib/scattergl.js"(X,H){"use strict";H.exports=fV()}}),uk=Ye({"src/traces/splom/attributes.js"(X,H){"use strict";var g=Pc(),x=tu(),A=Cc().axisHoverFormat,M=xs().hovertemplateAttrs,e=yx(),t=wh().idRegex,r=cl().templatedArray,o=Oo().extendFlat,a=g.marker,i=a.line,n=o(x("marker.line",{editTypeOverride:"calc"}),{width:o({},i.width,{editType:"calc"}),editType:"calc"}),s=o(x("marker"),{symbol:a.symbol,angle:a.angle,size:o({},a.size,{editType:"markerSize"}),sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,opacity:a.opacity,colorbar:a.colorbar,line:n,editType:"calc"});s.color.editType=s.cmin.editType=s.cmax.editType="style";function c(h){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:t[h],editType:"plot"}}}H.exports={dimensions:r("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:o({},e.text,{}),hovertext:o({},e.hovertext,{}),hovertemplate:M(),xhoverformat:A("x"),yhoverformat:A("y"),marker:s,xaxes:c("x"),yaxes:c("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:e.selected.marker,editType:"calc"},unselected:{marker:e.unselected.marker,editType:"calc"},opacity:e.opacity}}}),xT=Ye({"src/traces/parcoords/merge_length.js"(X,H){"use strict";H.exports=function(g,x,A,M){M||(M=1/0);var e,t;for(e=0;e<x.length;e++)t=x[e],t.visible&&(M=Math.min(M,t[A].length));for(M===1/0&&(M=0),g._length=M,e=0;e<x.length;e++)t=x[e],t.visible&&(t._length=M);return M}}}),pV=Ye({"src/traces/splom/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=uk(),M=uu(),e=md(),t=xT(),r=pT().isOpenSymbol;H.exports=function(n,s,c,h){function v(m,b){return g.coerce(n,s,A,m,b)}var p=x(n,s,{name:"dimensions",handleItemDefaults:o}),T=v("diagonal.visible"),l=v("showupperhalf"),_=v("showlowerhalf"),w=t(s,p,"values");if(!w||!T&&!l&&!_){s.visible=!1;return}v("text"),v("hovertext"),v("hovertemplate"),v("xhoverformat"),v("yhoverformat"),e(n,s,c,h,v,{noAngleRef:!0,noStandOff:!0});var S=r(s.marker.symbol),E=M.isBubble(s);v("marker.line.width",S||E?1:0),a(n,s,h,v),g.coerceSelectionMarkerOpacity(s,v)};function o(i,n){function s(h,v){return g.coerce(i,n,A.dimensions,h,v)}s("label");var c=s("values");c&&c.length?s("visible"):n.visible=!1,s("axis.type"),s("axis.matches")}function a(i,n,s,c){var h=n.dimensions,v=h.length,p=n.showupperhalf,T=n.showlowerhalf,l=n.diagonal.visible,_,w,S=new Array(v),E=new Array(v);for(_=0;_<v;_++){var m=_?_+1:"";S[_]="x"+m,E[_]="y"+m}var b=c("xaxes",S),d=c("yaxes",E),u=n._diag=new Array(v);n._xaxes={},n._yaxes={};var y=[],f=[];function P(W,Q,ue,se){if(W){var he=W.charAt(0),G=s._splomAxes[he];if(n["_"+he+"axes"][W]=1,se.push(W),!(W in G)){var $=G[W]={};ue&&($.label=ue.label||"",ue.visible&&ue.axis&&(ue.axis.type&&($.type=ue.axis.type),ue.axis.matches&&($.matches=Q)))}}}var L=!l&&!T,z=!l&&!p;for(n._axesDim={},_=0;_<v;_++){var F=h[_],B=_===0,O=_===v-1,I=B&&L||O&&z?void 0:b[_],N=B&&z||O&&L?void 0:d[_];P(I,N,F,y),P(N,I,F,f),u[_]=[I,N],n._axesDim[I]=_,n._axesDim[N]=_}for(_=0;_<y.length;_++)for(w=0;w<f.length;w++){var U=y[_]+f[w];(_>w&&p||_<w&&T||_===w&&(l||!T||!p))&&(s._splomSubplots[U]=1)}(!T||!l&&p&&T)&&(s._splomGridDflt.xside="bottom",s._splomGridDflt.yside="left")}}}),dV=Ye({"src/traces/splom/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A._fullLayout,t=M.uid,r=e._splomScenes;r||(r=e._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},a={matrix:!1,selectBatch:[],unselectBatch:[]},i=r[M.uid];return i||(i=r[t]=g.extendFlat({},o,a),i.draw=function(){i.matrix&&i.matrix.draw&&(i.selectBatch.length||i.unselectBatch.length?i.matrix.draw(i.unselectBatch,i.selectBatch):i.matrix.draw()),i.dirty=!1},i.destroy=function(){i.matrix&&i.matrix.destroy&&i.matrix.destroy(),i.matrixOptions=null,i.selectBatch=null,i.unselectBatch=null,i=null}),i.dirty||g.extendFlat(i,o),i}}}),vV=Ye({"src/traces/splom/calc.js"(X,H){"use strict";var g=ta(),x=Xc(),A=Bd().calcMarkerSize,M=Bd().calcAxisExpansion,e=Fd(),t=m0().markerSelection,r=m0().markerStyle,o=dV(),a=ks().BADNUM,i=mg().TOO_MANY_POINTS;H.exports=function(s,c){var h=c.dimensions,v=c._length,p={},T=p.cdata=[],l=p.data=[],_=c._visibleDims=[],w,S,E,m,b;function d(L,z){for(var F=L.makeCalcdata({v:z.values,vcalendar:c.calendar},"v"),B=0;B<F.length;B++)F[B]=F[B]===a?NaN:F[B];T.push(F),l.push(L.type==="log"?g.simpleMap(F,L.c2l):F)}for(w=0;w<h.length;w++)if(E=h[w],E.visible){if(m=x.getFromId(s,c._diag[w][0]),b=x.getFromId(s,c._diag[w][1]),m&&b&&m.type!==b.type){g.log("Skipping splom dimension "+w+" with conflicting axis types");continue}m?(d(m,E),b&&b.type==="category"&&(b._categories=m._categories.slice())):d(b,E),_.push(w)}e(s,c),g.extendFlat(p,r(s,c));var u=T.length,y=u*v>i,f;for(y?f=p.sizeAvg||Math.max(p.size,3):f=A(c,v),S=0;S<_.length;S++)w=_[S],E=h[w],m=x.getFromId(s,c._diag[w][0])||{},b=x.getFromId(s,c._diag[w][1])||{},M(s,c,m,b,T[S],T[S],f);var P=o(s,c);return P.matrix||(P.matrix=!0),P.matrixOptions=p,P.selectedOptions=t(s,c,c.selected),P.unselectedOptions=t(s,c,c.unselected),[{x:!1,y:!1,t:{},trace:c}]}}}),mV=Ye({"node_modules/performance-now/lib/performance-now.js"(X,H){(function(){var g,x,A,M,e,t;typeof performance<"u"&&performance!==null&&performance.now?H.exports=function(){return performance.now()}:typeof process<"u"&&process!==null&&process.hrtime?(H.exports=function(){return(g()-e)/1e6},x=process.hrtime,g=function(){var r;return r=x(),r[0]*1e9+r[1]},M=g(),t=process.uptime()*1e9,e=M-t):Date.now?(H.exports=function(){return Date.now()-A},A=Date.now()):(H.exports=function(){return new Date().getTime()-A},A=new Date().getTime())}).call(X)}}),gV=Ye({"node_modules/raf/index.js"(X,H){var g=mV(),x=window,A=["moz","webkit"],M="AnimationFrame",e=x["request"+M],t=x["cancel"+M]||x["cancelRequest"+M];for(r=0;!e&&r<A.length;r++)e=x[A[r]+"Request"+M],t=x[A[r]+"Cancel"+M]||x[A[r]+"CancelRequest"+M];var r;(!e||!t)&&(o=0,a=0,i=[],n=1e3/60,e=function(s){if(i.length===0){var c=g(),h=Math.max(0,n-(c-o));o=h+c,setTimeout(function(){var v=i.slice(0);i.length=0;for(var p=0;p<v.length;p++)if(!v[p].cancelled)try{v[p].callback(o)}catch(T){setTimeout(function(){throw T},0)}},Math.round(h))}return i.push({handle:++a,callback:s,cancelled:!1}),a},t=function(s){for(var c=0;c<i.length;c++)i[c].handle===s&&(i[c].cancelled=!0)});var o,a,i,n;H.exports=function(s){return e.call(x,s)},H.exports.cancel=function(){t.apply(x,arguments)},H.exports.polyfill=function(s){s||(s=x),s.requestAnimationFrame=e,s.cancelAnimationFrame=t}}}),yV=Ye({"node_modules/array-range/index.js"(X,H){H.exports=function(x,A){var M=typeof x=="number",e=typeof A=="number";M&&!e?(A=x,x=0):!M&&!e&&(x=0,A=0),x=x|0,A=A|0;var t=A-x;if(t<0)throw new Error("array length must be positive");for(var r=new Array(t),o=0,a=x;o<t;o++,a++)r[o]=a;return r}}}),_V=Ye({"node_modules/regl-splom/index.js"(X,H){"use strict";var g=N5(),x=Ev(),A=d0(),M=gV(),e=yV(),t=E1(),r=v0();H.exports=o;function o(s,c){if(!(this instanceof o))return new o(s,c);this.traces=[],this.passes={},this.regl=s,this.scatter=g(s),this.canvas=this.scatter.canvas}o.prototype.render=function(...s){return s.length&&this.update(...s),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=M(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,M(()=>{this.dirty=!1})),this)},o.prototype.update=function(...s){if(!s.length)return;for(let v=0;v<s.length;v++)this.updateItem(v,s[v]);this.traces=this.traces.filter(Boolean);let c=[],h=0;for(let v=0;v<this.traces.length;v++){let p=this.traces[v],T=this.traces[v].passes;for(let l=0;l<T.length;l++)c.push(this.passes[T[l]]);p.passOffset=h,h+=p.passes.length}return this.scatter.update(...c),this},o.prototype.updateItem=function(s,c){let{regl:h}=this;if(c===null)return this.traces[s]=null,this;if(!c)return this;let v=x(c,{data:"data items columns rows values dimensions samples x",snap:"snap cluster",size:"sizes size radius",color:"colors color fill fill-color fillColor",opacity:"opacity alpha transparency opaque",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",borderColor:"borderColors borderColor bordercolor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range ranges databox dataBox",viewport:"viewport viewBox viewbox",domain:"domain domains area areas",padding:"pad padding paddings pads margin margins",transpose:"transpose transposed",diagonal:"diagonal diag showDiagonal",upper:"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf",lower:"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower"}),p=this.traces[s]||(this.traces[s]={id:s,buffer:h.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),color:"black",marker:null,size:12,borderColor:"transparent",borderSize:1,viewport:t([h._gl.drawingBufferWidth,h._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(v.color!=null&&(p.color=v.color),v.size!=null&&(p.size=v.size),v.marker!=null&&(p.marker=v.marker),v.borderColor!=null&&(p.borderColor=v.borderColor),v.borderSize!=null&&(p.borderSize=v.borderSize),v.opacity!=null&&(p.opacity=v.opacity),v.viewport&&(p.viewport=t(v.viewport)),v.diagonal!=null&&(p.diagonal=v.diagonal),v.upper!=null&&(p.upper=v.upper),v.lower!=null&&(p.lower=v.lower),v.data){p.buffer(r(v.data)),p.columns=v.data.length,p.count=v.data[0].length,p.bounds=[];for(let y=0;y<p.columns;y++)p.bounds[y]=A(v.data[y],1)}let T;v.range&&(p.range=v.range,T=p.range&&typeof p.range[0]!="number"),v.domain&&(p.domain=v.domain);let l=!1;v.padding!=null&&(Array.isArray(v.padding)&&v.padding.length===p.columns&&typeof v.padding[v.padding.length-1]=="number"?(p.padding=v.padding.map(n),l=!0):p.padding=n(v.padding));let _=p.columns,w=p.count,S=p.viewport.width,E=p.viewport.height,m=p.viewport.x,b=p.viewport.y,d=S/_,u=E/_;p.passes=[];for(let y=0;y<_;y++)for(let f=0;f<_;f++){if(!p.diagonal&&f===y||!p.upper&&y>f||!p.lower&&y<f)continue;let P=a(p.id,y,f),L=this.passes[P]||(this.passes[P]={});if(v.data&&(v.transpose?L.positions={x:{buffer:p.buffer,offset:f,count:w,stride:_},y:{buffer:p.buffer,offset:y,count:w,stride:_}}:L.positions={x:{buffer:p.buffer,offset:f*w,count:w},y:{buffer:p.buffer,offset:y*w,count:w}},L.bounds=i(p.bounds,y,f)),v.domain||v.viewport||v.data){let z=l?i(p.padding,y,f):p.padding;if(p.domain){let[F,B,O,I]=i(p.domain,y,f);L.viewport=[m+F*S+z[0],b+B*E+z[1],m+O*S-z[2],b+I*E-z[3]]}else L.viewport=[m+f*d+d*z[0],b+y*u+u*z[1],m+(f+1)*d-d*z[2],b+(y+1)*u-u*z[3]]}v.color&&(L.color=p.color),v.size&&(L.size=p.size),v.marker&&(L.marker=p.marker),v.borderSize&&(L.borderSize=p.borderSize),v.borderColor&&(L.borderColor=p.borderColor),v.opacity&&(L.opacity=p.opacity),v.range&&(L.range=T?i(p.range,y,f):p.range||L.bounds),p.passes.push(P)}return this},o.prototype.draw=function(...s){if(!s.length)this.scatter.draw();else{let c=[];for(let h=0;h<s.length;h++)if(typeof s[h]=="number"){let{passes:v,passOffset:p}=this.traces[s[h]];c.push(...e(p,p+v.length))}else if(s[h].length){let v=s[h],{passes:p,passOffset:T}=this.traces[h];p=p.map((l,_)=>{c[T+_]=v})}this.scatter.draw(...c)}return this},o.prototype.destroy=function(){return this.traces.forEach(s=>{s.buffer&&s.buffer.destroy&&s.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function a(s,c,h){let v=s.id!=null?s.id:s,p=c,T=h;return v<<16|(p&255)<<8|T&255}function i(s,c,h){let v,p,T,l,_,w,S,E,m=s[c],b=s[h];return m.length>2?(v=m[0],T=m[2],p=m[1],l=m[3]):m.length?(v=p=m[0],T=l=m[1]):(v=m.x,p=m.y,T=m.x+m.width,l=m.y+m.height),b.length>2?(_=b[0],S=b[2],w=b[1],E=b[3]):b.length?(_=w=b[0],S=E=b[1]):(_=b.x,w=b.y,S=b.x+b.width,E=b.y+b.height),[_,p,S,l]}function n(s){if(typeof s=="number")return[s,s,s,s];if(s.length===2)return[s[0],s[1],s[0],s[1]];{let c=t(s);return[c.x,c.y,c.x+c.width,c.y+c.height]}}}}),xV=Ye({"src/traces/splom/plot.js"(X,H){"use strict";var g=_V(),x=ta(),A=Xc(),M=Jd().selectMode;H.exports=function(r,o,a){if(a.length)for(var i=0;i<a.length;i++)e(r,a[i][0])};function e(t,r){var o=t._fullLayout,a=o._size,i=r.trace,n=r.t,s=o._splomScenes[i.uid],c=s.matrixOptions,h=c.cdata,v=o._glcanvas.data()[0].regl,p=o.dragmode,T,l,_,w,S;if(h.length!==0){c.lower=i.showupperhalf,c.upper=i.showlowerhalf,c.diagonal=i.diagonal.visible;var E=i._visibleDims,m=h.length,b=s.viewOpts={};for(b.ranges=new Array(m),b.domains=new Array(m),S=0;S<E.length;S++){_=E[S];var d=b.ranges[S]=new Array(4),u=b.domains[S]=new Array(4);T=A.getFromId(t,i._diag[_][0]),T&&(d[0]=T._rl[0],d[2]=T._rl[1],u[0]=T.domain[0],u[2]=T.domain[1]),l=A.getFromId(t,i._diag[_][1]),l&&(d[1]=l._rl[0],d[3]=l._rl[1],u[1]=l.domain[0],u[3]=l.domain[1])}var y=t._context.plotGlPixelRatio,f=a.l*y,P=a.b*y,L=a.w*y,z=a.h*y;b.viewport=[f,P,L+f,z+P],s.matrix===!0&&(s.matrix=g(v));var F=o.clickmode.indexOf("select")>-1,B=M(p)||!!i.selectedpoints||F,O=!0;if(B){var I=i._length;if(i.selectedpoints){s.selectBatch=i.selectedpoints;var N=i.selectedpoints,U={};for(_=0;_<N.length;_++)U[N[_]]=!0;var W=[];for(_=0;_<I;_++)U[_]||W.push(_);s.unselectBatch=W}var Q=n.xpx=new Array(m),ue=n.ypx=new Array(m);for(S=0;S<E.length;S++){if(_=E[S],T=A.getFromId(t,i._diag[_][0]),T)for(Q[S]=new Array(I),w=0;w<I;w++)Q[S][w]=T.c2p(h[S][w]);if(l=A.getFromId(t,i._diag[_][1]),l)for(ue[S]=new Array(I),w=0;w<I;w++)ue[S][w]=l.c2p(h[S][w])}if(s.selectBatch.length||s.unselectBatch.length){var se=x.extendFlat({},c,s.unselectedOptions,b),he=x.extendFlat({},c,s.selectedOptions,b);s.matrix.update(se,he),O=!1}}else n.xpx=n.ypx=null;if(O){var G=x.extendFlat({},c,b);s.matrix.update(G,null)}}}}}),ck=Ye({"src/traces/splom/helpers.js"(X){"use strict";X.getDimIndex=function(g,x){for(var A=x._id,M=A.charAt(0),e={x:0,y:1}[M],t=g._visibleDims,r=0;r<t.length;r++){var o=t[r];if(g._diag[o][e]===A)return r}return!1}}}),bV=Ye({"src/traces/splom/hover.js"(X,H){"use strict";var g=ck(),x=hT().calcHover,A=Co().getFromId,M=Oo().extendFlat;function e(r,o,a,i,n){n||(n={});var s=(i||"").charAt(0)==="x",c=(i||"").charAt(0)==="y",h=t(r,o,a);if((s||c)&&n.hoversubplots==="axis"&&h[0])for(var v=(s?r.xa:r.ya)._subplotsWith,p=n.gd,T=M({},r),l=0;l<v.length;l++){var _=v[l];if(_!==r.xa._id+r.ya._id){c?T.xa=A(p,_,"x"):T.ya=A(p,_,"y");var w=s||c,S=t(T,o,a,w);h=h.concat(S)}}return h}function t(r,o,a,i){var n=r.cd,s=n[0].trace,c=r.scene,h=c.matrixOptions.cdata,v=r.xa,p=r.ya,T=v.c2p(o),l=p.c2p(a),_=r.distance,w=g.getDimIndex(s,v),S=g.getDimIndex(s,p);if(w===!1||S===!1)return[r];for(var E=h[w],m=h[S],b,d,u=_,y=0;y<E.length;y++)if(!(i&&y!==r.index)){var f=E[y],P=m[y],L=v.c2p(f)-T,z=p.c2p(P)-l,F=Math.sqrt(L*L+z*z);(i||F<u)&&(u=d=F,b=y)}return r.index=b,r.distance=u,r.dxy=d,b===void 0?[r]:[x(r,E,m,s)]}H.exports={hoverPoints:e}}}),wV=Ye({"src/traces/splom/select.js"(X,H){"use strict";var g=ta(),x=g.pushUnique,A=uu(),M=ck();H.exports=function(t,r){var o=t.cd,a=o[0].trace,i=o[0].t,n=t.scene,s=n.matrixOptions.cdata,c=t.xaxis,h=t.yaxis,v=[];if(!n)return v;var p=!A.hasMarkers(a)&&!A.hasText(a);if(a.visible!==!0||p)return v;var T=M.getDimIndex(a,c),l=M.getDimIndex(a,h);if(T===!1||l===!1)return v;var _=i.xpx[T],w=i.ypx[l],S=s[T],E=s[l],m=(t.scene.selectBatch||[]).slice(),b=[];if(r!==!1&&!r.degenerate)for(var d=0;d<S.length;d++)r.contains([_[d],w[d]],null,d,t)?(v.push({pointNumber:d,x:S[d],y:E[d]}),x(m,d)):m.indexOf(d)!==-1?x(m,d):b.push(d);var u=n.matrixOptions;return!m.length&&!b.length?n.matrix.update(u,null):!n.selectBatch.length&&!n.unselectBatch.length&&n.matrix.update(n.unselectedOptions,g.extendFlat({},u,n.selectedOptions,n.viewOpts)),n.selectBatch=m,n.unselectBatch=b,v}}}),TV=Ye({"src/traces/splom/edit_style.js"(X,H){"use strict";var g=ta(),x=Fd(),A=m0().markerStyle;H.exports=function(e,t){var r=t.trace,o=e._fullLayout._splomScenes[r.uid];if(o){x(e,r),g.extendFlat(o.matrixOptions,A(e,r));var a=g.extendFlat({},o.matrixOptions,o.viewOpts);o.matrix.update(a,null)}}}}),AV=Ye({"src/traces/splom/base_index.js"(X,H){"use strict";var g=Hn(),x=GS();H.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:uk(),supplyDefaults:pV(),colorbar:cp(),calc:vV(),plot:xV(),hoverPoints:bV().hoverPoints,selectPoints:wV(),editStyle:TV(),meta:{}},g.register(x)}}),SV=Ye({"src/traces/splom/base_plot.js"(X,H){"use strict";var g=J5(),x=Hn(),A=_T(),M=jh().getModuleCalcData,e=Pf(),t=Xc().getFromId,r=Co().shouldShowZeroLine,o="splom",a={};function i(p){var T=p._fullLayout,l=x.getModule(o),_=M(p.calcdata,l)[0],w=A(p,["ANGLE_instanced_arrays","OES_element_index_uint"],a);w&&(T._hasOnlyLargeSploms&&c(p),l.plot(p,{},_))}function n(p){var T=p.calcdata,l=p._fullLayout;l._hasOnlyLargeSploms&&c(p);for(var _=0;_<T.length;_++){var w=T[_][0],S=w.trace,E=l._splomScenes[S.uid];S.type==="splom"&&E&&E.matrix&&s(p,S,E)}}function s(p,T,l){for(var _=l.matrixOptions.data.length,w=T._visibleDims,S=l.viewOpts.ranges=new Array(_),E=0;E<w.length;E++){var m=w[E],b=S[E]=new Array(4),d=t(p,T._diag[m][0]);d&&(b[0]=d.r2l(d.range[0]),b[2]=d.r2l(d.range[1]));var u=t(p,T._diag[m][1]);u&&(b[1]=u.r2l(u.range[0]),b[3]=u.r2l(u.range[1]))}l.selectBatch.length||l.unselectBatch.length?l.matrix.update({ranges:S},{ranges:S}):l.matrix.update({ranges:S})}function c(p){var T=p._fullLayout,l=T._glcanvas.data()[0].regl,_=T._splomGrid;_||(_=T._splomGrid=g(l)),_.update(h(p))}function h(p){var T=p._context.plotGlPixelRatio,l=p._fullLayout,_=l._size,w=[0,0,l.width*T,l.height*T],S={},E;function m(W,Q,ue,se,he,G){ue*=T,se*=T,he*=T,G*=T;var $=Q[W+"color"],J=Q[W+"width"],Z=String($+J);Z in S?S[Z].data.push(NaN,NaN,ue,se,he,G):S[Z]={data:[ue,se,he,G],join:"rect",thickness:J*T,color:$,viewport:w,range:w,overlay:!1}}for(E in l._splomSubplots){var b=l._plots[E],d=b.xaxis,u=b.yaxis,y=d._gridVals,f=u._gridVals,P=d._offset,L=d._length,z=u._length,F=_.b+u.domain[0]*_.h,B=-u._m,O=-B*u.r2l(u.range[0],u.calendar),I,N;if(d.showgrid)for(E=0;E<y.length;E++)I=P+d.l2p(y[E].x),m("grid",d,I,F,I,F+z);if(u.showgrid)for(E=0;E<f.length;E++)N=F+O+B*f[E].x,m("grid",u,P,N,P+L,N);r(p,d,u)&&(I=P+d.l2p(0),m("zeroline",d,I,F,I,F+z)),r(p,u,d)&&(N=F+O+0,m("zeroline",u,P,N,P+L,N))}var U=[];for(E in S)U.push(S[E]);return U}function v(p,T,l,_){var w={},S;if(_._splomScenes){for(S=0;S<p.length;S++){var E=p[S];E.type==="splom"&&(w[E.uid]=1)}for(S=0;S<l.length;S++){var m=l[S];if(!w[m.uid]){var b=_._splomScenes[m.uid];b&&b.destroy&&b.destroy(),_._splomScenes[m.uid]=null,delete _._splomScenes[m.uid]}}}Object.keys(_._splomScenes||{}).length===0&&delete _._splomScenes,_._splomGrid&&!T._hasOnlyLargeSploms&&_._hasOnlyLargeSploms&&(_._splomGrid.destroy(),_._splomGrid=null,delete _._splomGrid),e.clean(p,T,l,_)}H.exports={name:o,attr:e.attr,attrRegex:e.attrRegex,layoutAttributes:e.layoutAttributes,supplyLayoutDefaults:e.supplyLayoutDefaults,drawFramework:e.drawFramework,plot:i,drag:n,updateGrid:c,clean:v,updateFx:e.updateFx,toSVG:e.toSVG,reglPrecompiled:a}}}),MV=Ye({"src/traces/splom/index.js"(X,H){"use strict";var g=AV();g.basePlotModule=SV(),H.exports=g}}),EV=Ye({"lib/splom.js"(X,H){"use strict";H.exports=MV()}}),fk=Ye({"src/traces/parcoords/attributes.js"(X,H){"use strict";var g=tu(),x=Vh(),A=Au(),M=Wu().attributes,e=Oo().extendFlat,t=cl().templatedArray;H.exports={domain:M({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:A({editType:"plot"}),tickfont:A({autoShadowDflt:!0,editType:"plot"}),rangefont:A({editType:"plot"}),dimensions:t("dimension",{label:{valType:"string",editType:"plot"},tickvals:e({},x.tickvals,{editType:"plot"}),ticktext:e({},x.ticktext,{editType:"plot"}),tickformat:e({},x.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:e({editType:"calc"},g("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}}}),wx=Ye({"src/traces/parcoords/constants.js"(X,H){"use strict";H.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}}}),kv=Ye({"src/lib/gup.js"(X,H){"use strict";var g=T_();function x(A){return[A]}H.exports={keyFun:function(A){return A.key},repeat:x,descend:g,wrap:x,unwrap:function(A){return A[0]}}}}),hk=Ye({"src/traces/parcoords/axisbrush.js"(X,H){"use strict";var g=wx(),x=_n(),A=kv().keyFun,M=kv().repeat,e=ta().sorterAsc,t=ta().strTranslate,r=g.bar.snapRatio;function o(U,W){return U*(1-r)+W*r}var a=g.bar.snapClose;function i(U,W){return U*(1-a)+W*a}function n(U,W,Q,ue){if(s(Q,ue))return Q;var se=U?-1:1,he=0,G=W.length-1;if(se<0){var $=he;he=G,G=$}for(var J=W[he],Z=J,re=he;se*re<se*G;re+=se){var ne=re+se,j=W[ne];if(se*Q<se*i(J,j))return o(J,Z);if(se*Q<se*j||ne===G)return o(j,J);Z=J,J=j}}function s(U,W){for(var Q=0;Q<W.length;Q++)if(U>=W[Q][0]&&U<=W[Q][1])return!0;return!1}function c(U){U.attr("x",-g.bar.captureWidth/2).attr("width",g.bar.captureWidth)}function h(U){U.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function v(U){if(!U.brush.filterSpecified)return"0,"+U.height;for(var W=p(U.brush.filter.getConsolidated(),U.height),Q=[0],ue,se,he,G=W.length?W[0][0]:null,$=0;$<W.length;$++)ue=W[$],se=ue[1]-ue[0],Q.push(G),Q.push(se),he=$+1,he<W.length&&(G=W[he][0]-ue[1]);return Q.push(U.height),Q}function p(U,W){return U.map(function(Q){return Q.map(function(ue){return Math.max(0,ue*W)}).sort(e)})}function T(U,W){var Q=g.bar.handleHeight;if(!(W>U[1]+Q||W<U[0]-Q))return W>=.9*U[1]+.1*U[0]?"n":W<=.9*U[0]+.1*U[1]?"s":"ns"}function l(){x.select(document.body).style("cursor",null)}function _(U){U.attr("stroke-dasharray",v)}function w(U,W){var Q=x.select(U).selectAll(".highlight, .highlight-shadow"),ue=W?Q.transition().duration(g.bar.snapDuration).each("end",W):Q;_(ue)}function S(U,W){var Q=U.brush,ue=Q.filterSpecified,se=NaN,he={},G;if(ue){var $=U.height,J=Q.filter.getConsolidated(),Z=p(J,$),re=NaN,ne=NaN,j=NaN;for(G=0;G<=Z.length;G++){var ee=Z[G];if(ee&&ee[0]<=W&&W<=ee[1]){re=G;break}else if(ne=G?G-1:NaN,ee&&ee[0]>W){j=G;break}}if(se=re,isNaN(se)&&(isNaN(ne)||isNaN(j)?se=isNaN(ne)?j:ne:se=W-Z[ne][1]<Z[j][0]-W?ne:j),!isNaN(se)){var ie=Z[se],fe=T(ie,W);fe&&(he.interval=J[se],he.intervalPix=ie,he.region=fe)}}if(U.ordinal&&!he.region){var be=U.unitTickvals,Ae=U.unitToPaddedPx.invert(W);for(G=0;G<be.length;G++){var Be=[be[Math.max(G-1,0)]*.25+be[G]*.75,be[Math.min(G+1,be.length-1)]*.25+be[G]*.75];if(Ae>=Be[0]&&Ae<=Be[1]){he.clickableOrdinalRange=Be;break}}}return he}function E(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.unitToPaddedPx.invert(Q),se=W.brush,he=S(W,Q),G=he.interval,$=se.svgBrush;if($.wasDragged=!1,$.grabbingBar=he.region==="ns",$.grabbingBar){var J=G.map(W.unitToPaddedPx);$.grabPoint=Q-J[0]-g.verticalPadding,$.barLength=J[1]-J[0]}$.clickableOrdinalRange=he.clickableOrdinalRange,$.stayingIntervals=W.multiselect&&se.filterSpecified?se.filter.getConsolidated():[],G&&($.stayingIntervals=$.stayingIntervals.filter(function(Z){return Z[0]!==G[0]&&Z[1]!==G[1]})),$.startExtent=he.region?G[he.region==="s"?1:0]:ue,W.parent.inBrushDrag=!0,$.brushStartCallback()}function m(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.brush.svgBrush;ue.wasDragged=!0,ue._dragging=!0,ue.grabbingBar?ue.newExtent=[Q-ue.grabPoint,Q+ue.barLength-ue.grabPoint].map(W.unitToPaddedPx.invert):ue.newExtent=[ue.startExtent,W.unitToPaddedPx.invert(Q)].sort(e),W.brush.filterSpecified=!0,ue.extent=ue.stayingIntervals.concat([ue.newExtent]),ue.brushCallback(W),w(U.parentNode)}function b(U,W){var Q=W.brush,ue=Q.filter,se=Q.svgBrush;se._dragging||(d(U,W),m(U,W),W.brush.svgBrush.wasDragged=!1),se._dragging=!1;var he=x.event;he.sourceEvent.stopPropagation();var G=se.grabbingBar;if(se.grabbingBar=!1,se.grabLocation=void 0,W.parent.inBrushDrag=!1,l(),!se.wasDragged){se.wasDragged=void 0,se.clickableOrdinalRange?Q.filterSpecified&&W.multiselect?se.extent.push(se.clickableOrdinalRange):(se.extent=[se.clickableOrdinalRange],Q.filterSpecified=!0):G?(se.extent=se.stayingIntervals,se.extent.length===0&&z(Q)):z(Q),se.brushCallback(W),w(U.parentNode),se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[]);return}var $=function(){ue.set(ue.getConsolidated())};if(W.ordinal){var J=W.unitTickvals;J[J.length-1]<J[0]&&J.reverse(),se.newExtent=[n(0,J,se.newExtent[0],se.stayingIntervals),n(1,J,se.newExtent[1],se.stayingIntervals)];var Z=se.newExtent[1]>se.newExtent[0];se.extent=se.stayingIntervals.concat(Z?[se.newExtent]:[]),se.extent.length||z(Q),se.brushCallback(W),Z?w(U.parentNode,$):($(),w(U.parentNode))}else $();se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[])}function d(U,W){var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=S(W,Q),se="crosshair";ue.clickableOrdinalRange?se="pointer":ue.region&&(se=ue.region+"-resize"),x.select(document.body).style("cursor",se)}function u(U){U.on("mousemove",function(W){x.event.preventDefault(),W.parent.inBrushDrag||d(this,W)}).on("mouseleave",function(W){W.parent.inBrushDrag||l()}).call(x.behavior.drag().on("dragstart",function(W){E(this,W)}).on("drag",function(W){m(this,W)}).on("dragend",function(W){b(this,W)}))}function y(U,W){return U[0]-W[0]}function f(U,W,Q){var ue=Q._context.staticPlot,se=U.selectAll(".background").data(M);se.enter().append("rect").classed("background",!0).call(c).call(h).style("pointer-events",ue?"none":"auto").attr("transform",t(0,g.verticalPadding)),se.call(u).attr("height",function($){return $.height-g.verticalPadding});var he=U.selectAll(".highlight-shadow").data(M);he.enter().append("line").classed("highlight-shadow",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width+g.bar.strokeWidth).attr("stroke",W).attr("opacity",g.bar.strokeOpacity).attr("stroke-linecap","butt"),he.attr("y1",function($){return $.height}).call(_);var G=U.selectAll(".highlight").data(M);G.enter().append("line").classed("highlight",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width-g.bar.strokeWidth).attr("stroke",g.bar.fillColor).attr("opacity",g.bar.fillOpacity).attr("stroke-linecap","butt"),G.attr("y1",function($){return $.height}).call(_)}function P(U,W,Q){var ue=U.selectAll("."+g.cn.axisBrush).data(M,A);ue.enter().append("g").classed(g.cn.axisBrush,!0),f(ue,W,Q)}function L(U){return U.svgBrush.extent.map(function(W){return W.slice()})}function z(U){U.filterSpecified=!1,U.svgBrush.extent=[[-1/0,1/0]]}function F(U){return function(Q){var ue=Q.brush,se=L(ue),he=se.slice();ue.filter.set(he),U()}}function B(U){for(var W=U.slice(),Q=[],ue,se=W.shift();se;){for(ue=se.slice();(se=W.shift())&&se[0]<=ue[1];)ue[1]=Math.max(ue[1],se[1]);Q.push(ue)}return Q.length===1&&Q[0][0]>Q[0][1]&&(Q=[]),Q}function O(){var U=[],W,Q;return{set:function(ue){U=ue.map(function(se){return se.slice().sort(e)}).sort(y),U.length===1&&U[0][0]===-1/0&&U[0][1]===1/0&&(U=[[0,-1]]),W=B(U),Q=U.reduce(function(se,he){return[Math.min(se[0],he[0]),Math.max(se[1],he[1])]},[1/0,-1/0])},get:function(){return U.slice()},getConsolidated:function(){return W},getBounds:function(){return Q}}}function I(U,W,Q,ue,se,he){var G=O();return G.set(Q),{filter:G,filterSpecified:W,svgBrush:{extent:[],brushStartCallback:ue,brushCallback:F(se),brushEndCallback:he}}}function N(U,W){if(Array.isArray(U[0])?(U=U.map(function(ue){return ue.sort(e)}),W.multiselect?U=B(U.sort(y)):U=[U[0]]):U=[U.sort(e)],W.tickvals){var Q=W.tickvals.slice().sort(e);if(U=U.map(function(ue){var se=[n(0,Q,ue[0],[]),n(1,Q,ue[1],[])];if(se[1]>se[0])return se}).filter(function(ue){return ue}),!U.length)return}return U.length>1?U:U[0]}H.exports={makeBrush:I,ensureAxisBrush:P,cleanRanges:N}}}),kV=Ye({"src/traces/parcoords/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=Co(),r=fk(),o=hk(),a=wx().maxDimensionCount,i=xT();function n(c,h,v,p,T){var l=T("line.color",v);if(x(c,"line")&&g.isArrayOrTypedArray(l)){if(l.length)return T("line.colorscale"),A(c,h,p,T,{prefix:"line.",cLetter:"c"}),l.length;h.line.color=v}return 1/0}function s(c,h,v,p){function T(E,m){return g.coerce(c,h,r.dimensions,E,m)}var l=T("values"),_=T("visible");if(l&&l.length||(_=h.visible=!1),_){T("label"),T("tickvals"),T("ticktext"),T("tickformat");var w=T("range");h._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:w},t.setConvert(h._ax,p.layout),T("multiselect");var S=T("constraintrange");S&&(h.constraintrange=o.cleanRanges(S,h))}}H.exports=function(h,v,p,T){function l(m,b){return g.coerce(h,v,r,m,b)}var _=h.dimensions;Array.isArray(_)&&_.length>a&&(g.log("parcoords traces support up to "+a+" dimensions at the moment"),_.splice(a));var w=e(h,v,{name:"dimensions",layout:T,handleItemDefaults:s}),S=n(h,v,p,T,l);M(v,T,l),(!Array.isArray(w)||!w.length)&&(v.visible=!1),i(v,w,"values",S);var E=g.extendFlat({},T.font,{size:Math.round(T.font.size/1.2)});g.coerceFont(l,"labelfont",E),g.coerceFont(l,"tickfont",E,{autoShadowDflt:!0}),g.coerceFont(l,"rangefont",E),l("labelangle"),l("labelside"),l("unselected.line.color"),l("unselected.line.opacity")}}}),CV=Ye({"src/traces/parcoords/calc.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Su(),A=kv().wrap;H.exports=function(t,r){var o,a;return x.hasColorscale(r,"line")&&g(r.line.color)?(o=r.line.color,a=x.extractOpts(r.line).colorscale,x.calc(t,r,{vals:o,containerStr:"line",cLetter:"c"})):(o=M(r._length),a=[[0,r.line.color],[1,r.line.color]]),A({lineColor:o,cscale:a})};function M(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=.5;return t}}});function LV(X){var H,g,x,A=[],M=1,e;if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(X=String(X).toLowerCase(),bT.default[X])A=bT.default[X].slice(),e="rgb";else if(X==="transparent")M=0,e="rgb",A=[0,0,0];else if(X[0]==="#"){var t=X.slice(1),r=t.length,o=r<=4;M=1,o?(A=[parseInt(t[0]+t[0],16),parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16)],r===4&&(M=parseInt(t[3]+t[3],16)/255)):(A=[parseInt(t[0]+t[1],16),parseInt(t[2]+t[3],16),parseInt(t[4]+t[5],16)],r===8&&(M=parseInt(t[6]+t[7],16)/255)),A[0]||(A[0]=0),A[1]||(A[1]=0),A[2]||(A[2]=0),e="rgb"}else if(x=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(X)){var a=x[1];e=a.replace(/a$/,"");var i=e==="cmyk"?4:e==="gray"?1:3;A=x[2].trim().split(/\s*[,\/]\s*|\s+/),e==="color"&&(e=A.shift()),A=A.map(function(n,s){if(n[n.length-1]==="%")return n=parseFloat(n)/100,s===3?n:e==="rgb"?n*255:e[0]==="h"||e[0]==="l"&&!s?n*100:e==="lab"?n*125:e==="lch"?s<2?n*150:n*360:e[0]==="o"&&!s?n:e==="oklab"?n*.4:e==="oklch"?s<2?n*.4:n*360:n;if(e[s]==="h"||s===2&&e[e.length-1]==="h"){if(wT[n]!==void 0)return wT[n];if(n.endsWith("deg"))return parseFloat(n);if(n.endsWith("turn"))return parseFloat(n)*360;if(n.endsWith("grad"))return parseFloat(n)*360/400;if(n.endsWith("rad"))return parseFloat(n)*180/Math.PI}return n==="none"?0:parseFloat(n)}),M=A.length>i?A.pop():1}else/[0-9](?:\s|\/|,)/.test(X)&&(A=X.match(/([0-9]+)/g).map(function(n){return parseFloat(n)}),e=((g=(H=X.match(/([a-z])/ig))==null?void 0:H.join(""))==null?void 0:g.toLowerCase())||"rgb");return{space:e,values:A,alpha:M}}var bT,pk,wT,PV=Qn({"node_modules/color-parse/index.js"(){bT=Ul(d5(),1),pk=LV,wT={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),Tx,dk=Qn({"node_modules/color-space/rgb.js"(){Tx={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}}}),Ax,IV=Qn({"node_modules/color-space/hsl.js"(){dk(),Ax={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(X){var H=X[0]/360,g=X[1]/100,x=X[2]/100,A,M,e,t,r,o=0;if(g===0)return r=x*255,[r,r,r];for(M=x<.5?x*(1+g):x+g-x*g,A=2*x-M,t=[0,0,0];o<3;)e=H+1/3*-(o-1),e<0?e++:e>1&&e--,r=6*e<1?A+(M-A)*6*e:2*e<1?M:3*e<2?A+(M-A)*(2/3-e)*6:A,t[o++]=r*255;return t}},Tx.hsl=function(X){var H=X[0]/255,g=X[1]/255,x=X[2]/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=M-A,t,r,o;return M===A?t=0:H===M?t=(g-x)/e:g===M?t=2+(x-H)/e:x===M&&(t=4+(H-g)/e),t=Math.min(t*60,360),t<0&&(t+=360),o=(A+M)/2,M===A?r=0:o<=.5?r=e/(M+A):r=e/(2-M-A),[t,r*100,o*100]}}}),vk={};Ps(vk,{default:()=>RV});function RV(X){Array.isArray(X)&&X.raw&&(X=String.raw(...arguments)),X instanceof Number&&(X=+X);var H,g,x,A=pk(X);if(!A.space)return[];let M=A.space[0]==="h"?Ax.min:Tx.min,e=A.space[0]==="h"?Ax.max:Tx.max;return H=Array(3),H[0]=Math.min(Math.max(A.values[0],M[0]),e[0]),H[1]=Math.min(Math.max(A.values[1],M[1]),e[1]),H[2]=Math.min(Math.max(A.values[2],M[2]),e[2]),A.space[0]==="h"&&(H=Ax.rgb(H)),H.push(Math.min(Math.max(A.alpha,0),1)),H}var DV=Qn({"node_modules/color-rgba/index.js"(){PV(),dk(),IV()}}),mk=Ye({"src/traces/parcoords/helpers.js"(X){"use strict";var H=ta().isTypedArray;X.convertTypedArray=function(g){return H(g)?Array.prototype.slice.call(g):g},X.isOrdinal=function(g){return!!g.tickvals},X.isVisible=function(g){return g.visible||!("visible"in g)}}}),zV=Ye({"src/traces/parcoords/lines.js"(X,H){"use strict";var g=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,","               p17_20, p21_24, p25_28, p29_32,","               p33_36, p37_40, p41_44, p45_48,","               p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,","             loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick    = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {","    return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {","    float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);","    float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);","    return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {","    return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {","    return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {","    return (","        fOutside(p[0], lo[0], hi[0]) ||","        fOutside(p[1], lo[1], hi[1]) ||","        fOutside(p[2], lo[2], hi[2]) ||","        fOutside(p[3], lo[3], hi[3])","    );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {","    return (","        vOutside(p[0], lo[0], hi[0]) ||","        vOutside(p[1], lo[1], hi[1]) ||","        vOutside(p[2], lo[2], hi[2]) ||","        vOutside(p[3], lo[3], hi[3])","    );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {","    return mOutside(A, loA, hiA) ||","           mOutside(B, loB, hiB) ||","           mOutside(C, loC, hiC) ||","           mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {","    mat4 pnts[4];","    pnts[0] = A;","    pnts[1] = B;","    pnts[2] = C;","    pnts[3] = D;","","    for(int i = 0; i < 4; ++i) {","        for(int j = 0; j < 4; ++j) {","            for(int k = 0; k < 4; ++k) {","                if(0 == iMod(","                    int(255.0 * texture2D(maskTexture,","                        vec2(","                            (float(i * 2 + j / 2) + 0.5) / 8.0,","                            (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight","                        ))[3]","                    ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),","                    2","                )) return true;","            }","        }","    }","    return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {","    float x = 0.5 * sign(v) + 0.5;","    float y = axisY(x, A, B, C, D);","    float z = 1.0 - abs(v);","","    z += isContext ? 0.0 : 2.0 * float(","        outsideBoundingBox(A, B, C, D) ||","        outsideRasterMask(A, B, C, D)","    );","","    return vec4(","        2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,","        z,","        1.0","    );","}","","void main() {","    mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);","    mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);","    mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);","    mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);","","    float v = colors[3];","","    gl_Position = position(isContext, v, A, B, C, D);","","    fragColor =","        isContext ? vec4(contextColor) :","        isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(`
`),x=["precision highp float;","","varying vec4 fragColor;","","void main() {","    gl_FragColor = fragColor;","}"].join(`
`),A=wx().maxDimensionCount,M=ta(),e=1e-6,t=2048,r=new Uint8Array(4),o=new Uint8Array(4),a={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function i(b){b.read({x:0,y:0,width:1,height:1,data:r})}function n(b,d,u,y,f){var P=b._gl;P.enable(P.SCISSOR_TEST),P.scissor(d,u,y,f),b.clear({color:[0,0,0,0],depth:1})}function s(b,d,u,y,f,P){var L=P.key;function z(F){var B=Math.min(y,f-F*y);F===0&&(window.cancelAnimationFrame(u.currentRafs[L]),delete u.currentRafs[L],n(b,P.scissorX,P.scissorY,P.scissorWidth,P.viewBoxSize[1])),!u.clearOnly&&(P.count=2*B,P.offset=2*F*y,d(P),F*y+B<f&&(u.currentRafs[L]=window.requestAnimationFrame(function(){z(F+1)})),u.drawCompleted=!1)}u.drawCompleted||(i(b),u.drawCompleted=!0),z(0)}function c(b){return Math.max(e,Math.min(1-e,b))}function h(b,d){for(var u=new Array(256),y=0;y<256;y++)u[y]=b(y/255).concat(d);return u}function v(b,d){return(b>>>8*d)%256/255}function p(b,d,u){for(var y=new Array(b*(A+4)),f=0,P=0;P<b;P++){for(var L=0;L<A;L++)y[f++]=L<d.length?d[L].paddedUnitValues[P]:.5;y[f++]=v(P,2),y[f++]=v(P,1),y[f++]=v(P,0),y[f++]=c(u[P])}return y}function T(b,d,u){for(var y=new Array(d*8),f=0,P=0;P<d;P++)for(var L=0;L<2;L++)for(var z=0;z<4;z++){var F=b*4+z,B=u[P*64+F];F===63&&L===0&&(B*=-1),y[f++]=B}return y}function l(b){var d="0"+b;return d.substr(d.length-2)}function _(b){return b<A?"p"+l(b+1)+"_"+l(b+4):"colors"}function w(b,d,u){for(var y=0;y<=A;y+=4)b[_(y)](T(y/4,d,u))}function S(b){for(var d={},u=0;u<=A;u+=4)d[_(u)]=b.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return d}function E(b,d,u,y,f,P,L,z,F,B,O,I,N,U){for(var W=[[],[]],Q=0;Q<64;Q++)W[0][Q]=Q===f?1:0,W[1][Q]=Q===P?1:0;L*=U,z*=U,F*=U,B*=U;var ue=b.lines.canvasOverdrag*U,se=b.domain,he=b.canvasWidth*U,G=b.canvasHeight*U,$=b.pad.l*U,J=b.pad.b*U,Z=b.layoutHeight*U,re=b.layoutWidth*U,ne=b.deselectedLines.color,j=b.deselectedLines.opacity,ee=M.extendFlat({key:O,resolution:[he,G],viewBoxPos:[L+ue,z],viewBoxSize:[F,B],i0:f,i1:P,dim0A:W[0].slice(0,16),dim0B:W[0].slice(16,32),dim0C:W[0].slice(32,48),dim0D:W[0].slice(48,64),dim1A:W[1].slice(0,16),dim1B:W[1].slice(16,32),dim1C:W[1].slice(32,48),dim1D:W[1].slice(48,64),drwLayer:I,contextColor:[ne[0]/255,ne[1]/255,ne[2]/255,j!=="auto"?ne[3]*j:Math.max(1/255,Math.pow(1/b.lines.color.length,1/3))],scissorX:(y===d?0:L+ue)+($-ue)+re*se.x[0],scissorWidth:(y===u?he-L+ue:F+.5)+(y===d?L+ue:0),scissorY:z+J+Z*se.y[0],scissorHeight:B,viewportX:$-ue+re*se.x[0],viewportY:J+Z*se.y[0],viewportWidth:he,viewportHeight:G},N);return ee}function m(b){var d=t-1,u=Math.max(0,Math.floor(b[0]*d),0),y=Math.min(d,Math.ceil(b[1]*d),d);return[Math.min(u,y),Math.max(u,y)]}H.exports=function(b,d){var u=d.context,y=d.pick,f=d.regl,P=f._gl,L=P.getParameter(P.ALIASED_LINE_WIDTH_RANGE),z=Math.max(L[0],Math.min(L[1],d.viewModel.plotGlPixelRatio)),F={currentRafs:{},drawCompleted:!0,clearOnly:!1},B,O,I,N,U=S(f),W,Q=f.texture(a),ue=[];he(d);var se=f({profile:!1,blend:{enable:u,func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:1,dstAlpha:1},equation:{rgb:"add",alpha:"add"},color:[0,0,0,0]},depth:{enable:!u,mask:!0,func:"less",range:[0,1]},cull:{enable:!0,face:"back"},scissor:{enable:!0,box:{x:f.prop("scissorX"),y:f.prop("scissorY"),width:f.prop("scissorWidth"),height:f.prop("scissorHeight")}},viewport:{x:f.prop("viewportX"),y:f.prop("viewportY"),width:f.prop("viewportWidth"),height:f.prop("viewportHeight")},dither:!1,vert:g,frag:x,primitive:"lines",lineWidth:z,attributes:U,uniforms:{resolution:f.prop("resolution"),viewBoxPos:f.prop("viewBoxPos"),viewBoxSize:f.prop("viewBoxSize"),dim0A:f.prop("dim0A"),dim1A:f.prop("dim1A"),dim0B:f.prop("dim0B"),dim1B:f.prop("dim1B"),dim0C:f.prop("dim0C"),dim1C:f.prop("dim1C"),dim0D:f.prop("dim0D"),dim1D:f.prop("dim1D"),loA:f.prop("loA"),hiA:f.prop("hiA"),loB:f.prop("loB"),hiB:f.prop("hiB"),loC:f.prop("loC"),hiC:f.prop("hiC"),loD:f.prop("loD"),hiD:f.prop("hiD"),palette:Q,contextColor:f.prop("contextColor"),maskTexture:f.prop("maskTexture"),drwLayer:f.prop("drwLayer"),maskHeight:f.prop("maskHeight")},offset:f.prop("offset"),count:f.prop("count")});function he(ne){B=ne.model,O=ne.viewModel,I=O.dimensions.slice(),N=I[0]?I[0].values.length:0;var j=B.lines,ee=y?j.color.map(function(fe,be){return be/j.color.length}):j.color,ie=p(N,I,ee);w(U,N,ie),!u&&!y&&(Q=f.texture(M.extendFlat({data:h(B.unitToColor,255)},a)))}function G(ne){var j,ee,ie,fe=[[],[]];for(ie=0;ie<64;ie++){var be=!ne&&ie<I.length?I[ie].brush.filter.getBounds():[-1/0,1/0];fe[0][ie]=be[0],fe[1][ie]=be[1]}var Ae=t*8,Be=new Array(Ae);for(j=0;j<Ae;j++)Be[j]=255;if(!ne)for(j=0;j<I.length;j++){var Ie=j%8,Ze=(j-Ie)/8,at=Math.pow(2,Ie),it=I[j],et=it.brush.filter.get();if(!(et.length<2)){var lt=m(et[0])[1];for(ee=1;ee<et.length;ee++){var Me=m(et[ee]);for(ie=lt+1;ie<Me[0];ie++)Be[ie*8+Ze]&=~at;lt=Math.max(lt,Me[1])}}}var ge={shape:[8,t],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:Be};return W?W(ge):W=f.texture(ge),{maskTexture:W,maskHeight:t,loA:fe[0].slice(0,16),loB:fe[0].slice(16,32),loC:fe[0].slice(32,48),loD:fe[0].slice(48,64),hiA:fe[1].slice(0,16),hiB:fe[1].slice(16,32),hiC:fe[1].slice(32,48),hiD:fe[1].slice(48,64)}}function $(ne,j,ee){var ie=ne.length,fe,be,Ae,Be=1/0,Ie=-1/0;for(fe=0;fe<ie;fe++)ne[fe].dim0.canvasX<Be&&(Be=ne[fe].dim0.canvasX,be=fe),ne[fe].dim1.canvasX>Ie&&(Ie=ne[fe].dim1.canvasX,Ae=fe);ie===0&&n(f,0,0,B.canvasWidth,B.canvasHeight);var Ze=G(u);for(fe=0;fe<ie;fe++){var at=ne[fe],it=at.dim0.crossfilterDimensionIndex,et=at.dim1.crossfilterDimensionIndex,lt=at.canvasX,Me=at.canvasY,ge=lt+at.panelSizeX,ce=at.plotGlPixelRatio;if(j||!ue[it]||ue[it][0]!==lt||ue[it][1]!==ge){ue[it]=[lt,ge];var ze=E(B,be,Ae,fe,it,et,lt,Me,at.panelSizeX,at.panelSizeY,at.dim0.crossfilterDimensionIndex,u?0:y?2:1,Ze,ce);F.clearOnly=ee;var tt=j?B.lines.blockLineCount:N;s(f,se,F,tt,N,ze)}}}function J(ne,j){return f.read({x:ne,y:j,width:1,height:1,data:o}),o}function Z(ne,j,ee,ie){var fe=new Uint8Array(4*ee*ie);return f.read({x:ne,y:j,width:ee,height:ie,data:fe}),fe}function re(){b.style["pointer-events"]="none",Q.destroy(),W&&W.destroy();for(var ne in U)U[ne].destroy()}return{render:$,readPixel:J,readPixels:Z,destroy:re,update:he}}}}),FV=Ye({"src/traces/parcoords/parcoords.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.isArrayOrTypedArray,M=x.numberFormat,e=(DV(),Hf(vk)).default,t=Co(),r=x.strRotate,o=x.strTranslate,a=jl(),i=Bo(),n=Su(),s=kv(),c=s.keyFun,h=s.repeat,v=s.unwrap,p=mk(),T=wx(),l=hk(),_=zV();function w(ue,se,he){return x.aggNums(ue,null,se,he)}function S(ue,se){return m(w(Math.min,ue,se),w(Math.max,ue,se))}function E(ue){var se=ue.range;return se?m(se[0],se[1]):S(ue.values,ue._length)}function m(ue,se){return(isNaN(ue)||!isFinite(ue))&&(ue=0),(isNaN(se)||!isFinite(se))&&(se=0),ue===se&&(ue===0?(ue-=1,se+=1):(ue*=.9,se*=1.1)),[ue,se]}function b(ue,se){return se?function(he,G){var $=se[G];return $??ue(he)}:ue}function d(ue,se,he,G,$){var J=E(he);return G?g.scale.ordinal().domain(G.map(b(M(he.tickformat),$))).range(G.map(function(Z){var re=(Z-J[0])/(J[1]-J[0]);return ue-se+re*(2*se-ue)})):g.scale.linear().domain(J).range([ue-se,se])}function u(ue,se){return g.scale.linear().range([se,ue-se])}function y(ue,se){return g.scale.linear().domain(E(ue)).range([se,1-se])}function f(ue){if(ue.tickvals){var se=E(ue);return g.scale.ordinal().domain(ue.tickvals).range(ue.tickvals.map(function(he){return(he-se[0])/(se[1]-se[0])}))}}function P(ue){var se=ue.map(function(J){return J[0]}),he=ue.map(function(J){var Z=e(J[1]);return g.rgb("rgb("+Z[0]+","+Z[1]+","+Z[2]+")")}),G=function(J){return function(Z){return Z[J]}},$="rgb".split("").map(function(J){return g.scale.linear().clamp(!0).domain(se).range(he.map(G(J)))});return function(J){return $.map(function(Z){return Z(J)})}}function L(ue){return ue.dimensions.some(function(se){return se.brush.filterSpecified})}function z(ue,se,he){var G=v(se),$=G.trace,J=p.convertTypedArray(G.lineColor),Z=$.line,re={color:e($.unselected.line.color),opacity:$.unselected.line.opacity},ne=n.extractOpts(Z),j=ne.reversescale?n.flipScale(G.cscale):G.cscale,ee=$.domain,ie=$.dimensions,fe=ue.width,be=$.labelangle,Ae=$.labelside,Be=$.labelfont,Ie=$.tickfont,Ze=$.rangefont,at=x.extendDeepNoArrays({},Z,{color:J.map(g.scale.linear().domain(E({values:J,range:[ne.min,ne.max],_length:$._length}))),blockLineCount:T.blockLineCount,canvasOverdrag:T.overdrag*T.canvasPixelRatio}),it=Math.floor(fe*(ee.x[1]-ee.x[0])),et=Math.floor(ue.height*(ee.y[1]-ee.y[0])),lt=ue.margin||{l:80,r:80,t:100,b:80},Me=it,ge=et;return{key:he,colCount:ie.filter(p.isVisible).length,dimensions:ie,tickDistance:T.tickDistance,unitToColor:P(j),lines:at,deselectedLines:re,labelAngle:be,labelSide:Ae,labelFont:Be,tickFont:Ie,rangeFont:Ze,layoutWidth:fe,layoutHeight:ue.height,domain:ee,translateX:ee.x[0]*fe,translateY:ue.height-ee.y[1]*ue.height,pad:lt,canvasWidth:Me*T.canvasPixelRatio+2*at.canvasOverdrag,canvasHeight:ge*T.canvasPixelRatio,width:Me,height:ge,canvasPixelRatio:T.canvasPixelRatio}}function F(ue,se,he){var G=he.width,$=he.height,J=he.dimensions,Z=he.canvasPixelRatio,re=function(fe){return G*fe/Math.max(1,he.colCount-1)},ne=T.verticalPadding/$,j=u($,T.verticalPadding),ee={key:he.key,xScale:re,model:he,inBrushDrag:!1},ie={};return ee.dimensions=J.filter(p.isVisible).map(function(fe,be){var Ae=y(fe,ne),Be=ie[fe.label];ie[fe.label]=(Be||0)+1;var Ie=fe.label+(Be?"__"+Be:""),Ze=fe.constraintrange,at=Ze&&Ze.length;at&&!A(Ze[0])&&(Ze=[Ze]);var it=at?Ze.map(function(Ct){return Ct.map(Ae)}):[[-1/0,1/0]],et=function(){var Ct=ee;Ct.focusLayer&&Ct.focusLayer.render(Ct.panels,!0);var St=L(Ct);!ue.contextShown()&&St?(Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!0),ue.contextShown(!0)):ue.contextShown()&&!St&&(Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!0,!0),ue.contextShown(!1))},lt=fe.values;lt.length>fe._length&&(lt=lt.slice(0,fe._length));var Me=fe.tickvals,ge;function ce(Ct,St){return{val:Ct,text:ge[St]}}function ze(Ct,St){return Ct.val-St.val}if(A(Me)&&Me.length){x.isTypedArray(Me)&&(Me=Array.from(Me)),ge=fe.ticktext,!A(ge)||!ge.length?ge=Me.map(M(fe.tickformat)):ge.length>Me.length?ge=ge.slice(0,Me.length):Me.length>ge.length&&(Me=Me.slice(0,ge.length));for(var tt=1;tt<Me.length;tt++)if(Me[tt]<Me[tt-1]){for(var nt=Me.map(ce).sort(ze),Qe=0;Qe<Me.length;Qe++)Me[Qe]=nt[Qe].val,ge[Qe]=nt[Qe].text;break}}else Me=void 0;return lt=p.convertTypedArray(lt),{key:Ie,label:fe.label,tickFormat:fe.tickformat,tickvals:Me,ticktext:ge,ordinal:p.isOrdinal(fe),multiselect:fe.multiselect,xIndex:be,crossfilterDimensionIndex:be,visibleIndex:fe._index,height:$,values:lt,paddedUnitValues:lt.map(Ae),unitTickvals:Me&&Me.map(Ae),xScale:re,x:re(be),canvasX:re(be)*Z,unitToPaddedPx:j,domainScale:d($,T.verticalPadding,fe,Me,ge),ordinalScale:f(fe),parent:ee,model:he,brush:l.makeBrush(ue,at,it,function(){ue.linePickActive(!1)},et,function(Ct){if(ee.focusLayer.render(ee.panels,!0),ee.pickLayer&&ee.pickLayer.render(ee.panels,!0),ue.linePickActive(!0),se&&se.filterChanged){var St=Ae.invert,Ot=Ct.map(function(jt){return jt.map(St).sort(x.sorterAsc)}).sort(function(jt,ur){return jt[0]-ur[0]});se.filterChanged(ee.key,fe._index,Ot)}})}}),ee}function B(ue){ue.classed(T.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function O(){var ue=!0,se=!1;return{linePickActive:function(he){return arguments.length?ue=!!he:ue},contextShown:function(he){return arguments.length?se=!!he:se}}}function I(ue,se){var he=se==="top"?1:-1,G=ue*Math.PI/180,$=Math.sin(G),J=Math.cos(G);return{dir:he,dx:$,dy:J,degrees:ue}}function N(ue,se,he){for(var G=se.panels||(se.panels=[]),$=ue.data(),J=0;J<$.length-1;J++){var Z=G[J]||(G[J]={}),re=$[J],ne=$[J+1];Z.dim0=re,Z.dim1=ne,Z.canvasX=re.canvasX,Z.panelSizeX=ne.canvasX-re.canvasX,Z.panelSizeY=se.model.canvasHeight,Z.y=0,Z.canvasY=0,Z.plotGlPixelRatio=he}}function U(ue){for(var se=0;se<ue.length;se++)for(var he=0;he<ue[se].length;he++)for(var G=ue[se][he].trace,$=G.dimensions,J=0;J<$.length;J++){var Z=$[J].values,re=$[J]._ax;re&&(re.range?re.range=m(re.range[0],re.range[1]):re.range=S(Z,G._length),re.dtick||(re.dtick=.01*(Math.abs(re.range[1]-re.range[0])||1)),re.tickformat=$[J].tickformat,t.calcTicks(re),re.cleanRange())}}function W(ue,se){return t.tickText(ue._ax,se,!1).text}function Q(ue,se){if(ue.ordinal)return"";var he=ue.domainScale.domain(),G=he[se?he.length-1:0];return W(ue.model.dimensions[ue.visibleIndex],G)}H.exports=function(se,he,G,$){var J=se._context.staticPlot,Z=se._fullLayout,re=Z._toppaper,ne=Z._glcontainer,j=se._context.plotGlPixelRatio,ee=se._fullLayout.paper_bgcolor;U(he);var ie=O(),fe=he.filter(function(Qe){return v(Qe).trace.visible}).map(z.bind(0,G)).map(F.bind(0,ie,$));ne.each(function(Qe,Ct){return x.extendFlat(Qe,fe[Ct])});var be=ne.selectAll(".gl-canvas").each(function(Qe){Qe.viewModel=fe[0],Qe.viewModel.plotGlPixelRatio=j,Qe.viewModel.paperColor=ee,Qe.model=Qe.viewModel?Qe.viewModel.model:null}),Ae=null,Be=be.filter(function(Qe){return Qe.pick});Be.style("pointer-events",J?"none":"auto").on("mousemove",function(Qe){if(ie.linePickActive()&&Qe.lineLayer&&$&&$.hover){var Ct=g.event,St=this.width,Ot=this.height,jt=g.mouse(this),ur=jt[0],ar=jt[1];if(ur<0||ar<0||ur>=St||ar>=Ot)return;var Cr=Qe.lineLayer.readPixel(ur,Ot-1-ar),vr=Cr[3]!==0,_r=vr?Cr[2]+256*(Cr[1]+256*Cr[0]):null,yt={x:ur,y:ar,clientX:Ct.clientX,clientY:Ct.clientY,dataIndex:Qe.model.key,curveNumber:_r};_r!==Ae&&(vr?$.hover(yt):$.unhover&&$.unhover(yt),Ae=_r)}}),be.style("opacity",function(Qe){return Qe.pick?0:1}),re.style("background","rgba(255, 255, 255, 0)");var Ie=re.selectAll("."+T.cn.parcoords).data(fe,c);Ie.exit().remove(),Ie.enter().append("g").classed(T.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),Ie.attr("transform",function(Qe){return o(Qe.model.translateX,Qe.model.translateY)});var Ze=Ie.selectAll("."+T.cn.parcoordsControlView).data(h,c);Ze.enter().append("g").classed(T.cn.parcoordsControlView,!0),Ze.attr("transform",function(Qe){return o(Qe.model.pad.l,Qe.model.pad.t)});var at=Ze.selectAll("."+T.cn.yAxis).data(function(Qe){return Qe.dimensions},c);at.enter().append("g").classed(T.cn.yAxis,!0),Ze.each(function(Qe){N(at,Qe,j)}),be.each(function(Qe){if(Qe.viewModel){!Qe.lineLayer||$?Qe.lineLayer=_(this,Qe):Qe.lineLayer.update(Qe),(Qe.key||Qe.key===0)&&(Qe.viewModel[Qe.key]=Qe.lineLayer);var Ct=!Qe.context||$;Qe.lineLayer.render(Qe.viewModel.panels,Ct)}}),at.attr("transform",function(Qe){return o(Qe.xScale(Qe.xIndex),0)}),at.call(g.behavior.drag().origin(function(Qe){return Qe}).on("drag",function(Qe){var Ct=Qe.parent;ie.linePickActive(!1),Qe.x=Math.max(-T.overdrag,Math.min(Qe.model.width+T.overdrag,g.event.x)),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,at.sort(function(St,Ot){return St.x-Ot.x}).each(function(St,Ot){St.xIndex=Ot,St.x=Qe===St?St.x:St.xScale(St.xIndex),St.canvasX=St.x*St.model.canvasPixelRatio}),N(at,Ct,j),at.filter(function(St){return Math.abs(Qe.xIndex-St.xIndex)!==0}).attr("transform",function(St){return o(St.xScale(St.xIndex),0)}),g.select(this).attr("transform",o(Qe.x,0)),at.each(function(St,Ot,jt){jt===Qe.parent.key&&(Ct.dimensions[Ot]=St)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer.render&&Ct.focusLayer.render(Ct.panels)}).on("dragend",function(Qe){var Ct=Qe.parent;Qe.x=Qe.xScale(Qe.xIndex),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,N(at,Ct,j),g.select(this).attr("transform",function(St){return o(St.x,0)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer&&Ct.focusLayer.render(Ct.panels),Ct.pickLayer&&Ct.pickLayer.render(Ct.panels,!0),ie.linePickActive(!0),$&&$.axesMoved&&$.axesMoved(Ct.key,Ct.dimensions.map(function(St){return St.crossfilterDimensionIndex}))})),at.exit().remove();var it=at.selectAll("."+T.cn.axisOverlays).data(h,c);it.enter().append("g").classed(T.cn.axisOverlays,!0),it.selectAll("."+T.cn.axis).remove();var et=it.selectAll("."+T.cn.axis).data(h,c);et.enter().append("g").classed(T.cn.axis,!0),et.each(function(Qe){var Ct=Qe.model.height/Qe.model.tickDistance,St=Qe.domainScale,Ot=St.domain();g.select(this).call(g.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(Ct,Qe.tickFormat).tickValues(Qe.ordinal?Ot:null).tickFormat(function(jt){return p.isOrdinal(Qe)?jt:W(Qe.model.dimensions[Qe.visibleIndex],jt)}).scale(St)),i.font(et.selectAll("text"),Qe.model.tickFont)}),et.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),et.selectAll("text").style("cursor","default");var lt=it.selectAll("."+T.cn.axisHeading).data(h,c);lt.enter().append("g").classed(T.cn.axisHeading,!0);var Me=lt.selectAll("."+T.cn.axisTitle).data(h,c);Me.enter().append("text").classed(T.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",J?"none":"auto"),Me.text(function(Qe){return Qe.label}).each(function(Qe){var Ct=g.select(this);i.font(Ct,Qe.model.labelFont),a.convertToTspans(Ct,se)}).attr("transform",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=T.axisTitleOffset;return(Ct.dir>0?"":o(0,2*St+Qe.model.height))+r(Ct.degrees)+o(-St*Ct.dx,-St*Ct.dy)}).attr("text-anchor",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=Math.abs(Ct.dx),Ot=Math.abs(Ct.dy);return 2*St>Ot?Ct.dir*Ct.dx<0?"start":"end":"middle"});var ge=it.selectAll("."+T.cn.axisExtent).data(h,c);ge.enter().append("g").classed(T.cn.axisExtent,!0);var ce=ge.selectAll("."+T.cn.axisExtentTop).data(h,c);ce.enter().append("g").classed(T.cn.axisExtentTop,!0),ce.attr("transform",o(0,-T.axisExtentOffset));var ze=ce.selectAll("."+T.cn.axisExtentTopText).data(h,c);ze.enter().append("text").classed(T.cn.axisExtentTopText,!0).call(B),ze.text(function(Qe){return Q(Qe,!0)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)});var tt=ge.selectAll("."+T.cn.axisExtentBottom).data(h,c);tt.enter().append("g").classed(T.cn.axisExtentBottom,!0),tt.attr("transform",function(Qe){return o(0,Qe.model.height+T.axisExtentOffset)});var nt=tt.selectAll("."+T.cn.axisExtentBottomText).data(h,c);nt.enter().append("text").classed(T.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(B),nt.text(function(Qe){return Q(Qe,!1)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)}),l.ensureAxisBrush(it,ee,se)}}}),gk=Ye({"src/traces/parcoords/plot.js"(r,H){"use strict";var g=FV(),x=_T(),A=mk().isVisible,M={};function e(o,a,i){var n=a.indexOf(i),s=o.indexOf(n);return s===-1&&(s+=a.length),s}function t(o,a){return function(n,s){return e(o,a,n)-e(o,a,s)}}var r=H.exports=function(a,i){var n=a._fullLayout,s=x(a,[],M);if(s){var c={},h={},v={},p={},T=n._size;i.forEach(function(E,m){var b=E[0].trace;v[m]=b.index;var d=p[m]=b.index;c[m]=a.data[d].dimensions,h[m]=a.data[d].dimensions.slice()});var l=function(E,m,b){var d=h[E][m],u=b.map(function(F){return F.slice()}),y="dimensions["+m+"].constraintrange",f=n._tracePreGUI[a._fullData[v[E]]._fullInput.uid];if(f[y]===void 0){var P=d.constraintrange;f[y]=P||null}var L=a._fullData[v[E]].dimensions[m];u.length?(u.length===1&&(u=u[0]),d.constraintrange=u,L.constraintrange=u.slice(),u=[u]):(delete d.constraintrange,delete L.constraintrange,u=null);var z={};z[y]=u,a.emit("plotly_restyle",[z,[p[E]]])},_=function(E){a.emit("plotly_hover",E)},w=function(E){a.emit("plotly_unhover",E)},S=function(E,m){var b=t(m,h[E].filter(A));c[E].sort(b),h[E].filter(function(d){return!A(d)}).sort(function(d){return h[E].indexOf(d)}).forEach(function(d){c[E].splice(c[E].indexOf(d),1),c[E].splice(h[E].indexOf(d),0,d)}),a.emit("plotly_restyle",[{dimensions:[c[E]]},[p[E]]])};g(a,i,{width:T.w,height:T.h,margin:{t:T.t,r:T.r,b:T.b,l:T.l}},{filterChanged:l,hover:_,unhover:w,axesMoved:S})}};r.reglPrecompiled=M}}),OV=Ye({"src/traces/parcoords/base_plot.js"(X){"use strict";var H=_n(),g=jh().getModuleCalcData,x=gk(),A=vd();X.name="parcoords",X.plot=function(M){var e=g(M.calcdata,"parcoords")[0];e.length&&x(M,e)},X.clean=function(M,e,t,r){var o=r._has&&r._has("parcoords"),a=e._has&&e._has("parcoords");o&&!a&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},X.toSVG=function(M){var e=M._fullLayout._glimages,t=H.select(M).selectAll(".svg-container"),r=t.filter(function(a,i){return i===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function o(){var a=this,i=a.toDataURL("image/png"),n=e.append("svg:image");n.attr({xmlns:A.svg,"xlink:href":i,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}r.each(o),window.setTimeout(function(){H.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}}}),BV=Ye({"src/traces/parcoords/base_index.js"(X,H){"use strict";H.exports={attributes:fk(),supplyDefaults:kV(),calc:CV(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:OV(),categories:["gl","regl","noOpacity","noHover"],meta:{}}}}),NV=Ye({"src/traces/parcoords/index.js"(X,H){"use strict";var g=BV();g.plot=gk(),H.exports=g}}),UV=Ye({"lib/parcoords.js"(X,H){"use strict";H.exports=NV()}}),yk=Ye({"src/traces/parcats/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Pl(),A=Au(),M=tu(),e=xs().hovertemplateAttrs,t=Wu().attributes,r=g({editType:"calc"},M("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});H.exports={domain:t({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:g({},x.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:A({editType:"calc"}),tickfont:A({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:r,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}}}),jV=Ye({"src/traces/parcats/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=yk(),r=xT(),o=xp().isTypedArraySpec;function a(n,s,c,h,v){v("line.shape"),v("line.hovertemplate");var p=v("line.color",h.colorway[0]);if(x(n,"line")&&g.isArrayOrTypedArray(p)){if(p.length)return v("line.colorscale"),A(n,s,h,v,{prefix:"line.",cLetter:"c"}),p.length;s.line.color=c}return 1/0}function i(n,s){function c(w,S){return g.coerce(n,s,t.dimensions,w,S)}var h=c("values"),v=c("visible");if(h&&h.length||(v=s.visible=!1),v){c("label"),c("displayindex",s._index);var p=n.categoryarray,T=g.isArrayOrTypedArray(p)&&p.length>0||o(p),l;T&&(l="array");var _=c("categoryorder",l);_==="array"?(c("categoryarray"),c("ticktext")):(delete n.categoryarray,delete n.ticktext),!T&&_==="array"&&(s.categoryorder="trace")}}H.exports=function(s,c,h,v){function p(w,S){return g.coerce(s,c,t,w,S)}var T=e(s,c,{name:"dimensions",handleItemDefaults:i}),l=a(s,c,h,v,p);M(c,v,p),(!Array.isArray(T)||!T.length)&&(c.visible=!1),r(c,T,"values",l),p("hoveron"),p("hovertemplate"),p("arrangement"),p("bundlecolors"),p("sortpaths"),p("counts");var _=v.font;g.coerceFont(p,"labelfont",_,{overrideDflt:{size:Math.round(_.size)}}),g.coerceFont(p,"tickfont",_,{autoShadowDflt:!0,overrideDflt:{size:Math.round(_.size/1.2)}})}}}),VV=Ye({"src/traces/parcats/calc.js"(X,H){"use strict";var g=kv().wrap,x=Up().hasColorscale,A=jp(),M=tS(),e=Bo(),t=ta(),r=jo();H.exports=function(_,w){var S=t.filterVisible(w.dimensions);if(S.length===0)return[];var E=S.map(function(G){var $;if(G.categoryorder==="trace")$=null;else if(G.categoryorder==="array")$=G.categoryarray;else{$=M(G.values);for(var J=!0,Z=0;Z<$.length;Z++)if(!r($[Z])){J=!1;break}$.sort(J?t.sorterAsc:void 0),G.categoryorder==="category descending"&&($=$.reverse())}return h(G.values,$)}),m,b,d;t.isArrayOrTypedArray(w.counts)?m=w.counts:m=[w.counts],v(S),S.forEach(function(G,$){p(G,E[$])});var u=w.line,y;u?(x(w,"line")&&A(_,w,{vals:w.line.color,containerStr:"line",cLetter:"c"}),y=e.tryColorscale(u)):y=t.identity;function f(G){var $,J;return t.isArrayOrTypedArray(u.color)?($=u.color[G%u.color.length],J=$):$=u.color,{color:y($),rawColor:J}}var P=S[0].values.length,L={},z=E.map(function(G){return G.inds});d=0;var F,B;for(F=0;F<P;F++){var O=[];for(B=0;B<z.length;B++)O.push(z[B][F]);b=m[F%m.length],d+=b;var I=f(F),N=O+"-"+I.rawColor;L[N]===void 0&&(L[N]=s(O,I.color,I.rawColor)),c(L[N],F,b)}var U=S.map(function(G,$){return a($,G._index,G._displayindex,G.label,d)});for(F=0;F<P;F++)for(b=m[F%m.length],B=0;B<U.length;B++){var W=U[B].containerInd,Q=E[B].inds[F],ue=U[B].categories;if(ue[Q]===void 0){var se=w.dimensions[W]._categoryarray[Q],he=w.dimensions[W]._ticktext[Q];ue[Q]=i(B,Q,se,he)}n(ue[Q],F,b)}return g(o(U,L,d))};function o(l,_,w){var S=l.map(function(E){return E.categories.length}).reduce(function(E,m){return Math.max(E,m)});return{dimensions:l,paths:_,trace:void 0,maxCats:S,count:w}}function a(l,_,w,S,E){return{dimensionInd:l,containerInd:_,displayInd:w,dimensionLabel:S,count:E,categories:[],dragX:null}}function i(l,_,w,S){return{dimensionInd:l,categoryInd:_,categoryValue:w,displayInd:_,categoryLabel:S,valueInds:[],count:0,dragY:null}}function n(l,_,w){l.valueInds.push(_),l.count+=w}function s(l,_,w){return{categoryInds:l,color:_,rawColor:w,valueInds:[],count:0}}function c(l,_,w){l.valueInds.push(_),l.count+=w}function h(l,_){_==null?_=[]:_=_.map(function(y){return y});var w={},S={},E=[];_.forEach(function(y,f){w[y]=0,S[y]=f});for(var m=0;m<l.length;m++){var b=l[m],d;w[b]===void 0?(w[b]=1,d=_.push(b)-1,S[b]=d):(w[b]++,d=S[b]),E.push(d)}var u=_.map(function(y){return w[y]});return{uniqueValues:_,uniqueCounts:u,inds:E}}function v(l){var _=l.map(function(S){return S.displayindex}),w;if(T(_))for(w=0;w<l.length;w++)l[w]._displayindex=l[w].displayindex;else for(w=0;w<l.length;w++)l[w]._displayindex=w}function p(l,_){l._categoryarray=_.uniqueValues,l.ticktext===null||l.ticktext===void 0?l._ticktext=[]:l._ticktext=l.ticktext.slice();for(var w=l._ticktext.length;w<_.uniqueValues.length;w++)l._ticktext.push(_.uniqueValues[w])}function T(l){for(var _=new Array(l.length),w=0;w<l.length;w++){if(l[w]<0||l[w]>=l.length||_[l[w]]!==void 0)return!1;_[l[w]]=!0}return!0}}}),qV=Ye({"src/traces/parcats/parcats.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolateNumber,A=E2(),M=Lc(),e=ta(),t=e.strTranslate,r=Bo(),o=bh(),a=jl();function i(Z,re,ne,j){var ee=re._context.staticPlot,ie=Z.map(se.bind(0,re,ne)),fe=j.selectAll("g.parcatslayer").data([null]);fe.enter().append("g").attr("class","parcatslayer").style("pointer-events",ee?"none":"all");var be=fe.selectAll("g.trace.parcats").data(ie,n),Ae=be.enter().append("g").attr("class","trace parcats");be.attr("transform",function(ce){return t(ce.x,ce.y)}),Ae.append("g").attr("class","paths");var Be=be.select("g.paths"),Ie=Be.selectAll("path.path").data(function(ce){return ce.paths},n);Ie.attr("fill",function(ce){return ce.model.color});var Ze=Ie.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(ce){return ce.model.color}).attr("fill-opacity",0);_(Ze),Ie.attr("d",function(ce){return ce.svgD}),Ze.empty()||Ie.sort(c),Ie.exit().remove(),Ie.on("mouseover",h).on("mouseout",v).on("click",l),Ae.append("g").attr("class","dimensions");var at=be.select("g.dimensions"),it=at.selectAll("g.dimension").data(function(ce){return ce.dimensions},n);it.enter().append("g").attr("class","dimension"),it.attr("transform",function(ce){return t(ce.x,0)}),it.exit().remove();var et=it.selectAll("g.category").data(function(ce){return ce.categories},n),lt=et.enter().append("g").attr("class","category");et.attr("transform",function(ce){return t(0,ce.y)}),lt.append("rect").attr("class","catrect").attr("pointer-events","none"),et.select("rect.catrect").attr("fill","none").attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}),E(lt);var Me=et.selectAll("rect.bandrect").data(function(ce){return ce.bands},n);Me.each(function(){e.raiseToTop(this)}),Me.attr("fill",function(ce){return ce.color});var ge=Me.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(ce){return ce.color}).attr("fill-opacity",0);Me.attr("fill",function(ce){return ce.color}).attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}).attr("y",function(ce){return ce.y}).attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":ce.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),b(ge),Me.exit().remove(),lt.append("text").attr("class","catlabel").attr("pointer-events","none"),et.select("text.catlabel").attr("text-anchor",function(ce){return s(ce)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(ce){return s(ce)?ce.width+5:-5}).attr("y",function(ce){return ce.height/2}).text(function(ce){return ce.model.categoryLabel}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.categorylabelfont),a.convertToTspans(g.select(this),re)}),lt.append("text").attr("class","dimlabel"),et.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(ce){return ce.width/2}).attr("y",-5).text(function(ce,ze){return ze===0?ce.parcatsViewModel.model.dimensions[ce.model.dimensionInd].dimensionLabel:null}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.labelfont)}),et.selectAll("rect.bandrect").on("mouseover",B).on("mouseout",O),et.exit().remove(),it.call(g.behavior.drag().origin(function(ce){return{x:ce.x,y:0}}).on("dragstart",I).on("drag",N).on("dragend",U)),be.each(function(ce){ce.traceSelection=g.select(this),ce.pathSelection=g.select(this).selectAll("g.paths").selectAll("path.path"),ce.dimensionSelection=g.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),be.exit().remove()}H.exports=function(Z,re,ne,j){i(ne,Z,j,re)};function n(Z){return Z.key}function s(Z){var re=Z.parcatsViewModel.dimensions.length,ne=Z.parcatsViewModel.dimensions[re-1].model.dimensionInd;return Z.model.dimensionInd===ne}function c(Z,re){return Z.model.rawColor>re.model.rawColor?1:Z.model.rawColor<re.model.rawColor?-1:0}function h(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){e.raiseToTop(this),w(g.select(this));var re=p(Z),ne=T(Z);if(Z.parcatsViewModel.graphDiv.emit("plotly_hover",{points:re,event:g.event,constraints:ne}),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var j=g.mouse(this)[0],ee=Z.parcatsViewModel.graphDiv,ie=Z.parcatsViewModel.trace,fe=ee._fullLayout,be=fe._paperdiv.node().getBoundingClientRect(),Ae=Z.parcatsViewModel.graphDiv.getBoundingClientRect(),Be,Ie,Ze;for(Ze=0;Ze<Z.leftXs.length-1;Ze++)if(Z.leftXs[Ze]+Z.dimWidths[Ze]-2<=j&&j<=Z.leftXs[Ze+1]+2){var at=Z.parcatsViewModel.dimensions[Ze],it=Z.parcatsViewModel.dimensions[Ze+1];Be=(at.x+at.width+it.x)/2,Ie=(Z.topYs[Ze]+Z.topYs[Ze+1]+Z.height)/2;break}var et=Z.parcatsViewModel.x+Be,lt=Z.parcatsViewModel.y+Ie,Me=o.mostReadable(Z.model.color,["black","white"]),ge=Z.model.count,ce=ge/Z.parcatsViewModel.model.count,ze={countLabel:ge,probabilityLabel:ce.toFixed(3)},tt=[];Z.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&tt.push(["Count:",ze.countLabel].join(" ")),Z.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&tt.push(["P:",ze.probabilityLabel].join(" "));var nt=tt.join("<br>"),Qe=g.mouse(ee)[0];M.loneHover({trace:ie,x:et-be.left+Ae.left,y:lt-be.top+Ae.top,text:nt,color:Z.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:Me,idealAlign:Qe<et?"right":"left",hovertemplate:(ie.line||{}).hovertemplate,hovertemplateLabels:ze,eventData:[{data:ie._input,fullData:ie,count:ge,probability:ce}]},{container:fe._hoverlayer.node(),outerContainer:fe._paper.node(),gd:ee})}}}function v(Z){if(!Z.parcatsViewModel.dragDimension&&(_(g.select(this)),M.loneUnhover(Z.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),Z.parcatsViewModel.pathSelection.sort(c),Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var re=p(Z),ne=T(Z);Z.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:re,event:g.event,constraints:ne})}}function p(Z){for(var re=[],ne=W(Z.parcatsViewModel),j=0;j<Z.model.valueInds.length;j++){var ee=Z.model.valueInds[j];re.push({curveNumber:ne,pointNumber:ee})}return re}function T(Z){for(var re={},ne=Z.parcatsViewModel.model.dimensions,j=0;j<ne.length;j++){var ee=ne[j],ie=ee.categories[Z.model.categoryInds[j]];re[ee.containerInd]=ie.categoryValue}return Z.model.rawColor!==void 0&&(re.color=Z.model.rawColor),re}function l(Z){if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=p(Z),ne=T(Z);Z.parcatsViewModel.graphDiv.emit("plotly_click",{points:re,event:g.event,constraints:ne})}}function _(Z){Z.attr("fill",function(re){return re.model.color}).attr("fill-opacity",.6).attr("stroke","lightgray").attr("stroke-width",.2).attr("stroke-opacity",1)}function w(Z){Z.attr("fill-opacity",.8).attr("stroke",function(re){return o.mostReadable(re.model.color,["black","white"])}).attr("stroke-width",.3)}function S(Z){Z.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}function E(Z){Z.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function m(Z){Z.attr("stroke","black").attr("stroke-width",1.5)}function b(Z){Z.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function d(Z){var re=Z.parcatsViewModel.pathSelection,ne=Z.categoryViewModel.model.dimensionInd,j=Z.categoryViewModel.model.categoryInd;return re.filter(function(ee){return ee.model.categoryInds[ne]===j&&ee.model.color===Z.color})}function u(Z){var re=g.select(Z.parentNode).selectAll("rect.bandrect");re.each(function(ne){var j=d(ne);w(j),j.each(function(){e.raiseToTop(this)})}),S(g.select(Z.parentNode))}function y(Z){var re=g.select(Z).datum(),ne=d(re);w(ne),ne.each(function(){e.raiseToTop(this)}),g.select(Z.parentNode).selectAll("rect.bandrect").filter(function(j){return j.color===re.color}).each(function(){e.raiseToTop(this),m(g.select(this))})}function f(Z,re,ne){var j=g.select(Z).datum(),ee=j.categoryViewModel.model,ie=j.parcatsViewModel.graphDiv,fe=g.select(Z.parentNode).selectAll("rect.bandrect"),be=[];fe.each(function(Be){var Ie=d(Be);Ie.each(function(Ze){Array.prototype.push.apply(be,p(Ze))})});var Ae={};Ae[ee.dimensionInd]=ee.categoryValue,ie.emit(re,{points:be,event:ne,constraints:Ae})}function P(Z,re,ne){var j=g.select(Z).datum(),ee=j.categoryViewModel.model,ie=j.parcatsViewModel.graphDiv,fe=d(j),be=[];fe.each(function(Be){Array.prototype.push.apply(be,p(Be))});var Ae={};Ae[ee.dimensionInd]=ee.categoryValue,j.rawColor!==void 0&&(Ae.color=j.rawColor),ie.emit(re,{points:be,event:ne,constraints:Ae})}function L(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=g.select(ne.parentNode).select("rect.catrect"),fe=ie.node().getBoundingClientRect(),be=ie.datum(),Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=fe.top+fe.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=fe.left,it="left"):(at=fe.left+fe.width,it="right");var et=be.model.count,lt=be.model.categoryLabel,Me=et/be.parcatsViewModel.model.count,ge={countLabel:et,categoryLabel:lt,probabilityLabel:Me.toFixed(3)},ce=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&ce.push(["Count:",ge.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&ce.push(["P("+ge.categoryLabel+"):",ge.probabilityLabel].join(" "));var ze=ce.join("<br>");return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:ze,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:ge,eventData:[{data:Ie._input,fullData:Ie,count:et,category:lt,probability:Me}]}}function z(Z,re,ne){var j=[];return g.select(ne.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var ee=this;j.push(L(Z,re,ee))}),j}function F(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=ne.getBoundingClientRect(),fe=g.select(ne).datum(),be=fe.categoryViewModel,Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=ie.y+ie.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=ie.left,it="left"):(at=ie.left+ie.width,it="right");var et=be.model.categoryLabel,lt=fe.parcatsViewModel.model.count,Me=0;fe.categoryViewModel.bands.forEach(function(jt){jt.color===fe.color&&(Me+=jt.count)});var ge=be.model.count,ce=0;Ae.pathSelection.each(function(jt){jt.model.color===fe.color&&(ce+=jt.model.count)});var ze=Me/lt,tt=Me/ce,nt=Me/ge,Qe={countLabel:Me,categoryLabel:et,probabilityLabel:ze.toFixed(3)},Ct=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&Ct.push(["Count:",Qe.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(Ct.push("P(color \u2229 "+et+"): "+Qe.probabilityLabel),Ct.push("P("+et+" | color): "+tt.toFixed(3)),Ct.push("P(color | "+et+"): "+nt.toFixed(3)));var St=Ct.join("<br>"),Ot=o.mostReadable(fe.color,["black","white"]);return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:St,color:fe.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:Ot,fontSize:10,idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:Qe,eventData:[{data:Ie._input,fullData:Ie,category:et,count:lt,probability:ze,categorycount:ge,colorcount:ce,bandcolorcount:Me}]}}function B(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=g.mouse(this)[1];if(re<-1)return;var ne=Z.parcatsViewModel.graphDiv,j=ne._fullLayout,ee=j._paperdiv.node().getBoundingClientRect(),ie=Z.parcatsViewModel.hoveron,fe=this;if(ie==="color"?(y(fe),P(fe,"plotly_hover",g.event)):(u(fe),f(fe,"plotly_hover",g.event)),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var be;ie==="category"?be=L(ne,ee,fe):ie==="color"?be=F(ne,ee,fe):ie==="dimension"&&(be=z(ne,ee,fe)),be&&M.loneHover(be,{container:j._hoverlayer.node(),outerContainer:j._paper.node(),gd:ne})}}}function O(Z){var re=Z.parcatsViewModel;if(!re.dragDimension&&(_(re.pathSelection),E(re.dimensionSelection.selectAll("g.category")),b(re.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),M.loneUnhover(re.graphDiv._fullLayout._hoverlayer.node()),re.pathSelection.sort(c),re.hoverinfoItems.indexOf("skip")===-1)){var ne=Z.parcatsViewModel.hoveron,j=this;ne==="color"?P(j,"plotly_unhover",g.event):f(j,"plotly_unhover",g.event)}}function I(Z){Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragDimensionDisplayInd=Z.model.displayInd,Z.initialDragDimensionDisplayInds=Z.parcatsViewModel.model.dimensions.map(function(re){return re.displayInd}),Z.dragHasMoved=!1,Z.dragCategoryDisplayInd=null,g.select(this).selectAll("g.category").select("rect.catrect").each(function(re){var ne=g.mouse(this)[0],j=g.mouse(this)[1];-2<=ne&&ne<=re.width+2&&-2<=j&&j<=re.height+2&&(Z.dragCategoryDisplayInd=re.model.displayInd,Z.initialDragCategoryDisplayInds=Z.model.categories.map(function(ee){return ee.displayInd}),re.model.dragY=re.y,e.raiseToTop(this.parentNode),g.select(this.parentNode).selectAll("rect.bandrect").each(function(ee){ee.y<j&&j<=ee.y+ee.height&&(Z.potentialClickBand=this)}))}),Z.parcatsViewModel.dragDimension=Z,M.loneUnhover(Z.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function N(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragHasMoved=!0,Z.dragDimensionDisplayInd!==null)){var re=Z.dragDimensionDisplayInd,ne=re-1,j=re+1,ee=Z.parcatsViewModel.dimensions[re];if(Z.dragCategoryDisplayInd!==null){var ie=ee.categories[Z.dragCategoryDisplayInd];ie.model.dragY+=g.event.dy;var fe=ie.model.dragY,be=ie.model.displayInd,Ae=ee.categories,Be=Ae[be-1],Ie=Ae[be+1];Be!==void 0&&fe<Be.y+Be.height/2&&(ie.model.displayInd=Be.model.displayInd,Be.model.displayInd=be),Ie!==void 0&&fe+ie.height>Ie.y+Ie.height/2&&(ie.model.displayInd=Ie.model.displayInd,Ie.model.displayInd=be),Z.dragCategoryDisplayInd=ie.model.displayInd}if(Z.dragCategoryDisplayInd===null||Z.parcatsViewModel.arrangement==="freeform"){ee.model.dragX=g.event.x;var Ze=Z.parcatsViewModel.dimensions[ne],at=Z.parcatsViewModel.dimensions[j];Ze!==void 0&&ee.model.dragX<Ze.x+Ze.width&&(ee.model.displayInd=Ze.model.displayInd,Ze.model.displayInd=re),at!==void 0&&ee.model.dragX+ee.width>at.x&&(ee.model.displayInd=at.model.displayInd,at.model.displayInd=Z.dragDimensionDisplayInd),Z.dragDimensionDisplayInd=ee.model.displayInd}$(Z.parcatsViewModel),G(Z.parcatsViewModel),ue(Z.parcatsViewModel),Q(Z.parcatsViewModel)}}function U(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&Z.dragDimensionDisplayInd!==null){g.select(this).selectAll("text").attr("font-weight","normal");var re={},ne=W(Z.parcatsViewModel),j=Z.parcatsViewModel.model.dimensions.map(function(at){return at.displayInd}),ee=Z.initialDragDimensionDisplayInds.some(function(at,it){return at!==j[it]});ee&&j.forEach(function(at,it){var et=Z.parcatsViewModel.model.dimensions[it].containerInd;re["dimensions["+et+"].displayindex"]=at});var ie=!1;if(Z.dragCategoryDisplayInd!==null){var fe=Z.model.categories.map(function(at){return at.displayInd});if(ie=Z.initialDragCategoryDisplayInds.some(function(at,it){return at!==fe[it]}),ie){var be=Z.model.categories.slice().sort(function(at,it){return at.displayInd-it.displayInd}),Ae=be.map(function(at){return at.categoryValue}),Be=be.map(function(at){return at.categoryLabel});re["dimensions["+Z.model.containerInd+"].categoryarray"]=[Ae],re["dimensions["+Z.model.containerInd+"].ticktext"]=[Be],re["dimensions["+Z.model.containerInd+"].categoryorder"]="array"}}if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!Z.dragHasMoved&&Z.potentialClickBand&&(Z.parcatsViewModel.hoveron==="color"?P(Z.potentialClickBand,"plotly_click",g.event.sourceEvent):f(Z.potentialClickBand,"plotly_click",g.event.sourceEvent)),Z.model.dragX=null,Z.dragCategoryDisplayInd!==null){var Ie=Z.parcatsViewModel.dimensions[Z.dragDimensionDisplayInd].categories[Z.dragCategoryDisplayInd];Ie.model.dragY=null,Z.dragCategoryDisplayInd=null}Z.dragDimensionDisplayInd=null,Z.parcatsViewModel.dragDimension=null,Z.dragHasMoved=null,Z.potentialClickBand=null,$(Z.parcatsViewModel),G(Z.parcatsViewModel);var Ze=g.transition().duration(300).ease("cubic-in-out");Ze.each(function(){ue(Z.parcatsViewModel,!0),Q(Z.parcatsViewModel,!0)}).each("end",function(){(ee||ie)&&A.restyle(Z.parcatsViewModel.graphDiv,re,[ne])})}}function W(Z){for(var re,ne=Z.graphDiv._fullData,j=0;j<ne.length;j++)if(Z.key===ne[j].uid){re=j;break}return re}function Q(Z,re){re===void 0&&(re=!1);function ne(j){return re?j.transition():j}Z.pathSelection.data(function(j){return j.paths},n),ne(Z.pathSelection).attr("d",function(j){return j.svgD})}function ue(Z,re){re===void 0&&(re=!1);function ne(Ae){return re?Ae.transition():Ae}Z.dimensionSelection.data(function(Ae){return Ae.dimensions},n);var j=Z.dimensionSelection.selectAll("g.category").data(function(Ae){return Ae.categories},n);ne(Z.dimensionSelection).attr("transform",function(Ae){return t(Ae.x,0)}),ne(j).attr("transform",function(Ae){return t(0,Ae.y)});var ee=j.select(".dimlabel");ee.text(function(Ae,Be){return Be===0?Ae.parcatsViewModel.model.dimensions[Ae.model.dimensionInd].dimensionLabel:null});var ie=j.select(".catlabel");ie.attr("text-anchor",function(Ae){return s(Ae)?"start":"end"}).attr("x",function(Ae){return s(Ae)?Ae.width+5:-5}).each(function(Ae){var Be,Ie;s(Ae)?(Be=Ae.width+5,Ie="start"):(Be=-5,Ie="end"),g.select(this).selectAll("tspan").attr("x",Be).attr("text-anchor",Ie)});var fe=j.selectAll("rect.bandrect").data(function(Ae){return Ae.bands},n),be=fe.enter().append("rect").attr("class","bandrect").attr("cursor","move").attr("stroke-opacity",0).attr("fill",function(Ae){return Ae.color}).attr("fill-opacity",0);fe.attr("fill",function(Ae){return Ae.color}).attr("width",function(Ae){return Ae.width}).attr("height",function(Ae){return Ae.height}).attr("y",function(Ae){return Ae.y}),b(be),fe.each(function(){e.raiseToTop(this)}),fe.exit().remove()}function se(Z,re,ne){var j=ne[0],ee=re.margin||{l:80,r:80,t:100,b:80},ie=j.trace,fe=ie.domain,be=re.width,Ae=re.height,Be=Math.floor(be*(fe.x[1]-fe.x[0])),Ie=Math.floor(Ae*(fe.y[1]-fe.y[0])),Ze=fe.x[0]*be+ee.l,at=re.height-fe.y[1]*re.height+ee.t,it=ie.line.shape,et;ie.hoverinfo==="all"?et=["count","probability"]:et=(ie.hoverinfo||"").split("+");var lt={trace:ie,key:ie.uid,model:j,x:Ze,y:at,width:Be,height:Ie,hoveron:ie.hoveron,hoverinfoItems:et,arrangement:ie.arrangement,bundlecolors:ie.bundlecolors,sortpaths:ie.sortpaths,labelfont:ie.labelfont,categorylabelfont:ie.tickfont,pathShape:it,dragDimension:null,margin:ee,paths:[],dimensions:[],graphDiv:Z,traceSelection:null,pathSelection:null,dimensionSelection:null};return j.dimensions&&($(lt),G(lt)),lt}function he(Z,re,ne,j,ee){var ie=[],fe=[],be,Ae;for(Ae=0;Ae<ne.length-1;Ae++)be=x(ne[Ae]+Z[Ae],Z[Ae+1]),ie.push(be(ee)),fe.push(be(1-ee));var Be="M "+Z[0]+","+re[0];for(Be+="l"+ne[0]+",0 ",Ae=1;Ae<ne.length;Ae++)Be+="C"+ie[Ae-1]+","+re[Ae-1]+" "+fe[Ae-1]+","+re[Ae]+" "+Z[Ae]+","+re[Ae],Be+="l"+ne[Ae]+",0 ";for(Be+="l0,"+j+" ",Be+="l -"+ne[ne.length-1]+",0 ",Ae=ne.length-2;Ae>=0;Ae--)Be+="C"+fe[Ae]+","+(re[Ae+1]+j)+" "+ie[Ae]+","+(re[Ae]+j)+" "+(Z[Ae]+ne[Ae])+","+(re[Ae]+j),Be+="l-"+ne[Ae]+",0 ";return Be+="Z",Be}function G(Z){var re=Z.dimensions,ne=Z.model,j=re.map(function(Cr){return Cr.categories.map(function(vr){return vr.y})}),ee=Z.model.dimensions.map(function(Cr){return Cr.categories.map(function(vr){return vr.displayInd})}),ie=Z.model.dimensions.map(function(Cr){return Cr.displayInd}),fe=Z.dimensions.map(function(Cr){return Cr.model.dimensionInd}),be=re.map(function(Cr){return Cr.x}),Ae=re.map(function(Cr){return Cr.width}),Be=[];for(var Ie in ne.paths)ne.paths.hasOwnProperty(Ie)&&Be.push(ne.paths[Ie]);function Ze(Cr){var vr=Cr.categoryInds.map(function(yt,Fe){return ee[Fe][yt]}),_r=fe.map(function(yt){return vr[yt]});return _r}Be.sort(function(Cr,vr){var _r=Ze(Cr),yt=Ze(vr);return Z.sortpaths==="backward"&&(_r.reverse(),yt.reverse()),_r.push(Cr.valueInds[0]),yt.push(vr.valueInds[0]),Z.bundlecolors&&(_r.unshift(Cr.rawColor),yt.unshift(vr.rawColor)),_r<yt?-1:_r>yt?1:0});for(var at=new Array(Be.length),it=re[0].model.count,et=re[0].categories.map(function(Cr){return Cr.height}).reduce(function(Cr,vr){return Cr+vr}),lt=0;lt<Be.length;lt++){var Me=Be[lt],ge;it>0?ge=et*(Me.count/it):ge=0;for(var ce=new Array(j.length),ze=0;ze<Me.categoryInds.length;ze++){var tt=Me.categoryInds[ze],nt=ee[ze][tt],Qe=ie[ze];ce[Qe]=j[Qe][nt],j[Qe][nt]+=ge;var Ct=Z.dimensions[Qe].categories[nt],St=Ct.bands.length,Ot=Ct.bands[St-1];if(Ot===void 0||Me.rawColor!==Ot.rawColor){var jt=Ot===void 0?0:Ot.y+Ot.height;Ct.bands.push({key:jt,color:Me.color,rawColor:Me.rawColor,height:ge,width:Ct.width,count:Me.count,y:jt,categoryViewModel:Ct,parcatsViewModel:Z})}else{var ur=Ct.bands[St-1];ur.height+=ge,ur.count+=Me.count}}var ar;Z.pathShape==="hspline"?ar=he(be,ce,Ae,ge,.5):ar=he(be,ce,Ae,ge,0),at[lt]={key:Me.valueInds[0],model:Me,height:ge,leftXs:be,topYs:ce,dimWidths:Ae,svgD:ar,parcatsViewModel:Z}}Z.paths=at}function $(Z){var re=Z.model.dimensions.map(function(fe){return{displayInd:fe.displayInd,dimensionInd:fe.dimensionInd}});re.sort(function(fe,be){return fe.displayInd-be.displayInd});var ne=[];for(var j in re){var ee=re[j].dimensionInd,ie=Z.model.dimensions[ee];ne.push(J(Z,ie))}Z.dimensions=ne}function J(Z,re){var ne=40,j=16,ee=Z.model.dimensions.length,ie=re.displayInd,fe,be,Ae;ee>1?fe=(Z.width-2*ne-j)/(ee-1):fe=0,be=ne,Ae=be+fe*ie;var Be=[],Ie=Z.model.maxCats,Ze=re.categories.length,at=8,it=re.count,et=Z.height-at*(Ie-1),lt,Me,ge,ce,ze,tt=(Ie-Ze)*at/2,nt=re.categories.map(function(Qe){return{displayInd:Qe.displayInd,categoryInd:Qe.categoryInd}});for(nt.sort(function(Qe,Ct){return Qe.displayInd-Ct.displayInd}),ze=0;ze<Ze;ze++)ce=nt[ze].categoryInd,Me=re.categories[ce],it>0?lt=Me.count/it*et:lt=0,ge={key:Me.valueInds[0],model:Me,width:j,height:lt,y:Me.dragY!==null?Me.dragY:tt,bands:[],parcatsViewModel:Z},tt=tt+lt+at,Be.push(ge);return{key:re.dimensionInd,x:re.dragX!==null?re.dragX:Ae,y:0,width:j,model:re,categories:Be,parcatsViewModel:Z,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}}}),_k=Ye({"src/traces/parcats/plot.js"(X,H){"use strict";var g=qV();H.exports=function(A,M,e,t){var r=A._fullLayout,o=r._paper,a=r._size;g(A,o,M,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},e,t)}}}),HV=Ye({"src/traces/parcats/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=_k(),x="parcats";X.name=x,X.plot=function(A,M,e,t){var r=H(A.calcdata,x);if(r.length){var o=r[0];g(A,o,e,t)}},X.clean=function(A,M,e,t){var r=t._has&&t._has("parcats"),o=M._has&&M._has("parcats");r&&!o&&t._paperdiv.selectAll(".parcats").remove()}}}),GV=Ye({"src/traces/parcats/index.js"(X,H){"use strict";H.exports={attributes:yk(),supplyDefaults:jV(),calc:VV(),plot:_k(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:HV(),categories:["noOpacity"],meta:{}}}}),WV=Ye({"lib/parcats.js"(X,H){"use strict";H.exports=GV()}}),am=Ye({"src/plots/mapbox/constants.js"(X,H){"use strict";var g=Km(),x="1.13.4",A='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',M=['\xA9 <a target="_blank" href="https://carto.com/">Carto</a>',A].join(" "),e=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://www.openstreetmap.org/copyright">ODbL</a>'].join(" "),t=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'].join(" "),r={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:A,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:t,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},o=g(r);H.exports={requiredVersion:x,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:r,styleValuesNonMapbox:o,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+x+"."].join(`
`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:","  Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(`
`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",o.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(`
`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(`
`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}}}),Sx=Ye({"src/plots/mapbox/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=am(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("mapbox",".layers",!0)],domain:A({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:o.styleValuesMapbox.concat(o.styleValuesNonMapbox),dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),TT=Ye({"src/traces/scattermapbox/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Sx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Sx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),xk=Ye({"src/traces/scattermapbox/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),ZV=Ye({"src/traces/scattermapbox/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=TT(),o=xk().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),bk=Ye({"src/traces/scattermapbox/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),wk=Ye({"src/plots/mapbox/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),XV=Ye({"src/traces/scattermapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=xk().isSupportedFont,i=wk(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P<E.length;P++){var N=E[P],U=N.lonlat;if(!_(U)){var W={};F&&(W.mcc=N.mcc=F(N.mc)),B&&(W.mrc=N.mrc=B(N.ms)),O&&(W.mo=O(N.mo)),d&&(W.selected=N.selected||0),I.push({type:"Feature",id:P+1,geometry:{type:"Point",coordinates:U},properties:W})}}var Q;if(d)for(Q=t.makeSelectedPointStyleFns(m),P=0;P<I.length;P++){var ue=I[P].properties;Q.selectedOpacityFn&&(ue.mo=L(Q.selectedOpacityFn(ue))),Q.selectedColorFn&&(ue.mcc=Q.selectedColorFn(ue)),Q.selectedSizeFn&&(ue.mrc=Q.selectedSizeFn(ue))}return{geojson:{type:"FeatureCollection",features:I},mcc:u||Q&&Q.selectedColorFn?{type:"identity",property:"mcc"}:b.color,mrc:y||Q&&Q.selectedSizeFn?{type:"identity",property:"mrc"}:z(b.size),mo:f||Q&&Q.selectedOpacityFn?{type:"identity",property:"mo"}:L(b.opacity)}}function p(E,m){for(var b=m._fullLayout,d=E[0].trace,u=d.marker||{},y=u.symbol,f=u.angle,P=y!=="circle"?T(y):l,L=f!=="auto"?T(f,!0):l,z=o.hasText(d)?T(d.text):l,F=[],B=0;B<E.length;B++){var O=E[B];if(!_(O.lonlat)){var I=d.texttemplate,N;if(I){var U=Array.isArray(I)?I[B]||"":I,W=d._module.formatLabels(O,d,b),Q={};n(Q,d,O.i);var ue=d._meta||{};N=x.texttemplateString(U,W,b._d3locale,Q,O,ue)}else N=z(B);N&&(N=N.replace(s,"").replace(c,`
`)),F.push({type:"Feature",geometry:{type:"Point",coordinates:O.lonlat},properties:{symbol:P(B),angle:L(B),text:N}})}}return{type:"FeatureCollection",features:F}}function T(E,m){return x.isArrayOrTypedArray(E)?m?function(b){return g(E[b])?+E[b]:0}:function(b){return E[b]}:E?function(){return E}:l}function l(){return""}function _(E){return E[0]===A}function w(E,m){var b;if(x.isArrayOrTypedArray(E)&&x.isArrayOrTypedArray(m)){b=["step",["get","point_count"],E[0]];for(var d=1;d<E.length;d++)b.push(m[d-1],E[d])}else b=E;return b}function S(E){var m=E.textfont,b=m.family,d=m.style,u=m.weight,y=b.split(" "),f=y[y.length-1]==="Italic";f&&y.pop(),f=f||d==="italic";var P=y.join(" ");u==="bold"&&y.indexOf("Bold")===-1?P+=" Bold":u<=1e3&&(y[0]==="Metropolis"?(P="Metropolis",u>850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),YV=Ye({"src/traces/scattermapbox/plot.js"(X,H){"use strict";var g=ta(),x=XV(),A=am().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermapbox",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h<c.length;h++)if(c[h].id===n){s=!0;break}s?(this.subplot.setOptions(n,"setLayoutProperty",i.layout),i.layout.visibility==="visible"&&this.subplot.setOptions(n,"setPaintProperty",i.paint)):this.subplot.addLayer(i,a)},t.update=function(o){var a=o[0].trace,i=this.subplot,n=i.map,s=x(i.gd,o),c=i.belowLookup["trace-"+this.uid],h=!!(a.cluster&&a.cluster.enabled),v=!!this.clusterEnabled,p=this;function T(u){u||p.addSource("circle",s.circle,a.cluster);for(var y=M.cluster,f=0;f<y.length;f++){var P=y[f],L=s[P];p.addLayer(P,L,c)}}function l(u){for(var y=M.cluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f<y.length;f++){var P=y[f],L=s[P];u||p.addSource(P,L),p.addLayer(P,L,c)}}function w(u){for(var y=M.nonCluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y<u.length;y++){var f=u[y],P=s[f];P&&(i.setOptions(p.layerIds[f],"setLayoutProperty",P.layout),P.layout.visibility==="visible"&&(f!=="cluster"&&p.setSourceData(f,P),i.setOptions(p.layerIds[f],"setPaintProperty",P.paint)))}}var b=this.isHidden,d=a.visible!==!0;d?b||S():b?d||E():v!==h?(S(),E()):(this.below!==c&&(S(!0),E(!0)),m()),this.clusterEnabled=h,this.isHidden=d,this.below=c,o[0].trace._glTrace=this},t.dispose=function(){for(var o=this.subplot.map,a=this.clusterEnabled?M.cluster:M.nonCluster,i=a.length-1;i>=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p<M.cluster.length;p++)T=M.cluster[p],l=h[T],c.addLayer(T,l,v);else for(p=0;p<M.nonCluster.length;p++)T=M.nonCluster[p],l=h[T],c.addSource(T,l,i.cluster),c.addLayer(T,l,v);return a[0].trace._glTrace=c,c}}}),AT=Ye({"src/traces/scattermapbox/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=s1(),M=x.fillText,e=ks().BADNUM,t=am().traceLayerPrefix;function r(a,i,n){var s=a.cd,c=s[0].trace,h=a.xa,v=a.ya,p=a.subplot,T=[],l=t+c.uid+"-circle",_=c.cluster&&c.cluster.enabled;if(_){var w=p.map.queryRenderedFeatures(null,{layers:[l]});T=w.map(function(B){return B.id})}var S=i>=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("<br>")}H.exports={hoverPoints:r,getExtraText:o}}}),KV=Ye({"src/traces/scattermapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),JV=Ye({"src/traces/scattermapbox/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s<r.length;s++)r[s].selected=0;else for(s=0;s<r.length;s++){var c=r[s],h=c.lonlat;if(h[0]!==A){var v=[g.modHalf(h[0],360),h[1]],p=[o.c2p(v),a.c2p(v)];t.contains(p,null,s,e)?(i.push({pointNumber:s,lon:h[0],lat:h[1]}),c.selected=1):c.selected=0}}return i}}}),Tk=Ye({"node_modules/@plotly/mapbox-gl/dist/mapbox-gl-unminified.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():(g=g||self,g.mapboxgl=x())})(X,function(){"use strict";var g,x,A;function M(e,t){if(!g)g=t;else if(!x)x=t;else{var r="var sharedChunk = {}; ("+g+")(sharedChunk); ("+x+")(sharedChunk);",o={};g(o),A=t(o),typeof window<"u"&&(A.workerUrl=window.URL.createObjectURL(new Blob([r],{type:"text/javascript"})))}}return M(["exports"],function(e){"use strict";function t(k,C){return C={exports:{}},k(C,C.exports),C.exports}var r="1.13.4",o=a;function a(k,C,V,oe){this.cx=3*k,this.bx=3*(V-k)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*C,this.by=3*(oe-C)-this.cy,this.ay=1-this.cy-this.by,this.p1x=k,this.p1y=oe,this.p2x=V,this.p2y=oe}a.prototype.sampleCurveX=function(k){return((this.ax*k+this.bx)*k+this.cx)*k},a.prototype.sampleCurveY=function(k){return((this.ay*k+this.by)*k+this.cy)*k},a.prototype.sampleCurveDerivativeX=function(k){return(3*this.ax*k+2*this.bx)*k+this.cx},a.prototype.solveCurveX=function(k,C){typeof C>"u"&&(C=1e-6);var V,oe,_e,Pe,je;for(_e=k,je=0;je<8;je++){if(Pe=this.sampleCurveX(_e)-k,Math.abs(Pe)<C)return _e;var ct=this.sampleCurveDerivativeX(_e);if(Math.abs(ct)<1e-6)break;_e=_e-Pe/ct}if(V=0,oe=1,_e=k,_e<V)return V;if(_e>oe)return oe;for(;V<oe;){if(Pe=this.sampleCurveX(_e),Math.abs(Pe-k)<C)return _e;k>Pe?V=_e:oe=_e,_e=(oe-V)*.5+V}return _e},a.prototype.solve=function(k,C){return this.sampleCurveY(this.solveCurveX(k,C))};var i=n;function n(k,C){this.x=k,this.y=C}n.prototype={clone:function(){return new n(this.x,this.y)},add:function(k){return this.clone()._add(k)},sub:function(k){return this.clone()._sub(k)},multByPoint:function(k){return this.clone()._multByPoint(k)},divByPoint:function(k){return this.clone()._divByPoint(k)},mult:function(k){return this.clone()._mult(k)},div:function(k){return this.clone()._div(k)},rotate:function(k){return this.clone()._rotate(k)},rotateAround:function(k,C){return this.clone()._rotateAround(k,C)},matMult:function(k){return this.clone()._matMult(k)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(k){return this.x===k.x&&this.y===k.y},dist:function(k){return Math.sqrt(this.distSqr(k))},distSqr:function(k){var C=k.x-this.x,V=k.y-this.y;return C*C+V*V},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(k){return Math.atan2(this.y-k.y,this.x-k.x)},angleWith:function(k){return this.angleWithSep(k.x,k.y)},angleWithSep:function(k,C){return Math.atan2(this.x*C-this.y*k,this.x*k+this.y*C)},_matMult:function(k){var C=k[0]*this.x+k[1]*this.y,V=k[2]*this.x+k[3]*this.y;return this.x=C,this.y=V,this},_add:function(k){return this.x+=k.x,this.y+=k.y,this},_sub:function(k){return this.x-=k.x,this.y-=k.y,this},_mult:function(k){return this.x*=k,this.y*=k,this},_div:function(k){return this.x/=k,this.y/=k,this},_multByPoint:function(k){return this.x*=k.x,this.y*=k.y,this},_divByPoint:function(k){return this.x/=k.x,this.y/=k.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var k=this.y;return this.y=this.x,this.x=-k,this},_rotate:function(k){var C=Math.cos(k),V=Math.sin(k),oe=C*this.x-V*this.y,_e=V*this.x+C*this.y;return this.x=oe,this.y=_e,this},_rotateAround:function(k,C){var V=Math.cos(k),oe=Math.sin(k),_e=C.x+V*(this.x-C.x)-oe*(this.y-C.y),Pe=C.y+oe*(this.x-C.x)+V*(this.y-C.y);return this.x=_e,this.y=Pe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},n.convert=function(k){return k instanceof n?k:Array.isArray(k)?new n(k[0],k[1]):k};var s=typeof self<"u"?self:{};function c(k,C){if(Array.isArray(k)){if(!Array.isArray(C)||k.length!==C.length)return!1;for(var V=0;V<k.length;V++)if(!c(k[V],C[V]))return!1;return!0}if(typeof k=="object"&&k!==null&&C!==null){if(typeof C!="object")return!1;var oe=Object.keys(k);if(oe.length!==Object.keys(C).length)return!1;for(var _e in k)if(!c(k[_e],C[_e]))return!1;return!0}return k===C}var h=Math.pow(2,53)-1;function v(k){if(k<=0)return 0;if(k>=1)return 1;var C=k*k,V=C*k;return 4*(k<.5?V:3*(k-C)+V-.75)}function p(k,C,V,oe){var _e=new o(k,C,V,oe);return function(Pe){return _e.solve(Pe)}}var T=p(.25,.1,.25,1);function l(k,C,V){return Math.min(V,Math.max(C,k))}function _(k,C,V){var oe=V-C,_e=((k-C)%oe+oe)%oe+C;return _e===C?V:_e}function w(k,C,V){if(!k.length)return V(null,[]);var oe=k.length,_e=new Array(k.length),Pe=null;k.forEach(function(je,ct){C(je,function(Lt,Nt){Lt&&(Pe=Lt),_e[ct]=Nt,--oe===0&&V(Pe,_e)})})}function S(k){var C=[];for(var V in k)C.push(k[V]);return C}function E(k,C){var V=[];for(var oe in k)oe in C||V.push(oe);return V}function m(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function b(k,C){for(var V={},oe=0;oe<C.length;oe++){var _e=C[oe];_e in k&&(V[_e]=k[_e])}return V}var d=1;function u(){return d++}function y(){function k(C){return C?(C^Math.random()*16>>C/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,k)}return k()}function f(k){return k<=1?1:Math.pow(2,Math.ceil(Math.log(k)/Math.LN2))}function P(k){return k?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(k):!1}function L(k,C){k.forEach(function(V){C[V]&&(C[V]=C[V].bind(C))})}function z(k,C){return k.indexOf(C,k.length-C.length)!==-1}function F(k,C,V){var oe={};for(var _e in k)oe[_e]=C.call(V||this,k[_e],_e,k);return oe}function B(k,C,V){var oe={};for(var _e in k)C.call(V||this,k[_e],_e,k)&&(oe[_e]=k[_e]);return oe}function O(k){return Array.isArray(k)?k.map(O):typeof k=="object"&&k?F(k,O):k}function I(k,C){for(var V=0;V<k.length;V++)if(C.indexOf(k[V])>=0)return!0;return!1}var N={};function U(k){N[k]||(typeof console<"u"&&console.warn(k),N[k]=!0)}function W(k,C,V){return(V.y-k.y)*(C.x-k.x)>(C.y-k.y)*(V.x-k.x)}function Q(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe=void 0,je=void 0;V<oe;_e=V++)Pe=k[V],je=k[_e],C+=(je.x-Pe.x)*(Pe.y+je.y);return C}function ue(k){var C=k[0],V=k[1],oe=k[2];return V+=90,V*=Math.PI/180,oe*=Math.PI/180,{x:C*Math.cos(V)*Math.sin(oe),y:C*Math.sin(V)*Math.sin(oe),z:C*Math.cos(oe)}}function se(){return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope}function he(k){var C=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,V={};if(k.replace(C,function(_e,Pe,je,ct){var Lt=je||ct;return V[Pe]=Lt?Lt.toLowerCase():!0,""}),V["max-age"]){var oe=parseInt(V["max-age"],10);isNaN(oe)?delete V["max-age"]:V["max-age"]=oe}return V}var G=null;function $(k){if(G==null){var C=k.navigator?k.navigator.userAgent:null;G=!!k.safari||!!(C&&(/\b(iPad|iPhone|iPod)\b/.test(C)||C.match("Safari")&&!C.match("Chrome")))}return G}function J(k){try{var C=s[k];return C.setItem("_mapbox_test_",1),C.removeItem("_mapbox_test_"),!0}catch{return!1}}function Z(k){return s.btoa(encodeURIComponent(k).replace(/%([0-9A-F]{2})/g,function(C,V){return String.fromCharCode(+("0x"+V))}))}function re(k){return decodeURIComponent(s.atob(k).split("").map(function(C){return"%"+("00"+C.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var ne=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),j=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,ee=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,ie,fe,be={now:ne,frame:function(C){var V=j(C);return{cancel:function(){return ee(V)}}},getImageData:function(C,V){V===void 0&&(V=0);var oe=s.document.createElement("canvas"),_e=oe.getContext("2d");if(!_e)throw new Error("failed to create canvas 2d context");return oe.width=C.width,oe.height=C.height,_e.drawImage(C,0,0,C.width,C.height),_e.getImageData(-V,-V,C.width+2*V,C.height+2*V)},resolveURL:function(C){return ie||(ie=s.document.createElement("a")),ie.href=C,ie.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return s.matchMedia?(fe==null&&(fe=s.matchMedia("(prefers-reduced-motion: reduce)")),fe.matches):!1}},Ae={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Be={supported:!1,testSupport:et},Ie,Ze=!1,at,it=!1;s.document&&(at=s.document.createElement("img"),at.onload=function(){Ie&&lt(Ie),Ie=null,it=!0},at.onerror=function(){Ze=!0,Ie=null},at.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function et(k){Ze||!at||(it?lt(k):Ie=k)}function lt(k){var C=k.createTexture();k.bindTexture(k.TEXTURE_2D,C);try{if(k.texImage2D(k.TEXTURE_2D,0,k.RGBA,k.RGBA,k.UNSIGNED_BYTE,at),k.isContextLost())return;Be.supported=!0}catch{}k.deleteTexture(C),Ze=!0}var Me="01";function ge(){for(var k="1",C="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",V="",oe=0;oe<10;oe++)V+=C[Math.floor(Math.random()*62)];var _e=12*60*60*1e3,Pe=[k,Me,V].join(""),je=Date.now()+_e;return{token:Pe,tokenExpiresAt:je}}var ce=function(C,V){this._transformRequestFn=C,this._customAccessToken=V,this._createSkuToken()};ce.prototype._createSkuToken=function(){var C=ge();this._skuToken=C.token,this._skuTokenExpiresAt=C.tokenExpiresAt},ce.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},ce.prototype.transformRequest=function(C,V){return this._transformRequestFn?this._transformRequestFn(C,V)||{url:C}:{url:C}},ce.prototype.normalizeStyleURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/styles/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeGlyphsURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/fonts/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSourceURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/v4/"+oe.authority+".json",oe.params.push("secure"),this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSpriteURL=function(C,V,oe,_e){var Pe=Ot(C);return ze(C)?(Pe.path="/styles/v1"+Pe.path+"/sprite"+V+oe,this._makeAPIURL(Pe,this._customAccessToken||_e)):(Pe.path+=""+V+oe,jt(Pe))},ce.prototype.normalizeTileURL=function(C,V){if(this._isSkuTokenExpired()&&this._createSkuToken(),C&&!ze(C))return C;var oe=Ot(C),_e=/(\.(png|jpg)\d*)(?=$)/,Pe=/^.+\/v4\//,je=be.devicePixelRatio>=2||V===512?"@2x":"",ct=Be.supported?".webp":"$1";oe.path=oe.path.replace(_e,""+je+ct),oe.path=oe.path.replace(Pe,"/"),oe.path="/v4"+oe.path;var Lt=this._customAccessToken||Ct(oe.params)||Ae.ACCESS_TOKEN;return Ae.REQUIRE_ACCESS_TOKEN&&Lt&&this._skuToken&&oe.params.push("sku="+this._skuToken),this._makeAPIURL(oe,Lt)},ce.prototype.canonicalizeTileURL=function(C,V){var oe="/v4/",_e=/\.[\w]+$/,Pe=Ot(C);if(!Pe.path.match(/(^\/v4\/)/)||!Pe.path.match(_e))return C;var je="mapbox://tiles/";je+=Pe.path.replace(oe,"");var ct=Pe.params;return V&&(ct=ct.filter(function(Lt){return!Lt.match(/^access_token=/)})),ct.length&&(je+="?"+ct.join("&")),je},ce.prototype.canonicalizeTileset=function(C,V){for(var oe=V?ze(V):!1,_e=[],Pe=0,je=C.tiles||[];Pe<je.length;Pe+=1){var ct=je[Pe];nt(ct)?_e.push(this.canonicalizeTileURL(ct,oe)):_e.push(ct)}return _e},ce.prototype._makeAPIURL=function(C,V){var oe="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",_e=Ot(Ae.API_URL);if(C.protocol=_e.protocol,C.authority=_e.authority,C.protocol==="http"){var Pe=C.params.indexOf("secure");Pe>=0&&C.params.splice(Pe,1)}if(_e.path!=="/"&&(C.path=""+_e.path+C.path),!Ae.REQUIRE_ACCESS_TOKEN)return jt(C);if(V=V||Ae.ACCESS_TOKEN,!V)throw new Error("An API access token is required to use Mapbox GL. "+oe);if(V[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+oe);return C.params=C.params.filter(function(je){return je.indexOf("access_token")===-1}),C.params.push("access_token="+V),jt(C)};function ze(k){return k.indexOf("mapbox:")===0}var tt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function nt(k){return tt.test(k)}function Qe(k){return k.indexOf("sku=")>0&&nt(k)}function Ct(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C],_e=oe.match(/^access_token=(.*)$/);if(_e)return _e[1]}return null}var St=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Ot(k){var C=k.match(St);if(!C)throw new Error("Unable to parse URL object");return{protocol:C[1],authority:C[2],path:C[3]||"/",params:C[4]?C[4].split("&"):[]}}function jt(k){var C=k.params.length?"?"+k.params.join("&"):"";return k.protocol+"://"+k.authority+k.path+C}var ur="mapbox.eventData";function ar(k){if(!k)return null;var C=k.split(".");if(!C||C.length!==3)return null;try{var V=JSON.parse(re(C[1]));return V}catch{return null}}var Cr=function(C){this.type=C,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};Cr.prototype.getStorageKey=function(C){var V=ar(Ae.ACCESS_TOKEN),oe="";return V&&V.u?oe=Z(V.u):oe=Ae.ACCESS_TOKEN||"",C?ur+"."+C+":"+oe:ur+":"+oe},Cr.prototype.fetchEventData=function(){var C=J("localStorage"),V=this.getStorageKey(),oe=this.getStorageKey("uuid");if(C)try{var _e=s.localStorage.getItem(V);_e&&(this.eventData=JSON.parse(_e));var Pe=s.localStorage.getItem(oe);Pe&&(this.anonId=Pe)}catch{U("Unable to read from LocalStorage")}},Cr.prototype.saveEventData=function(){var C=J("localStorage"),V=this.getStorageKey(),oe=this.getStorageKey("uuid");if(C)try{s.localStorage.setItem(oe,this.anonId),Object.keys(this.eventData).length>=1&&s.localStorage.setItem(V,JSON.stringify(this.eventData))}catch{U("Unable to write to LocalStorage")}},Cr.prototype.processRequests=function(C){},Cr.prototype.postEvent=function(C,V,oe,_e){var Pe=this;if(Ae.EVENTS_URL){var je=Ot(Ae.EVENTS_URL);je.params.push("access_token="+(_e||Ae.ACCESS_TOKEN||""));var ct={event:this.type,created:new Date(C).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:Me,userId:this.anonId},Lt=V?m(ct,V):ct,Nt={url:jt(je),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Lt])};this.pendingRequest=Xr(Nt,function(Xt){Pe.pendingRequest=null,oe(Xt),Pe.saveEventData(),Pe.processRequests(_e)})}},Cr.prototype.queueRequest=function(C,V){this.queue.push(C),this.processRequests(V)};var vr=function(k){function C(){k.call(this,"map.load"),this.success={},this.skuToken=""}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postMapLoadEvent=function(oe,_e,Pe,je){this.skuToken=Pe,(Ae.EVENTS_URL&&je||Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(ct){return ze(ct)||nt(ct)}))&&this.queueRequest({id:_e,timestamp:Date.now()},je)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){var Pe=this.queue.shift(),je=Pe.id,ct=Pe.timestamp;je&&this.success[je]||(this.anonId||this.fetchEventData(),P(this.anonId)||(this.anonId=y()),this.postEvent(ct,{skuToken:this.skuToken},function(Lt){Lt||je&&(_e.success[je]=!0)},oe))}},C}(Cr),_r=function(k){function C(V){k.call(this,"appUserTurnstile"),this._customAccessToken=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postTurnstileEvent=function(oe,_e){Ae.EVENTS_URL&&Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(Pe){return ze(Pe)||nt(Pe)})&&this.queueRequest(Date.now(),_e)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var Pe=ar(Ae.ACCESS_TOKEN),je=Pe?Pe.u:Ae.ACCESS_TOKEN,ct=je!==this.eventData.tokenU;P(this.anonId)||(this.anonId=y(),ct=!0);var Lt=this.queue.shift();if(this.eventData.lastSuccess){var Nt=new Date(this.eventData.lastSuccess),Xt=new Date(Lt),gr=(Lt-this.eventData.lastSuccess)/(24*60*60*1e3);ct=ct||gr>=1||gr<-1||Nt.getDate()!==Xt.getDate()}else ct=!0;if(!ct)return this.processRequests();this.postEvent(Lt,{"enabled.telemetry":!1},function(Br){Br||(_e.eventData.lastSuccess=Lt,_e.eventData.tokenU=je)},oe)}},C}(Cr),yt=new _r,Fe=yt.postTurnstileEvent.bind(yt),Ke=new vr,Ne=Ke.postMapLoadEvent.bind(Ke),Ee="mapbox-tiles",Ve=500,ke=50,Te=1e3*60*7,Le;function rt(){s.caches&&!Le&&(Le=s.caches.open(Ee))}var dt;function xt(k,C){if(dt===void 0)try{new Response(new ReadableStream),dt=!0}catch{dt=!1}dt?C(k.body):k.blob().then(C)}function It(k,C,V){if(rt(),!!Le){var oe={status:C.status,statusText:C.statusText,headers:new s.Headers};C.headers.forEach(function(je,ct){return oe.headers.set(ct,je)});var _e=he(C.headers.get("Cache-Control")||"");if(!_e["no-store"]){_e["max-age"]&&oe.headers.set("Expires",new Date(V+_e["max-age"]*1e3).toUTCString());var Pe=new Date(oe.headers.get("Expires")).getTime()-V;Pe<Te||xt(C,function(je){var ct=new s.Response(je,oe);rt(),Le&&Le.then(function(Lt){return Lt.put(Bt(k.url),ct)}).catch(function(Lt){return U(Lt.message)})})}}}function Bt(k){var C=k.indexOf("?");return C<0?k:k.slice(0,C)}function Gt(k,C){if(rt(),!Le)return C(null);var V=Bt(k.url);Le.then(function(oe){oe.match(V).then(function(_e){var Pe=Kt(_e);oe.delete(V),Pe&&oe.put(V,_e.clone()),C(null,_e,Pe)}).catch(C)}).catch(C)}function Kt(k){if(!k)return!1;var C=new Date(k.headers.get("Expires")||0),V=he(k.headers.get("Cache-Control")||"");return C>Date.now()&&!V["no-cache"]}var sr=1/0;function sa(k){sr++,sr>ke&&(k.getActor().send("enforceCacheSizeLimit",Ve),sr=0)}function Aa(k){rt(),Le&&Le.then(function(C){C.keys().then(function(V){for(var oe=0;oe<V.length-k;oe++)C.delete(V[oe])})})}function La(k){var C=s.caches.delete(Ee);k&&C.catch(k).then(function(){return k()})}function ka(k,C){Ve=k,ke=C}var Ga;function Ma(){return Ga==null&&(Ga=s.OffscreenCanvas&&new s.OffscreenCanvas(1,1).getContext("2d")&&typeof s.createImageBitmap=="function"),Ga}var Ua={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(Ua);var ni=function(k){function C(V,oe,_e){oe===401&&nt(_e)&&(V+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),k.call(this,V),this.status=oe,this.url=_e,this.name=this.constructor.name,this.message=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},C}(Error),Wt=se()?function(){return self.worker&&self.worker.referrer}:function(){return(s.location.protocol==="blob:"?s.parent:s).location.href},zt=function(k){return/^file:/.test(k)||/^file:/.test(Wt())&&!/^\w+:/.test(k)};function Vt(k,C){var V=new s.AbortController,oe=new s.Request(k.url,{method:k.method||"GET",body:k.body,credentials:k.credentials,headers:k.headers,referrer:Wt(),signal:V.signal}),_e=!1,Pe=!1,je=Qe(oe.url);k.type==="json"&&oe.headers.set("Accept","application/json");var ct=function(Nt,Xt,gr){if(!Pe){if(Nt&&Nt.message!=="SecurityError"&&U(Nt),Xt&&gr)return Lt(Xt);var Br=Date.now();s.fetch(oe).then(function(Rr){if(Rr.ok){var na=je?Rr.clone():null;return Lt(Rr,na,Br)}else return C(new ni(Rr.statusText,Rr.status,k.url))}).catch(function(Rr){Rr.code!==20&&C(new Error(Rr.message))})}},Lt=function(Nt,Xt,gr){(k.type==="arrayBuffer"?Nt.arrayBuffer():k.type==="json"?Nt.json():Nt.text()).then(function(Br){Pe||(Xt&&gr&&It(oe,Xt,gr),_e=!0,C(null,Br,Nt.headers.get("Cache-Control"),Nt.headers.get("Expires")))}).catch(function(Br){Pe||C(new Error(Br.message))})};return je?Gt(oe,ct):ct(null,null),{cancel:function(){Pe=!0,_e||V.abort()}}}function Ut(k,C){var V=new s.XMLHttpRequest;V.open(k.method||"GET",k.url,!0),k.type==="arrayBuffer"&&(V.responseType="arraybuffer");for(var oe in k.headers)V.setRequestHeader(oe,k.headers[oe]);return k.type==="json"&&(V.responseType="text",V.setRequestHeader("Accept","application/json")),V.withCredentials=k.credentials==="include",V.onerror=function(){C(new Error(V.statusText))},V.onload=function(){if((V.status>=200&&V.status<300||V.status===0)&&V.response!==null){var _e=V.response;if(k.type==="json")try{_e=JSON.parse(V.response)}catch(Pe){return C(Pe)}C(null,_e,V.getResponseHeader("Cache-Control"),V.getResponseHeader("Expires"))}else C(new ni(V.statusText,V.status,k.url))},V.send(k.body),{cancel:function(){return V.abort()}}}var xr=function(k,C){if(!zt(k.url)){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return Vt(k,C);if(se()&&self.worker&&self.worker.actor){var V=!0;return self.worker.actor.send("getResource",k,C,void 0,V)}}return Ut(k,C)},Zr=function(k,C){return xr(m(k,{type:"json"}),C)},pa=function(k,C){return xr(m(k,{type:"arrayBuffer"}),C)},Xr=function(k,C){return xr(m(k,{method:"POST"}),C)};function Ea(k){var C=s.document.createElement("a");return C.href=k,C.protocol===s.document.location.protocol&&C.host===s.document.location.host}var Fa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function qa(k,C,V,oe){var _e=new s.Image,Pe=s.URL;_e.onload=function(){C(null,_e),Pe.revokeObjectURL(_e.src),_e.onload=null,s.requestAnimationFrame(function(){_e.src=Fa})},_e.onerror=function(){return C(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var je=new s.Blob([new Uint8Array(k)],{type:"image/png"});_e.cacheControl=V,_e.expires=oe,_e.src=k.byteLength?Pe.createObjectURL(je):Fa}function ya(k,C){var V=new s.Blob([new Uint8Array(k)],{type:"image/png"});s.createImageBitmap(V).then(function(oe){C(null,oe)}).catch(function(oe){C(new Error("Could not load image because of "+oe.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var $a,mt,gt=function(){$a=[],mt=0};gt();var Er=function(k,C){if(Be.supported&&(k.headers||(k.headers={}),k.headers.accept="image/webp,*/*"),mt>=Ae.MAX_PARALLEL_IMAGE_REQUESTS){var V={requestParameters:k,callback:C,cancelled:!1,cancel:function(){this.cancelled=!0}};return $a.push(V),V}mt++;var oe=!1,_e=function(){if(!oe)for(oe=!0,mt--;$a.length&&mt<Ae.MAX_PARALLEL_IMAGE_REQUESTS;){var je=$a.shift(),ct=je.requestParameters,Lt=je.callback,Nt=je.cancelled;Nt||(je.cancel=Er(ct,Lt).cancel)}},Pe=pa(k,function(je,ct,Lt,Nt){_e(),je?C(je):ct&&(Ma()?ya(ct,C):qa(ct,C,Lt,Nt))});return{cancel:function(){Pe.cancel(),_e()}}},kr=function(k,C){var V=s.document.createElement("video");V.muted=!0,V.onloadstart=function(){C(null,V)};for(var oe=0;oe<k.length;oe++){var _e=s.document.createElement("source");Ea(k[oe])||(V.crossOrigin="Anonymous"),_e.src=k[oe],V.appendChild(_e)}return{cancel:function(){}}};function br(k,C,V){var oe=V[k]&&V[k].indexOf(C)!==-1;oe||(V[k]=V[k]||[],V[k].push(C))}function Tr(k,C,V){if(V&&V[k]){var oe=V[k].indexOf(C);oe!==-1&&V[k].splice(oe,1)}}var Mr=function(C,V){V===void 0&&(V={}),m(this,V),this.type=C},Fr=function(k){function C(V,oe){oe===void 0&&(oe={}),k.call(this,"error",m({error:V},oe))}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Mr),Lr=function(){};Lr.prototype.on=function(C,V){return this._listeners=this._listeners||{},br(C,V,this._listeners),this},Lr.prototype.off=function(C,V){return Tr(C,V,this._listeners),Tr(C,V,this._oneTimeListeners),this},Lr.prototype.once=function(C,V){return this._oneTimeListeners=this._oneTimeListeners||{},br(C,V,this._oneTimeListeners),this},Lr.prototype.fire=function(C,V){typeof C=="string"&&(C=new Mr(C,V||{}));var oe=C.type;if(this.listens(oe)){C.target=this;for(var _e=this._listeners&&this._listeners[oe]?this._listeners[oe].slice():[],Pe=0,je=_e;Pe<je.length;Pe+=1){var ct=je[Pe];ct.call(this,C)}for(var Lt=this._oneTimeListeners&&this._oneTimeListeners[oe]?this._oneTimeListeners[oe].slice():[],Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];Tr(oe,gr,this._oneTimeListeners),gr.call(this,C)}var Br=this._eventedParent;Br&&(m(C,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Br.fire(C))}else C instanceof Fr&&console.error(C.error);return this},Lr.prototype.listens=function(C){return this._listeners&&this._listeners[C]&&this._listeners[C].length>0||this._oneTimeListeners&&this._oneTimeListeners[C]&&this._oneTimeListeners[C].length>0||this._eventedParent&&this._eventedParent.listens(C)},Lr.prototype.setEventedParent=function(C,V){return this._eventedParent=C,this._eventedParentData=V,this};var Jr=8,oa={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},ca={"*":{type:"source"}},kt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],ir={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},mr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},$r={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},ma={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Ba={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Ca={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},da={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Sa=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],Ti={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ai={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},an={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},sn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Mn={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},On={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},$n={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Cn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={type:"array",value:"*"},Xi={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Jo={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},zo={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},as={type:"array",value:"*",minimum:1},Pn={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},go=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],In={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},Do={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ho={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},Qo={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Xn={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},po={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},ys={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Is={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Fs={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},$o={"*":{type:"string"}},fi={$version:Jr,$root:oa,sources:ca,source:kt,source_vector:ir,source_raster:mr,source_raster_dem:$r,source_geojson:ma,source_video:Ba,source_image:Ca,layer:da,layout:Sa,layout_background:Ti,layout_fill:ai,layout_circle:an,layout_heatmap:sn,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:Mn,layout_symbol:On,layout_raster:$n,layout_hillshade:Cn,filter:Lo,filter_operator:Xi,geometry_type:Jo,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:zo,expression:as,light:Pn,paint:go,paint_fill:In,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:Do,paint_circle:Ho,paint_heatmap:Qo,paint_symbol:Xn,paint_raster:po,paint_hillshade:ys,paint_background:Is,transition:Fs,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:$o},mn=function(C,V,oe,_e){this.message=(C?C+": ":"")+oe,_e&&(this.identifier=_e),V!=null&&V.__line__&&(this.line=V.__line__)};function ol(k){var C=k.key,V=k.value;return V?[new mn(C,V,"constants have been deprecated as of v8")]:[]}function Os(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function so(k){return k instanceof Number||k instanceof String||k instanceof Boolean?k.valueOf():k}function Ns(k){if(Array.isArray(k))return k.map(Ns);if(k instanceof Object&&!(k instanceof Number||k instanceof String||k instanceof Boolean)){var C={};for(var V in k)C[V]=Ns(k[V]);return C}return so(k)}var fs=function(k){function C(V,oe){k.call(this,oe),this.message=oe,this.key=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Error),al=function(C,V){V===void 0&&(V=[]),this.parent=C,this.bindings={};for(var oe=0,_e=V;oe<_e.length;oe+=1){var Pe=_e[oe],je=Pe[0],ct=Pe[1];this.bindings[je]=ct}};al.prototype.concat=function(C){return new al(this,C)},al.prototype.get=function(C){if(this.bindings[C])return this.bindings[C];if(this.parent)return this.parent.get(C);throw new Error(C+" not found in scope.")},al.prototype.has=function(C){return this.bindings[C]?!0:this.parent?this.parent.has(C):!1};var vl={kind:"null"},ji={kind:"number"},To={kind:"string"},Yn={kind:"boolean"},_s={kind:"color"},Yo={kind:"object"},Nn={kind:"value"},Wl={kind:"error"},Zu={kind:"collator"},ml={kind:"formatted"},Bu={kind:"resolvedImage"};function El(k,C){return{kind:"array",itemType:k,N:C}}function qs(k){if(k.kind==="array"){var C=qs(k.itemType);return typeof k.N=="number"?"array<"+C+", "+k.N+">":k.itemType.kind==="value"?"array":"array<"+C+">"}else return k.kind}var Jl=[vl,ji,To,Yn,_s,ml,Yo,El(Nn),Bu];function Nu(k,C){if(C.kind==="error")return null;if(k.kind==="array"){if(C.kind==="array"&&(C.N===0&&C.itemType.kind==="value"||!Nu(k.itemType,C.itemType))&&(typeof k.N!="number"||k.N===C.N))return null}else{if(k.kind===C.kind)return null;if(k.kind==="value")for(var V=0,oe=Jl;V<oe.length;V+=1){var _e=oe[V];if(!Nu(_e,C))return null}}return"Expected "+qs(k)+" but found "+qs(C)+" instead."}function Ic(k,C){return C.some(function(V){return V.kind===k.kind})}function Xu(k,C){return C.some(function(V){return V==="null"?k===null:V==="array"?Array.isArray(k):V==="object"?k&&!Array.isArray(k)&&typeof k=="object":V===typeof k})}var Th=t(function(k,C){var V={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function oe(Nt){return Nt=Math.round(Nt),Nt<0?0:Nt>255?255:Nt}function _e(Nt){return Nt<0?0:Nt>1?1:Nt}function Pe(Nt){return Nt[Nt.length-1]==="%"?oe(parseFloat(Nt)/100*255):oe(parseInt(Nt))}function je(Nt){return Nt[Nt.length-1]==="%"?_e(parseFloat(Nt)/100):_e(parseFloat(Nt))}function ct(Nt,Xt,gr){return gr<0?gr+=1:gr>1&&(gr-=1),gr*6<1?Nt+(Xt-Nt)*gr*6:gr*2<1?Xt:gr*3<2?Nt+(Xt-Nt)*(2/3-gr)*6:Nt}function Lt(Nt){var Xt=Nt.replace(/ /g,"").toLowerCase();if(Xt in V)return V[Xt].slice();if(Xt[0]==="#"){if(Xt.length===4){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=4095?[(gr&3840)>>4|(gr&3840)>>8,gr&240|(gr&240)>>4,gr&15|(gr&15)<<4,1]:null}else if(Xt.length===7){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=16777215?[(gr&16711680)>>16,(gr&65280)>>8,gr&255,1]:null}return null}var Br=Xt.indexOf("("),Rr=Xt.indexOf(")");if(Br!==-1&&Rr+1===Xt.length){var na=Xt.substr(0,Br),Ia=Xt.substr(Br+1,Rr-(Br+1)).split(","),ii=1;switch(na){case"rgba":if(Ia.length!==4)return null;ii=je(Ia.pop());case"rgb":return Ia.length!==3?null:[Pe(Ia[0]),Pe(Ia[1]),Pe(Ia[2]),ii];case"hsla":if(Ia.length!==4)return null;ii=je(Ia.pop());case"hsl":if(Ia.length!==3)return null;var Wa=(parseFloat(Ia[0])%360+360)%360/360,Si=je(Ia[1]),ci=je(Ia[2]),Ai=ci<=.5?ci*(Si+1):ci+Si-ci*Si,Li=ci*2-Ai;return[oe(ct(Li,Ai,Wa+1/3)*255),oe(ct(Li,Ai,Wa)*255),oe(ct(Li,Ai,Wa-1/3)*255),ii];default:return null}}return null}try{C.parseCSSColor=Lt}catch{}}),bf=Th.parseCSSColor,Rs=function(C,V,oe,_e){_e===void 0&&(_e=1),this.r=C,this.g=V,this.b=oe,this.a=_e};Rs.parse=function(C){if(C){if(C instanceof Rs)return C;if(typeof C=="string"){var V=bf(C);if(V)return new Rs(V[0]/255*V[3],V[1]/255*V[3],V[2]/255*V[3],V[3])}}},Rs.prototype.toString=function(){var C=this.toArray(),V=C[0],oe=C[1],_e=C[2],Pe=C[3];return"rgba("+Math.round(V)+","+Math.round(oe)+","+Math.round(_e)+","+Pe+")"},Rs.prototype.toArray=function(){var C=this,V=C.r,oe=C.g,_e=C.b,Pe=C.a;return Pe===0?[0,0,0,0]:[V*255/Pe,oe*255/Pe,_e*255/Pe,Pe]},Rs.black=new Rs(0,0,0,1),Rs.white=new Rs(1,1,1,1),Rs.transparent=new Rs(0,0,0,0),Rs.red=new Rs(1,0,0,1);var Yc=function(C,V,oe){C?this.sensitivity=V?"variant":"case":this.sensitivity=V?"accent":"base",this.locale=oe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Yc.prototype.compare=function(C,V){return this.collator.compare(C,V)},Yc.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var If=function(C,V,oe,_e,Pe){this.text=C,this.image=V,this.scale=oe,this.fontStack=_e,this.textColor=Pe},Zl=function(C){this.sections=C};Zl.fromString=function(C){return new Zl([new If(C,null,null,null,null)])},Zl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(C){return C.text.length!==0||C.image&&C.image.name.length!==0})},Zl.factory=function(C){return C instanceof Zl?C:Zl.fromString(C)},Zl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(C){return C.text}).join("")},Zl.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];if(_e.image){C.push(["image",_e.image.name]);continue}C.push(_e.text);var Pe={};_e.fontStack&&(Pe["text-font"]=["literal",_e.fontStack.split(",")]),_e.scale&&(Pe["font-scale"]=_e.scale),_e.textColor&&(Pe["text-color"]=["rgba"].concat(_e.textColor.toArray())),C.push(Pe)}return C};var yl=function(C){this.name=C.name,this.available=C.available};yl.prototype.toString=function(){return this.name},yl.fromString=function(C){return C?new yl({name:C,available:!1}):null},yl.prototype.serialize=function(){return["image",this.name]};function oc(k,C,V,oe){if(!(typeof k=="number"&&k>=0&&k<=255&&typeof C=="number"&&C>=0&&C<=255&&typeof V=="number"&&V>=0&&V<=255)){var _e=typeof oe=="number"?[k,C,V,oe]:[k,C,V];return"Invalid rgba value ["+_e.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof oe>"u"||typeof oe=="number"&&oe>=0&&oe<=1?null:"Invalid rgba value ["+[k,C,V,oe].join(", ")+"]: 'a' must be between 0 and 1."}function _c(k){if(k===null)return!0;if(typeof k=="string")return!0;if(typeof k=="boolean")return!0;if(typeof k=="number")return!0;if(k instanceof Rs)return!0;if(k instanceof Yc)return!0;if(k instanceof Zl)return!0;if(k instanceof yl)return!0;if(Array.isArray(k)){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(!_c(oe))return!1}return!0}else if(typeof k=="object"){for(var _e in k)if(!_c(k[_e]))return!1;return!0}else return!1}function Zs(k){if(k===null)return vl;if(typeof k=="string")return To;if(typeof k=="boolean")return Yn;if(typeof k=="number")return ji;if(k instanceof Rs)return _s;if(k instanceof Yc)return Zu;if(k instanceof Zl)return ml;if(k instanceof yl)return Bu;if(Array.isArray(k)){for(var C=k.length,V,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe],je=Zs(Pe);if(!V)V=je;else{if(V===je)continue;V=Nn;break}}return El(V||Nn,C)}else return Yo}function _l(k){var C=typeof k;return k===null?"":C==="string"||C==="number"||C==="boolean"?String(k):k instanceof Rs||k instanceof Zl||k instanceof yl?k.toString():JSON.stringify(k)}var Bs=function(C,V){this.type=C,this.value=V};Bs.parse=function(C,V){if(C.length!==2)return V.error("'literal' expression requires exactly one argument, but found "+(C.length-1)+" instead.");if(!_c(C[1]))return V.error("invalid value");var oe=C[1],_e=Zs(oe),Pe=V.expectedType;return _e.kind==="array"&&_e.N===0&&Pe&&Pe.kind==="array"&&(typeof Pe.N!="number"||Pe.N===0)&&(_e=Pe),new Bs(_e,oe)},Bs.prototype.evaluate=function(){return this.value},Bs.prototype.eachChild=function(){},Bs.prototype.outputDefined=function(){return!0},Bs.prototype.serialize=function(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof Rs?["rgba"].concat(this.value.toArray()):this.value instanceof Zl?this.value.serialize():this.value};var $s=function(C){this.name="ExpressionEvaluationError",this.message=C};$s.prototype.toJSON=function(){return this.message};var sc={string:To,number:ji,boolean:Yn,object:Yo},zl=function(C,V){this.type=C,this.args=V};zl.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=1,_e,Pe=C[0];if(Pe==="array"){var je;if(C.length>2){var ct=C[1];if(typeof ct!="string"||!(ct in sc)||ct==="object")return V.error('The item type argument of "array" must be one of string, number, boolean',1);je=sc[ct],oe++}else je=Nn;var Lt;if(C.length>3){if(C[2]!==null&&(typeof C[2]!="number"||C[2]<0||C[2]!==Math.floor(C[2])))return V.error('The length argument to "array" must be a positive integer literal',2);Lt=C[2],oe++}_e=El(je,Lt)}else _e=sc[Pe];for(var Nt=[];oe<C.length;oe++){var Xt=V.parse(C[oe],oe,Nn);if(!Xt)return null;Nt.push(Xt)}return new zl(_e,Nt)},zl.prototype.evaluate=function(C){for(var V=0;V<this.args.length;V++){var oe=this.args[V].evaluate(C),_e=Nu(this.type,Zs(oe));if(_e){if(V===this.args.length-1)throw new $s("Expected value to be of type "+qs(this.type)+", but found "+qs(Zs(oe))+" instead.")}else return oe}return null},zl.prototype.eachChild=function(C){this.args.forEach(C)},zl.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},zl.prototype.serialize=function(){var C=this.type,V=[C.kind];if(C.kind==="array"){var oe=C.itemType;if(oe.kind==="string"||oe.kind==="number"||oe.kind==="boolean"){V.push(oe.kind);var _e=C.N;(typeof _e=="number"||this.args.length>1)&&V.push(_e)}}return V.concat(this.args.map(function(Pe){return Pe.serialize()}))};var Yu=function(C){this.type=ml,this.sections=C};Yu.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[1];if(!Array.isArray(oe)&&typeof oe=="object")return V.error("First argument must be an image or text section.");for(var _e=[],Pe=!1,je=1;je<=C.length-1;++je){var ct=C[je];if(Pe&&typeof ct=="object"&&!Array.isArray(ct)){Pe=!1;var Lt=null;if(ct["font-scale"]&&(Lt=V.parse(ct["font-scale"],1,ji),!Lt))return null;var Nt=null;if(ct["text-font"]&&(Nt=V.parse(ct["text-font"],1,El(To)),!Nt))return null;var Xt=null;if(ct["text-color"]&&(Xt=V.parse(ct["text-color"],1,_s),!Xt))return null;var gr=_e[_e.length-1];gr.scale=Lt,gr.font=Nt,gr.textColor=Xt}else{var Br=V.parse(C[je],1,Nn);if(!Br)return null;var Rr=Br.type.kind;if(Rr!=="string"&&Rr!=="value"&&Rr!=="null"&&Rr!=="resolvedImage")return V.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Pe=!0,_e.push({content:Br,scale:null,font:null,textColor:null})}}return new Yu(_e)},Yu.prototype.evaluate=function(C){var V=function(oe){var _e=oe.content.evaluate(C);return Zs(_e)===Bu?new If("",_e,null,null,null):new If(_l(_e),null,oe.scale?oe.scale.evaluate(C):null,oe.font?oe.font.evaluate(C).join(","):null,oe.textColor?oe.textColor.evaluate(C):null)};return new Zl(this.sections.map(V))},Yu.prototype.eachChild=function(C){for(var V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];C(_e.content),_e.scale&&C(_e.scale),_e.font&&C(_e.font),_e.textColor&&C(_e.textColor)}},Yu.prototype.outputDefined=function(){return!1},Yu.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];C.push(_e.content.serialize());var Pe={};_e.scale&&(Pe["font-scale"]=_e.scale.serialize()),_e.font&&(Pe["text-font"]=_e.font.serialize()),_e.textColor&&(Pe["text-color"]=_e.textColor.serialize()),C.push(Pe)}return C};var Qs=function(C){this.type=Bu,this.input=C};Qs.parse=function(C,V){if(C.length!==2)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,To);return oe?new Qs(oe):V.error("No image name provided.")},Qs.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=yl.fromString(V);return oe&&C.availableImages&&(oe.available=C.availableImages.indexOf(V)>-1),oe},Qs.prototype.eachChild=function(C){C(this.input)},Qs.prototype.outputDefined=function(){return!1},Qs.prototype.serialize=function(){return["image",this.input.serialize()]};var fp={"to-boolean":Yn,"to-color":_s,"to-number":ji,"to-string":To},es=function(C,V){this.type=C,this.args=V};es.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[0];if((oe==="to-boolean"||oe==="to-string")&&C.length!==2)return V.error("Expected one argument.");for(var _e=fp[oe],Pe=[],je=1;je<C.length;je++){var ct=V.parse(C[je],je,Nn);if(!ct)return null;Pe.push(ct)}return new es(_e,Pe)},es.prototype.evaluate=function(C){if(this.type.kind==="boolean")return!!this.args[0].evaluate(C);if(this.type.kind==="color"){for(var V,oe,_e=0,Pe=this.args;_e<Pe.length;_e+=1){var je=Pe[_e];if(V=je.evaluate(C),oe=null,V instanceof Rs)return V;if(typeof V=="string"){var ct=C.parseColor(V);if(ct)return ct}else if(Array.isArray(V)&&(V.length<3||V.length>4?oe="Invalid rbga value "+JSON.stringify(V)+": expected an array containing either three or four numeric values.":oe=oc(V[0],V[1],V[2],V[3]),!oe))return new Rs(V[0]/255,V[1]/255,V[2]/255,V[3])}throw new $s(oe||"Could not parse color from value '"+(typeof V=="string"?V:String(JSON.stringify(V)))+"'")}else if(this.type.kind==="number"){for(var Lt=null,Nt=0,Xt=this.args;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];if(Lt=gr.evaluate(C),Lt===null)return 0;var Br=Number(Lt);if(!isNaN(Br))return Br}throw new $s("Could not convert "+JSON.stringify(Lt)+" to number.")}else return this.type.kind==="formatted"?Zl.fromString(_l(this.args[0].evaluate(C))):this.type.kind==="resolvedImage"?yl.fromString(_l(this.args[0].evaluate(C))):_l(this.args[0].evaluate(C))},es.prototype.eachChild=function(C){this.args.forEach(C)},es.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},es.prototype.serialize=function(){if(this.type.kind==="formatted")return new Yu([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new Qs(this.args[0]).serialize();var C=["to-"+this.type.kind];return this.eachChild(function(V){C.push(V.serialize())}),C};var Wh=["Unknown","Point","LineString","Polygon"],Ss=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};Ss.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null},Ss.prototype.geometryType=function(){return this.feature?typeof this.feature.type=="number"?Wh[this.feature.type]:this.feature.type:null},Ss.prototype.geometry=function(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null},Ss.prototype.canonicalID=function(){return this.canonical},Ss.prototype.properties=function(){return this.feature&&this.feature.properties||{}},Ss.prototype.parseColor=function(C){var V=this._parseColorCache[C];return V||(V=this._parseColorCache[C]=Rs.parse(C)),V};var So=function(C,V,oe,_e){this.name=C,this.type=V,this._evaluate=oe,this.args=_e};So.prototype.evaluate=function(C){return this._evaluate(C,this.args)},So.prototype.eachChild=function(C){this.args.forEach(C)},So.prototype.outputDefined=function(){return!1},So.prototype.serialize=function(){return[this.name].concat(this.args.map(function(C){return C.serialize()}))},So.parse=function(C,V){var oe,_e=C[0],Pe=So.definitions[_e];if(!Pe)return V.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0);for(var je=Array.isArray(Pe)?Pe[0]:Pe.type,ct=Array.isArray(Pe)?[[Pe[1],Pe[2]]]:Pe.overloads,Lt=ct.filter(function(uo){var vo=uo[0];return!Array.isArray(vo)||vo.length===C.length-1}),Nt=null,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt],Rr=Br[0],na=Br[1];Nt=new kl(V.registry,V.path,null,V.scope);for(var Ia=[],ii=!1,Wa=1;Wa<C.length;Wa++){var Si=C[Wa],ci=Array.isArray(Rr)?Rr[Wa-1]:Rr.type,Ai=Nt.parse(Si,1+Ia.length,ci);if(!Ai){ii=!0;break}Ia.push(Ai)}if(!ii){if(Array.isArray(Rr)&&Rr.length!==Ia.length){Nt.error("Expected "+Rr.length+" arguments, but found "+Ia.length+" instead.");continue}for(var Li=0;Li<Ia.length;Li++){var Ki=Array.isArray(Rr)?Rr[Li]:Rr.type,kn=Ia[Li];Nt.concat(Li+1).checkSubtype(Ki,kn.type)}if(Nt.errors.length===0)return new So(_e,je,na,Ia)}}if(Lt.length===1)(oe=V.errors).push.apply(oe,Nt.errors);else{for(var Tn=Lt.length?Lt:ct,lo=Tn.map(function(uo){var vo=uo[0];return hf(vo)}).join(" | "),qn=[],to=1;to<C.length;to++){var ds=V.parse(C[to],1+qn.length);if(!ds)return null;qn.push(qs(ds.type))}V.error("Expected arguments of type "+lo+", but found ("+qn.join(", ")+") instead.")}return null},So.register=function(C,V){So.definitions=V;for(var oe in V)C[oe]=So};function hf(k){return Array.isArray(k)?"("+k.map(qs).join(", ")+")":"("+qs(k.type)+"...)"}var Ku=function(C,V,oe){this.type=Zu,this.locale=oe,this.caseSensitive=C,this.diacriticSensitive=V};Ku.parse=function(C,V){if(C.length!==2)return V.error("Expected one argument.");var oe=C[1];if(typeof oe!="object"||Array.isArray(oe))return V.error("Collator options argument must be an object.");var _e=V.parse(oe["case-sensitive"]===void 0?!1:oe["case-sensitive"],1,Yn);if(!_e)return null;var Pe=V.parse(oe["diacritic-sensitive"]===void 0?!1:oe["diacritic-sensitive"],1,Yn);if(!Pe)return null;var je=null;return oe.locale&&(je=V.parse(oe.locale,1,To),!je)?null:new Ku(_e,Pe,je)},Ku.prototype.evaluate=function(C){return new Yc(this.caseSensitive.evaluate(C),this.diacriticSensitive.evaluate(C),this.locale?this.locale.evaluate(C):null)},Ku.prototype.eachChild=function(C){C(this.caseSensitive),C(this.diacriticSensitive),this.locale&&C(this.locale)},Ku.prototype.outputDefined=function(){return!1},Ku.prototype.serialize=function(){var C={};return C["case-sensitive"]=this.caseSensitive.serialize(),C["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(C.locale=this.locale.serialize()),["collator",C]};var cu=8192;function Zf(k,C){k[0]=Math.min(k[0],C[0]),k[1]=Math.min(k[1],C[1]),k[2]=Math.max(k[2],C[0]),k[3]=Math.max(k[3],C[1])}function Rc(k){return(180+k)/360}function pf(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function Fl(k,C){return!(k[0]<=C[0]||k[2]>=C[2]||k[1]<=C[1]||k[3]>=C[3])}function lh(k,C){var V=Rc(k[0]),oe=pf(k[1]),_e=Math.pow(2,C.z);return[Math.round(V*_e*cu),Math.round(oe*_e*cu)]}function Xf(k,C,V){var oe=k[0]-C[0],_e=k[1]-C[1],Pe=k[0]-V[0],je=k[1]-V[1];return oe*je-Pe*_e===0&&oe*Pe<=0&&_e*je<=0}function Rf(k,C,V){return C[1]>k[1]!=V[1]>k[1]&&k[0]<(V[0]-C[0])*(k[1]-C[1])/(V[1]-C[1])+C[0]}function Kc(k,C){for(var V=!1,oe=0,_e=C.length;oe<_e;oe++)for(var Pe=C[oe],je=0,ct=Pe.length;je<ct-1;je++){if(Xf(k,Pe[je],Pe[je+1]))return!1;Rf(k,Pe[je],Pe[je+1])&&(V=!V)}return V}function Yf(k,C){for(var V=0;V<C.length;V++)if(Kc(k,C[V]))return!0;return!1}function uh(k,C){return k[0]*C[1]-k[1]*C[0]}function Ju(k,C,V,oe){var _e=k[0]-V[0],Pe=k[1]-V[1],je=C[0]-V[0],ct=C[1]-V[1],Lt=oe[0]-V[0],Nt=oe[1]-V[1],Xt=_e*Nt-Lt*Pe,gr=je*Nt-Lt*ct;return Xt>0&&gr<0||Xt<0&&gr>0}function Df(k,C,V,oe){var _e=[C[0]-k[0],C[1]-k[1]],Pe=[oe[0]-V[0],oe[1]-V[1]];return uh(Pe,_e)===0?!1:!!(Ju(k,C,V,oe)&&Ju(V,oe,k,C))}function Dc(k,C,V){for(var oe=0,_e=V;oe<_e.length;oe+=1)for(var Pe=_e[oe],je=0;je<Pe.length-1;++je)if(Df(k,C,Pe[je],Pe[je+1]))return!0;return!1}function Jc(k,C){for(var V=0;V<k.length;++V)if(!Kc(k[V],C))return!1;for(var oe=0;oe<k.length-1;++oe)if(Dc(k[oe],k[oe+1],C))return!1;return!0}function Eu(k,C){for(var V=0;V<C.length;V++)if(Jc(k,C[V]))return!0;return!1}function wf(k,C,V){for(var oe=[],_e=0;_e<k.length;_e++){for(var Pe=[],je=0;je<k[_e].length;je++){var ct=lh(k[_e][je],V);Zf(C,ct),Pe.push(ct)}oe.push(Pe)}return oe}function zc(k,C,V){for(var oe=[],_e=0;_e<k.length;_e++){var Pe=wf(k[_e],C,V);oe.push(Pe)}return oe}function Us(k,C,V,oe){if(k[0]<V[0]||k[0]>V[2]){var _e=oe*.5,Pe=k[0]-V[0]>_e?-oe:V[0]-k[0]>_e?oe:0;Pe===0&&(Pe=k[0]-V[2]>_e?-oe:V[2]-k[0]>_e?oe:0),k[0]+=Pe}Zf(C,k)}function Kf(k){k[0]=k[1]=1/0,k[2]=k[3]=-1/0}function Zh(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct<Lt.length;ct+=1)for(var Nt=Lt[ct],Xt=0,gr=Nt;Xt<gr.length;Xt+=1){var Br=gr[Xt],Rr=[Br.x+Pe[0],Br.y+Pe[1]];Us(Rr,C,V,_e),je.push(Rr)}return je}function ch(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct<Lt.length;ct+=1){for(var Nt=Lt[ct],Xt=[],gr=0,Br=Nt;gr<Br.length;gr+=1){var Rr=Br[gr],na=[Rr.x+Pe[0],Rr.y+Pe[1]];Zf(C,na),Xt.push(na)}je.push(Xt)}if(C[2]-C[0]<=_e/2){Kf(C);for(var Ia=0,ii=je;Ia<ii.length;Ia+=1)for(var Wa=ii[Ia],Si=0,ci=Wa;Si<ci.length;Si+=1){var Ai=ci[Si];Us(Ai,C,V,_e)}}return je}function df(k,C){var V=[1/0,1/0,-1/0,-1/0],oe=[1/0,1/0,-1/0,-1/0],_e=k.canonicalID();if(C.type==="Polygon"){var Pe=wf(C.coordinates,oe,_e),je=Zh(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var ct=0,Lt=je;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(!Kc(Nt,Pe))return!1}}if(C.type==="MultiPolygon"){var Xt=zc(C.coordinates,oe,_e),gr=Zh(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(!Yf(na,Xt))return!1}}return!0}function Ah(k,C){var V=[1/0,1/0,-1/0,-1/0],oe=[1/0,1/0,-1/0,-1/0],_e=k.canonicalID();if(C.type==="Polygon"){var Pe=wf(C.coordinates,oe,_e),je=ch(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var ct=0,Lt=je;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(!Jc(Nt,Pe))return!1}}if(C.type==="MultiPolygon"){var Xt=zc(C.coordinates,oe,_e),gr=ch(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(!Eu(na,Xt))return!1}}return!0}var ku=function(C,V){this.type=Yn,this.geojson=C,this.geometries=V};ku.parse=function(C,V){if(C.length!==2)return V.error("'within' expression requires exactly one argument, but found "+(C.length-1)+" instead.");if(_c(C[1])){var oe=C[1];if(oe.type==="FeatureCollection")for(var _e=0;_e<oe.features.length;++_e){var Pe=oe.features[_e].geometry.type;if(Pe==="Polygon"||Pe==="MultiPolygon")return new ku(oe,oe.features[_e].geometry)}else if(oe.type==="Feature"){var je=oe.geometry.type;if(je==="Polygon"||je==="MultiPolygon")return new ku(oe,oe.geometry)}else if(oe.type==="Polygon"||oe.type==="MultiPolygon")return new ku(oe,oe)}return V.error("'within' expression requires valid geojson object that contains polygon geometry type.")},ku.prototype.evaluate=function(C){if(C.geometry()!=null&&C.canonicalID()!=null){if(C.geometryType()==="Point")return df(C,this.geometries);if(C.geometryType()==="LineString")return Ah(C,this.geometries)}return!1},ku.prototype.eachChild=function(){},ku.prototype.outputDefined=function(){return!0},ku.prototype.serialize=function(){return["within",this.geojson]};function fh(k){if(k instanceof So){if(k.name==="get"&&k.args.length===1)return!1;if(k.name==="feature-state")return!1;if(k.name==="has"&&k.args.length===1)return!1;if(k.name==="properties"||k.name==="geometry-type"||k.name==="id")return!1;if(/^filter-/.test(k.name))return!1}if(k instanceof ku)return!1;var C=!0;return k.eachChild(function(V){C&&!fh(V)&&(C=!1)}),C}function ru(k){if(k instanceof So&&k.name==="feature-state")return!1;var C=!0;return k.eachChild(function(V){C&&!ru(V)&&(C=!1)}),C}function Cu(k,C){if(k instanceof So&&C.indexOf(k.name)>=0)return!1;var V=!0;return k.eachChild(function(oe){V&&!Cu(oe,C)&&(V=!1)}),V}var xc=function(C,V){this.type=V.type,this.name=C,this.boundExpression=V};xc.parse=function(C,V){if(C.length!==2||typeof C[1]!="string")return V.error("'var' expression requires exactly one string literal argument.");var oe=C[1];return V.scope.has(oe)?new xc(oe,V.scope.get(oe)):V.error('Unknown variable "'+oe+'". Make sure "'+oe+'" has been bound in an enclosing "let" expression before using it.',1)},xc.prototype.evaluate=function(C){return this.boundExpression.evaluate(C)},xc.prototype.eachChild=function(){},xc.prototype.outputDefined=function(){return!1},xc.prototype.serialize=function(){return["var",this.name]};var kl=function(C,V,oe,_e,Pe){V===void 0&&(V=[]),_e===void 0&&(_e=new al),Pe===void 0&&(Pe=[]),this.registry=C,this.path=V,this.key=V.map(function(je){return"["+je+"]"}).join(""),this.scope=_e,this.errors=Pe,this.expectedType=oe};kl.prototype.parse=function(C,V,oe,_e,Pe){return Pe===void 0&&(Pe={}),V?this.concat(V,oe,_e)._parse(C,Pe):this._parse(C,Pe)},kl.prototype._parse=function(C,V){(C===null||typeof C=="string"||typeof C=="boolean"||typeof C=="number")&&(C=["literal",C]);function oe(Xt,gr,Br){return Br==="assert"?new zl(gr,[Xt]):Br==="coerce"?new es(gr,[Xt]):Xt}if(Array.isArray(C)){if(C.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var _e=C[0];if(typeof _e!="string")return this.error("Expression name must be a string, but found "+typeof _e+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var Pe=this.registry[_e];if(Pe){var je=Pe.parse(C,this);if(!je)return null;if(this.expectedType){var ct=this.expectedType,Lt=je.type;if((ct.kind==="string"||ct.kind==="number"||ct.kind==="boolean"||ct.kind==="object"||ct.kind==="array")&&Lt.kind==="value")je=oe(je,ct,V.typeAnnotation||"assert");else if((ct.kind==="color"||ct.kind==="formatted"||ct.kind==="resolvedImage")&&(Lt.kind==="value"||Lt.kind==="string"))je=oe(je,ct,V.typeAnnotation||"coerce");else if(this.checkSubtype(ct,Lt))return null}if(!(je instanceof Bs)&&je.type.kind!=="resolvedImage"&&Fc(je)){var Nt=new Ss;try{je=new Bs(je.type,je.evaluate(Nt))}catch(Xt){return this.error(Xt.message),null}}return je}return this.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof C>"u"?this.error("'undefined' value invalid. Use null instead."):typeof C=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof C+" instead.")},kl.prototype.concat=function(C,V,oe){var _e=typeof C=="number"?this.path.concat(C):this.path,Pe=oe?this.scope.concat(oe):this.scope;return new kl(this.registry,_e,V||null,Pe,this.errors)},kl.prototype.error=function(C){for(var V=[],oe=arguments.length-1;oe-- >0;)V[oe]=arguments[oe+1];var _e=""+this.key+V.map(function(Pe){return"["+Pe+"]"}).join("");this.errors.push(new fs(_e,C))},kl.prototype.checkSubtype=function(C,V){var oe=Nu(C,V);return oe&&this.error(oe),oe};function Fc(k){if(k instanceof xc)return Fc(k.boundExpression);if(k instanceof So&&k.name==="error")return!1;if(k instanceof Ku)return!1;if(k instanceof ku)return!1;var C=k instanceof es||k instanceof zl,V=!0;return k.eachChild(function(oe){C?V=V&&Fc(oe):V=V&&oe instanceof Bs}),V?fh(k)&&Cu(k,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function $u(k,C){for(var V=k.length-1,oe=0,_e=V,Pe=0,je,ct;oe<=_e;)if(Pe=Math.floor((oe+_e)/2),je=k[Pe],ct=k[Pe+1],je<=C){if(Pe===V||C<ct)return Pe;oe=Pe+1}else if(je>C)_e=Pe-1;else throw new $s("Input is not a number.");return 0}var vu=function(C,V,oe){this.type=C,this.input=V,this.labels=[],this.outputs=[];for(var _e=0,Pe=oe;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je[0],Lt=je[1];this.labels.push(ct),this.outputs.push(Lt)}};vu.parse=function(C,V){if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=[],Pe=null;V.expectedType&&V.expectedType.kind!=="value"&&(Pe=V.expectedType);for(var je=1;je<C.length;je+=2){var ct=je===1?-1/0:C[je],Lt=C[je+1],Nt=je,Xt=je+1;if(typeof ct!="number")return V.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Nt);if(_e.length&&_e[_e.length-1][0]>=ct)return V.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Nt);var gr=V.parse(Lt,Xt,Pe);if(!gr)return null;Pe=Pe||gr.type,_e.push([ct,gr])}return new vu(Pe,oe,_e)},vu.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e);return oe[je].evaluate(C)},vu.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V<oe.length;V+=1){var _e=oe[V];C(_e)}},vu.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})},vu.prototype.serialize=function(){for(var C=["step",this.input.serialize()],V=0;V<this.labels.length;V++)V>0&&C.push(this.labels[V]),C.push(this.outputs[V].serialize());return C};function xl(k,C,V){return k*(1-V)+C*V}function hh(k,C,V){return new Rs(xl(k.r,C.r,V),xl(k.g,C.g,V),xl(k.b,C.b,V),xl(k.a,C.a,V))}function Sh(k,C,V){return k.map(function(oe,_e){return xl(oe,C[_e],V)})}var Uu=Object.freeze({__proto__:null,number:xl,color:hh,array:Sh}),bc=.95047,lc=1,hp=1.08883,vf=4/29,Tf=6/29,Lu=3*Tf*Tf,zf=Tf*Tf*Tf,au=Math.PI/180,$c=180/Math.PI;function Mh(k){return k>zf?Math.pow(k,1/3):k/Lu+vf}function Ff(k){return k>Tf?k*k*k:Lu*(k-vf)}function il(k){return 255*(k<=.0031308?12.92*k:1.055*Math.pow(k,1/2.4)-.055)}function mu(k){return k/=255,k<=.04045?k/12.92:Math.pow((k+.055)/1.055,2.4)}function gu(k){var C=mu(k.r),V=mu(k.g),oe=mu(k.b),_e=Mh((.4124564*C+.3575761*V+.1804375*oe)/bc),Pe=Mh((.2126729*C+.7151522*V+.072175*oe)/lc),je=Mh((.0193339*C+.119192*V+.9503041*oe)/hp);return{l:116*Pe-16,a:500*(_e-Pe),b:200*(Pe-je),alpha:k.a}}function Jf(k){var C=(k.l+16)/116,V=isNaN(k.a)?C:C+k.a/500,oe=isNaN(k.b)?C:C-k.b/200;return C=lc*Ff(C),V=bc*Ff(V),oe=hp*Ff(oe),new Rs(il(3.2404542*V-1.5371385*C-.4985314*oe),il(-.969266*V+1.8760108*C+.041556*oe),il(.0556434*V-.2040259*C+1.0572252*oe),k.alpha)}function el(k,C,V){return{l:xl(k.l,C.l,V),a:xl(k.a,C.a,V),b:xl(k.b,C.b,V),alpha:xl(k.alpha,C.alpha,V)}}function mf(k){var C=gu(k),V=C.l,oe=C.a,_e=C.b,Pe=Math.atan2(_e,oe)*$c;return{h:Pe<0?Pe+360:Pe,c:Math.sqrt(oe*oe+_e*_e),l:V,alpha:k.a}}function wc(k){var C=k.h*au,V=k.c,oe=k.l;return Jf({l:oe,a:Math.cos(C)*V,b:Math.sin(C)*V,alpha:k.alpha})}function ju(k,C,V){var oe=C-k;return k+V*(oe>180||oe<-180?oe-360*Math.round(oe/360):oe)}function Af(k,C,V){return{h:ju(k.h,C.h,V),c:xl(k.c,C.c,V),l:xl(k.l,C.l,V),alpha:xl(k.alpha,C.alpha,V)}}var uc={forward:gu,reverse:Jf,interpolate:el},Qc={forward:mf,reverse:wc,interpolate:Af},$f=Object.freeze({__proto__:null,lab:uc,hcl:Qc}),Vl=function(C,V,oe,_e,Pe){this.type=C,this.operator=V,this.interpolation=oe,this.input=_e,this.labels=[],this.outputs=[];for(var je=0,ct=Pe;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt[0],Xt=Lt[1];this.labels.push(Nt),this.outputs.push(Xt)}};Vl.interpolationFactor=function(C,V,oe,_e){var Pe=0;if(C.name==="exponential")Pe=Qf(V,C.base,oe,_e);else if(C.name==="linear")Pe=Qf(V,1,oe,_e);else if(C.name==="cubic-bezier"){var je=C.controlPoints,ct=new o(je[0],je[1],je[2],je[3]);Pe=ct.solve(Qf(V,1,oe,_e))}return Pe},Vl.parse=function(C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C.slice(3);if(!Array.isArray(_e)||_e.length===0)return V.error("Expected an interpolation type expression.",1);if(_e[0]==="linear")_e={name:"linear"};else if(_e[0]==="exponential"){var ct=_e[1];if(typeof ct!="number")return V.error("Exponential interpolation requires a numeric base.",1,1);_e={name:"exponential",base:ct}}else if(_e[0]==="cubic-bezier"){var Lt=_e.slice(1);if(Lt.length!==4||Lt.some(function(Wa){return typeof Wa!="number"||Wa<0||Wa>1}))return V.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);_e={name:"cubic-bezier",controlPoints:Lt}}else return V.error("Unknown interpolation type "+String(_e[0]),1,0);if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");if(Pe=V.parse(Pe,2,ji),!Pe)return null;var Nt=[],Xt=null;oe==="interpolate-hcl"||oe==="interpolate-lab"?Xt=_s:V.expectedType&&V.expectedType.kind!=="value"&&(Xt=V.expectedType);for(var gr=0;gr<je.length;gr+=2){var Br=je[gr],Rr=je[gr+1],na=gr+3,Ia=gr+4;if(typeof Br!="number")return V.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',na);if(Nt.length&&Nt[Nt.length-1][0]>=Br)return V.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',na);var ii=V.parse(Rr,Ia,Xt);if(!ii)return null;Xt=Xt||ii.type,Nt.push([Br,ii])}return Xt.kind!=="number"&&Xt.kind!=="color"&&!(Xt.kind==="array"&&Xt.itemType.kind==="number"&&typeof Xt.N=="number")?V.error("Type "+qs(Xt)+" is not interpolatable."):new Vl(Xt,oe,_e,Pe,Nt)},Vl.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e),ct=V[je],Lt=V[je+1],Nt=Vl.interpolationFactor(this.interpolation,_e,ct,Lt),Xt=oe[je].evaluate(C),gr=oe[je+1].evaluate(C);return this.operator==="interpolate"?Uu[this.type.kind.toLowerCase()](Xt,gr,Nt):this.operator==="interpolate-hcl"?Qc.reverse(Qc.interpolate(Qc.forward(Xt),Qc.forward(gr),Nt)):uc.reverse(uc.interpolate(uc.forward(Xt),uc.forward(gr),Nt))},Vl.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V<oe.length;V+=1){var _e=oe[V];C(_e)}},Vl.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})},Vl.prototype.serialize=function(){var C;this.interpolation.name==="linear"?C=["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?C=["linear"]:C=["exponential",this.interpolation.base]:C=["cubic-bezier"].concat(this.interpolation.controlPoints);for(var V=[this.operator,C,this.input.serialize()],oe=0;oe<this.labels.length;oe++)V.push(this.labels[oe],this.outputs[oe].serialize());return V};function Qf(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Vu=function(C,V){this.type=C,this.args=V};Vu.parse=function(C,V){if(C.length<2)return V.error("Expectected at least one argument.");var oe=null,_e=V.expectedType;_e&&_e.kind!=="value"&&(oe=_e);for(var Pe=[],je=0,ct=C.slice(1);je<ct.length;je+=1){var Lt=ct[je],Nt=V.parse(Lt,1+Pe.length,oe,void 0,{typeAnnotation:"omit"});if(!Nt)return null;oe=oe||Nt.type,Pe.push(Nt)}var Xt=_e&&Pe.some(function(gr){return Nu(_e,gr.type)});return Xt?new Vu(Nn,Pe):new Vu(oe,Pe)},Vu.prototype.evaluate=function(C){for(var V=null,oe=0,_e,Pe=0,je=this.args;Pe<je.length;Pe+=1){var ct=je[Pe];if(oe++,V=ct.evaluate(C),V&&V instanceof yl&&!V.available&&(_e||(_e=V.name),V=null,oe===this.args.length&&(V=_e)),V!==null)break}return V},Vu.prototype.eachChild=function(C){this.args.forEach(C)},Vu.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},Vu.prototype.serialize=function(){var C=["coalesce"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Tc=function(C,V){this.type=V.type,this.bindings=[].concat(C),this.result=V};Tc.prototype.evaluate=function(C){return this.result.evaluate(C)},Tc.prototype.eachChild=function(C){for(var V=0,oe=this.bindings;V<oe.length;V+=1){var _e=oe[V];C(_e[1])}C(this.result)},Tc.parse=function(C,V){if(C.length<4)return V.error("Expected at least 3 arguments, but found "+(C.length-1)+" instead.");for(var oe=[],_e=1;_e<C.length-1;_e+=2){var Pe=C[_e];if(typeof Pe!="string")return V.error("Expected string, but found "+typeof Pe+" instead.",_e);if(/[^a-zA-Z0-9_]/.test(Pe))return V.error("Variable names must contain only alphanumeric characters or '_'.",_e);var je=V.parse(C[_e+1],_e+1);if(!je)return null;oe.push([Pe,je])}var ct=V.parse(C[C.length-1],C.length-1,V.expectedType,oe);return ct?new Tc(oe,ct):null},Tc.prototype.outputDefined=function(){return this.result.outputDefined()},Tc.prototype.serialize=function(){for(var C=["let"],V=0,oe=this.bindings;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];C.push(Pe,je.serialize())}return C.push(this.result.serialize()),C};var cc=function(C,V,oe){this.type=C,this.index=V,this.input=oe};cc.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,ji),_e=V.parse(C[2],2,El(V.expectedType||Nn));if(!oe||!_e)return null;var Pe=_e.type;return new cc(Pe.itemType,oe,_e)},cc.prototype.evaluate=function(C){var V=this.index.evaluate(C),oe=this.input.evaluate(C);if(V<0)throw new $s("Array index out of bounds: "+V+" < 0.");if(V>=oe.length)throw new $s("Array index out of bounds: "+V+" > "+(oe.length-1)+".");if(V!==Math.floor(V))throw new $s("Array index must be an integer, but found "+V+" instead.");return oe[V]},cc.prototype.eachChild=function(C){C(this.index),C(this.input)},cc.prototype.outputDefined=function(){return!1},cc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Cl=function(C,V){this.type=Yn,this.needle=C,this.haystack=V};Cl.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);return!oe||!_e?null:Ic(oe.type,[Yn,To,ji,vl,Nn])?new Cl(oe,_e):V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead")},Cl.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!oe)return!1;if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");return oe.indexOf(V)>=0},Cl.prototype.eachChild=function(C){C(this.needle),C(this.haystack)},Cl.prototype.outputDefined=function(){return!0},Cl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var iu=function(C,V,oe){this.type=ji,this.needle=C,this.haystack=V,this.fromIndex=oe};iu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);if(!oe||!_e)return null;if(!Ic(oe.type,[Yn,To,ji,vl,Nn]))return V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new iu(oe,_e,Pe):null}else return new iu(oe,_e)},iu.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");if(this.fromIndex){var _e=this.fromIndex.evaluate(C);return oe.indexOf(V,_e)}return oe.indexOf(V)},iu.prototype.eachChild=function(C){C(this.needle),C(this.haystack),this.fromIndex&&C(this.fromIndex)},iu.prototype.outputDefined=function(){return!1},iu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var C=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),C]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var fc=function(C,V,oe,_e,Pe,je){this.inputType=C,this.type=V,this.input=oe,this.cases=_e,this.outputs=Pe,this.otherwise=je};fc.parse=function(C,V){if(C.length<5)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if(C.length%2!==1)return V.error("Expected an even number of arguments.");var oe,_e;V.expectedType&&V.expectedType.kind!=="value"&&(_e=V.expectedType);for(var Pe={},je=[],ct=2;ct<C.length-1;ct+=2){var Lt=C[ct],Nt=C[ct+1];Array.isArray(Lt)||(Lt=[Lt]);var Xt=V.concat(ct);if(Lt.length===0)return Xt.error("Expected at least one branch label.");for(var gr=0,Br=Lt;gr<Br.length;gr+=1){var Rr=Br[gr];if(typeof Rr!="number"&&typeof Rr!="string")return Xt.error("Branch labels must be numbers or strings.");if(typeof Rr=="number"&&Math.abs(Rr)>Number.MAX_SAFE_INTEGER)return Xt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Rr=="number"&&Math.floor(Rr)!==Rr)return Xt.error("Numeric branch labels must be integer values.");if(!oe)oe=Zs(Rr);else if(Xt.checkSubtype(oe,Zs(Rr)))return null;if(typeof Pe[String(Rr)]<"u")return Xt.error("Branch labels must be unique.");Pe[String(Rr)]=je.length}var na=V.parse(Nt,ct,_e);if(!na)return null;_e=_e||na.type,je.push(na)}var Ia=V.parse(C[1],1,Nn);if(!Ia)return null;var ii=V.parse(C[C.length-1],C.length-1,_e);return!ii||Ia.type.kind!=="value"&&V.concat(1).checkSubtype(oe,Ia.type)?null:new fc(oe,_e,Ia,Pe,je,ii)},fc.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=Zs(V)===this.inputType&&this.outputs[this.cases[V]]||this.otherwise;return oe.evaluate(C)},fc.prototype.eachChild=function(C){C(this.input),this.outputs.forEach(C),C(this.otherwise)},fc.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})&&this.otherwise.outputDefined()},fc.prototype.serialize=function(){for(var C=this,V=["match",this.input.serialize()],oe=Object.keys(this.cases).sort(),_e=[],Pe={},je=0,ct=oe;je<ct.length;je+=1){var Lt=ct[je],Nt=Pe[this.cases[Lt]];Nt===void 0?(Pe[this.cases[Lt]]=_e.length,_e.push([this.cases[Lt],[Lt]])):_e[Nt][1].push(Lt)}for(var Xt=function(Ia){return C.inputType.kind==="number"?Number(Ia):Ia},gr=0,Br=_e;gr<Br.length;gr+=1){var Rr=Br[gr],Nt=Rr[0],na=Rr[1];na.length===1?V.push(Xt(na[0])):V.push(na.map(Xt)),V.push(this.outputs[outputIndex$1].serialize())}return V.push(this.otherwise.serialize()),V};var Oc=function(C,V,oe){this.type=C,this.branches=V,this.otherwise=oe};Oc.parse=function(C,V){if(C.length<4)return V.error("Expected at least 3 arguments, but found only "+(C.length-1)+".");if(C.length%2!==0)return V.error("Expected an odd number of arguments.");var oe;V.expectedType&&V.expectedType.kind!=="value"&&(oe=V.expectedType);for(var _e=[],Pe=1;Pe<C.length-1;Pe+=2){var je=V.parse(C[Pe],Pe,Yn);if(!je)return null;var ct=V.parse(C[Pe+1],Pe+1,oe);if(!ct)return null;_e.push([je,ct]),oe=oe||ct.type}var Lt=V.parse(C[C.length-1],C.length-1,oe);return Lt?new Oc(oe,_e,Lt):null},Oc.prototype.evaluate=function(C){for(var V=0,oe=this.branches;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];if(Pe.evaluate(C))return je.evaluate(C)}return this.otherwise.evaluate(C)},Oc.prototype.eachChild=function(C){for(var V=0,oe=this.branches;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];C(Pe),C(je)}C(this.otherwise)},Oc.prototype.outputDefined=function(){return this.branches.every(function(C){var V=C[0],oe=C[1];return oe.outputDefined()})&&this.otherwise.outputDefined()},Oc.prototype.serialize=function(){var C=["case"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Qu=function(C,V,oe,_e){this.type=C,this.input=V,this.beginIndex=oe,this.endIndex=_e};Qu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,ji);if(!oe||!_e)return null;if(!Ic(oe.type,[El(Nn),To,Nn]))return V.error("Expected first argument to be of type array or string, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new Qu(oe.type,oe,_e,Pe):null}else return new Qu(oe.type,oe,_e)},Qu.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=this.beginIndex.evaluate(C);if(!Xu(V,["string","array"]))throw new $s("Expected first argument to be of type array or string, but found "+qs(Zs(V))+" instead.");if(this.endIndex){var _e=this.endIndex.evaluate(C);return V.slice(oe,_e)}return V.slice(oe)},Qu.prototype.eachChild=function(C){C(this.input),C(this.beginIndex),this.endIndex&&C(this.endIndex)},Qu.prototype.outputDefined=function(){return!1},Qu.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var C=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),C]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function ef(k,C){return k==="=="||k==="!="?C.kind==="boolean"||C.kind==="string"||C.kind==="number"||C.kind==="null"||C.kind==="value":C.kind==="string"||C.kind==="number"||C.kind==="value"}function Zt(k,C,V){return C===V}function fr(k,C,V){return C!==V}function Yr(k,C,V){return C<V}function qr(k,C,V){return C>V}function ba(k,C,V){return C<=V}function Ka(k,C,V){return C>=V}function oi(k,C,V,oe){return oe.compare(C,V)===0}function yi(k,C,V,oe){return!oi(k,C,V,oe)}function ki(k,C,V,oe){return oe.compare(C,V)<0}function Bi(k,C,V,oe){return oe.compare(C,V)>0}function li(k,C,V,oe){return oe.compare(C,V)<=0}function _i(k,C,V,oe){return oe.compare(C,V)>=0}function vi(k,C,V){var oe=k!=="=="&&k!=="!=";return function(){function _e(Pe,je,ct){this.type=Yn,this.lhs=Pe,this.rhs=je,this.collator=ct,this.hasUntypedArgument=Pe.type.kind==="value"||je.type.kind==="value"}return _e.parse=function(je,ct){if(je.length!==3&&je.length!==4)return ct.error("Expected two or three arguments.");var Lt=je[0],Nt=ct.parse(je[1],1,Nn);if(!Nt)return null;if(!ef(Lt,Nt.type))return ct.concat(1).error('"'+Lt+`" comparisons are not supported for type '`+qs(Nt.type)+"'.");var Xt=ct.parse(je[2],2,Nn);if(!Xt)return null;if(!ef(Lt,Xt.type))return ct.concat(2).error('"'+Lt+`" comparisons are not supported for type '`+qs(Xt.type)+"'.");if(Nt.type.kind!==Xt.type.kind&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot compare types '"+qs(Nt.type)+"' and '"+qs(Xt.type)+"'.");oe&&(Nt.type.kind==="value"&&Xt.type.kind!=="value"?Nt=new zl(Xt.type,[Nt]):Nt.type.kind!=="value"&&Xt.type.kind==="value"&&(Xt=new zl(Nt.type,[Xt])));var gr=null;if(je.length===4){if(Nt.type.kind!=="string"&&Xt.type.kind!=="string"&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot use collator to compare non-string types.");if(gr=ct.parse(je[3],3,Zu),!gr)return null}return new _e(Nt,Xt,gr)},_e.prototype.evaluate=function(je){var ct=this.lhs.evaluate(je),Lt=this.rhs.evaluate(je);if(oe&&this.hasUntypedArgument){var Nt=Zs(ct),Xt=Zs(Lt);if(Nt.kind!==Xt.kind||!(Nt.kind==="string"||Nt.kind==="number"))throw new $s('Expected arguments for "'+k+'" to be (string, string) or (number, number), but found ('+Nt.kind+", "+Xt.kind+") instead.")}if(this.collator&&!oe&&this.hasUntypedArgument){var gr=Zs(ct),Br=Zs(Lt);if(gr.kind!=="string"||Br.kind!=="string")return C(je,ct,Lt)}return this.collator?V(je,ct,Lt,this.collator.evaluate(je)):C(je,ct,Lt)},_e.prototype.eachChild=function(je){je(this.lhs),je(this.rhs),this.collator&&je(this.collator)},_e.prototype.outputDefined=function(){return!0},_e.prototype.serialize=function(){var je=[k];return this.eachChild(function(ct){je.push(ct.serialize())}),je},_e}()}var ti=vi("==",Zt,oi),rn=vi("!=",fr,yi),Kn=vi("<",Yr,ki),Wn=vi(">",qr,Bi),Jn=vi("<=",ba,li),no=vi(">=",Ka,_i),en=function(C,V,oe,_e,Pe){this.type=To,this.number=C,this.locale=V,this.currency=oe,this.minFractionDigits=_e,this.maxFractionDigits=Pe};en.parse=function(C,V){if(C.length!==3)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=C[2];if(typeof _e!="object"||Array.isArray(_e))return V.error("NumberFormat options argument must be an object.");var Pe=null;if(_e.locale&&(Pe=V.parse(_e.locale,1,To),!Pe))return null;var je=null;if(_e.currency&&(je=V.parse(_e.currency,1,To),!je))return null;var ct=null;if(_e["min-fraction-digits"]&&(ct=V.parse(_e["min-fraction-digits"],1,ji),!ct))return null;var Lt=null;return _e["max-fraction-digits"]&&(Lt=V.parse(_e["max-fraction-digits"],1,ji),!Lt)?null:new en(oe,Pe,je,ct,Lt)},en.prototype.evaluate=function(C){return new Intl.NumberFormat(this.locale?this.locale.evaluate(C):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(C):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(C):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(C):void 0}).format(this.number.evaluate(C))},en.prototype.eachChild=function(C){C(this.number),this.locale&&C(this.locale),this.currency&&C(this.currency),this.minFractionDigits&&C(this.minFractionDigits),this.maxFractionDigits&&C(this.maxFractionDigits)},en.prototype.outputDefined=function(){return!1},en.prototype.serialize=function(){var C={};return this.locale&&(C.locale=this.locale.serialize()),this.currency&&(C.currency=this.currency.serialize()),this.minFractionDigits&&(C["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(C["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),C]};var Ri=function(C){this.type=ji,this.input=C};Ri.parse=function(C,V){if(C.length!==2)return V.error("Expected 1 argument, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1);return oe?oe.type.kind!=="array"&&oe.type.kind!=="string"&&oe.type.kind!=="value"?V.error("Expected argument of type string or array, but found "+qs(oe.type)+" instead."):new Ri(oe):null},Ri.prototype.evaluate=function(C){var V=this.input.evaluate(C);if(typeof V=="string")return V.length;if(Array.isArray(V))return V.length;throw new $s("Expected value to be of type string or array, but found "+qs(Zs(V))+" instead.")},Ri.prototype.eachChild=function(C){C(this.input)},Ri.prototype.outputDefined=function(){return!1},Ri.prototype.serialize=function(){var C=["length"];return this.eachChild(function(V){C.push(V.serialize())}),C};var co={"==":ti,"!=":rn,">":Wn,"<":Kn,">=":no,"<=":Jn,array:zl,at:cc,boolean:zl,case:Oc,coalesce:Vu,collator:Ku,format:Yu,image:Qs,in:Cl,"index-of":iu,interpolate:Vl,"interpolate-hcl":Vl,"interpolate-lab":Vl,length:Ri,let:Tc,literal:Bs,match:fc,number:zl,"number-format":en,object:zl,slice:Qu,step:vu,string:zl,"to-boolean":es,"to-color":es,"to-number":es,"to-string":es,var:xc,within:ku};function Wo(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3];V=V.evaluate(k),oe=oe.evaluate(k),_e=_e.evaluate(k);var je=Pe?Pe.evaluate(k):1,ct=oc(V,oe,_e,je);if(ct)throw new $s(ct);return new Rs(V/255*je,oe/255*je,_e/255*je,je)}function bs(k,C){return k in C}function Xs(k,C){var V=C[k];return typeof V>"u"?null:V}function Ms(k,C,V,oe){for(;V<=oe;){var _e=V+oe>>1;if(C[_e]===k)return!0;C[_e]>k?oe=_e-1:V=_e+1}return!1}function Hs(k){return{type:k}}So.register(co,{error:[Wl,[To],function(k,C){var V=C[0];throw new $s(V.evaluate(k))}],typeof:[To,[Nn],function(k,C){var V=C[0];return qs(Zs(V.evaluate(k)))}],"to-rgba":[El(ji,4),[_s],function(k,C){var V=C[0];return V.evaluate(k).toArray()}],rgb:[_s,[ji,ji,ji],Wo],rgba:[_s,[ji,ji,ji,ji],Wo],has:{type:Yn,overloads:[[[To],function(k,C){var V=C[0];return bs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return bs(V.evaluate(k),oe.evaluate(k))}]]},get:{type:Nn,overloads:[[[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return Xs(V.evaluate(k),oe.evaluate(k))}]]},"feature-state":[Nn,[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.featureState||{})}],properties:[Yo,[],function(k){return k.properties()}],"geometry-type":[To,[],function(k){return k.geometryType()}],id:[Nn,[],function(k){return k.id()}],zoom:[ji,[],function(k){return k.globals.zoom}],"heatmap-density":[ji,[],function(k){return k.globals.heatmapDensity||0}],"line-progress":[ji,[],function(k){return k.globals.lineProgress||0}],accumulated:[Nn,[],function(k){return k.globals.accumulated===void 0?null:k.globals.accumulated}],"+":[ji,Hs(ji),function(k,C){for(var V=0,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V+=Pe.evaluate(k)}return V}],"*":[ji,Hs(ji),function(k,C){for(var V=1,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V*=Pe.evaluate(k)}return V}],"-":{type:ji,overloads:[[[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)-oe.evaluate(k)}],[[ji],function(k,C){var V=C[0];return-V.evaluate(k)}]]},"/":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)/oe.evaluate(k)}],"%":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)%oe.evaluate(k)}],ln2:[ji,[],function(){return Math.LN2}],pi:[ji,[],function(){return Math.PI}],e:[ji,[],function(){return Math.E}],"^":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return Math.pow(V.evaluate(k),oe.evaluate(k))}],sqrt:[ji,[ji],function(k,C){var V=C[0];return Math.sqrt(V.evaluate(k))}],log10:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN10}],ln:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))}],log2:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN2}],sin:[ji,[ji],function(k,C){var V=C[0];return Math.sin(V.evaluate(k))}],cos:[ji,[ji],function(k,C){var V=C[0];return Math.cos(V.evaluate(k))}],tan:[ji,[ji],function(k,C){var V=C[0];return Math.tan(V.evaluate(k))}],asin:[ji,[ji],function(k,C){var V=C[0];return Math.asin(V.evaluate(k))}],acos:[ji,[ji],function(k,C){var V=C[0];return Math.acos(V.evaluate(k))}],atan:[ji,[ji],function(k,C){var V=C[0];return Math.atan(V.evaluate(k))}],min:[ji,Hs(ji),function(k,C){return Math.min.apply(Math,C.map(function(V){return V.evaluate(k)}))}],max:[ji,Hs(ji),function(k,C){return Math.max.apply(Math,C.map(function(V){return V.evaluate(k)}))}],abs:[ji,[ji],function(k,C){var V=C[0];return Math.abs(V.evaluate(k))}],round:[ji,[ji],function(k,C){var V=C[0],oe=V.evaluate(k);return oe<0?-Math.round(-oe):Math.round(oe)}],floor:[ji,[ji],function(k,C){var V=C[0];return Math.floor(V.evaluate(k))}],ceil:[ji,[ji],function(k,C){var V=C[0];return Math.ceil(V.evaluate(k))}],"filter-==":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1];return k.properties()[V.value]===oe.value}],"filter-id-==":[Yn,[Nn],function(k,C){var V=C[0];return k.id()===V.value}],"filter-type-==":[Yn,[To],function(k,C){var V=C[0];return k.geometryType()===V.value}],"filter-<":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<Pe}],"filter-id-<":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<_e}],"filter->":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>Pe}],"filter-id->":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>_e}],"filter-<=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<=Pe}],"filter-id-<=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<=_e}],"filter->=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>=Pe}],"filter-id->=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>=_e}],"filter-has":[Yn,[Nn],function(k,C){var V=C[0];return V.value in k.properties()}],"filter-has-id":[Yn,[],function(k){return k.id()!==null&&k.id()!==void 0}],"filter-type-in":[Yn,[El(To)],function(k,C){var V=C[0];return V.value.indexOf(k.geometryType())>=0}],"filter-id-in":[Yn,[El(Nn)],function(k,C){var V=C[0];return V.value.indexOf(k.id())>=0}],"filter-in-small":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return oe.value.indexOf(k.properties()[V.value])>=0}],"filter-in-large":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return Ms(k.properties()[V.value],oe.value,0,oe.value.length-1)}],all:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)&&oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V<oe.length;V+=1){var _e=oe[V];if(!_e.evaluate(k))return!1}return!0}]]},any:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)||oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V<oe.length;V+=1){var _e=oe[V];if(_e.evaluate(k))return!0}return!1}]]},"!":[Yn,[Yn],function(k,C){var V=C[0];return!V.evaluate(k)}],"is-supported-script":[Yn,[To],function(k,C){var V=C[0],oe=k.globals&&k.globals.isSupportedScript;return oe?oe(V.evaluate(k)):!0}],upcase:[To,[To],function(k,C){var V=C[0];return V.evaluate(k).toUpperCase()}],downcase:[To,[To],function(k,C){var V=C[0];return V.evaluate(k).toLowerCase()}],concat:[To,Hs(Nn),function(k,C){return C.map(function(V){return _l(V.evaluate(k))}).join("")}],"resolved-locale":[To,[Zu],function(k,C){var V=C[0];return V.evaluate(k).resolvedLocale()}]});function vs(k){return{result:"success",value:k}}function Il(k){return{result:"error",value:k}}function fl(k){return k["property-type"]==="data-driven"||k["property-type"]==="cross-faded-data-driven"}function tl(k){return!!k.expression&&k.expression.parameters.indexOf("zoom")>-1}function Ln(k){return!!k.expression&&k.expression.interpolated}function Ao(k){return k instanceof Number?"number":k instanceof String?"string":k instanceof Boolean?"boolean":Array.isArray(k)?"array":k===null?"null":typeof k}function js(k){return typeof k=="object"&&k!==null&&!Array.isArray(k)}function Ts(k){return k}function nu(k,C){var V=C.type==="color",oe=k.stops&&typeof k.stops[0][0]=="object",_e=oe||k.property!==void 0,Pe=oe||!_e,je=k.type||(Ln(C)?"exponential":"interval");if(V&&(k=Os({},k),k.stops&&(k.stops=k.stops.map(function(Tn){return[Tn[0],Rs.parse(Tn[1])]})),k.default?k.default=Rs.parse(k.default):k.default=Rs.parse(C.default)),k.colorSpace&&k.colorSpace!=="rgb"&&!$f[k.colorSpace])throw new Error("Unknown color space: "+k.colorSpace);var ct,Lt,Nt;if(je==="exponential")ct=yu;else if(je==="interval")ct=tf;else if(je==="categorical"){ct=ec,Lt=Object.create(null);for(var Xt=0,gr=k.stops;Xt<gr.length;Xt+=1){var Br=gr[Xt];Lt[Br[0]]=Br[1]}Nt=typeof k.stops[0][0]}else if(je==="identity")ct=Bc;else throw new Error('Unknown function type "'+je+'"');if(oe){for(var Rr={},na=[],Ia=0;Ia<k.stops.length;Ia++){var ii=k.stops[Ia],Wa=ii[0].zoom;Rr[Wa]===void 0&&(Rr[Wa]={zoom:Wa,type:k.type,property:k.property,default:k.default,stops:[]},na.push(Wa)),Rr[Wa].stops.push([ii[0].value,ii[1]])}for(var Si=[],ci=0,Ai=na;ci<Ai.length;ci+=1){var Li=Ai[ci];Si.push([Rr[Li].zoom,nu(Rr[Li],C)])}var Ki={name:"linear"};return{kind:"composite",interpolationType:Ki,interpolationFactor:Vl.interpolationFactor.bind(void 0,Ki),zoomStops:Si.map(function(Tn){return Tn[0]}),evaluate:function(lo,qn){var to=lo.zoom;return yu({stops:Si,base:k.base},C,to).evaluate(to,qn)}}}else if(Pe){var kn=je==="exponential"?{name:"exponential",base:k.base!==void 0?k.base:1}:null;return{kind:"camera",interpolationType:kn,interpolationFactor:Vl.interpolationFactor.bind(void 0,kn),zoomStops:k.stops.map(function(Tn){return Tn[0]}),evaluate:function(Tn){var lo=Tn.zoom;return ct(k,C,lo,Lt,Nt)}}}else return{kind:"source",evaluate:function(lo,qn){var to=qn&&qn.properties?qn.properties[k.property]:void 0;return to===void 0?Pu(k.default,C.default):ct(k,C,to,Lt,Nt)}}}function Pu(k,C,V){if(k!==void 0)return k;if(C!==void 0)return C;if(V!==void 0)return V}function ec(k,C,V,oe,_e){var Pe=typeof V===_e?oe[V]:void 0;return Pu(Pe,k.default,C.default)}function tf(k,C,V){if(Ao(V)!=="number")return Pu(k.default,C.default);var oe=k.stops.length;if(oe===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[oe-1][0])return k.stops[oe-1][1];var _e=$u(k.stops.map(function(Pe){return Pe[0]}),V);return k.stops[_e][1]}function yu(k,C,V){var oe=k.base!==void 0?k.base:1;if(Ao(V)!=="number")return Pu(k.default,C.default);var _e=k.stops.length;if(_e===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[_e-1][0])return k.stops[_e-1][1];var Pe=$u(k.stops.map(function(gr){return gr[0]}),V),je=Iu(V,oe,k.stops[Pe][0],k.stops[Pe+1][0]),ct=k.stops[Pe][1],Lt=k.stops[Pe+1][1],Nt=Uu[C.type]||Ts;if(k.colorSpace&&k.colorSpace!=="rgb"){var Xt=$f[k.colorSpace];Nt=function(gr,Br){return Xt.reverse(Xt.interpolate(Xt.forward(gr),Xt.forward(Br),je))}}return typeof ct.evaluate=="function"?{evaluate:function(){for(var Br=[],Rr=arguments.length;Rr--;)Br[Rr]=arguments[Rr];var na=ct.evaluate.apply(void 0,Br),Ia=Lt.evaluate.apply(void 0,Br);if(!(na===void 0||Ia===void 0))return Nt(na,Ia,je)}}:Nt(ct,Lt,je)}function Bc(k,C,V){return C.type==="color"?V=Rs.parse(V):C.type==="formatted"?V=Zl.fromString(V.toString()):C.type==="resolvedImage"?V=yl.fromString(V.toString()):Ao(V)!==C.type&&(C.type!=="enum"||!C.values[V])&&(V=void 0),Pu(V,k.default,C.default)}function Iu(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Ac=function(C,V){this.expression=C,this._warningHistory={},this._evaluator=new Ss,this._defaultValue=V?Se(V):null,this._enumValues=V&&V.type==="enum"?V.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._evaluator.globals=C,this._evaluator.feature=V,this._evaluator.featureState=oe,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(C,V,oe,_e,Pe,je){this._evaluator.globals=C,this._evaluator.feature=V||null,this._evaluator.featureState=oe||null,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je||null;try{var ct=this.expression.evaluate(this._evaluator);if(ct==null||typeof ct=="number"&&ct!==ct)return this._defaultValue;if(this._enumValues&&!(ct in this._enumValues))throw new $s("Expected value to be one of "+Object.keys(this._enumValues).map(function(Lt){return JSON.stringify(Lt)}).join(", ")+", but found "+JSON.stringify(ct)+" instead.");return ct}catch(Lt){return this._warningHistory[Lt.message]||(this._warningHistory[Lt.message]=!0,typeof console<"u"&&console.warn(Lt.message)),this._defaultValue}};function ro(k){return Array.isArray(k)&&k.length>0&&typeof k[0]=="string"&&k[0]in co}function Po(k,C){var V=new kl(co,[],C?we(C):void 0),oe=V.parse(k,void 0,void 0,void 0,C&&C.type==="string"?{typeAnnotation:"coerce"}:void 0);return oe?vs(new Ac(oe,C)):Il(V.errors)}var Nc=function(C,V){this.kind=C,this._styleExpression=V,this.isStateDependent=C!=="constant"&&!ru(V.expression)};Nc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},Nc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)};var hc=function(C,V,oe,_e){this.kind=C,this.zoomStops=oe,this._styleExpression=V,this.isStateDependent=C!=="camera"&&!ru(V.expression),this.interpolationType=_e};hc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},hc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)},hc.prototype.interpolationFactor=function(C,V,oe){return this.interpolationType?Vl.interpolationFactor(this.interpolationType,C,V,oe):0};function pc(k,C){if(k=Po(k,C),k.result==="error")return k;var V=k.value.expression,oe=fh(V);if(!oe&&!fl(C))return Il([new fs("","data expressions not supported")]);var _e=Cu(V,["zoom"]);if(!_e&&!tl(C))return Il([new fs("","zoom expressions not supported")]);var Pe=ae(V);if(!Pe&&!_e)return Il([new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(Pe instanceof fs)return Il([Pe]);if(Pe instanceof Vl&&!Ln(C))return Il([new fs("",'"interpolate" expressions cannot be used with this property')]);if(!Pe)return vs(oe?new Nc("constant",k.value):new Nc("source",k.value));var je=Pe instanceof Vl?Pe.interpolation:void 0;return vs(oe?new hc("camera",k.value,Pe.labels,je):new hc("composite",k.value,Pe.labels,je))}var Oe=function(C,V){this._parameters=C,this._specification=V,Os(this,nu(this._parameters,this._specification))};Oe.deserialize=function(C){return new Oe(C._parameters,C._specification)},Oe.serialize=function(C){return{_parameters:C._parameters,_specification:C._specification}};function R(k,C){if(js(k))return new Oe(k,C);if(ro(k)){var V=pc(k,C);if(V.result==="error")throw new Error(V.value.map(function(_e){return _e.key+": "+_e.message}).join(", "));return V.value}else{var oe=k;return typeof k=="string"&&C.type==="color"&&(oe=Rs.parse(k)),{kind:"constant",evaluate:function(){return oe}}}}function ae(k){var C=null;if(k instanceof Tc)C=ae(k.result);else if(k instanceof Vu)for(var V=0,oe=k.args;V<oe.length;V+=1){var _e=oe[V];if(C=ae(_e),C)break}else(k instanceof vu||k instanceof Vl)&&k.input instanceof So&&k.input.name==="zoom"&&(C=k);return C instanceof fs||k.eachChild(function(Pe){var je=ae(Pe);je instanceof fs?C=je:!C&&je?C=new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):C&&je&&C!==je&&(C=new fs("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),C}function we(k){var C={color:_s,string:To,number:ji,enum:To,boolean:Yn,formatted:ml,resolvedImage:Bu};return k.type==="array"?El(C[k.value]||Nn,k.length):C[k.type]}function Se(k){return k.type==="color"&&js(k.default)?new Rs(0,0,0,0):k.type==="color"?Rs.parse(k.default)||null:k.default===void 0?null:k.default}function De(k){var C=k.key,V=k.value,oe=k.valueSpec||{},_e=k.objectElementValidators||{},Pe=k.style,je=k.styleSpec,ct=[],Lt=Ao(V);if(Lt!=="object")return[new mn(C,V,"object expected, "+Lt+" found")];for(var Nt in V){var Xt=Nt.split(".")[0],gr=oe[Xt]||oe["*"],Br=void 0;if(_e[Xt])Br=_e[Xt];else if(oe[Xt])Br=yo;else if(_e["*"])Br=_e["*"];else if(oe["*"])Br=yo;else{ct.push(new mn(C,V[Nt],'unknown property "'+Nt+'"'));continue}ct=ct.concat(Br({key:(C&&C+".")+Nt,value:V[Nt],valueSpec:gr,style:Pe,styleSpec:je,object:V,objectKey:Nt},V))}for(var Rr in oe)_e[Rr]||oe[Rr].required&&oe[Rr].default===void 0&&V[Rr]===void 0&&ct.push(new mn(C,V,'missing required property "'+Rr+'"'));return ct}function ft(k){var C=k.value,V=k.valueSpec,oe=k.style,_e=k.styleSpec,Pe=k.key,je=k.arrayElementValidator||yo;if(Ao(C)!=="array")return[new mn(Pe,C,"array expected, "+Ao(C)+" found")];if(V.length&&C.length!==V.length)return[new mn(Pe,C,"array length "+V.length+" expected, length "+C.length+" found")];if(V["min-length"]&&C.length<V["min-length"])return[new mn(Pe,C,"array length at least "+V["min-length"]+" expected, length "+C.length+" found")];var ct={type:V.value,values:V.values};_e.$version<7&&(ct.function=V.function),Ao(V.value)==="object"&&(ct=V.value);for(var Lt=[],Nt=0;Nt<C.length;Nt++)Lt=Lt.concat(je({array:C,arrayIndex:Nt,value:C[Nt],valueSpec:ct,style:oe,styleSpec:_e,key:Pe+"["+Nt+"]"}));return Lt}function bt(k){var C=k.key,V=k.value,oe=k.valueSpec,_e=Ao(V);return _e==="number"&&V!==V&&(_e="NaN"),_e!=="number"?[new mn(C,V,"number expected, "+_e+" found")]:"minimum"in oe&&V<oe.minimum?[new mn(C,V,V+" is less than the minimum value "+oe.minimum)]:"maximum"in oe&&V>oe.maximum?[new mn(C,V,V+" is greater than the maximum value "+oe.maximum)]:[]}function Dt(k){var C=k.valueSpec,V=so(k.value.type),oe,_e={},Pe,je,ct=V!=="categorical"&&k.value.property===void 0,Lt=!ct,Nt=Ao(k.value.stops)==="array"&&Ao(k.value.stops[0])==="array"&&Ao(k.value.stops[0][0])==="object",Xt=De({key:k.key,value:k.value,valueSpec:k.styleSpec.function,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{stops:gr,default:na}});return V==="identity"&&ct&&Xt.push(new mn(k.key,k.value,'missing required property "property"')),V!=="identity"&&!k.value.stops&&Xt.push(new mn(k.key,k.value,'missing required property "stops"')),V==="exponential"&&k.valueSpec.expression&&!Ln(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"exponential functions not supported")),k.styleSpec.$version>=8&&(Lt&&!fl(k.valueSpec)?Xt.push(new mn(k.key,k.value,"property functions not supported")):ct&&!tl(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"zoom functions not supported"))),(V==="categorical"||Nt)&&k.value.property===void 0&&Xt.push(new mn(k.key,k.value,'"property" property is required')),Xt;function gr(Ia){if(V==="identity")return[new mn(Ia.key,Ia.value,'identity function may not have a "stops" property')];var ii=[],Wa=Ia.value;return ii=ii.concat(ft({key:Ia.key,value:Wa,valueSpec:Ia.valueSpec,style:Ia.style,styleSpec:Ia.styleSpec,arrayElementValidator:Br})),Ao(Wa)==="array"&&Wa.length===0&&ii.push(new mn(Ia.key,Wa,"array must have at least one stop")),ii}function Br(Ia){var ii=[],Wa=Ia.value,Si=Ia.key;if(Ao(Wa)!=="array")return[new mn(Si,Wa,"array expected, "+Ao(Wa)+" found")];if(Wa.length!==2)return[new mn(Si,Wa,"array length 2 expected, length "+Wa.length+" found")];if(Nt){if(Ao(Wa[0])!=="object")return[new mn(Si,Wa,"object expected, "+Ao(Wa[0])+" found")];if(Wa[0].zoom===void 0)return[new mn(Si,Wa,"object stop key must have zoom")];if(Wa[0].value===void 0)return[new mn(Si,Wa,"object stop key must have value")];if(je&&je>so(Wa[0].zoom))return[new mn(Si,Wa[0].zoom,"stop zoom values must appear in ascending order")];so(Wa[0].zoom)!==je&&(je=so(Wa[0].zoom),Pe=void 0,_e={}),ii=ii.concat(De({key:Si+"[0]",value:Wa[0],valueSpec:{zoom:{}},style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{zoom:bt,value:Rr}}))}else ii=ii.concat(Rr({key:Si+"[0]",value:Wa[0],valueSpec:{},style:Ia.style,styleSpec:Ia.styleSpec},Wa));return ro(Ns(Wa[1]))?ii.concat([new mn(Si+"[1]",Wa[1],"expressions are not allowed in function stops.")]):ii.concat(yo({key:Si+"[1]",value:Wa[1],valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec}))}function Rr(Ia,ii){var Wa=Ao(Ia.value),Si=so(Ia.value),ci=Ia.value!==null?Ia.value:ii;if(!oe)oe=Wa;else if(Wa!==oe)return[new mn(Ia.key,ci,Wa+" stop domain type must match previous stop domain type "+oe)];if(Wa!=="number"&&Wa!=="string"&&Wa!=="boolean")return[new mn(Ia.key,ci,"stop domain value must be a number, string, or boolean")];if(Wa!=="number"&&V!=="categorical"){var Ai="number expected, "+Wa+" found";return fl(C)&&V===void 0&&(Ai+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new mn(Ia.key,ci,Ai)]}return V==="categorical"&&Wa==="number"&&(!isFinite(Si)||Math.floor(Si)!==Si)?[new mn(Ia.key,ci,"integer expected, found "+Si)]:V!=="categorical"&&Wa==="number"&&Pe!==void 0&&Si<Pe?[new mn(Ia.key,ci,"stop domain values must appear in ascending order")]:(Pe=Si,V==="categorical"&&Si in _e?[new mn(Ia.key,ci,"stop domain values must be unique")]:(_e[Si]=!0,[]))}function na(Ia){return yo({key:Ia.key,value:Ia.value,valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec})}}function Yt(k){var C=(k.expressionContext==="property"?pc:Po)(Ns(k.value),k.valueSpec);if(C.result==="error")return C.value.map(function(oe){return new mn(""+k.key+oe.key,k.value,oe.message)});var V=C.value.expression||C.value._styleExpression.expression;if(k.expressionContext==="property"&&k.propertyKey==="text-font"&&!V.outputDefined())return[new mn(k.key,k.value,'Invalid data expression for "'+k.propertyKey+'". Output values must be contained as literals within the expression.')];if(k.expressionContext==="property"&&k.propertyType==="layout"&&!ru(V))return[new mn(k.key,k.value,'"feature-state" data expressions are not supported with layout properties.')];if(k.expressionContext==="filter"&&!ru(V))return[new mn(k.key,k.value,'"feature-state" data expressions are not supported with filters.')];if(k.expressionContext&&k.expressionContext.indexOf("cluster")===0){if(!Cu(V,["zoom","feature-state"]))return[new mn(k.key,k.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(k.expressionContext==="cluster-initial"&&!fh(V))return[new mn(k.key,k.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function cr(k){var C=k.value,V=k.key,oe=Ao(C);return oe!=="boolean"?[new mn(V,C,"boolean expected, "+oe+" found")]:[]}function hr(k){var C=k.key,V=k.value,oe=Ao(V);return oe!=="string"?[new mn(C,V,"color expected, "+oe+" found")]:bf(V)===null?[new mn(C,V,'color expected, "'+V+'" found')]:[]}function jr(k){var C=k.key,V=k.value,oe=k.valueSpec,_e=[];return Array.isArray(oe.values)?oe.values.indexOf(so(V))===-1&&_e.push(new mn(C,V,"expected one of ["+oe.values.join(", ")+"], "+JSON.stringify(V)+" found")):Object.keys(oe.values).indexOf(so(V))===-1&&_e.push(new mn(C,V,"expected one of ["+Object.keys(oe.values).join(", ")+"], "+JSON.stringify(V)+" found")),_e}function ea(k){if(k===!0||k===!1)return!0;if(!Array.isArray(k)||k.length===0)return!1;switch(k[0]){case"has":return k.length>=2&&k[1]!=="$id"&&k[1]!=="$type";case"in":return k.length>=3&&(typeof k[1]!="string"||Array.isArray(k[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return k.length!==3||Array.isArray(k[1])||Array.isArray(k[2]);case"any":case"all":for(var C=0,V=k.slice(1);C<V.length;C+=1){var oe=V[C];if(!ea(oe)&&typeof oe!="boolean")return!1}return!0;default:return!0}}var qe={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Je(k){if(k==null)return{filter:function(){return!0},needGeometry:!1};ea(k)||(k=At(k));var C=Po(k,qe);if(C.result==="error")throw new Error(C.value.map(function(oe){return oe.key+": "+oe.message}).join(", "));var V=ht(k);return{filter:function(oe,_e,Pe){return C.value.evaluate(oe,_e,{},Pe)},needGeometry:V}}function ot(k,C){return k<C?-1:k>C?1:0}function ht(k){if(!Array.isArray(k))return!1;if(k[0]==="within")return!0;for(var C=1;C<k.length;C++)if(ht(k[C]))return!0;return!1}function At(k){if(!k)return!0;var C=k[0];if(k.length<=1)return C!=="any";var V=C==="=="?_t(k[1],k[2],"=="):C==="!="?pr(_t(k[1],k[2],"==")):C==="<"||C===">"||C==="<="||C===">="?_t(k[1],k[2],C):C==="any"?Pt(k.slice(1)):C==="all"?["all"].concat(k.slice(1).map(At)):C==="none"?["all"].concat(k.slice(1).map(At).map(pr)):C==="in"?er(k[1],k.slice(2)):C==="!in"?pr(er(k[1],k.slice(2))):C==="has"?nr(k[1]):C==="!has"?pr(nr(k[1])):C==="within"?k:!0;return V}function _t(k,C,V){switch(k){case"$type":return["filter-type-"+V,C];case"$id":return["filter-id-"+V,C];default:return["filter-"+V,k,C]}}function Pt(k){return["any"].concat(k.map(At))}function er(k,C){if(C.length===0)return!1;switch(k){case"$type":return["filter-type-in",["literal",C]];case"$id":return["filter-id-in",["literal",C]];default:return C.length>200&&!C.some(function(V){return typeof V!=typeof C[0]})?["filter-in-large",k,["literal",C.sort(ot)]]:["filter-in-small",k,["literal",C]]}}function nr(k){switch(k){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",k]}}function pr(k){return["!",k]}function Sr(k){return ea(Ns(k.value))?Yt(Os({},k,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Wr(k)}function Wr(k){var C=k.value,V=k.key;if(Ao(C)!=="array")return[new mn(V,C,"array expected, "+Ao(C)+" found")];var oe=k.styleSpec,_e,Pe=[];if(C.length<1)return[new mn(V,C,"filter array must have at least 1 element")];switch(Pe=Pe.concat(jr({key:V+"[0]",value:C[0],valueSpec:oe.filter_operator,style:k.style,styleSpec:k.styleSpec})),so(C[0])){case"<":case"<=":case">":case">=":C.length>=2&&so(C[1])==="$type"&&Pe.push(new mn(V,C,'"$type" cannot be use with operator "'+C[0]+'"'));case"==":case"!=":C.length!==3&&Pe.push(new mn(V,C,'filter array for operator "'+C[0]+'" must have 3 elements'));case"in":case"!in":C.length>=2&&(_e=Ao(C[1]),_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found")));for(var je=2;je<C.length;je++)_e=Ao(C[je]),so(C[1])==="$type"?Pe=Pe.concat(jr({key:V+"["+je+"]",value:C[je],valueSpec:oe.geometry_type,style:k.style,styleSpec:k.styleSpec})):_e!=="string"&&_e!=="number"&&_e!=="boolean"&&Pe.push(new mn(V+"["+je+"]",C[je],"string, number, or boolean expected, "+_e+" found"));break;case"any":case"all":case"none":for(var ct=1;ct<C.length;ct++)Pe=Pe.concat(Wr({key:V+"["+ct+"]",value:C[ct],style:k.style,styleSpec:k.styleSpec}));break;case"has":case"!has":_e=Ao(C[1]),C.length!==2?Pe.push(new mn(V,C,'filter array for "'+C[0]+'" operator must have 2 elements')):_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found"));break;case"within":_e=Ao(C[1]),C.length!==2?Pe.push(new mn(V,C,'filter array for "'+C[0]+'" operator must have 2 elements')):_e!=="object"&&Pe.push(new mn(V+"[1]",C[1],"object expected, "+_e+" found"));break}return Pe}function ha(k,C){var V=k.key,oe=k.style,_e=k.styleSpec,Pe=k.value,je=k.objectKey,ct=_e[C+"_"+k.layerType];if(!ct)return[];var Lt=je.match(/^(.*)-transition$/);if(C==="paint"&&Lt&&ct[Lt[1]]&&ct[Lt[1]].transition)return yo({key:V,value:Pe,valueSpec:_e.transition,style:oe,styleSpec:_e});var Nt=k.valueSpec||ct[je];if(!Nt)return[new mn(V,Pe,'unknown property "'+je+'"')];var Xt;if(Ao(Pe)==="string"&&fl(Nt)&&!Nt.tokens&&(Xt=/^{([^}]+)}$/.exec(Pe)))return[new mn(V,Pe,'"'+je+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(Xt[1])+" }`.")];var gr=[];return k.layerType==="symbol"&&(je==="text-field"&&oe&&!oe.glyphs&&gr.push(new mn(V,Pe,'use of "text-field" requires a style "glyphs" property')),je==="text-font"&&js(Ns(Pe))&&so(Pe.type)==="identity"&&gr.push(new mn(V,Pe,'"text-font" does not support identity functions'))),gr.concat(yo({key:k.key,value:Pe,valueSpec:Nt,style:oe,styleSpec:_e,expressionContext:"property",propertyType:C,propertyKey:je}))}function ga(k){return ha(k,"paint")}function Pa(k){return ha(k,"layout")}function Ja(k){var C=[],V=k.value,oe=k.key,_e=k.style,Pe=k.styleSpec;!V.type&&!V.ref&&C.push(new mn(oe,V,'either "type" or "ref" is required'));var je=so(V.type),ct=so(V.ref);if(V.id)for(var Lt=so(V.id),Nt=0;Nt<k.arrayIndex;Nt++){var Xt=_e.layers[Nt];so(Xt.id)===Lt&&C.push(new mn(oe,V.id,'duplicate layer id "'+V.id+'", previously used at line '+Xt.id.__line__))}if("ref"in V){["type","source","source-layer","filter","layout"].forEach(function(na){na in V&&C.push(new mn(oe,V[na],'"'+na+'" is prohibited for ref layers'))});var gr;_e.layers.forEach(function(na){so(na.id)===ct&&(gr=na)}),gr?gr.ref?C.push(new mn(oe,V.ref,"ref cannot reference another ref layer")):je=so(gr.type):C.push(new mn(oe,V.ref,'ref layer "'+ct+'" not found'))}else if(je!=="background")if(!V.source)C.push(new mn(oe,V,'missing required property "source"'));else{var Br=_e.sources&&_e.sources[V.source],Rr=Br&&so(Br.type);Br?Rr==="vector"&&je==="raster"?C.push(new mn(oe,V.source,'layer "'+V.id+'" requires a raster source')):Rr==="raster"&&je!=="raster"?C.push(new mn(oe,V.source,'layer "'+V.id+'" requires a vector source')):Rr==="vector"&&!V["source-layer"]?C.push(new mn(oe,V,'layer "'+V.id+'" must specify a "source-layer"')):Rr==="raster-dem"&&je!=="hillshade"?C.push(new mn(oe,V.source,"raster-dem source can only be used with layer type 'hillshade'.")):je==="line"&&V.paint&&V.paint["line-gradient"]&&(Rr!=="geojson"||!Br.lineMetrics)&&C.push(new mn(oe,V,'layer "'+V.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):C.push(new mn(oe,V.source,'source "'+V.source+'" not found'))}return C=C.concat(De({key:oe,value:V,valueSpec:Pe.layer,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return yo({key:oe+".type",value:V.type,valueSpec:Pe.layer.type,style:k.style,styleSpec:k.styleSpec,object:V,objectKey:"type"})},filter:Sr,layout:function(Ia){return De({layer:V,key:Ia.key,value:Ia.value,style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{"*":function(Wa){return Pa(Os({layerType:je},Wa))}}})},paint:function(Ia){return De({layer:V,key:Ia.key,value:Ia.value,style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{"*":function(Wa){return ga(Os({layerType:je},Wa))}}})}}})),C}function di(k){var C=k.value,V=k.key,oe=Ao(C);return oe!=="string"?[new mn(V,C,"string expected, "+oe+" found")]:[]}var pi={promoteId:$i};function Ci(k){var C=k.value,V=k.key,oe=k.styleSpec,_e=k.style;if(!C.type)return[new mn(V,C,'"type" is required')];var Pe=so(C.type),je;switch(Pe){case"vector":case"raster":case"raster-dem":return je=De({key:V,value:C,valueSpec:oe["source_"+Pe.replace("-","_")],style:k.style,styleSpec:oe,objectElementValidators:pi}),je;case"geojson":if(je=De({key:V,value:C,valueSpec:oe.source_geojson,style:_e,styleSpec:oe,objectElementValidators:pi}),C.cluster)for(var ct in C.clusterProperties){var Lt=C.clusterProperties[ct],Nt=Lt[0],Xt=Lt[1],gr=typeof Nt=="string"?[Nt,["accumulated"],["get",ct]]:Nt;je.push.apply(je,Yt({key:V+"."+ct+".map",value:Xt,expressionContext:"cluster-map"})),je.push.apply(je,Yt({key:V+"."+ct+".reduce",value:gr,expressionContext:"cluster-reduce"}))}return je;case"video":return De({key:V,value:C,valueSpec:oe.source_video,style:_e,styleSpec:oe});case"image":return De({key:V,value:C,valueSpec:oe.source_image,style:_e,styleSpec:oe});case"canvas":return[new mn(V,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return jr({key:V+".type",value:C.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:_e,styleSpec:oe})}}function $i(k){var C=k.key,V=k.value;if(Ao(V)==="string")return di({key:C,value:V});var oe=[];for(var _e in V)oe.push.apply(oe,di({key:C+"."+_e,value:V[_e]}));return oe}function Bn(k){var C=k.value,V=k.styleSpec,oe=V.light,_e=k.style,Pe=[],je=Ao(C);if(C===void 0)return Pe;if(je!=="object")return Pe=Pe.concat([new mn("light",C,"object expected, "+je+" found")]),Pe;for(var ct in C){var Lt=ct.match(/^(.*)-transition$/);Lt&&oe[Lt[1]]&&oe[Lt[1]].transition?Pe=Pe.concat(yo({key:ct,value:C[ct],valueSpec:V.transition,style:_e,styleSpec:V})):oe[ct]?Pe=Pe.concat(yo({key:ct,value:C[ct],valueSpec:oe[ct],style:_e,styleSpec:V})):Pe=Pe.concat([new mn(ct,C[ct],'unknown property "'+ct+'"')])}return Pe}function Sn(k){return di(k).length===0?[]:Yt(k)}function ho(k){return di(k).length===0?[]:Yt(k)}var ts={"*":function(){return[]},array:ft,boolean:cr,number:bt,color:hr,constants:ol,enum:jr,filter:Sr,function:Dt,layer:Ja,object:De,source:Ci,light:Bn,string:di,formatted:Sn,resolvedImage:ho};function yo(k){var C=k.value,V=k.valueSpec,oe=k.styleSpec;if(V.expression&&js(so(C)))return Dt(k);if(V.expression&&ro(Ns(C)))return Yt(k);if(V.type&&ts[V.type])return ts[V.type](k);var _e=De(Os({},k,{valueSpec:V.type?oe[V.type]:V}));return _e}function Vo(k){var C=k.value,V=k.key,oe=di(k);return oe.length||(C.indexOf("{fontstack}")===-1&&oe.push(new mn(V,C,'"glyphs" url must include a "{fontstack}" token')),C.indexOf("{range}")===-1&&oe.push(new mn(V,C,'"glyphs" url must include a "{range}" token'))),oe}function ls(k,C){C===void 0&&(C=fi);var V=[];return V=V.concat(yo({key:"",value:k,valueSpec:C.$root,styleSpec:C,style:k,objectElementValidators:{glyphs:Vo,"*":function(){return[]}}})),k.constants&&(V=V.concat(ol({key:"constants",value:k.constants,style:k,styleSpec:C}))),rl(V)}ls.source=Ys(Ci),ls.light=Ys(Bn),ls.layer=Ys(Ja),ls.filter=Ys(Sr),ls.paintProperty=Ys(ga),ls.layoutProperty=Ys(Pa);function rl(k){return[].concat(k).sort(function(C,V){return C.line-V.line})}function Ys(k){return function(){for(var C=[],V=arguments.length;V--;)C[V]=arguments[V];return rl(k.apply(this,C))}}var Zo=ls,Go=Zo.light,Rl=Zo.paintProperty,Xl=Zo.layoutProperty;function qu(k,C){var V=!1;if(C&&C.length)for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];k.fire(new Fr(new Error(Pe.message))),V=!0}return V}var fu=ou,bl=3;function ou(k,C,V){var oe=this.cells=[];if(k instanceof ArrayBuffer){this.arrayBuffer=k;var _e=new Int32Array(this.arrayBuffer);k=_e[0],C=_e[1],V=_e[2],this.d=C+2*V;for(var Pe=0;Pe<this.d*this.d;Pe++){var je=_e[bl+Pe],ct=_e[bl+Pe+1];oe.push(je===ct?null:_e.subarray(je,ct))}var Lt=_e[bl+oe.length],Nt=_e[bl+oe.length+1];this.keys=_e.subarray(Lt,Nt),this.bboxes=_e.subarray(Nt),this.insert=this._insertReadonly}else{this.d=C+2*V;for(var Xt=0;Xt<this.d*this.d;Xt++)oe.push([]);this.keys=[],this.bboxes=[]}this.n=C,this.extent=k,this.padding=V,this.scale=C/k,this.uid=0;var gr=V/C*k;this.min=-gr,this.max=k+gr}ou.prototype.insert=function(k,C,V,oe,_e){this._forEachCell(C,V,oe,_e,this._insertCell,this.uid++),this.keys.push(k),this.bboxes.push(C),this.bboxes.push(V),this.bboxes.push(oe),this.bboxes.push(_e)},ou.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},ou.prototype._insertCell=function(k,C,V,oe,_e,Pe){this.cells[_e].push(Pe)},ou.prototype.query=function(k,C,V,oe,_e){var Pe=this.min,je=this.max;if(k<=Pe&&C<=Pe&&je<=V&&je<=oe&&!_e)return Array.prototype.slice.call(this.keys);var ct=[],Lt={};return this._forEachCell(k,C,V,oe,this._queryCell,ct,Lt,_e),ct},ou.prototype._queryCell=function(k,C,V,oe,_e,Pe,je,ct){var Lt=this.cells[_e];if(Lt!==null)for(var Nt=this.keys,Xt=this.bboxes,gr=0;gr<Lt.length;gr++){var Br=Lt[gr];if(je[Br]===void 0){var Rr=Br*4;(ct?ct(Xt[Rr+0],Xt[Rr+1],Xt[Rr+2],Xt[Rr+3]):k<=Xt[Rr+2]&&C<=Xt[Rr+3]&&V>=Xt[Rr+0]&&oe>=Xt[Rr+1])?(je[Br]=!0,Pe.push(Nt[Br])):je[Br]=!1}}},ou.prototype._forEachCell=function(k,C,V,oe,_e,Pe,je,ct){for(var Lt=this._convertToCellCoord(k),Nt=this._convertToCellCoord(C),Xt=this._convertToCellCoord(V),gr=this._convertToCellCoord(oe),Br=Lt;Br<=Xt;Br++)for(var Rr=Nt;Rr<=gr;Rr++){var na=this.d*Rr+Br;if(!(ct&&!ct(this._convertFromCellCoord(Br),this._convertFromCellCoord(Rr),this._convertFromCellCoord(Br+1),this._convertFromCellCoord(Rr+1)))&&_e.call(this,k,C,V,oe,na,Pe,je,ct))return}},ou.prototype._convertFromCellCoord=function(k){return(k-this.padding)/this.scale},ou.prototype._convertToCellCoord=function(k){return Math.max(0,Math.min(this.d-1,Math.floor(k*this.scale)+this.padding))},ou.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var k=this.cells,C=bl+this.cells.length+1+1,V=0,oe=0;oe<this.cells.length;oe++)V+=this.cells[oe].length;var _e=new Int32Array(C+V+this.keys.length+this.bboxes.length);_e[0]=this.extent,_e[1]=this.n,_e[2]=this.padding;for(var Pe=C,je=0;je<k.length;je++){var ct=k[je];_e[bl+je]=Pe,_e.set(ct,Pe),Pe+=ct.length}return _e[bl+k.length]=Pe,_e.set(this.keys,Pe),Pe+=this.keys.length,_e[bl+k.length+1]=Pe,_e.set(this.bboxes,Pe),Pe+=this.bboxes.length,_e.buffer};var Sc=s.ImageData,ql=s.ImageBitmap,Hl={};function de(k,C,V){V===void 0&&(V={}),Object.defineProperty(C,"_classRegistryKey",{value:k,writeable:!1}),Hl[k]={klass:C,omit:V.omit||[],shallow:V.shallow||[]}}de("Object",Object),fu.serialize=function(C,V){var oe=C.toArrayBuffer();return V&&V.push(oe),{buffer:oe}},fu.deserialize=function(C){return new fu(C.buffer)},de("Grid",fu),de("Color",Rs),de("Error",Error),de("ResolvedImage",yl),de("StylePropertyFunction",Oe),de("StyleExpression",Ac,{omit:["_evaluator"]}),de("ZoomDependentExpression",hc),de("ZoomConstantExpression",Nc),de("CompoundExpression",So,{omit:["_evaluate"]});for(var Re in co)co[Re]._classRegistryKey||de("Expression_"+Re,co[Re]);function $e(k){return k&&typeof ArrayBuffer<"u"&&(k instanceof ArrayBuffer||k.constructor&&k.constructor.name==="ArrayBuffer")}function pt(k){return ql&&k instanceof ql}function vt(k,C){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp)return k;if($e(k)||pt(k))return C&&C.push(k),k;if(ArrayBuffer.isView(k)){var V=k;return C&&C.push(V.buffer),V}if(k instanceof Sc)return C&&C.push(k.data.buffer),k;if(Array.isArray(k)){for(var oe=[],_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e];oe.push(vt(je,C))}return oe}if(typeof k=="object"){var ct=k.constructor,Lt=ct._classRegistryKey;if(!Lt)throw new Error("can't serialize object of unregistered class");var Nt=ct.serialize?ct.serialize(k,C):{};if(!ct.serialize){for(var Xt in k)if(k.hasOwnProperty(Xt)&&!(Hl[Lt].omit.indexOf(Xt)>=0)){var gr=k[Xt];Nt[Xt]=Hl[Lt].shallow.indexOf(Xt)>=0?gr:vt(gr,C)}k instanceof Error&&(Nt.message=k.message)}if(Nt.$name)throw new Error("$name property is reserved for worker serialization logic.");return Lt!=="Object"&&(Nt.$name=Lt),Nt}throw new Error("can't serialize object of type "+typeof k)}function wt(k){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp||$e(k)||pt(k)||ArrayBuffer.isView(k)||k instanceof Sc)return k;if(Array.isArray(k))return k.map(wt);if(typeof k=="object"){var C=k.$name||"Object",V=Hl[C],oe=V.klass;if(!oe)throw new Error("can't deserialize unregistered class "+C);if(oe.deserialize)return oe.deserialize(k);for(var _e=Object.create(oe.prototype),Pe=0,je=Object.keys(k);Pe<je.length;Pe+=1){var ct=je[Pe];if(ct!=="$name"){var Lt=k[ct];_e[ct]=Hl[C].shallow.indexOf(ct)>=0?Lt:wt(Lt)}}return _e}throw new Error("can't deserialize object of type "+typeof k)}var Jt=function(){this.first=!0};Jt.prototype.update=function(C,V){var oe=Math.floor(C);return this.first?(this.first=!1,this.lastIntegerZoom=oe,this.lastIntegerZoomTime=0,this.lastZoom=C,this.lastFloorZoom=oe,!0):(this.lastFloorZoom>oe?(this.lastIntegerZoom=oe+1,this.lastIntegerZoomTime=V):this.lastFloorZoom<oe&&(this.lastIntegerZoom=oe,this.lastIntegerZoomTime=V),C!==this.lastZoom?(this.lastZoom=C,this.lastFloorZoom=oe,!0):!1)};var Rt={"Latin-1 Supplement":function(k){return k>=128&&k<=255},Arabic:function(k){return k>=1536&&k<=1791},"Arabic Supplement":function(k){return k>=1872&&k<=1919},"Arabic Extended-A":function(k){return k>=2208&&k<=2303},"Hangul Jamo":function(k){return k>=4352&&k<=4607},"Unified Canadian Aboriginal Syllabics":function(k){return k>=5120&&k<=5759},Khmer:function(k){return k>=6016&&k<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(k){return k>=6320&&k<=6399},"General Punctuation":function(k){return k>=8192&&k<=8303},"Letterlike Symbols":function(k){return k>=8448&&k<=8527},"Number Forms":function(k){return k>=8528&&k<=8591},"Miscellaneous Technical":function(k){return k>=8960&&k<=9215},"Control Pictures":function(k){return k>=9216&&k<=9279},"Optical Character Recognition":function(k){return k>=9280&&k<=9311},"Enclosed Alphanumerics":function(k){return k>=9312&&k<=9471},"Geometric Shapes":function(k){return k>=9632&&k<=9727},"Miscellaneous Symbols":function(k){return k>=9728&&k<=9983},"Miscellaneous Symbols and Arrows":function(k){return k>=11008&&k<=11263},"CJK Radicals Supplement":function(k){return k>=11904&&k<=12031},"Kangxi Radicals":function(k){return k>=12032&&k<=12255},"Ideographic Description Characters":function(k){return k>=12272&&k<=12287},"CJK Symbols and Punctuation":function(k){return k>=12288&&k<=12351},Hiragana:function(k){return k>=12352&&k<=12447},Katakana:function(k){return k>=12448&&k<=12543},Bopomofo:function(k){return k>=12544&&k<=12591},"Hangul Compatibility Jamo":function(k){return k>=12592&&k<=12687},Kanbun:function(k){return k>=12688&&k<=12703},"Bopomofo Extended":function(k){return k>=12704&&k<=12735},"CJK Strokes":function(k){return k>=12736&&k<=12783},"Katakana Phonetic Extensions":function(k){return k>=12784&&k<=12799},"Enclosed CJK Letters and Months":function(k){return k>=12800&&k<=13055},"CJK Compatibility":function(k){return k>=13056&&k<=13311},"CJK Unified Ideographs Extension A":function(k){return k>=13312&&k<=19903},"Yijing Hexagram Symbols":function(k){return k>=19904&&k<=19967},"CJK Unified Ideographs":function(k){return k>=19968&&k<=40959},"Yi Syllables":function(k){return k>=40960&&k<=42127},"Yi Radicals":function(k){return k>=42128&&k<=42191},"Hangul Jamo Extended-A":function(k){return k>=43360&&k<=43391},"Hangul Syllables":function(k){return k>=44032&&k<=55215},"Hangul Jamo Extended-B":function(k){return k>=55216&&k<=55295},"Private Use Area":function(k){return k>=57344&&k<=63743},"CJK Compatibility Ideographs":function(k){return k>=63744&&k<=64255},"Arabic Presentation Forms-A":function(k){return k>=64336&&k<=65023},"Vertical Forms":function(k){return k>=65040&&k<=65055},"CJK Compatibility Forms":function(k){return k>=65072&&k<=65103},"Small Form Variants":function(k){return k>=65104&&k<=65135},"Arabic Presentation Forms-B":function(k){return k>=65136&&k<=65279},"Halfwidth and Fullwidth Forms":function(k){return k>=65280&&k<=65519}};function or(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(fa(oe.charCodeAt(0)))return!0}return!1}function Dr(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(!Or(oe.charCodeAt(0)))return!1}return!0}function Or(k){return!(Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k))}function va(k){return k<11904?!1:!!(Rt["Bopomofo Extended"](k)||Rt.Bopomofo(k)||Rt["CJK Compatibility Forms"](k)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)||Rt["Vertical Forms"](k)||Rt["Yi Radicals"](k)||Rt["Yi Syllables"](k))}function fa(k){return k===746||k===747?!0:k<4352?!1:!!(Rt["Bopomofo Extended"](k)||Rt.Bopomofo(k)||Rt["CJK Compatibility Forms"](k)&&!(k>=65097&&k<=65103)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)&&!(k>=12296&&k<=12305)&&!(k>=12308&&k<=12319)&&k!==12336||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Hangul Compatibility Jamo"](k)||Rt["Hangul Jamo Extended-A"](k)||Rt["Hangul Jamo Extended-B"](k)||Rt["Hangul Jamo"](k)||Rt["Hangul Syllables"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt.Kanbun(k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)&&k!==12540||Rt["Halfwidth and Fullwidth Forms"](k)&&k!==65288&&k!==65289&&k!==65293&&!(k>=65306&&k<=65310)&&k!==65339&&k!==65341&&k!==65343&&!(k>=65371&&k<=65503)&&k!==65507&&!(k>=65512&&k<=65519)||Rt["Small Form Variants"](k)&&!(k>=65112&&k<=65118)&&!(k>=65123&&k<=65126)||Rt["Unified Canadian Aboriginal Syllabics"](k)||Rt["Unified Canadian Aboriginal Syllabics Extended"](k)||Rt["Vertical Forms"](k)||Rt["Yijing Hexagram Symbols"](k)||Rt["Yi Syllables"](k)||Rt["Yi Radicals"](k))}function Va(k){return!!(Rt["Latin-1 Supplement"](k)&&(k===167||k===169||k===174||k===177||k===188||k===189||k===190||k===215||k===247)||Rt["General Punctuation"](k)&&(k===8214||k===8224||k===8225||k===8240||k===8241||k===8251||k===8252||k===8258||k===8263||k===8264||k===8265||k===8273)||Rt["Letterlike Symbols"](k)||Rt["Number Forms"](k)||Rt["Miscellaneous Technical"](k)&&(k>=8960&&k<=8967||k>=8972&&k<=8991||k>=8996&&k<=9e3||k===9003||k>=9085&&k<=9114||k>=9150&&k<=9165||k===9167||k>=9169&&k<=9179||k>=9186&&k<=9215)||Rt["Control Pictures"](k)&&k!==9251||Rt["Optical Character Recognition"](k)||Rt["Enclosed Alphanumerics"](k)||Rt["Geometric Shapes"](k)||Rt["Miscellaneous Symbols"](k)&&!(k>=9754&&k<=9759)||Rt["Miscellaneous Symbols and Arrows"](k)&&(k>=11026&&k<=11055||k>=11088&&k<=11097||k>=11192&&k<=11243)||Rt["CJK Symbols and Punctuation"](k)||Rt.Katakana(k)||Rt["Private Use Area"](k)||Rt["CJK Compatibility Forms"](k)||Rt["Small Form Variants"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||k===8734||k===8756||k===8757||k>=9984&&k<=10087||k>=10102&&k<=10131||k===65532||k===65533)}function Xa(k){return!(fa(k)||Va(k))}function _a(k){return Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Ra(k){return k>=1424&&k<=2303||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Na(k,C){return!(!C&&Ra(k)||k>=2304&&k<=3583||k>=3840&&k<=4255||Rt.Khmer(k))}function Qa(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(Ra(oe.charCodeAt(0)))return!0}return!1}function Ya(k,C){for(var V=0,oe=k;V<oe.length;V+=1){var _e=oe[V];if(!Na(_e.charCodeAt(0),C))return!1}return!0}var Da={unavailable:"unavailable",deferred:"deferred",loading:"loading",loaded:"loaded",error:"error"},zi=null,Ni=Da.unavailable,Qi=null,hn=function(k){k&&typeof k=="string"&&k.indexOf("NetworkError")>-1&&(Ni=Da.error),zi&&zi(k)};function Un(){Vn.fire(new Mr("pluginStateChange",{pluginStatus:Ni,pluginURL:Qi}))}var Vn=new Lr,No=function(){return Ni},Gn=function(k){return k({pluginStatus:Ni,pluginURL:Qi}),Vn.on("pluginStateChange",k),k},Fo=function(k,C,V){if(V===void 0&&(V=!1),Ni===Da.deferred||Ni===Da.loading||Ni===Da.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Qi=be.resolveURL(k),Ni=Da.deferred,zi=C,Un(),V||Ks()},Ks=function(){if(Ni!==Da.deferred||!Qi)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Ni=Da.loading,Un(),Qi&&pa({url:Qi},function(k){k?hn(k):(Ni=Da.loaded,Un())})},Gs={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Ni===Da.loaded||Gs.applyArabicShaping!=null},isLoading:function(){return Ni===Da.loading},setState:function(C){Ni=C.pluginStatus,Qi=C.pluginURL},isParsed:function(){return Gs.applyArabicShaping!=null&&Gs.processBidirectionalText!=null&&Gs.processStyledBidirectionalText!=null},getPluginURL:function(){return Qi}},sl=function(){!Gs.isLoading()&&!Gs.isLoaded()&&No()==="deferred"&&Ks()},Vi=function(C,V){this.zoom=C,V?(this.now=V.now,this.fadeDuration=V.fadeDuration,this.zoomHistory=V.zoomHistory,this.transition=V.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Jt,this.transition={})};Vi.prototype.isSupportedScript=function(C){return Ya(C,Gs.isLoaded())},Vi.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Vi.prototype.getCrossfadeParameters=function(){var C=this.zoom,V=C-Math.floor(C),oe=this.crossFadingFactor();return C>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:V+(1-V)*oe}:{fromScale:.5,toScale:1,t:1-(1-oe)*V}};var ao=function(C,V){this.property=C,this.value=V,this.expression=R(V===void 0?C.specification.default:V,C.specification)};ao.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},ao.prototype.possiblyEvaluate=function(C,V,oe){return this.property.possiblyEvaluate(this,C,V,oe)};var ns=function(C){this.property=C,this.value=new ao(C,void 0)};ns.prototype.transitioned=function(C,V){return new hl(this.property,this.value,V,m({},C.transition,this.transition),C.now)},ns.prototype.untransitioned=function(){return new hl(this.property,this.value,null,{},0)};var hs=function(C){this._properties=C,this._values=Object.create(C.defaultTransitionablePropertyValues)};hs.prototype.getValue=function(C){return O(this._values[C].value.value)},hs.prototype.setValue=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].value=new ao(this._values[C].property,V===null?void 0:O(V))},hs.prototype.getTransition=function(C){return O(this._values[C].transition)},hs.prototype.setTransition=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].transition=O(V)||void 0},hs.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V],Pe=this.getValue(_e);Pe!==void 0&&(C[_e]=Pe);var je=this.getTransition(_e);je!==void 0&&(C[_e+"-transition"]=je)}return C},hs.prototype.transitioned=function(C,V){for(var oe=new Dl(this._properties),_e=0,Pe=Object.keys(this._values);_e<Pe.length;_e+=1){var je=Pe[_e];oe._values[je]=this._values[je].transitioned(C,V._values[je])}return oe},hs.prototype.untransitioned=function(){for(var C=new Dl(this._properties),V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V];C._values[_e]=this._values[_e].untransitioned()}return C};var hl=function(C,V,oe,_e,Pe){this.property=C,this.value=V,this.begin=Pe+_e.delay||0,this.end=this.begin+_e.duration||0,C.specification.transition&&(_e.delay||_e.duration)&&(this.prior=oe)};hl.prototype.possiblyEvaluate=function(C,V,oe){var _e=C.now||0,Pe=this.value.possiblyEvaluate(C,V,oe),je=this.prior;if(je){if(_e>this.end)return this.prior=null,Pe;if(this.value.isDataDriven())return this.prior=null,Pe;if(_e<this.begin)return je.possiblyEvaluate(C,V,oe);var ct=(_e-this.begin)/(this.end-this.begin);return this.property.interpolate(je.possiblyEvaluate(C,V,oe),Pe,v(ct))}else return Pe};var Dl=function(C){this._properties=C,this._values=Object.create(C.defaultTransitioningPropertyValues)};Dl.prototype.possiblyEvaluate=function(C,V,oe){for(var _e=new dc(this._properties),Pe=0,je=Object.keys(this._values);Pe<je.length;Pe+=1){var ct=je[Pe];_e._values[ct]=this._values[ct].possiblyEvaluate(C,V,oe)}return _e},Dl.prototype.hasTransition=function(){for(var C=0,V=Object.keys(this._values);C<V.length;C+=1){var oe=V[C];if(this._values[oe].prior)return!0}return!1};var hu=function(C){this._properties=C,this._values=Object.create(C.defaultPropertyValues)};hu.prototype.getValue=function(C){return O(this._values[C].value)},hu.prototype.setValue=function(C,V){this._values[C]=new ao(this._values[C].property,V===null?void 0:O(V))},hu.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V],Pe=this.getValue(_e);Pe!==void 0&&(C[_e]=Pe)}return C},hu.prototype.possiblyEvaluate=function(C,V,oe){for(var _e=new dc(this._properties),Pe=0,je=Object.keys(this._values);Pe<je.length;Pe+=1){var ct=je[Pe];_e._values[ct]=this._values[ct].possiblyEvaluate(C,V,oe)}return _e};var Ll=function(C,V,oe){this.property=C,this.value=V,this.parameters=oe};Ll.prototype.isConstant=function(){return this.value.kind==="constant"},Ll.prototype.constantOr=function(C){return this.value.kind==="constant"?this.value.value:C},Ll.prototype.evaluate=function(C,V,oe,_e){return this.property.evaluate(this.value,this.parameters,C,V,oe,_e)};var dc=function(C){this._properties=C,this._values=Object.create(C.defaultPossiblyEvaluatedValues)};dc.prototype.get=function(C){return this._values[C]};var Qt=function(C){this.specification=C};Qt.prototype.possiblyEvaluate=function(C,V){return C.expression.evaluate(V)},Qt.prototype.interpolate=function(C,V,oe){var _e=Uu[this.specification.type];return _e?_e(C,V,oe):C};var ra=function(C,V){this.specification=C,this.overrides=V};ra.prototype.possiblyEvaluate=function(C,V,oe,_e){return C.expression.kind==="constant"||C.expression.kind==="camera"?new Ll(this,{kind:"constant",value:C.expression.evaluate(V,null,{},oe,_e)},V):new Ll(this,C.expression,V)},ra.prototype.interpolate=function(C,V,oe){if(C.value.kind!=="constant"||V.value.kind!=="constant")return C;if(C.value.value===void 0||V.value.value===void 0)return new Ll(this,{kind:"constant",value:void 0},C.parameters);var _e=Uu[this.specification.type];return _e?new Ll(this,{kind:"constant",value:_e(C.value.value,V.value.value,oe)},C.parameters):C},ra.prototype.evaluate=function(C,V,oe,_e,Pe,je){return C.kind==="constant"?C.value:C.evaluate(V,oe,_e,Pe,je)};var Ta=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e,Pe,je){if(oe.value===void 0)return new Ll(this,{kind:"constant",value:void 0},_e);if(oe.expression.kind==="constant"){var ct=oe.expression.evaluate(_e,null,{},Pe,je),Lt=oe.property.specification.type==="resolvedImage",Nt=Lt&&typeof ct!="string"?ct.name:ct,Xt=this._calculate(Nt,Nt,Nt,_e);return new Ll(this,{kind:"constant",value:Xt},_e)}else if(oe.expression.kind==="camera"){var gr=this._calculate(oe.expression.evaluate({zoom:_e.zoom-1}),oe.expression.evaluate({zoom:_e.zoom}),oe.expression.evaluate({zoom:_e.zoom+1}),_e);return new Ll(this,{kind:"constant",value:gr},_e)}else return new Ll(this,oe.expression,_e)},C.prototype.evaluate=function(oe,_e,Pe,je,ct,Lt){if(oe.kind==="source"){var Nt=oe.evaluate(_e,Pe,je,ct,Lt);return this._calculate(Nt,Nt,Nt,_e)}else return oe.kind==="composite"?this._calculate(oe.evaluate({zoom:Math.floor(_e.zoom)-1},Pe,je),oe.evaluate({zoom:Math.floor(_e.zoom)},Pe,je),oe.evaluate({zoom:Math.floor(_e.zoom)+1},Pe,je),_e):oe.value},C.prototype._calculate=function(oe,_e,Pe,je){var ct=je.zoom;return ct>je.zoomHistory.lastIntegerZoom?{from:oe,to:_e}:{from:Pe,to:_e}},C.prototype.interpolate=function(oe){return oe},C}(ra),si=function(C){this.specification=C};si.prototype.possiblyEvaluate=function(C,V,oe,_e){if(C.value!==void 0)if(C.expression.kind==="constant"){var Pe=C.expression.evaluate(V,null,{},oe,_e);return this._calculate(Pe,Pe,Pe,V)}else return this._calculate(C.expression.evaluate(new Vi(Math.floor(V.zoom-1),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom+1),V)),V)},si.prototype._calculate=function(C,V,oe,_e){var Pe=_e.zoom;return Pe>_e.zoomHistory.lastIntegerZoom?{from:C,to:V}:{from:oe,to:V}},si.prototype.interpolate=function(C){return C};var wi=function(C){this.specification=C};wi.prototype.possiblyEvaluate=function(C,V,oe,_e){return!!C.expression.evaluate(V,null,{},oe,_e)},wi.prototype.interpolate=function(){return!1};var xi=function(C){this.properties=C,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var V in C){var oe=C[V];oe.specification.overridable&&this.overridableProperties.push(V);var _e=this.defaultPropertyValues[V]=new ao(oe,void 0),Pe=this.defaultTransitionablePropertyValues[V]=new ns(oe);this.defaultTransitioningPropertyValues[V]=Pe.untransitioned(),this.defaultPossiblyEvaluatedValues[V]=_e.possiblyEvaluate({})}};de("DataDrivenProperty",ra),de("DataConstantProperty",Qt),de("CrossFadedDataDrivenProperty",Ta),de("CrossFadedProperty",si),de("ColorRampProperty",wi);var bi="-transition",Fi=function(k){function C(V,oe){if(k.call(this),this.id=V.id,this.type=V.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},V.type!=="custom"&&(V=V,this.metadata=V.metadata,this.minzoom=V.minzoom,this.maxzoom=V.maxzoom,V.type!=="background"&&(this.source=V.source,this.sourceLayer=V["source-layer"],this.filter=V.filter),oe.layout&&(this._unevaluatedLayout=new hu(oe.layout)),oe.paint)){this._transitionablePaint=new hs(oe.paint);for(var _e in V.paint)this.setPaintProperty(_e,V.paint[_e],{validate:!1});for(var Pe in V.layout)this.setLayoutProperty(Pe,V.layout[Pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new dc(oe.paint)}}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},C.prototype.getLayoutProperty=function(oe){return oe==="visibility"?this.visibility:this._unevaluatedLayout.getValue(oe)},C.prototype.setLayoutProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".layout."+oe;if(this._validate(Xl,je,oe,_e,Pe))return}if(oe==="visibility"){this.visibility=_e;return}this._unevaluatedLayout.setValue(oe,_e)},C.prototype.getPaintProperty=function(oe){return z(oe,bi)?this._transitionablePaint.getTransition(oe.slice(0,-bi.length)):this._transitionablePaint.getValue(oe)},C.prototype.setPaintProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".paint."+oe;if(this._validate(Rl,je,oe,_e,Pe))return!1}if(z(oe,bi))return this._transitionablePaint.setTransition(oe.slice(0,-bi.length),_e||void 0),!1;var ct=this._transitionablePaint._values[oe],Lt=ct.property.specification["property-type"]==="cross-faded-data-driven",Nt=ct.value.isDataDriven(),Xt=ct.value;this._transitionablePaint.setValue(oe,_e),this._handleSpecialPaintPropertyUpdate(oe);var gr=this._transitionablePaint._values[oe].value,Br=gr.isDataDriven();return Br||Nt||Lt||this._handleOverridablePaintPropertyUpdate(oe,Xt,gr)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!1},C.prototype.isHidden=function(oe){return this.minzoom&&oe<this.minzoom||this.maxzoom&&oe>=this.maxzoom?!0:this.visibility==="none"},C.prototype.updateTransitions=function(oe){this._transitioningPaint=this._transitionablePaint.transitioned(oe,this._transitioningPaint)},C.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},C.prototype.recalculate=function(oe,_e){oe.getCrossfadeParameters&&(this._crossfadeParameters=oe.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(oe,void 0,_e)),this.paint=this._transitioningPaint.possiblyEvaluate(oe,void 0,_e)},C.prototype.serialize=function(){var oe={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(oe.layout=oe.layout||{},oe.layout.visibility=this.visibility),B(oe,function(_e,Pe){return _e!==void 0&&!(Pe==="layout"&&!Object.keys(_e).length)&&!(Pe==="paint"&&!Object.keys(_e).length)})},C.prototype._validate=function(oe,_e,Pe,je,ct){return ct===void 0&&(ct={}),ct&&ct.validate===!1?!1:qu(this,oe.call(Zo,{key:_e,layerType:this.type,objectKey:Pe,value:je,styleSpec:fi,style:{glyphs:!0,sprite:!0}}))},C.prototype.is3D=function(){return!1},C.prototype.isTileClipped=function(){return!1},C.prototype.hasOffscreenPass=function(){return!1},C.prototype.resize=function(){},C.prototype.isStateDependent=function(){for(var oe in this.paint._values){var _e=this.paint.get(oe);if(!(!(_e instanceof Ll)||!fl(_e.property.specification))&&(_e.value.kind==="source"||_e.value.kind==="composite")&&_e.value.isStateDependent)return!0}return!1},C}(Lr),cn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},fn=function(C,V){this._structArray=C,this._pos1=V*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Gi=128,Io=5,nn=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};nn.serialize=function(C,V){return C._trim(),V&&(C.isTransferred=!0,V.push(C.arrayBuffer)),{length:C.length,arrayBuffer:C.arrayBuffer}},nn.deserialize=function(C){var V=Object.create(this.prototype);return V.arrayBuffer=C.arrayBuffer,V.length=C.length,V.capacity=C.arrayBuffer.byteLength/V.bytesPerElement,V._refreshViews(),V},nn.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},nn.prototype.clear=function(){this.length=0},nn.prototype.resize=function(C){this.reserve(C),this.length=C},nn.prototype.reserve=function(C){if(C>this.capacity){this.capacity=Math.max(C,Math.floor(this.capacity*Io),Gi),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var V=this.uint8;this._refreshViews(),V&&this.uint8.set(V)}},nn.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function on(k,C){C===void 0&&(C=1);var V=0,oe=0,_e=k.map(function(je){var ct=Oi(je.type),Lt=V=ui(V,Math.max(C,ct)),Nt=je.components||1;return oe=Math.max(oe,ct),V+=ct*Nt,{name:je.name,type:je.type,components:Nt,offset:Lt}}),Pe=ui(V,Math.max(oe,C));return{members:_e,size:Pe,alignment:C}}function Oi(k){return cn[k].BYTES_PER_ELEMENT}function ui(k,C){return Math.ceil(k/C)*C}var Mi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.int16[je+0]=_e,this.int16[je+1]=Pe,oe},C}(nn);Mi.prototype.bytesPerElement=4,de("StructArrayLayout2i4",Mi);var tn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.int16[Lt+0]=_e,this.int16[Lt+1]=Pe,this.int16[Lt+2]=je,this.int16[Lt+3]=ct,oe},C}(nn);tn.prototype.bytesPerElement=8,de("StructArrayLayout4i8",tn);var pn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);pn.prototype.bytesPerElement=12,de("StructArrayLayout2i4i12",pn);var qi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*4,gr=oe*8;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.uint8[gr+4]=je,this.uint8[gr+5]=ct,this.uint8[gr+6]=Lt,this.uint8[gr+7]=Nt,oe},C}(nn);qi.prototype.bytesPerElement=8,de("StructArrayLayout2i4ub8",qi);var Dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.float32[je+0]=_e,this.float32[je+1]=Pe,oe},C}(nn);Dn.prototype.bytesPerElement=8,de("StructArrayLayout2f8",Dn);var bn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=this.length;return this.resize(Rr+1),this.emplace(Rr,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr){var na=oe*10;return this.uint16[na+0]=_e,this.uint16[na+1]=Pe,this.uint16[na+2]=je,this.uint16[na+3]=ct,this.uint16[na+4]=Lt,this.uint16[na+5]=Nt,this.uint16[na+6]=Xt,this.uint16[na+7]=gr,this.uint16[na+8]=Br,this.uint16[na+9]=Rr,oe},C}(nn);bn.prototype.bytesPerElement=20,de("StructArrayLayout10ui20",bn);var _o=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=this.length;return this.resize(Ia+1),this.emplace(Ia,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=oe*12;return this.int16[ii+0]=_e,this.int16[ii+1]=Pe,this.int16[ii+2]=je,this.int16[ii+3]=ct,this.uint16[ii+4]=Lt,this.uint16[ii+5]=Nt,this.uint16[ii+6]=Xt,this.uint16[ii+7]=gr,this.int16[ii+8]=Br,this.int16[ii+9]=Rr,this.int16[ii+10]=na,this.int16[ii+11]=Ia,oe},C}(nn);_o.prototype.bytesPerElement=24,de("StructArrayLayout4i4ui4i24",_o);var Zi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.float32[ct+0]=_e,this.float32[ct+1]=Pe,this.float32[ct+2]=je,oe},C}(nn);Zi.prototype.bytesPerElement=12,de("StructArrayLayout3f12",Zi);var Ui=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint32[Pe+0]=_e,oe},C}(nn);Ui.prototype.bytesPerElement=4,de("StructArrayLayout1ul4",Ui);var Zn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.length;return this.resize(Br+1),this.emplace(Br,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=oe*10,na=oe*5;return this.int16[Rr+0]=_e,this.int16[Rr+1]=Pe,this.int16[Rr+2]=je,this.int16[Rr+3]=ct,this.int16[Rr+4]=Lt,this.int16[Rr+5]=Nt,this.uint32[na+3]=Xt,this.uint16[Rr+8]=gr,this.uint16[Rr+9]=Br,oe},C}(nn);Zn.prototype.bytesPerElement=20,de("StructArrayLayout6i1ul2ui20",Zn);var Rn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);Rn.prototype.bytesPerElement=12,de("StructArrayLayout2i2i2i12",Rn);var xn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct){var Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,oe,_e,Pe,je,ct)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt){var Nt=oe*4,Xt=oe*8;return this.float32[Nt+0]=_e,this.float32[Nt+1]=Pe,this.float32[Nt+2]=je,this.int16[Xt+6]=ct,this.int16[Xt+7]=Lt,oe},C}(nn);xn.prototype.bytesPerElement=16,de("StructArrayLayout2f1f2i16",xn);var dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*12,Nt=oe*3;return this.uint8[Lt+0]=_e,this.uint8[Lt+1]=Pe,this.float32[Nt+1]=je,this.float32[Nt+2]=ct,oe},C}(nn);dn.prototype.bytesPerElement=12,de("StructArrayLayout2ub2f12",dn);var jn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.uint16[ct+0]=_e,this.uint16[ct+1]=Pe,this.uint16[ct+2]=je,oe},C}(nn);jn.prototype.bytesPerElement=6,de("StructArrayLayout3ui6",jn);var Ro=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci){var Ai=this.length;return this.resize(Ai+1),this.emplace(Ai,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai){var Li=oe*24,Ki=oe*12,kn=oe*48;return this.int16[Li+0]=_e,this.int16[Li+1]=Pe,this.uint16[Li+2]=je,this.uint16[Li+3]=ct,this.uint32[Ki+2]=Lt,this.uint32[Ki+3]=Nt,this.uint32[Ki+4]=Xt,this.uint16[Li+10]=gr,this.uint16[Li+11]=Br,this.uint16[Li+12]=Rr,this.float32[Ki+7]=na,this.float32[Ki+8]=Ia,this.uint8[kn+36]=ii,this.uint8[kn+37]=Wa,this.uint8[kn+38]=Si,this.uint32[Ki+10]=ci,this.int16[Li+22]=Ai,oe},C}(nn);Ro.prototype.bytesPerElement=48,de("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Ro);var rs=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo){var zs=this.length;return this.resize(zs+1),this.emplace(zs,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo,zs){var cs=oe*34,Tl=oe*17;return this.int16[cs+0]=_e,this.int16[cs+1]=Pe,this.int16[cs+2]=je,this.int16[cs+3]=ct,this.int16[cs+4]=Lt,this.int16[cs+5]=Nt,this.int16[cs+6]=Xt,this.int16[cs+7]=gr,this.uint16[cs+8]=Br,this.uint16[cs+9]=Rr,this.uint16[cs+10]=na,this.uint16[cs+11]=Ia,this.uint16[cs+12]=ii,this.uint16[cs+13]=Wa,this.uint16[cs+14]=Si,this.uint16[cs+15]=ci,this.uint16[cs+16]=Ai,this.uint16[cs+17]=Li,this.uint16[cs+18]=Ki,this.uint16[cs+19]=kn,this.uint16[cs+20]=Tn,this.uint16[cs+21]=lo,this.uint16[cs+22]=qn,this.uint32[Tl+12]=to,this.float32[Tl+13]=ds,this.float32[Tl+14]=uo,this.float32[Tl+15]=vo,this.float32[Tl+16]=zs,oe},C}(nn);rs.prototype.bytesPerElement=68,de("StructArrayLayout8i15ui1ul4f68",rs);var wn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.float32[Pe+0]=_e,oe},C}(nn);wn.prototype.bytesPerElement=4,de("StructArrayLayout1f4",wn);var oo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.int16[ct+0]=_e,this.int16[ct+1]=Pe,this.int16[ct+2]=je,oe},C}(nn);oo.prototype.bytesPerElement=6,de("StructArrayLayout3i6",oo);var Xo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*2,Lt=oe*4;return this.uint32[ct+0]=_e,this.uint16[Lt+2]=Pe,this.uint16[Lt+3]=je,oe},C}(nn);Xo.prototype.bytesPerElement=8,de("StructArrayLayout1ul2ui8",Xo);var os=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.uint16[je+0]=_e,this.uint16[je+1]=Pe,oe},C}(nn);os.prototype.bytesPerElement=4,de("StructArrayLayout2ui4",os);var As=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint16[Pe+0]=_e,oe},C}(nn);As.prototype.bytesPerElement=2,de("StructArrayLayout1ui2",As);var $l=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.float32[Lt+0]=_e,this.float32[Lt+1]=Pe,this.float32[Lt+2]=je,this.float32[Lt+3]=ct,oe},C}(nn);$l.prototype.bytesPerElement=16,de("StructArrayLayout4f16",$l);var Uc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return V.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},V.x1.get=function(){return this._structArray.int16[this._pos2+2]},V.y1.get=function(){return this._structArray.int16[this._pos2+3]},V.x2.get=function(){return this._structArray.int16[this._pos2+4]},V.y2.get=function(){return this._structArray.int16[this._pos2+5]},V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.anchorPoint.get=function(){return new i(this.anchorPointX,this.anchorPointY)},Object.defineProperties(C.prototype,V),C}(fn);Uc.prototype.size=20;var Ws=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Uc(this,oe)},C}(Zn);de("CollisionBoxArray",Ws);var jc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},V.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},V.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},V.segment.get=function(){return this._structArray.uint16[this._pos2+10]},V.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},V.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},V.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},V.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},V.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},V.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},V.placedOrientation.set=function(oe){this._structArray.uint8[this._pos1+37]=oe},V.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},V.hidden.set=function(oe){this._structArray.uint8[this._pos1+38]=oe},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+10]=oe},V.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(C.prototype,V),C}(fn);jc.prototype.size=48;var Ol=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new jc(this,oe)},C}(Ro);de("PlacedSymbolArray",Ol);var vc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},V.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},V.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},V.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},V.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},V.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},V.key.get=function(){return this._structArray.uint16[this._pos2+8]},V.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},V.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},V.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},V.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},V.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},V.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},V.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},V.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},V.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},V.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},V.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},V.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},V.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+12]=oe},V.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},V.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},V.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},V.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(C.prototype,V),C}(fn);vc.prototype.size=68;var mc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new vc(this,oe)},C}(rs);de("SymbolInstanceArray",mc);var rf=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getoffsetX=function(oe){return this.float32[oe*1+0]},C}(wn);de("GlyphOffsetArray",rf);var Yl=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getx=function(oe){return this.int16[oe*3+0]},C.prototype.gety=function(oe){return this.int16[oe*3+1]},C.prototype.gettileUnitDistanceFromAnchor=function(oe){return this.int16[oe*3+2]},C}(oo);de("SymbolLineVertexArray",Yl);var Mc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(C.prototype,V),C}(fn);Mc.prototype.size=8;var Vc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Mc(this,oe)},C}(Xo);de("FeatureIndexArray",Vc);var Ds=on([{name:"a_pos",components:2,type:"Int16"}],4),af=Ds.members,Cs=function(C){C===void 0&&(C=[]),this.segments=C};Cs.prototype.prepareSegment=function(C,V,oe,_e){var Pe=this.segments[this.segments.length-1];return C>Cs.MAX_VERTEX_ARRAY_LENGTH&&U("Max vertices per segment is "+Cs.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+C),(!Pe||Pe.vertexLength+C>Cs.MAX_VERTEX_ARRAY_LENGTH||Pe.sortKey!==_e)&&(Pe={vertexOffset:V.length,primitiveOffset:oe.length,vertexLength:0,primitiveLength:0},_e!==void 0&&(Pe.sortKey=_e),this.segments.push(Pe)),Pe},Cs.prototype.get=function(){return this.segments},Cs.prototype.destroy=function(){for(var C=0,V=this.segments;C<V.length;C+=1){var oe=V[C];for(var _e in oe.vaos)oe.vaos[_e].destroy()}},Cs.simpleSegment=function(C,V,oe,_e){return new Cs([{vertexOffset:C,primitiveOffset:V,vertexLength:oe,primitiveLength:_e,vaos:{},sortKey:0}])},Cs.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,de("SegmentVector",Cs);function ve(k,C){return k=l(Math.floor(k),0,255),C=l(Math.floor(C),0,255),256*k+C}var K=on([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]),ye=t(function(k){function C(V,oe){var _e,Pe,je,ct,Lt,Nt,Xt,gr;for(_e=V.length&3,Pe=V.length-_e,je=oe,Lt=3432918353,Nt=461845907,gr=0;gr<Pe;)Xt=V.charCodeAt(gr)&255|(V.charCodeAt(++gr)&255)<<8|(V.charCodeAt(++gr)&255)<<16|(V.charCodeAt(++gr)&255)<<24,++gr,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt,je=je<<13|je>>>19,ct=(je&65535)*5+(((je>>>16)*5&65535)<<16)&4294967295,je=(ct&65535)+27492+(((ct>>>16)+58964&65535)<<16);switch(Xt=0,_e){case 3:Xt^=(V.charCodeAt(gr+2)&255)<<16;case 2:Xt^=(V.charCodeAt(gr+1)&255)<<8;case 1:Xt^=V.charCodeAt(gr)&255,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt}return je^=V.length,je^=je>>>16,je=(je&65535)*2246822507+(((je>>>16)*2246822507&65535)<<16)&4294967295,je^=je>>>13,je=(je&65535)*3266489909+(((je>>>16)*3266489909&65535)<<16)&4294967295,je^=je>>>16,je>>>0}k.exports=C}),te=t(function(k){function C(V,oe){for(var _e=V.length,Pe=oe^_e,je=0,ct;_e>=4;)ct=V.charCodeAt(je)&255|(V.charCodeAt(++je)&255)<<8|(V.charCodeAt(++je)&255)<<16|(V.charCodeAt(++je)&255)<<24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),ct^=ct>>>24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)^ct,_e-=4,++je;switch(_e){case 3:Pe^=(V.charCodeAt(je+2)&255)<<16;case 2:Pe^=(V.charCodeAt(je+1)&255)<<8;case 1:Pe^=V.charCodeAt(je)&255,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)}return Pe^=Pe>>>13,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16),Pe^=Pe>>>15,Pe>>>0}k.exports=C}),xe=ye,We=ye,He=te;xe.murmur3=We,xe.murmur2=He;var st=function(){this.ids=[],this.positions=[],this.indexed=!1};st.prototype.add=function(C,V,oe,_e){this.ids.push(Ht(C)),this.positions.push(V,oe,_e)},st.prototype.getPositions=function(C){for(var V=Ht(C),oe=0,_e=this.ids.length-1;oe<_e;){var Pe=oe+_e>>1;this.ids[Pe]>=V?_e=Pe:oe=Pe+1}for(var je=[];this.ids[oe]===V;){var ct=this.positions[3*oe],Lt=this.positions[3*oe+1],Nt=this.positions[3*oe+2];je.push({index:ct,start:Lt,end:Nt}),oe++}return je},st.serialize=function(C,V){var oe=new Float64Array(C.ids),_e=new Uint32Array(C.positions);return yr(oe,_e,0,oe.length-1),V&&V.push(oe.buffer,_e.buffer),{ids:oe,positions:_e}},st.deserialize=function(C){var V=new st;return V.ids=C.ids,V.positions=C.positions,V.indexed=!0,V};var Et=Math.pow(2,53)-1;function Ht(k){var C=+k;return!isNaN(C)&&C<=Et?C:xe(String(k))}function yr(k,C,V,oe){for(;V<oe;){for(var _e=k[V+oe>>1],Pe=V-1,je=oe+1;;){do Pe++;while(k[Pe]<_e);do je--;while(k[je]>_e);if(Pe>=je)break;Ir(k,Pe,je),Ir(C,3*Pe,3*je),Ir(C,3*Pe+1,3*je+1),Ir(C,3*Pe+2,3*je+2)}je-V<oe-je?(yr(k,C,V,je),V=je+1):(yr(k,C,je+1,oe),oe=je)}}function Ir(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}de("FeaturePositionMap",st);var wr=function(C,V){this.gl=C.gl,this.location=V},qt=function(k){function C(V,oe){k.call(this,V,oe),this.current=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){this.current!==oe&&(this.current=oe,this.gl.uniform1i(this.location,oe))},C}(wr),tr=function(k){function C(V,oe){k.call(this,V,oe),this.current=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){this.current!==oe&&(this.current=oe,this.gl.uniform1f(this.location,oe))},C}(wr),dr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1])&&(this.current=oe,this.gl.uniform2f(this.location,oe[0],oe[1]))},C}(wr),Pr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1]||oe[2]!==this.current[2])&&(this.current=oe,this.gl.uniform3f(this.location,oe[0],oe[1],oe[2]))},C}(wr),Vr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0,0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1]||oe[2]!==this.current[2]||oe[3]!==this.current[3])&&(this.current=oe,this.gl.uniform4f(this.location,oe[0],oe[1],oe[2],oe[3]))},C}(wr),Hr=function(k){function C(V,oe){k.call(this,V,oe),this.current=Rs.transparent}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe.r!==this.current.r||oe.g!==this.current.g||oe.b!==this.current.b||oe.a!==this.current.a)&&(this.current=oe,this.gl.uniform4f(this.location,oe.r,oe.g,oe.b,oe.a))},C}(wr),aa=new Float32Array(16),Qr=function(k){function C(V,oe){k.call(this,V,oe),this.current=aa}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){if(oe[12]!==this.current[12]||oe[0]!==this.current[0]){this.current=oe,this.gl.uniformMatrix4fv(this.location,!1,oe);return}for(var _e=1;_e<16;_e++)if(oe[_e]!==this.current[_e]){this.current=oe,this.gl.uniformMatrix4fv(this.location,!1,oe);break}},C}(wr);function Gr(k){return[ve(255*k.r,255*k.g),ve(255*k.b,255*k.a)]}var ia=function(C,V,oe){this.value=C,this.uniformNames=V.map(function(_e){return"u_"+_e}),this.type=oe};ia.prototype.setUniform=function(C,V,oe){C.set(oe.constantOr(this.value))},ia.prototype.getBinding=function(C,V,oe){return this.type==="color"?new Hr(C,V):new tr(C,V)};var Ur=function(C,V){this.uniformNames=V.map(function(oe){return"u_"+oe}),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};Ur.prototype.setConstantPatternPositions=function(C,V){this.pixelRatioFrom=V.pixelRatio,this.pixelRatioTo=C.pixelRatio,this.patternFrom=V.tlbr,this.patternTo=C.tlbr},Ur.prototype.setUniform=function(C,V,oe,_e){var Pe=_e==="u_pattern_to"?this.patternTo:_e==="u_pattern_from"?this.patternFrom:_e==="u_pixel_ratio_to"?this.pixelRatioTo:_e==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Pe&&C.set(Pe)},Ur.prototype.getBinding=function(C,V,oe){return oe.substr(0,9)==="u_pattern"?new Vr(C,V):new tr(C,V)};var wa=function(C,V,oe,_e){this.expression=C,this.type=oe,this.maxValue=0,this.paintVertexAttributes=V.map(function(Pe){return{name:"a_"+Pe,type:"Float32",components:oe==="color"?2:1,offset:0}}),this.paintVertexArray=new _e};wa.prototype.populatePaintArray=function(C,V,oe,_e,Pe){var je=this.paintVertexArray.length,ct=this.expression.evaluate(new Vi(0),V,{},_e,[],Pe);this.paintVertexArray.resize(C),this._setPaintValue(je,C,ct)},wa.prototype.updatePaintArray=function(C,V,oe,_e){var Pe=this.expression.evaluate({zoom:0},oe,_e);this._setPaintValue(C,V,Pe)},wa.prototype._setPaintValue=function(C,V,oe){if(this.type==="color")for(var _e=Gr(oe),Pe=C;Pe<V;Pe++)this.paintVertexArray.emplace(Pe,_e[0],_e[1]);else{for(var je=C;je<V;je++)this.paintVertexArray.emplace(je,oe);this.maxValue=Math.max(this.maxValue,Math.abs(oe))}},wa.prototype.upload=function(C){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=C.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},wa.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var Oa=function(C,V,oe,_e,Pe,je){this.expression=C,this.uniformNames=V.map(function(ct){return"u_"+ct+"_t"}),this.type=oe,this.useIntegerZoom=_e,this.zoom=Pe,this.maxValue=0,this.paintVertexAttributes=V.map(function(ct){return{name:"a_"+ct,type:"Float32",components:oe==="color"?4:2,offset:0}}),this.paintVertexArray=new je};Oa.prototype.populatePaintArray=function(C,V,oe,_e,Pe){var je=this.expression.evaluate(new Vi(this.zoom),V,{},_e,[],Pe),ct=this.expression.evaluate(new Vi(this.zoom+1),V,{},_e,[],Pe),Lt=this.paintVertexArray.length;this.paintVertexArray.resize(C),this._setPaintValue(Lt,C,je,ct)},Oa.prototype.updatePaintArray=function(C,V,oe,_e){var Pe=this.expression.evaluate({zoom:this.zoom},oe,_e),je=this.expression.evaluate({zoom:this.zoom+1},oe,_e);this._setPaintValue(C,V,Pe,je)},Oa.prototype._setPaintValue=function(C,V,oe,_e){if(this.type==="color")for(var Pe=Gr(oe),je=Gr(_e),ct=C;ct<V;ct++)this.paintVertexArray.emplace(ct,Pe[0],Pe[1],je[0],je[1]);else{for(var Lt=C;Lt<V;Lt++)this.paintVertexArray.emplace(Lt,oe,_e);this.maxValue=Math.max(this.maxValue,Math.abs(oe),Math.abs(_e))}},Oa.prototype.upload=function(C){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=C.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Oa.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},Oa.prototype.setUniform=function(C,V){var oe=this.useIntegerZoom?Math.floor(V.zoom):V.zoom,_e=l(this.expression.interpolationFactor(oe,this.zoom,this.zoom+1),0,1);C.set(_e)},Oa.prototype.getBinding=function(C,V,oe){return new tr(C,V)};var ri=function(C,V,oe,_e,Pe,je){this.expression=C,this.type=V,this.useIntegerZoom=oe,this.zoom=_e,this.layerId=je,this.zoomInPaintVertexArray=new Pe,this.zoomOutPaintVertexArray=new Pe};ri.prototype.populatePaintArray=function(C,V,oe){var _e=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(C),this.zoomOutPaintVertexArray.resize(C),this._setPaintValues(_e,C,V.patterns&&V.patterns[this.layerId],oe)},ri.prototype.updatePaintArray=function(C,V,oe,_e,Pe){this._setPaintValues(C,V,oe.patterns&&oe.patterns[this.layerId],Pe)},ri.prototype._setPaintValues=function(C,V,oe,_e){if(!(!_e||!oe)){var Pe=oe.min,je=oe.mid,ct=oe.max,Lt=_e[Pe],Nt=_e[je],Xt=_e[ct];if(!(!Lt||!Nt||!Xt))for(var gr=C;gr<V;gr++)this.zoomInPaintVertexArray.emplace(gr,Nt.tl[0],Nt.tl[1],Nt.br[0],Nt.br[1],Lt.tl[0],Lt.tl[1],Lt.br[0],Lt.br[1],Nt.pixelRatio,Lt.pixelRatio),this.zoomOutPaintVertexArray.emplace(gr,Nt.tl[0],Nt.tl[1],Nt.br[0],Nt.br[1],Xt.tl[0],Xt.tl[1],Xt.br[0],Xt.br[1],Nt.pixelRatio,Xt.pixelRatio)}},ri.prototype.upload=function(C){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=C.createVertexBuffer(this.zoomInPaintVertexArray,K.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=C.createVertexBuffer(this.zoomOutPaintVertexArray,K.members,this.expression.isStateDependent))},ri.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var Pi=function(C,V,oe){this.binders={},this._buffers=[];var _e=[];for(var Pe in C.paint._values)if(oe(Pe)){var je=C.paint.get(Pe);if(!(!(je instanceof Ll)||!fl(je.property.specification))){var ct=Di(Pe,C.type),Lt=je.value,Nt=je.property.specification.type,Xt=je.property.useIntegerZoom,gr=je.property.specification["property-type"],Br=gr==="cross-faded"||gr==="cross-faded-data-driven";if(Lt.kind==="constant")this.binders[Pe]=Br?new Ur(Lt.value,ct):new ia(Lt.value,ct,Nt),_e.push("/u_"+Pe);else if(Lt.kind==="source"||Br){var Rr=ln(Pe,Nt,"source");this.binders[Pe]=Br?new ri(Lt,Nt,Xt,V,Rr,C.id):new wa(Lt,ct,Nt,Rr),_e.push("/a_"+Pe)}else{var na=ln(Pe,Nt,"composite");this.binders[Pe]=new Oa(Lt,ct,Nt,Xt,V,na),_e.push("/z_"+Pe)}}}this.cacheKey=_e.sort().join("")};Pi.prototype.getMaxValue=function(C){var V=this.binders[C];return V instanceof wa||V instanceof Oa?V.maxValue:0},Pi.prototype.populatePaintArrays=function(C,V,oe,_e,Pe){for(var je in this.binders){var ct=this.binders[je];(ct instanceof wa||ct instanceof Oa||ct instanceof ri)&&ct.populatePaintArray(C,V,oe,_e,Pe)}},Pi.prototype.setConstantPatternPositions=function(C,V){for(var oe in this.binders){var _e=this.binders[oe];_e instanceof Ur&&_e.setConstantPatternPositions(C,V)}},Pi.prototype.updatePaintArrays=function(C,V,oe,_e,Pe){var je=!1;for(var ct in C)for(var Lt=V.getPositions(ct),Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt],Br=oe.feature(gr.index);for(var Rr in this.binders){var na=this.binders[Rr];if((na instanceof wa||na instanceof Oa||na instanceof ri)&&na.expression.isStateDependent===!0){var Ia=_e.paint.get(Rr);na.expression=Ia.value,na.updatePaintArray(gr.start,gr.end,Br,C[ct],Pe),je=!0}}}return je},Pi.prototype.defines=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];(oe instanceof ia||oe instanceof Ur)&&C.push.apply(C,oe.uniformNames.map(function(_e){return"#define HAS_UNIFORM_"+_e}))}return C},Pi.prototype.getBinderAttributes=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];if(oe instanceof wa||oe instanceof Oa)for(var _e=0;_e<oe.paintVertexAttributes.length;_e++)C.push(oe.paintVertexAttributes[_e].name);else if(oe instanceof ri)for(var Pe=0;Pe<K.members.length;Pe++)C.push(K.members[Pe].name)}return C},Pi.prototype.getBinderUniforms=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];if(oe instanceof ia||oe instanceof Ur||oe instanceof Oa)for(var _e=0,Pe=oe.uniformNames;_e<Pe.length;_e+=1){var je=Pe[_e];C.push(je)}}return C},Pi.prototype.getPaintVertexBuffers=function(){return this._buffers},Pi.prototype.getUniforms=function(C,V){var oe=[];for(var _e in this.binders){var Pe=this.binders[_e];if(Pe instanceof ia||Pe instanceof Ur||Pe instanceof Oa)for(var je=0,ct=Pe.uniformNames;je<ct.length;je+=1){var Lt=ct[je];if(V[Lt]){var Nt=Pe.getBinding(C,V[Lt],Lt);oe.push({name:Lt,property:_e,binding:Nt})}}}return oe},Pi.prototype.setUniforms=function(C,V,oe,_e){for(var Pe=0,je=V;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=ct.name,Nt=ct.property,Xt=ct.binding;this.binders[Nt].setUniform(Xt,_e,oe.get(Nt),Lt)}},Pi.prototype.updatePaintBuffers=function(C){this._buffers=[];for(var V in this.binders){var oe=this.binders[V];if(C&&oe instanceof ri){var _e=C.fromScale===2?oe.zoomInPaintVertexBuffer:oe.zoomOutPaintVertexBuffer;_e&&this._buffers.push(_e)}else(oe instanceof wa||oe instanceof Oa)&&oe.paintVertexBuffer&&this._buffers.push(oe.paintVertexBuffer)}},Pi.prototype.upload=function(C){for(var V in this.binders){var oe=this.binders[V];(oe instanceof wa||oe instanceof Oa||oe instanceof ri)&&oe.upload(C)}this.updatePaintBuffers()},Pi.prototype.destroy=function(){for(var C in this.binders){var V=this.binders[C];(V instanceof wa||V instanceof Oa||V instanceof ri)&&V.destroy()}};var mi=function(C,V,oe){oe===void 0&&(oe=function(){return!0}),this.programConfigurations={};for(var _e=0,Pe=C;_e<Pe.length;_e+=1){var je=Pe[_e];this.programConfigurations[je.id]=new Pi(je,V,oe)}this.needsUpload=!1,this._featureMap=new st,this._bufferOffset=0};mi.prototype.populatePaintArrays=function(C,V,oe,_e,Pe,je){for(var ct in this.programConfigurations)this.programConfigurations[ct].populatePaintArrays(C,V,_e,Pe,je);V.id!==void 0&&this._featureMap.add(V.id,oe,this._bufferOffset,C),this._bufferOffset=C,this.needsUpload=!0},mi.prototype.updatePaintArrays=function(C,V,oe,_e){for(var Pe=0,je=oe;Pe<je.length;Pe+=1){var ct=je[Pe];this.needsUpload=this.programConfigurations[ct.id].updatePaintArrays(C,this._featureMap,V,ct,_e)||this.needsUpload}},mi.prototype.get=function(C){return this.programConfigurations[C]},mi.prototype.upload=function(C){if(this.needsUpload){for(var V in this.programConfigurations)this.programConfigurations[V].upload(C);this.needsUpload=!1}},mi.prototype.destroy=function(){for(var C in this.programConfigurations)this.programConfigurations[C].destroy()};function Di(k,C){var V={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]};return V[k]||[k.replace(C+"-","").replace(/-/g,"_")]}function An(k){var C={"line-pattern":{source:bn,composite:bn},"fill-pattern":{source:bn,composite:bn},"fill-extrusion-pattern":{source:bn,composite:bn}};return C[k]}function ln(k,C,V){var oe={color:{source:Dn,composite:$l},number:{source:wn,composite:Dn}},_e=An(k);return _e&&_e[V]||oe[C][V]}de("ConstantBinder",ia),de("CrossFadedConstantBinder",Ur),de("SourceExpressionBinder",wa),de("CrossFadedCompositeBinder",ri),de("CompositeExpressionBinder",Oa),de("ProgramConfiguration",Pi,{omit:["_buffers"]}),de("ProgramConfigurationSet",mi);var Ii=8192,Wi=15,Hi=Math.pow(2,Wi-1)-1,yn=-Hi-1;function zn(k){for(var C=Ii/k.extent,V=k.loadGeometry(),oe=0;oe<V.length;oe++)for(var _e=V[oe],Pe=0;Pe<_e.length;Pe++){var je=_e[Pe],ct=Math.round(je.x*C),Lt=Math.round(je.y*C);je.x=l(ct,yn,Hi),je.y=l(Lt,yn,Hi),(ct<je.x||ct>je.x+1||Lt<je.y||Lt>je.y+1)&&U("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return V}function ms(k,C){return{type:k.type,id:k.id,properties:k.properties,geometry:C?zn(k):[]}}function us(k,C,V,oe,_e){k.emplaceBack(C*2+(oe+1)/2,V*2+(_e+1)/2)}var Vs=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new Mi,this.indexArray=new jn,this.segments=new Cs,this.programConfigurations=new mi(C.layers,C.zoom),this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};Vs.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=[],je=null;_e.type==="circle"&&(je=_e.layout.get("circle-sort-key"));for(var ct=0,Lt=C;ct<Lt.length;ct+=1){var Nt=Lt[ct],Xt=Nt.feature,gr=Nt.id,Br=Nt.index,Rr=Nt.sourceLayerIndex,na=this.layers[0]._featureFilter.needGeometry,Ia=ms(Xt,na);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),Ia,oe)){var ii=je?je.evaluate(Ia,{},oe):void 0,Wa={id:gr,properties:Xt.properties,type:Xt.type,sourceLayerIndex:Rr,index:Br,geometry:na?Ia.geometry:zn(Xt),patterns:{},sortKey:ii};Pe.push(Wa)}}je&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Si=0,ci=Pe;Si<ci.length;Si+=1){var Ai=ci[Si],Li=Ai,Ki=Li.geometry,kn=Li.index,Tn=Li.sourceLayerIndex,lo=C[kn].feature;this.addFeature(Ai,Ki,kn,oe),V.featureIndex.insert(lo,Ki,kn,Tn,this.index)}},Vs.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},Vs.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Vs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Vs.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,af),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},Vs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Vs.prototype.addFeature=function(C,V,oe,_e){for(var Pe=0,je=V;Pe<je.length;Pe+=1)for(var ct=je[Pe],Lt=0,Nt=ct;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt],gr=Xt.x,Br=Xt.y;if(!(gr<0||gr>=Ii||Br<0||Br>=Ii)){var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,C.sortKey),na=Rr.vertexLength;us(this.layoutVertexArray,gr,Br,-1,-1),us(this.layoutVertexArray,gr,Br,1,-1),us(this.layoutVertexArray,gr,Br,1,1),us(this.layoutVertexArray,gr,Br,-1,1),this.indexArray.emplaceBack(na,na+1,na+2),this.indexArray.emplaceBack(na,na+3,na+2),Rr.vertexLength+=4,Rr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,{},_e)},de("CircleBucket",Vs,{omit:["layers"]});function qo(k,C){for(var V=0;V<k.length;V++)if(kh(C,k[V]))return!0;for(var oe=0;oe<C.length;oe++)if(kh(k,C[oe]))return!0;return!!Sp(k,C)}function Ls(k,C,V){return!!(kh(k,C)||Vp(C,k,V))}function wl(k,C){if(k.length===1)return td(C,k[0]);for(var V=0;V<C.length;V++)for(var oe=C[V],_e=0;_e<oe.length;_e++)if(kh(k,oe[_e]))return!0;for(var Pe=0;Pe<k.length;Pe++)if(td(C,k[Pe]))return!0;for(var je=0;je<C.length;je++)if(Sp(k,C[je]))return!0;return!1}function Ru(k,C,V){for(var oe=0;oe<C.length;oe++){var _e=C[oe];if(k.length>=3){for(var Pe=0;Pe<_e.length;Pe++)if(kh(k,_e[Pe]))return!0}if(Ap(k,_e,V))return!0}return!1}function Ap(k,C,V){if(k.length>1){if(Sp(k,C))return!0;for(var oe=0;oe<C.length;oe++)if(Vp(C[oe],k,V))return!0}for(var _e=0;_e<k.length;_e++)if(Vp(k[_e],C,V))return!0;return!1}function Sp(k,C){if(k.length===0||C.length===0)return!1;for(var V=0;V<k.length-1;V++)for(var oe=k[V],_e=k[V+1],Pe=0;Pe<C.length-1;Pe++){var je=C[Pe],ct=C[Pe+1];if(Eh(oe,_e,je,ct))return!0}return!1}function Eh(k,C,V,oe){return W(k,V,oe)!==W(C,V,oe)&&W(k,C,V)!==W(k,C,oe)}function Vp(k,C,V){var oe=V*V;if(C.length===1)return k.distSqr(C[0])<oe;for(var _e=1;_e<C.length;_e++){var Pe=C[_e-1],je=C[_e];if(Vd(k,Pe,je)<oe)return!0}return!1}function Vd(k,C,V){var oe=C.distSqr(V);if(oe===0)return k.distSqr(C);var _e=((k.x-C.x)*(V.x-C.x)+(k.y-C.y)*(V.y-C.y))/oe;return _e<0?k.distSqr(C):_e>1?k.distSqr(V):k.distSqr(V.sub(C)._mult(_e)._add(C))}function td(k,C){for(var V=!1,oe,_e,Pe,je=0;je<k.length;je++){oe=k[je];for(var ct=0,Lt=oe.length-1;ct<oe.length;Lt=ct++)_e=oe[ct],Pe=oe[Lt],_e.y>C.y!=Pe.y>C.y&&C.x<(Pe.x-_e.x)*(C.y-_e.y)/(Pe.y-_e.y)+_e.x&&(V=!V)}return V}function kh(k,C){for(var V=!1,oe=0,_e=k.length-1;oe<k.length;_e=oe++){var Pe=k[oe],je=k[_e];Pe.y>C.y!=je.y>C.y&&C.x<(je.x-Pe.x)*(C.y-Pe.y)/(je.y-Pe.y)+Pe.x&&(V=!V)}return V}function rd(k,C,V,oe,_e){for(var Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe];if(C<=ct.x&&V<=ct.y&&oe>=ct.x&&_e>=ct.y)return!0}var Lt=[new i(C,V),new i(C,_e),new i(oe,_e),new i(oe,V)];if(k.length>2)for(var Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];if(kh(k,gr))return!0}for(var Br=0;Br<k.length-1;Br++){var Rr=k[Br],na=k[Br+1];if(Xh(Rr,na,Lt))return!0}return!1}function Xh(k,C,V){var oe=V[0],_e=V[2];if(k.x<oe.x&&C.x<oe.x||k.x>_e.x&&C.x>_e.x||k.y<oe.y&&C.y<oe.y||k.y>_e.y&&C.y>_e.y)return!1;var Pe=W(k,C,V[0]);return Pe!==W(k,C,V[1])||Pe!==W(k,C,V[2])||Pe!==W(k,C,V[3])}function Ch(k,C,V){var oe=C.paint.get(k).value;return oe.kind==="constant"?oe.value:V.programConfigurations.get(C.id).getMaxValue(k)}function Mp(k){return Math.sqrt(k[0]*k[0]+k[1]*k[1])}function qp(k,C,V,oe,_e){if(!C[0]&&!C[1])return k;var Pe=i.convert(C)._mult(_e);V==="viewport"&&Pe._rotate(-oe);for(var je=[],ct=0;ct<k.length;ct++){var Lt=k[ct];je.push(Lt.sub(Pe))}return je}var Ep=new xi({"circle-sort-key":new ra(fi.layout_circle["circle-sort-key"])}),Cv=new xi({"circle-radius":new ra(fi.paint_circle["circle-radius"]),"circle-color":new ra(fi.paint_circle["circle-color"]),"circle-blur":new ra(fi.paint_circle["circle-blur"]),"circle-opacity":new ra(fi.paint_circle["circle-opacity"]),"circle-translate":new Qt(fi.paint_circle["circle-translate"]),"circle-translate-anchor":new Qt(fi.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Qt(fi.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Qt(fi.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new ra(fi.paint_circle["circle-stroke-width"]),"circle-stroke-color":new ra(fi.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new ra(fi.paint_circle["circle-stroke-opacity"])}),qd={paint:Cv,layout:Ep},Sf=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var k=arguments,C=0,V=arguments.length;V--;)C+=k[V]*k[V];return Math.sqrt(C)});function Hd(){var k=new Sf(4);return Sf!=Float32Array&&(k[1]=0,k[2]=0),k[0]=1,k[3]=1,k}function Lv(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3],ct=Math.sin(V),Lt=Math.cos(V);return k[0]=oe*Lt+Pe*ct,k[1]=_e*Lt+je*ct,k[2]=oe*-ct+Pe*Lt,k[3]=_e*-ct+je*Lt,k}function eh(){var k=new Sf(9);return Sf!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[5]=0,k[6]=0,k[7]=0),k[0]=1,k[4]=1,k[8]=1,k}function iv(k,C){var V=Math.sin(C),oe=Math.cos(C);return k[0]=oe,k[1]=V,k[2]=0,k[3]=-V,k[4]=oe,k[5]=0,k[6]=0,k[7]=0,k[8]=1,k}function im(){var k=new Sf(16);return Sf!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[11]=0,k[12]=0,k[13]=0,k[14]=0),k[0]=1,k[5]=1,k[10]=1,k[15]=1,k}function nm(k){var C=new Sf(16);return C[0]=k[0],C[1]=k[1],C[2]=k[2],C[3]=k[3],C[4]=k[4],C[5]=k[5],C[6]=k[6],C[7]=k[7],C[8]=k[8],C[9]=k[9],C[10]=k[10],C[11]=k[11],C[12]=k[12],C[13]=k[13],C[14]=k[14],C[15]=k[15],C}function Pv(k){return k[0]=1,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=1,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[10]=1,k[11]=0,k[12]=0,k[13]=0,k[14]=0,k[15]=1,k}function nv(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3],je=C[4],ct=C[5],Lt=C[6],Nt=C[7],Xt=C[8],gr=C[9],Br=C[10],Rr=C[11],na=C[12],Ia=C[13],ii=C[14],Wa=C[15],Si=V*ct-oe*je,ci=V*Lt-_e*je,Ai=V*Nt-Pe*je,Li=oe*Lt-_e*ct,Ki=oe*Nt-Pe*ct,kn=_e*Nt-Pe*Lt,Tn=Xt*Ia-gr*na,lo=Xt*ii-Br*na,qn=Xt*Wa-Rr*na,to=gr*ii-Br*Ia,ds=gr*Wa-Rr*Ia,uo=Br*Wa-Rr*ii,vo=Si*uo-ci*ds+Ai*to+Li*qn-Ki*lo+kn*Tn;return vo?(vo=1/vo,k[0]=(ct*uo-Lt*ds+Nt*to)*vo,k[1]=(_e*ds-oe*uo-Pe*to)*vo,k[2]=(Ia*kn-ii*Ki+Wa*Li)*vo,k[3]=(Br*Ki-gr*kn-Rr*Li)*vo,k[4]=(Lt*qn-je*uo-Nt*lo)*vo,k[5]=(V*uo-_e*qn+Pe*lo)*vo,k[6]=(ii*Ai-na*kn-Wa*ci)*vo,k[7]=(Xt*kn-Br*Ai+Rr*ci)*vo,k[8]=(je*ds-ct*qn+Nt*Tn)*vo,k[9]=(oe*qn-V*ds-Pe*Tn)*vo,k[10]=(na*Ki-Ia*Ai+Wa*Si)*vo,k[11]=(gr*Ai-Xt*Ki-Rr*Si)*vo,k[12]=(ct*lo-je*to-Lt*Tn)*vo,k[13]=(V*to-oe*lo+_e*Tn)*vo,k[14]=(Ia*ci-na*Li-ii*Si)*vo,k[15]=(Xt*Li-gr*ci+Br*Si)*vo,k):null}function ov(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3],ct=C[4],Lt=C[5],Nt=C[6],Xt=C[7],gr=C[8],Br=C[9],Rr=C[10],na=C[11],Ia=C[12],ii=C[13],Wa=C[14],Si=C[15],ci=V[0],Ai=V[1],Li=V[2],Ki=V[3];return k[0]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[1]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[2]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[3]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[4],Ai=V[5],Li=V[6],Ki=V[7],k[4]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[5]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[6]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[7]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[8],Ai=V[9],Li=V[10],Ki=V[11],k[8]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[9]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[10]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[11]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[12],Ai=V[13],Li=V[14],Ki=V[15],k[12]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[13]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[14]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[15]=ci*je+Ai*Xt+Li*na+Ki*Si,k}function Du(k,C,V){var oe=V[0],_e=V[1],Pe=V[2],je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa;return C===k?(k[12]=C[0]*oe+C[4]*_e+C[8]*Pe+C[12],k[13]=C[1]*oe+C[5]*_e+C[9]*Pe+C[13],k[14]=C[2]*oe+C[6]*_e+C[10]*Pe+C[14],k[15]=C[3]*oe+C[7]*_e+C[11]*Pe+C[15]):(je=C[0],ct=C[1],Lt=C[2],Nt=C[3],Xt=C[4],gr=C[5],Br=C[6],Rr=C[7],na=C[8],Ia=C[9],ii=C[10],Wa=C[11],k[0]=je,k[1]=ct,k[2]=Lt,k[3]=Nt,k[4]=Xt,k[5]=gr,k[6]=Br,k[7]=Rr,k[8]=na,k[9]=Ia,k[10]=ii,k[11]=Wa,k[12]=je*oe+Xt*_e+na*Pe+C[12],k[13]=ct*oe+gr*_e+Ia*Pe+C[13],k[14]=Lt*oe+Br*_e+ii*Pe+C[14],k[15]=Nt*oe+Rr*_e+Wa*Pe+C[15]),k}function Bl(k,C,V){var oe=V[0],_e=V[1],Pe=V[2];return k[0]=C[0]*oe,k[1]=C[1]*oe,k[2]=C[2]*oe,k[3]=C[3]*oe,k[4]=C[4]*_e,k[5]=C[5]*_e,k[6]=C[6]*_e,k[7]=C[7]*_e,k[8]=C[8]*Pe,k[9]=C[9]*Pe,k[10]=C[10]*Pe,k[11]=C[11]*Pe,k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15],k}function Lh(k,C,V){var oe=Math.sin(V),_e=Math.cos(V),Pe=C[4],je=C[5],ct=C[6],Lt=C[7],Nt=C[8],Xt=C[9],gr=C[10],Br=C[11];return C!==k&&(k[0]=C[0],k[1]=C[1],k[2]=C[2],k[3]=C[3],k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15]),k[4]=Pe*_e+Nt*oe,k[5]=je*_e+Xt*oe,k[6]=ct*_e+gr*oe,k[7]=Lt*_e+Br*oe,k[8]=Nt*_e-Pe*oe,k[9]=Xt*_e-je*oe,k[10]=gr*_e-ct*oe,k[11]=Br*_e-Lt*oe,k}function Iv(k,C,V){var oe=Math.sin(V),_e=Math.cos(V),Pe=C[0],je=C[1],ct=C[2],Lt=C[3],Nt=C[4],Xt=C[5],gr=C[6],Br=C[7];return C!==k&&(k[8]=C[8],k[9]=C[9],k[10]=C[10],k[11]=C[11],k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15]),k[0]=Pe*_e+Nt*oe,k[1]=je*_e+Xt*oe,k[2]=ct*_e+gr*oe,k[3]=Lt*_e+Br*oe,k[4]=Nt*_e-Pe*oe,k[5]=Xt*_e-je*oe,k[6]=gr*_e-ct*oe,k[7]=Br*_e-Lt*oe,k}function om(k,C,V,oe,_e){var Pe=1/Math.tan(C/2),je;return k[0]=Pe/V,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=Pe,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[11]=-1,k[12]=0,k[13]=0,k[15]=0,_e!=null&&_e!==1/0?(je=1/(oe-_e),k[10]=(_e+oe)*je,k[14]=2*_e*oe*je):(k[10]=-1,k[14]=-2*oe),k}function Ql(k,C,V,oe,_e,Pe,je){var ct=1/(C-V),Lt=1/(oe-_e),Nt=1/(Pe-je);return k[0]=-2*ct,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=-2*Lt,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[10]=2*Nt,k[11]=0,k[12]=(C+V)*ct,k[13]=(_e+oe)*Lt,k[14]=(je+Pe)*Nt,k[15]=1,k}var xg=ov;function sv(){var k=new Sf(3);return Sf!=Float32Array&&(k[0]=0,k[1]=0,k[2]=0),k}function y0(k){var C=new Sf(3);return C[0]=k[0],C[1]=k[1],C[2]=k[2],C}function kp(k,C,V){return k[0]=C[0]+V[0],k[1]=C[1]+V[1],k[2]=C[2]+V[2],k}function lv(k,C,V){return k[0]=C[0]-V[0],k[1]=C[1]-V[1],k[2]=C[2]-V[2],k}function _0(k,C,V){return k[0]=C[0]*V,k[1]=C[1]*V,k[2]=C[2]*V,k}function bg(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=V*V+oe*oe+_e*_e;return Pe>0&&(Pe=1/Math.sqrt(Pe)),k[0]=C[0]*Pe,k[1]=C[1]*Pe,k[2]=C[2]*Pe,k}function NT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]}function UT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=V[0],ct=V[1],Lt=V[2];return k[0]=_e*Lt-Pe*ct,k[1]=Pe*je-oe*Lt,k[2]=oe*ct-_e*je,k}function jT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2];return k[0]=oe*V[0]+_e*V[3]+Pe*V[6],k[1]=oe*V[1]+_e*V[4]+Pe*V[7],k[2]=oe*V[2]+_e*V[5]+Pe*V[8],k}var VT=lv,cC=function(){var k=sv();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=3),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],k[2]=C[ct+2],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1],C[ct+2]=k[2];return C}}();function qT(){var k=new Sf(4);return Sf!=Float32Array&&(k[0]=0,k[1]=0,k[2]=0,k[3]=0),k}function HT(k,C,V){return k[0]=C[0]*V,k[1]=C[1]*V,k[2]=C[2]*V,k[3]=C[3]*V,k}function GT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]+k[3]*C[3]}function Rv(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3];return k[0]=V[0]*oe+V[4]*_e+V[8]*Pe+V[12]*je,k[1]=V[1]*oe+V[5]*_e+V[9]*Pe+V[13]*je,k[2]=V[2]*oe+V[6]*_e+V[10]*Pe+V[14]*je,k[3]=V[3]*oe+V[7]*_e+V[11]*Pe+V[15]*je,k}var wg=function(){var k=qT();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=4),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],k[2]=C[ct+2],k[3]=C[ct+3],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1],C[ct+2]=k[2],C[ct+3]=k[3];return C}}();function kx(){var k=new Sf(2);return Sf!=Float32Array&&(k[0]=0,k[1]=0),k}function C1(k){var C=k[0],V=k[1];return C*C+V*V}var L1=C1,fC=function(){var k=kx();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=2),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1];return C}}(),WT=function(k){function C(V){k.call(this,V,qd)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new Vs(oe)},C.prototype.queryRadius=function(oe){var _e=oe;return Ch("circle-radius",this,_e)+Ch("circle-stroke-width",this,_e)+Mp(this.paint.get("circle-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){for(var gr=qp(oe,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("circle-radius").evaluate(_e,Pe),Rr=this.paint.get("circle-stroke-width").evaluate(_e,Pe),na=Br+Rr,Ia=this.paint.get("circle-pitch-alignment")==="map",ii=Ia?gr:Lx(gr,Xt),Wa=Ia?na*Nt:na,Si=0,ci=je;Si<ci.length;Si+=1)for(var Ai=ci[Si],Li=0,Ki=Ai;Li<Ki.length;Li+=1){var kn=Ki[Li],Tn=Ia?kn:Cx(kn,Xt),lo=Wa,qn=Rv([],[kn.x,kn.y,0,1],Xt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?lo*=qn[3]/Lt.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(lo*=Lt.cameraToCenterDistance/qn[3]),Ls(ii,Tn,lo))return!0}return!1},C}(Fi);function Cx(k,C){var V=Rv([],[k.x,k.y,0,1],C);return new i(V[0]/V[3],V[1]/V[3])}function Lx(k,C){return k.map(function(V){return Cx(V,C)})}var P1=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Vs);de("HeatmapBucket",P1,{omit:["layers"]});function Ph(k,C,V,oe){var _e=C.width,Pe=C.height;if(!oe)oe=new Uint8Array(_e*Pe*V);else if(oe instanceof Uint8ClampedArray)oe=new Uint8Array(oe.buffer);else if(oe.length!==_e*Pe*V)throw new RangeError("mismatched image size");return k.width=_e,k.height=Pe,k.data=oe,k}function x0(k,C,V){var oe=C.width,_e=C.height;if(!(oe===k.width&&_e===k.height)){var Pe=Ph({},{width:oe,height:_e},V);b0(k,Pe,{x:0,y:0},{x:0,y:0},{width:Math.min(k.width,oe),height:Math.min(k.height,_e)},V),k.width=oe,k.height=_e,k.data=Pe.data}}function b0(k,C,V,oe,_e,Pe){if(_e.width===0||_e.height===0)return C;if(_e.width>k.width||_e.height>k.height||V.x>k.width-_e.width||V.y>k.height-_e.height)throw new RangeError("out of range source coordinates for image copy");if(_e.width>C.width||_e.height>C.height||oe.x>C.width-_e.width||oe.y>C.height-_e.height)throw new RangeError("out of range destination coordinates for image copy");for(var je=k.data,ct=C.data,Lt=0;Lt<_e.height;Lt++)for(var Nt=((V.y+Lt)*k.width+V.x)*Pe,Xt=((oe.y+Lt)*C.width+oe.x)*Pe,gr=0;gr<_e.width*Pe;gr++)ct[Xt+gr]=je[Nt+gr];return C}var Cp=function(C,V){Ph(this,C,1,V)};Cp.prototype.resize=function(C){x0(this,C,1)},Cp.prototype.clone=function(){return new Cp({width:this.width,height:this.height},new Uint8Array(this.data))},Cp.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,1)};var Of=function(C,V){Ph(this,C,4,V)};Of.prototype.resize=function(C){x0(this,C,4)},Of.prototype.replace=function(C,V){V?this.data.set(C):C instanceof Uint8ClampedArray?this.data=new Uint8Array(C.buffer):this.data=C},Of.prototype.clone=function(){return new Of({width:this.width,height:this.height},new Uint8Array(this.data))},Of.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,4)},de("AlphaImage",Cp),de("RGBAImage",Of);var Tg=new xi({"heatmap-radius":new ra(fi.paint_heatmap["heatmap-radius"]),"heatmap-weight":new ra(fi.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Qt(fi.paint_heatmap["heatmap-intensity"]),"heatmap-color":new wi(fi.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Qt(fi.paint_heatmap["heatmap-opacity"])}),sm={paint:Tg};function Ag(k){var C={},V=k.resolution||256,oe=k.clips?k.clips.length:1,_e=k.image||new Of({width:V,height:oe}),Pe=function(Si,ci,Ai){C[k.evaluationKey]=Ai;var Li=k.expression.evaluate(C);_e.data[Si+ci+0]=Math.floor(Li.r*255/Li.a),_e.data[Si+ci+1]=Math.floor(Li.g*255/Li.a),_e.data[Si+ci+2]=Math.floor(Li.b*255/Li.a),_e.data[Si+ci+3]=Math.floor(Li.a*255)};if(k.clips)for(var Nt=0,Xt=0;Nt<oe;++Nt,Xt+=V*4)for(var gr=0,Br=0;gr<V;gr++,Br+=4){var Rr=gr/(V-1),na=k.clips[Nt],Ia=na.start,ii=na.end,Wa=Ia*(1-Rr)+ii*Rr;Pe(Xt,Br,Wa)}else for(var je=0,ct=0;je<V;je++,ct+=4){var Lt=je/(V-1);Pe(0,ct,Lt)}return _e}var w0=function(k){function C(V){k.call(this,V,sm),this._updateColorRamp()}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new P1(oe)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){oe==="heatmap-color"&&this._updateColorRamp()},C.prototype._updateColorRamp=function(){var oe=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=Ag({expression:oe,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null},C.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},C.prototype.queryRadius=function(){return 0},C.prototype.queryIntersectsFeature=function(){return!1},C.prototype.hasOffscreenPass=function(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"},C}(Fi),ZT=new xi({"hillshade-illumination-direction":new Qt(fi.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Qt(fi.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Qt(fi.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Qt(fi.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Qt(fi.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Qt(fi.paint_hillshade["hillshade-accent-color"])}),XT={paint:ZT},Px=function(k){function C(V){k.call(this,V,XT)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.hasOffscreenPass=function(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"},C}(Fi),Ix=on([{name:"a_pos",components:2,type:"Int16"}],4),YT=Ix.members,T0=lm,Rx=lm;function lm(k,C,V){V=V||2;var oe=C&&C.length,_e=oe?C[0]*V:k.length,Pe=A0(k,0,_e,V,!0),je=[];if(!Pe||Pe.next===Pe.prev)return je;var ct,Lt,Nt,Xt,gr,Br,Rr;if(oe&&(Pe=cv(k,C,Pe,V)),k.length>80*V){ct=Nt=k[0],Lt=Xt=k[1];for(var na=V;na<_e;na+=V)gr=k[na],Br=k[na+1],gr<ct&&(ct=gr),Br<Lt&&(Lt=Br),gr>Nt&&(Nt=gr),Br>Xt&&(Xt=Br);Rr=Math.max(Nt-ct,Xt-Lt),Rr=Rr!==0?1/Rr:0}return Sg(Pe,je,V,ct,Lt,Rr),je}function A0(k,C,V,oe,_e){var Pe,je;if(_e===B1(k,C,V,oe)>0)for(Pe=C;Pe<V;Pe+=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);else for(Pe=V-oe;Pe>=C;Pe-=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);return je&&Eg(je,je.next)&&(Lg(je),je=je.next),je}function uv(k,C){if(!k)return k;C||(C=k);var V=k,oe;do if(oe=!1,!V.steiner&&(Eg(V,V.next)||qc(V.prev,V,V.next)===0)){if(Lg(V),V=C=V.prev,V===V.next)break;oe=!0}else V=V.next;while(oe||V!==C);return C}function Sg(k,C,V,oe,_e,Pe,je){if(k){!je&&Pe&&S0(k,oe,_e,Pe);for(var ct=k,Lt,Nt;k.prev!==k.next;){if(Lt=k.prev,Nt=k.next,Pe?zx(k,oe,_e,Pe):Dx(k)){C.push(Lt.i/V),C.push(k.i/V),C.push(Nt.i/V),Lg(k),k=Nt.next,ct=Nt.next;continue}if(k=Nt,k===ct){je?je===1?(k=Mg(uv(k),C,V),Sg(k,C,V,oe,_e,Pe,2)):je===2&&yd(k,C,V,oe,_e,Pe):Sg(uv(k),C,V,oe,_e,Pe,1);break}}}}function Dx(k){var C=k.prev,V=k,oe=k.next;if(qc(C,V,oe)>=0)return!1;for(var _e=k.next.next;_e!==k.prev;){if(fv(C.x,C.y,V.x,V.y,oe.x,oe.y,_e.x,_e.y)&&qc(_e.prev,_e,_e.next)>=0)return!1;_e=_e.next}return!0}function zx(k,C,V,oe){var _e=k.prev,Pe=k,je=k.next;if(qc(_e,Pe,je)>=0)return!1;for(var ct=_e.x<Pe.x?_e.x<je.x?_e.x:je.x:Pe.x<je.x?Pe.x:je.x,Lt=_e.y<Pe.y?_e.y<je.y?_e.y:je.y:Pe.y<je.y?Pe.y:je.y,Nt=_e.x>Pe.x?_e.x>je.x?_e.x:je.x:Pe.x>je.x?Pe.x:je.x,Xt=_e.y>Pe.y?_e.y>je.y?_e.y:je.y:Pe.y>je.y?Pe.y:je.y,gr=D1(ct,Lt,C,V,oe),Br=D1(Nt,Xt,C,V,oe),Rr=k.prevZ,na=k.nextZ;Rr&&Rr.z>=gr&&na&&na.z<=Br;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0||(Rr=Rr.prevZ,na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0))return!1;na=na.nextZ}for(;Rr&&Rr.z>=gr;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0)return!1;Rr=Rr.prevZ}for(;na&&na.z<=Br;){if(na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0)return!1;na=na.nextZ}return!0}function Mg(k,C,V){var oe=k;do{var _e=oe.prev,Pe=oe.next.next;!Eg(_e,Pe)&&M0(_e,oe,oe.next,Pe)&&Cg(_e,Pe)&&Cg(Pe,_e)&&(C.push(_e.i/V),C.push(oe.i/V),C.push(Pe.i/V),Lg(oe),Lg(oe.next),oe=k=Pe),oe=oe.next}while(oe!==k);return uv(oe)}function yd(k,C,V,oe,_e,Pe){var je=k;do{for(var ct=je.next.next;ct!==je.prev;){if(je.i!==ct.i&&um(je,ct)){var Lt=F1(je,ct);je=uv(je,je.next),Lt=uv(Lt,Lt.next),Sg(je,C,V,oe,_e,Pe),Sg(Lt,C,V,oe,_e,Pe);return}ct=ct.next}je=je.next}while(je!==k)}function cv(k,C,V,oe){var _e=[],Pe,je,ct,Lt,Nt;for(Pe=0,je=C.length;Pe<je;Pe++)ct=C[Pe]*oe,Lt=Pe<je-1?C[Pe+1]*oe:k.length,Nt=A0(k,ct,Lt,oe,!1),Nt===Nt.next&&(Nt.steiner=!0),_e.push(z1(Nt));for(_e.sort(Fx),Pe=0;Pe<_e.length;Pe++)I1(_e[Pe],V),V=uv(V,V.next);return V}function Fx(k,C){return k.x-C.x}function I1(k,C){if(C=KT(k,C),C){var V=F1(C,k);uv(C,C.next),uv(V,V.next)}}function KT(k,C){var V=C,oe=k.x,_e=k.y,Pe=-1/0,je;do{if(_e<=V.y&&_e>=V.next.y&&V.next.y!==V.y){var ct=V.x+(_e-V.y)*(V.next.x-V.x)/(V.next.y-V.y);if(ct<=oe&&ct>Pe){if(Pe=ct,ct===oe){if(_e===V.y)return V;if(_e===V.next.y)return V.next}je=V.x<V.next.x?V:V.next}}V=V.next}while(V!==C);if(!je)return null;if(oe===Pe)return je;var Lt=je,Nt=je.x,Xt=je.y,gr=1/0,Br;V=je;do oe>=V.x&&V.x>=Nt&&oe!==V.x&&fv(_e<Xt?oe:Pe,_e,Nt,Xt,_e<Xt?Pe:oe,_e,V.x,V.y)&&(Br=Math.abs(_e-V.y)/(oe-V.x),Cg(V,k)&&(Br<gr||Br===gr&&(V.x>je.x||V.x===je.x&&JT(je,V)))&&(je=V,gr=Br)),V=V.next;while(V!==Lt);return je}function JT(k,C){return qc(k.prev,k,C.prev)<0&&qc(C.next,k,k.next)<0}function S0(k,C,V,oe){var _e=k;do _e.z===null&&(_e.z=D1(_e.x,_e.y,C,V,oe)),_e.prevZ=_e.prev,_e.nextZ=_e.next,_e=_e.next;while(_e!==k);_e.prevZ.nextZ=null,_e.prevZ=null,R1(_e)}function R1(k){var C,V,oe,_e,Pe,je,ct,Lt,Nt=1;do{for(V=k,k=null,Pe=null,je=0;V;){for(je++,oe=V,ct=0,C=0;C<Nt&&(ct++,oe=oe.nextZ,!!oe);C++);for(Lt=Nt;ct>0||Lt>0&&oe;)ct!==0&&(Lt===0||!oe||V.z<=oe.z)?(_e=V,V=V.nextZ,ct--):(_e=oe,oe=oe.nextZ,Lt--),Pe?Pe.nextZ=_e:k=_e,_e.prevZ=Pe,Pe=_e;V=oe}Pe.nextZ=null,Nt*=2}while(je>1);return k}function D1(k,C,V,oe,_e){return k=32767*(k-V)*_e,C=32767*(C-oe)*_e,k=(k|k<<8)&16711935,k=(k|k<<4)&252645135,k=(k|k<<2)&858993459,k=(k|k<<1)&1431655765,C=(C|C<<8)&16711935,C=(C|C<<4)&252645135,C=(C|C<<2)&858993459,C=(C|C<<1)&1431655765,k|C<<1}function z1(k){var C=k,V=k;do(C.x<V.x||C.x===V.x&&C.y<V.y)&&(V=C),C=C.next;while(C!==k);return V}function fv(k,C,V,oe,_e,Pe,je,ct){return(_e-je)*(C-ct)-(k-je)*(Pe-ct)>=0&&(k-je)*(oe-ct)-(V-je)*(C-ct)>=0&&(V-je)*(Pe-ct)-(_e-je)*(oe-ct)>=0}function um(k,C){return k.next.i!==C.i&&k.prev.i!==C.i&&!Ox(k,C)&&(Cg(k,C)&&Cg(C,k)&&$T(k,C)&&(qc(k.prev,k,C.prev)||qc(k,C.prev,C))||Eg(k,C)&&qc(k.prev,k,k.next)>0&&qc(C.prev,C,C.next)>0)}function qc(k,C,V){return(C.y-k.y)*(V.x-C.x)-(C.x-k.x)*(V.y-C.y)}function Eg(k,C){return k.x===C.x&&k.y===C.y}function M0(k,C,V,oe){var _e=Dv(qc(k,C,V)),Pe=Dv(qc(k,C,oe)),je=Dv(qc(V,oe,k)),ct=Dv(qc(V,oe,C));return!!(_e!==Pe&&je!==ct||_e===0&&kg(k,V,C)||Pe===0&&kg(k,oe,C)||je===0&&kg(V,k,oe)||ct===0&&kg(V,C,oe))}function kg(k,C,V){return C.x<=Math.max(k.x,V.x)&&C.x>=Math.min(k.x,V.x)&&C.y<=Math.max(k.y,V.y)&&C.y>=Math.min(k.y,V.y)}function Dv(k){return k>0?1:k<0?-1:0}function Ox(k,C){var V=k;do{if(V.i!==k.i&&V.next.i!==k.i&&V.i!==C.i&&V.next.i!==C.i&&M0(V,V.next,k,C))return!0;V=V.next}while(V!==k);return!1}function Cg(k,C){return qc(k.prev,k,k.next)<0?qc(k,C,k.next)>=0&&qc(k,k.prev,C)>=0:qc(k,C,k.prev)<0||qc(k,k.next,C)<0}function $T(k,C){var V=k,oe=!1,_e=(k.x+C.x)/2,Pe=(k.y+C.y)/2;do V.y>Pe!=V.next.y>Pe&&V.next.y!==V.y&&_e<(V.next.x-V.x)*(Pe-V.y)/(V.next.y-V.y)+V.x&&(oe=!oe),V=V.next;while(V!==k);return oe}function F1(k,C){var V=new O1(k.i,k.x,k.y),oe=new O1(C.i,C.x,C.y),_e=k.next,Pe=C.prev;return k.next=C,C.prev=k,V.next=_e,_e.prev=V,oe.next=V,V.prev=oe,Pe.next=oe,oe.prev=Pe,oe}function Bx(k,C,V,oe){var _e=new O1(k,C,V);return oe?(_e.next=oe.next,_e.prev=oe,oe.next.prev=_e,oe.next=_e):(_e.prev=_e,_e.next=_e),_e}function Lg(k){k.next.prev=k.prev,k.prev.next=k.next,k.prevZ&&(k.prevZ.nextZ=k.nextZ),k.nextZ&&(k.nextZ.prevZ=k.prevZ)}function O1(k,C,V){this.i=k,this.x=C,this.y=V,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}lm.deviation=function(k,C,V,oe){var _e=C&&C.length,Pe=_e?C[0]*V:k.length,je=Math.abs(B1(k,0,Pe,V));if(_e)for(var ct=0,Lt=C.length;ct<Lt;ct++){var Nt=C[ct]*V,Xt=ct<Lt-1?C[ct+1]*V:k.length;je-=Math.abs(B1(k,Nt,Xt,V))}var gr=0;for(ct=0;ct<oe.length;ct+=3){var Br=oe[ct]*V,Rr=oe[ct+1]*V,na=oe[ct+2]*V;gr+=Math.abs((k[Br]-k[na])*(k[Rr+1]-k[Br+1])-(k[Br]-k[Rr])*(k[na+1]-k[Br+1]))}return je===0&&gr===0?0:Math.abs((gr-je)/je)};function B1(k,C,V,oe){for(var _e=0,Pe=C,je=V-oe;Pe<V;Pe+=oe)_e+=(k[je]-k[Pe])*(k[Pe+1]+k[je+1]),je=Pe;return _e}lm.flatten=function(k){for(var C=k[0][0].length,V={vertices:[],holes:[],dimensions:C},oe=0,_e=0;_e<k.length;_e++){for(var Pe=0;Pe<k[_e].length;Pe++)for(var je=0;je<C;je++)V.vertices.push(k[_e][Pe][je]);_e>0&&(oe+=k[_e-1].length,V.holes.push(oe))}return V},T0.default=Rx;function N1(k,C,V,oe,_e){Gd(k,C,V||0,oe||k.length-1,_e||Nx)}function Gd(k,C,V,oe,_e){for(;oe>V;){if(oe-V>600){var Pe=oe-V+1,je=C-V+1,ct=Math.log(Pe),Lt=.5*Math.exp(2*ct/3),Nt=.5*Math.sqrt(ct*Lt*(Pe-Lt)/Pe)*(je-Pe/2<0?-1:1),Xt=Math.max(V,Math.floor(C-je*Lt/Pe+Nt)),gr=Math.min(oe,Math.floor(C+(Pe-je)*Lt/Pe+Nt));Gd(k,C,Xt,gr,_e)}var Br=k[C],Rr=V,na=oe;for(cm(k,V,C),_e(k[oe],Br)>0&&cm(k,V,oe);Rr<na;){for(cm(k,Rr,na),Rr++,na--;_e(k[Rr],Br)<0;)Rr++;for(;_e(k[na],Br)>0;)na--}_e(k[V],Br)===0?cm(k,V,na):(na++,cm(k,na,oe)),na<=C&&(V=na+1),C<=na&&(oe=na-1)}}function cm(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}function Nx(k,C){return k<C?-1:k>C?1:0}function E0(k,C){var V=k.length;if(V<=1)return[k];for(var oe=[],_e,Pe,je=0;je<V;je++){var ct=Q(k[je]);ct!==0&&(k[je].area=Math.abs(ct),Pe===void 0&&(Pe=ct<0),Pe===ct<0?(_e&&oe.push(_e),_e=[k[je]]):_e.push(k[je]))}if(_e&&oe.push(_e),C>1)for(var Lt=0;Lt<oe.length;Lt++)oe[Lt].length<=C||(N1(oe[Lt],C,1,oe[Lt].length-1,Ux),oe[Lt]=oe[Lt].slice(0,C));return oe}function Ux(k,C){return C.area-k.area}function k0(k,C,V){for(var oe=V.patternDependencies,_e=!1,Pe=0,je=C;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=ct.paint.get(k+"-pattern");Lt.isConstant()||(_e=!0);var Nt=Lt.constantOr(null);Nt&&(_e=!0,oe[Nt.to]=!0,oe[Nt.from]=!0)}return _e}function Pg(k,C,V,oe,_e){for(var Pe=_e.patternDependencies,je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.paint.get(k+"-pattern"),Xt=Nt.value;if(Xt.kind!=="constant"){var gr=Xt.evaluate({zoom:oe-1},V,{},_e.availableImages),Br=Xt.evaluate({zoom:oe},V,{},_e.availableImages),Rr=Xt.evaluate({zoom:oe+1},V,{},_e.availableImages);gr=gr&&gr.name?gr.name:gr,Br=Br&&Br.name?Br.name:Br,Rr=Rr&&Rr.name?Rr.name:Rr,Pe[gr]=!0,Pe[Br]=!0,Pe[Rr]=!0,V.patterns[Lt.id]={min:gr,mid:Br,max:Rr}}}return V}var Ig=500,ad=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Mi,this.indexArray=new jn,this.indexArray2=new os,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.segments2=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};ad.prototype.populate=function(C,V,oe){this.hasPattern=k0("fill",this.layers,V);for(var _e=this.layers[0].layout.get("fill-sort-key"),Pe=[],je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.feature,Xt=Lt.id,gr=Lt.index,Br=Lt.sourceLayerIndex,Rr=this.layers[0]._featureFilter.needGeometry,na=ms(Nt,Rr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),na,oe)){var Ia=_e?_e.evaluate(na,{},oe,V.availableImages):void 0,ii={id:Xt,properties:Nt.properties,type:Nt.type,sourceLayerIndex:Br,index:gr,geometry:Rr?na.geometry:zn(Nt),patterns:{},sortKey:Ia};Pe.push(ii)}}_e&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Wa=0,Si=Pe;Wa<Si.length;Wa+=1){var ci=Si[Wa],Ai=ci,Li=Ai.geometry,Ki=Ai.index,kn=Ai.sourceLayerIndex;if(this.hasPattern){var Tn=Pg("fill",this.layers,ci,this.zoom,V);this.patternFeatures.push(Tn)}else this.addFeature(ci,Li,Ki,oe,{});var lo=C[Ki].feature;V.featureIndex.insert(lo,Li,Ki,kn,this.index)}},ad.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},ad.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.patternFeatures;_e<Pe.length;_e+=1){var je=Pe[_e];this.addFeature(je,je.geometry,je.index,V,oe)}},ad.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},ad.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ad.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,YT),this.indexBuffer=C.createIndexBuffer(this.indexArray),this.indexBuffer2=C.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(C),this.uploaded=!0},ad.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},ad.prototype.addFeature=function(C,V,oe,_e,Pe){for(var je=0,ct=E0(V,Ig);je<ct.length;je+=1){for(var Lt=ct[je],Nt=0,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt];Nt+=Br.length}for(var Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray),na=Rr.vertexLength,Ia=[],ii=[],Wa=0,Si=Lt;Wa<Si.length;Wa+=1){var ci=Si[Wa];if(ci.length!==0){ci!==Lt[0]&&ii.push(Ia.length/2);var Ai=this.segments2.prepareSegment(ci.length,this.layoutVertexArray,this.indexArray2),Li=Ai.vertexLength;this.layoutVertexArray.emplaceBack(ci[0].x,ci[0].y),this.indexArray2.emplaceBack(Li+ci.length-1,Li),Ia.push(ci[0].x),Ia.push(ci[0].y);for(var Ki=1;Ki<ci.length;Ki++)this.layoutVertexArray.emplaceBack(ci[Ki].x,ci[Ki].y),this.indexArray2.emplaceBack(Li+Ki-1,Li+Ki),Ia.push(ci[Ki].x),Ia.push(ci[Ki].y);Ai.vertexLength+=ci.length,Ai.primitiveLength+=ci.length}}for(var kn=T0(Ia,ii),Tn=0;Tn<kn.length;Tn+=3)this.indexArray.emplaceBack(na+kn[Tn],na+kn[Tn+1],na+kn[Tn+2]);Rr.vertexLength+=Nt,Rr.primitiveLength+=kn.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},de("FillBucket",ad,{omit:["layers","patternFeatures"]});var U1=new xi({"fill-sort-key":new ra(fi.layout_fill["fill-sort-key"])}),jx=new xi({"fill-antialias":new Qt(fi.paint_fill["fill-antialias"]),"fill-opacity":new ra(fi.paint_fill["fill-opacity"]),"fill-color":new ra(fi.paint_fill["fill-color"]),"fill-outline-color":new ra(fi.paint_fill["fill-outline-color"]),"fill-translate":new Qt(fi.paint_fill["fill-translate"]),"fill-translate-anchor":new Qt(fi.paint_fill["fill-translate-anchor"]),"fill-pattern":new Ta(fi.paint_fill["fill-pattern"])}),Hp={paint:jx,layout:U1},Rg=function(k){function C(V){k.call(this,V,Hp)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e);var Pe=this.paint._values["fill-outline-color"];Pe.value.kind==="constant"&&Pe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},C.prototype.createBucket=function(oe){return new ad(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Lt.angle,Nt);return wl(Xt,je)},C.prototype.isTileClipped=function(){return!0},C}(Fi),Vx=on([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),qx=Vx.members,j1=zv;function zv(k,C,V,oe,_e){this.properties={},this.extent=V,this.type=0,this._pbf=k,this._geometry=-1,this._keys=oe,this._values=_e,k.readFields(Hx,this,C)}function Hx(k,C,V){k==1?C.id=V.readVarint():k==2?Gx(V,C):k==3?C.type=V.readVarint():k==4&&(C._geometry=V.pos)}function Gx(k,C){for(var V=k.readVarint()+k.pos;k.pos<V;){var oe=C._keys[k.readVarint()],_e=C._values[k.readVarint()];C.properties[oe]=_e}}zv.types=["Unknown","Point","LineString","Polygon"],zv.prototype.loadGeometry=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=[],ct;k.pos<C;){if(oe<=0){var Lt=k.readVarint();V=Lt&7,oe=Lt>>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),V===1&&(ct&&je.push(ct),ct=[]),ct.push(new i(_e,Pe));else if(V===7)ct&&ct.push(ct[0].clone());else throw new Error("unknown command "+V)}return ct&&je.push(ct),je},zv.prototype.bbox=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=1/0,ct=-1/0,Lt=1/0,Nt=-1/0;k.pos<C;){if(oe<=0){var Xt=k.readVarint();V=Xt&7,oe=Xt>>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),_e<je&&(je=_e),_e>ct&&(ct=_e),Pe<Lt&&(Lt=Pe),Pe>Nt&&(Nt=Pe);else if(V!==7)throw new Error("unknown command "+V)}return[je,Lt,ct,Nt]},zv.prototype.toGeoJSON=function(k,C,V){var oe=this.extent*Math.pow(2,V),_e=this.extent*k,Pe=this.extent*C,je=this.loadGeometry(),ct=zv.types[this.type],Lt,Nt;function Xt(Rr){for(var na=0;na<Rr.length;na++){var Ia=Rr[na],ii=180-(Ia.y+Pe)*360/oe;Rr[na]=[(Ia.x+_e)*360/oe-180,360/Math.PI*Math.atan(Math.exp(ii*Math.PI/180))-90]}}switch(this.type){case 1:var gr=[];for(Lt=0;Lt<je.length;Lt++)gr[Lt]=je[Lt][0];je=gr,Xt(je);break;case 2:for(Lt=0;Lt<je.length;Lt++)Xt(je[Lt]);break;case 3:for(je=QT(je),Lt=0;Lt<je.length;Lt++)for(Nt=0;Nt<je[Lt].length;Nt++)Xt(je[Lt][Nt]);break}je.length===1?je=je[0]:ct="Multi"+ct;var Br={type:"Feature",geometry:{type:ct,coordinates:je},properties:this.properties};return"id"in this&&(Br.id=this.id),Br};function QT(k){var C=k.length;if(C<=1)return[k];for(var V=[],oe,_e,Pe=0;Pe<C;Pe++){var je=Wx(k[Pe]);je!==0&&(_e===void 0&&(_e=je<0),_e===je<0?(oe&&V.push(oe),oe=[k[Pe]]):oe.push(k[Pe]))}return oe&&V.push(oe),V}function Wx(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe,je;V<oe;_e=V++)Pe=k[V],je=k[_e],C+=(je.x-Pe.x)*(Pe.y+je.y);return C}var Wd=V1;function V1(k,C){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=k,this._keys=[],this._values=[],this._features=[],k.readFields(Zx,this,C),this.length=this._features.length}function Zx(k,C,V){k===15?C.version=V.readVarint():k===1?C.name=V.readString():k===5?C.extent=V.readVarint():k===2?C._features.push(V.pos):k===3?C._keys.push(V.readString()):k===4&&C._values.push(Xx(V))}function Xx(k){for(var C=null,V=k.readVarint()+k.pos;k.pos<V;){var oe=k.readVarint()>>3;C=oe===1?k.readString():oe===2?k.readFloat():oe===3?k.readDouble():oe===4?k.readVarint64():oe===5?k.readVarint():oe===6?k.readSVarint():oe===7?k.readBoolean():null}return C}V1.prototype.feature=function(k){if(k<0||k>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[k];var C=this._pbf.readVarint()+this._pbf.pos;return new j1(this._pbf,C,this.extent,this._keys,this._values)};var Yx=eA;function eA(k,C){this.layers=k.readFields(tA,{},C)}function tA(k,C,V){if(k===3){var oe=new Wd(V,V.readVarint()+V.pos);oe.length&&(C[oe.name]=oe)}}var Kx=Yx,fm=j1,Jx=Wd,Zd={VectorTile:Kx,VectorTileFeature:fm,VectorTileLayer:Jx},$x=Zd.VectorTileFeature.types,C0=500,hm=Math.pow(2,13);function hv(k,C,V,oe,_e,Pe,je,ct){k.emplaceBack(C,V,Math.floor(oe*hm)*2+je,_e*hm*2,Pe*hm*2,Math.round(ct))}var fd=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new pn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};fd.prototype.populate=function(C,V,oe){this.features=[],this.hasPattern=k0("fill-extrusion",this.layers,V);for(var _e=0,Pe=C;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je.feature,Lt=je.id,Nt=je.index,Xt=je.sourceLayerIndex,gr=this.layers[0]._featureFilter.needGeometry,Br=ms(ct,gr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),Br,oe)){var Rr={id:Lt,sourceLayerIndex:Xt,index:Nt,geometry:gr?Br.geometry:zn(ct),properties:ct.properties,type:ct.type,patterns:{}};this.hasPattern?this.features.push(Pg("fill-extrusion",this.layers,Rr,this.zoom,V)):this.addFeature(Rr,Rr.geometry,Nt,oe,{}),V.featureIndex.insert(ct,Rr.geometry,Nt,Xt,this.index,!0)}}},fd.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.features;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je.geometry;this.addFeature(je,ct,je.index,V,oe)}},fd.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},fd.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},fd.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},fd.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,qx),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},fd.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},fd.prototype.addFeature=function(C,V,oe,_e,Pe){for(var je=0,ct=E0(V,C0);je<ct.length;je+=1){for(var Lt=ct[je],Nt=0,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt];Nt+=Br.length}for(var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),na=0,Ia=Lt;na<Ia.length;na+=1){var ii=Ia[na];if(ii.length!==0&&!aA(ii))for(var Wa=0,Si=0;Si<ii.length;Si++){var ci=ii[Si];if(Si>=1){var Ai=ii[Si-1];if(!rA(ci,Ai)){Rr.vertexLength+4>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Li=ci.sub(Ai)._perp()._unit(),Ki=Ai.dist(ci);Wa+Ki>32768&&(Wa=0),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,1,Wa),Wa+=Ki,hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,1,Wa);var kn=Rr.vertexLength;this.indexArray.emplaceBack(kn,kn+2,kn+1),this.indexArray.emplaceBack(kn+1,kn+2,kn+3),Rr.vertexLength+=4,Rr.primitiveLength+=2}}}}if(Rr.vertexLength+Nt>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray)),$x[C.type]==="Polygon"){for(var Tn=[],lo=[],qn=Rr.vertexLength,to=0,ds=Lt;to<ds.length;to+=1){var uo=ds[to];if(uo.length!==0){uo!==Lt[0]&&lo.push(Tn.length/2);for(var vo=0;vo<uo.length;vo++){var zs=uo[vo];hv(this.layoutVertexArray,zs.x,zs.y,0,0,1,1,0),Tn.push(zs.x),Tn.push(zs.y)}}}for(var cs=T0(Tn,lo),Tl=0;Tl<cs.length;Tl+=3)this.indexArray.emplaceBack(qn+cs[Tl],qn+cs[Tl+2],qn+cs[Tl+1]);Rr.primitiveLength+=cs.length/3,Rr.vertexLength+=Nt}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},de("FillExtrusionBucket",fd,{omit:["layers","features"]});function rA(k,C){return k.x===C.x&&(k.x<0||k.x>Ii)||k.y===C.y&&(k.y<0||k.y>Ii)}function aA(k){return k.every(function(C){return C.x<0})||k.every(function(C){return C.x>Ii})||k.every(function(C){return C.y<0})||k.every(function(C){return C.y>Ii})}var pm=new xi({"fill-extrusion-opacity":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new ra(fi["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Ta(fi["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new ra(fi["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new ra(fi["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ph={paint:pm},pv=function(k){function C(V){k.call(this,V,ph)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new fd(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-extrusion-translate"))},C.prototype.is3D=function(){return!0},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=qp(oe,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("fill-extrusion-height").evaluate(_e,Pe),Rr=this.paint.get("fill-extrusion-base").evaluate(_e,Pe),na=iA(gr,Xt,Lt,0),Ia=H1(je,Rr,Br,Xt),ii=Ia[0],Wa=Ia[1];return Qx(ii,Wa,na)},C}(Fi);function Fv(k,C){return k.x*C.x+k.y*C.y}function q1(k,C){if(k.length===1){for(var V=0,oe=C[V++],_e;!_e||oe.equals(_e);)if(_e=C[V++],!_e)return 1/0;for(;V<C.length;V++){var Pe=C[V],je=k[0],ct=_e.sub(oe),Lt=Pe.sub(oe),Nt=je.sub(oe),Xt=Fv(ct,ct),gr=Fv(ct,Lt),Br=Fv(Lt,Lt),Rr=Fv(Nt,ct),na=Fv(Nt,Lt),Ia=Xt*Br-gr*gr,ii=(Br*Rr-gr*na)/Ia,Wa=(Xt*na-gr*Rr)/Ia,Si=1-ii-Wa,ci=oe.z*Si+_e.z*ii+Pe.z*Wa;if(isFinite(ci))return ci}return 1/0}else{for(var Ai=1/0,Li=0,Ki=C;Li<Ki.length;Li+=1){var kn=Ki[Li];Ai=Math.min(Ai,kn.z)}return Ai}}function Qx(k,C,V){var oe=1/0;wl(V,C)&&(oe=q1(V,C[0]));for(var _e=0;_e<C.length;_e++)for(var Pe=C[_e],je=k[_e],ct=0;ct<Pe.length-1;ct++){var Lt=Pe[ct],Nt=Pe[ct+1],Xt=je[ct],gr=je[ct+1],Br=[Lt,Nt,gr,Xt,Lt];qo(V,Br)&&(oe=Math.min(oe,q1(V,Br)))}return oe===1/0?!1:oe}function H1(k,C,V,oe){for(var _e=[],Pe=[],je=oe[8]*C,ct=oe[9]*C,Lt=oe[10]*C,Nt=oe[11]*C,Xt=oe[8]*V,gr=oe[9]*V,Br=oe[10]*V,Rr=oe[11]*V,na=0,Ia=k;na<Ia.length;na+=1){for(var ii=Ia[na],Wa=[],Si=[],ci=0,Ai=ii;ci<Ai.length;ci+=1){var Li=Ai[ci],Ki=Li.x,kn=Li.y,Tn=oe[0]*Ki+oe[4]*kn+oe[12],lo=oe[1]*Ki+oe[5]*kn+oe[13],qn=oe[2]*Ki+oe[6]*kn+oe[14],to=oe[3]*Ki+oe[7]*kn+oe[15],ds=Tn+je,uo=lo+ct,vo=qn+Lt,zs=to+Nt,cs=Tn+Xt,Tl=lo+gr,lu=qn+Br,Al=to+Rr,Sl=new i(ds/zs,uo/zs);Sl.z=vo/zs,Wa.push(Sl);var pl=new i(cs/Al,Tl/Al);pl.z=lu/Al,Si.push(pl)}_e.push(Wa),Pe.push(Si)}return[_e,Pe]}function iA(k,C,V,oe){for(var _e=[],Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=[ct.x,ct.y,oe,1];Rv(Lt,Lt,C),_e.push(new i(Lt[0]/Lt[3],Lt[1]/Lt[3]))}return _e}var eb=on([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),tb=eb.members,nA=on([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),rb=nA.members,G1=Zd.VectorTileFeature.types,L0=63,ab=Math.cos(75/2*(Math.PI/180)),Dg=15,W1=20,ib=15,P0=1/2,zg=Math.pow(2,ib-1)/P0,Mf=function(C){var V=this;this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(oe){return oe.id}),this.index=C.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(function(oe){V.gradients[oe.id]={}}),this.layoutVertexArray=new qi,this.layoutVertexArray2=new Dn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(function(oe){return oe.isStateDependent()}).map(function(oe){return oe.id})};Mf.prototype.populate=function(C,V,oe){this.hasPattern=k0("line",this.layers,V);for(var _e=this.layers[0].layout.get("line-sort-key"),Pe=[],je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.feature,Xt=Lt.id,gr=Lt.index,Br=Lt.sourceLayerIndex,Rr=this.layers[0]._featureFilter.needGeometry,na=ms(Nt,Rr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),na,oe)){var Ia=_e?_e.evaluate(na,{},oe):void 0,ii={id:Xt,properties:Nt.properties,type:Nt.type,sourceLayerIndex:Br,index:gr,geometry:Rr?na.geometry:zn(Nt),patterns:{},sortKey:Ia};Pe.push(ii)}}_e&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Wa=0,Si=Pe;Wa<Si.length;Wa+=1){var ci=Si[Wa],Ai=ci,Li=Ai.geometry,Ki=Ai.index,kn=Ai.sourceLayerIndex;if(this.hasPattern){var Tn=Pg("line",this.layers,ci,this.zoom,V);this.patternFeatures.push(Tn)}else this.addFeature(ci,Li,Ki,oe,{});var lo=C[Ki].feature;V.featureIndex.insert(lo,Li,Ki,kn,this.index)}},Mf.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},Mf.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.patternFeatures;_e<Pe.length;_e+=1){var je=Pe[_e];this.addFeature(je,je.geometry,je.index,V,oe)}},Mf.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Mf.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Mf.prototype.upload=function(C){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=C.createVertexBuffer(this.layoutVertexArray2,rb)),this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,tb),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},Mf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Mf.prototype.lineFeatureClips=function(C){if(C.properties&&C.properties.hasOwnProperty("mapbox_clip_start")&&C.properties.hasOwnProperty("mapbox_clip_end")){var V=+C.properties.mapbox_clip_start,oe=+C.properties.mapbox_clip_end;return{start:V,end:oe}}},Mf.prototype.addFeature=function(C,V,oe,_e,Pe){var je=this.layers[0].layout,ct=je.get("line-join").evaluate(C,{}),Lt=je.get("line-cap"),Nt=je.get("line-miter-limit"),Xt=je.get("line-round-limit");this.lineClips=this.lineFeatureClips(C);for(var gr=0,Br=V;gr<Br.length;gr+=1){var Rr=Br[gr];this.addLine(Rr,C,ct,Lt,Nt,Xt)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},Mf.prototype.addLine=function(C,V,oe,_e,Pe,je){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(var ct=0;ct<C.length-1;ct++)this.totalDistance+=C[ct].dist(C[ct+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}for(var Lt=G1[V.type]==="Polygon",Nt=C.length;Nt>=2&&C[Nt-1].equals(C[Nt-2]);)Nt--;for(var Xt=0;Xt<Nt-1&&C[Xt].equals(C[Xt+1]);)Xt++;if(!(Nt<(Lt?3:2))){oe==="bevel"&&(Pe=1.05);var gr=this.overscaling<=16?Dg*Ii/(512*this.overscaling):0,Br=this.segments.prepareSegment(Nt*10,this.layoutVertexArray,this.indexArray),Rr,na=void 0,Ia=void 0,ii=void 0,Wa=void 0;this.e1=this.e2=-1,Lt&&(Rr=C[Nt-2],Wa=C[Xt].sub(Rr)._unit()._perp());for(var Si=Xt;Si<Nt;Si++)if(Ia=Si===Nt-1?Lt?C[Xt+1]:void 0:C[Si+1],!(Ia&&C[Si].equals(Ia))){Wa&&(ii=Wa),Rr&&(na=Rr),Rr=C[Si],Wa=Ia?Ia.sub(Rr)._unit()._perp():ii,ii=ii||Wa;var ci=ii.add(Wa);(ci.x!==0||ci.y!==0)&&ci._unit();var Ai=ii.x*Wa.x+ii.y*Wa.y,Li=ci.x*Wa.x+ci.y*Wa.y,Ki=Li!==0?1/Li:1/0,kn=2*Math.sqrt(2-2*Li),Tn=Li<ab&&na&&Ia,lo=ii.x*Wa.y-ii.y*Wa.x>0;if(Tn&&Si>Xt){var qn=Rr.dist(na);if(qn>2*gr){var to=Rr.sub(Rr.sub(na)._mult(gr/qn)._round());this.updateDistance(na,to),this.addCurrentVertex(to,ii,0,0,Br),na=to}}var ds=na&&Ia,uo=ds?oe:Lt?"butt":_e;if(ds&&uo==="round"&&(Ki<je?uo="miter":Ki<=2&&(uo="fakeround")),uo==="miter"&&Ki>Pe&&(uo="bevel"),uo==="bevel"&&(Ki>2&&(uo="flipbevel"),Ki<Pe&&(uo="miter")),na&&this.updateDistance(na,Rr),uo==="miter")ci._mult(Ki),this.addCurrentVertex(Rr,ci,0,0,Br);else if(uo==="flipbevel"){if(Ki>100)ci=Wa.mult(-1);else{var vo=Ki*ii.add(Wa).mag()/ii.sub(Wa).mag();ci._perp()._mult(vo*(lo?-1:1))}this.addCurrentVertex(Rr,ci,0,0,Br),this.addCurrentVertex(Rr,ci.mult(-1),0,0,Br)}else if(uo==="bevel"||uo==="fakeround"){var zs=-Math.sqrt(Ki*Ki-1),cs=lo?zs:0,Tl=lo?0:zs;if(na&&this.addCurrentVertex(Rr,ii,cs,Tl,Br),uo==="fakeround")for(var lu=Math.round(kn*180/Math.PI/W1),Al=1;Al<lu;Al++){var Sl=Al/lu;if(Sl!==.5){var pl=Sl-.5,bu=1.0904+Ai*(-3.2452+Ai*(3.55645-Ai*1.43519)),Fu=.848013+Ai*(-1.06021+Ai*.215638);Sl=Sl+Sl*pl*(Sl-1)*(bu*pl*pl+Fu)}var Gc=Wa.sub(ii)._mult(Sl)._add(ii)._unit()._mult(lo?-1:1);this.addHalfVertex(Rr,Gc.x,Gc.y,!1,lo,0,Br)}Ia&&this.addCurrentVertex(Rr,Wa,-cs,-Tl,Br)}else if(uo==="butt")this.addCurrentVertex(Rr,ci,0,0,Br);else if(uo==="square"){var of=na?1:-1;this.addCurrentVertex(Rr,ci,of,of,Br)}else uo==="round"&&(na&&(this.addCurrentVertex(Rr,ii,0,0,Br),this.addCurrentVertex(Rr,ii,1,1,Br,!0)),Ia&&(this.addCurrentVertex(Rr,Wa,-1,-1,Br,!0),this.addCurrentVertex(Rr,Wa,0,0,Br)));if(Tn&&Si<Nt-1){var ih=Rr.dist(Ia);if(ih>2*gr){var Cf=Rr.add(Ia.sub(Rr)._mult(gr/ih)._round());this.updateDistance(Rr,Cf),this.addCurrentVertex(Cf,Wa,0,0,Br),Rr=Cf}}}}},Mf.prototype.addCurrentVertex=function(C,V,oe,_e,Pe,je){je===void 0&&(je=!1);var ct=V.x+V.y*oe,Lt=V.y-V.x*oe,Nt=-V.x+V.y*_e,Xt=-V.y-V.x*_e;this.addHalfVertex(C,ct,Lt,je,!1,oe,Pe),this.addHalfVertex(C,Nt,Xt,je,!0,-_e,Pe),this.distance>zg/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(C,V,oe,_e,Pe,je))},Mf.prototype.addHalfVertex=function(C,V,oe,_e,Pe,je,ct){var Lt=C.x,Nt=C.y,Xt=this.lineClips?this.scaledDistance*(zg-1):this.scaledDistance,gr=Xt*P0;if(this.layoutVertexArray.emplaceBack((Lt<<1)+(_e?1:0),(Nt<<1)+(Pe?1:0),Math.round(L0*V)+128,Math.round(L0*oe)+128,(je===0?0:je<0?-1:1)+1|(gr&63)<<2,gr>>6),this.lineClips){var Br=this.scaledDistance-this.lineClips.start,Rr=this.lineClips.end-this.lineClips.start,na=Br/Rr;this.layoutVertexArray2.emplaceBack(na,this.lineClipsArray.length)}var Ia=ct.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Ia),ct.primitiveLength++),Pe?this.e2=Ia:this.e1=Ia},Mf.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},Mf.prototype.updateDistance=function(C,V){this.distance+=C.dist(V),this.updateScaledDistance()},de("LineBucket",Mf,{omit:["layers","patternFeatures"]});var Z1=new xi({"line-cap":new Qt(fi.layout_line["line-cap"]),"line-join":new ra(fi.layout_line["line-join"]),"line-miter-limit":new Qt(fi.layout_line["line-miter-limit"]),"line-round-limit":new Qt(fi.layout_line["line-round-limit"]),"line-sort-key":new ra(fi.layout_line["line-sort-key"])}),X1=new xi({"line-opacity":new ra(fi.paint_line["line-opacity"]),"line-color":new ra(fi.paint_line["line-color"]),"line-translate":new Qt(fi.paint_line["line-translate"]),"line-translate-anchor":new Qt(fi.paint_line["line-translate-anchor"]),"line-width":new ra(fi.paint_line["line-width"]),"line-gap-width":new ra(fi.paint_line["line-gap-width"]),"line-offset":new ra(fi.paint_line["line-offset"]),"line-blur":new ra(fi.paint_line["line-blur"]),"line-dasharray":new si(fi.paint_line["line-dasharray"]),"line-pattern":new Ta(fi.paint_line["line-pattern"]),"line-gradient":new wi(fi.paint_line["line-gradient"])}),I0={paint:X1,layout:Z1},oA=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e){return _e=new Vi(Math.floor(_e.zoom),{now:_e.now,fadeDuration:_e.fadeDuration,zoomHistory:_e.zoomHistory,transition:_e.transition}),k.prototype.possiblyEvaluate.call(this,oe,_e)},C.prototype.evaluate=function(oe,_e,Pe,je){return _e=m({},_e,{zoom:Math.floor(_e.zoom)}),k.prototype.evaluate.call(this,oe,_e,Pe,je)},C}(ra),q=new oA(I0.paint.properties["line-width"].specification);q.useIntegerZoom=!0;var D=function(k){function C(V){k.call(this,V,I0),this.gradientVersion=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._handleSpecialPaintPropertyUpdate=function(oe){if(oe==="line-gradient"){var _e=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=_e._styleExpression.expression instanceof vu,this.gradientVersion=(this.gradientVersion+1)%h}},C.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e),this.paint._values["line-floorwidth"]=q.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,oe)},C.prototype.createBucket=function(oe){return new Mf(oe)},C.prototype.queryRadius=function(oe){var _e=oe,Pe=Y(Ch("line-width",this,_e),Ch("line-gap-width",this,_e)),je=Ch("line-offset",this,_e);return Pe/2+Math.abs(je)+Mp(this.paint.get("line-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Lt.angle,Nt),gr=Nt/2*Y(this.paint.get("line-width").evaluate(_e,Pe),this.paint.get("line-gap-width").evaluate(_e,Pe)),Br=this.paint.get("line-offset").evaluate(_e,Pe);return Br&&(je=pe(je,Br*Nt)),Ru(Xt,je,gr)},C.prototype.isTileClipped=function(){return!0},C}(Fi);function Y(k,C){return C>0?C+2*k:k}function pe(k,C){for(var V=[],oe=new i(0,0),_e=0;_e<k.length;_e++){for(var Pe=k[_e],je=[],ct=0;ct<Pe.length;ct++){var Lt=Pe[ct-1],Nt=Pe[ct],Xt=Pe[ct+1],gr=ct===0?oe:Nt.sub(Lt)._unit()._perp(),Br=ct===Pe.length-1?oe:Xt.sub(Nt)._unit()._perp(),Rr=gr._add(Br)._unit(),na=Rr.x*Br.x+Rr.y*Br.y;Rr._mult(1/na),je.push(Rr._mult(C)._add(Nt))}V.push(je)}return V}var Ce=on([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),Ue=on([{name:"a_projected_pos",components:3,type:"Float32"}],4),Ge=on([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),ut=on([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Tt=on([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]),Ft=on([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),$t=on([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4),lr=on([{name:"triangle",components:3,type:"Uint16"}]),Ar=on([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),zr=on([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),Kr=on([{type:"Float32",name:"offsetX"}]),la=on([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);function za(k,C,V){var oe=C.layout.get("text-transform").evaluate(V,{});return oe==="uppercase"?k=k.toLocaleUpperCase():oe==="lowercase"&&(k=k.toLocaleLowerCase()),Gs.applyArabicShaping&&(k=Gs.applyArabicShaping(k)),k}function ja(k,C,V){return k.sections.forEach(function(oe){oe.text=za(oe.text,C,V)}),k}function gi(k){var C={},V={},oe=[],_e=0;function Pe(Wa){oe.push(k[Wa]),_e++}function je(Wa,Si,ci){var Ai=V[Wa];return delete V[Wa],V[Si]=Ai,oe[Ai].geometry[0].pop(),oe[Ai].geometry[0]=oe[Ai].geometry[0].concat(ci[0]),Ai}function ct(Wa,Si,ci){var Ai=C[Si];return delete C[Si],C[Wa]=Ai,oe[Ai].geometry[0].shift(),oe[Ai].geometry[0]=ci[0].concat(oe[Ai].geometry[0]),Ai}function Lt(Wa,Si,ci){var Ai=ci?Si[0][Si[0].length-1]:Si[0][0];return Wa+":"+Ai.x+":"+Ai.y}for(var Nt=0;Nt<k.length;Nt++){var Xt=k[Nt],gr=Xt.geometry,Br=Xt.text?Xt.text.toString():null;if(!Br){Pe(Nt);continue}var Rr=Lt(Br,gr),na=Lt(Br,gr,!0);if(Rr in V&&na in C&&V[Rr]!==C[na]){var Ia=ct(Rr,na,gr),ii=je(Rr,na,oe[Ia].geometry);delete C[Rr],delete V[na],V[Lt(Br,oe[ii].geometry,!0)]=ii,oe[Ia].geometry=null}else Rr in V?je(Rr,na,gr):na in C?ct(Rr,na,gr):(Pe(Nt),C[Rr]=_e-1,V[na]=_e-1)}return oe.filter(function(Wa){return Wa.geometry})}var ei={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function hi(k){for(var C="",V=0;V<k.length;V++){var oe=k.charCodeAt(V+1)||null,_e=k.charCodeAt(V-1)||null,Pe=(!oe||!Xa(oe)||ei[k[V+1]])&&(!_e||!Xa(_e)||ei[k[V-1]]);Pe&&ei[k[V]]?C+=ei[k[V]]:C+=k[V]}return C}var Ei=24,En=function(k,C,V,oe,_e){var Pe,je,ct=_e*8-oe-1,Lt=(1<<ct)-1,Nt=Lt>>1,Xt=-7,gr=V?_e-1:0,Br=V?-1:1,Rr=k[C+gr];for(gr+=Br,Pe=Rr&(1<<-Xt)-1,Rr>>=-Xt,Xt+=ct;Xt>0;Pe=Pe*256+k[C+gr],gr+=Br,Xt-=8);for(je=Pe&(1<<-Xt)-1,Pe>>=-Xt,Xt+=oe;Xt>0;je=je*256+k[C+gr],gr+=Br,Xt-=8);if(Pe===0)Pe=1-Nt;else{if(Pe===Lt)return je?NaN:(Rr?-1:1)*(1/0);je=je+Math.pow(2,oe),Pe=Pe-Nt}return(Rr?-1:1)*je*Math.pow(2,Pe-oe)},fo=function(k,C,V,oe,_e,Pe){var je,ct,Lt,Nt=Pe*8-_e-1,Xt=(1<<Nt)-1,gr=Xt>>1,Br=_e===23?Math.pow(2,-24)-Math.pow(2,-77):0,Rr=oe?0:Pe-1,na=oe?1:-1,Ia=C<0||C===0&&1/C<0?1:0;for(C=Math.abs(C),isNaN(C)||C===1/0?(ct=isNaN(C)?1:0,je=Xt):(je=Math.floor(Math.log(C)/Math.LN2),C*(Lt=Math.pow(2,-je))<1&&(je--,Lt*=2),je+gr>=1?C+=Br/Lt:C+=Br*Math.pow(2,1-gr),C*Lt>=2&&(je++,Lt/=2),je+gr>=Xt?(ct=0,je=Xt):je+gr>=1?(ct=(C*Lt-1)*Math.pow(2,_e),je=je+gr):(ct=C*Math.pow(2,gr-1)*Math.pow(2,_e),je=0));_e>=8;k[V+Rr]=ct&255,Rr+=na,ct/=256,_e-=8);for(je=je<<_e|ct,Nt+=_e;Nt>0;k[V+Rr]=je&255,Rr+=na,je/=256,Nt-=8);k[V+Rr-na]|=Ia*128},ss={read:En,write:fo},eo=vn;function vn(k){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(k)?k:new Uint8Array(k||0),this.pos=0,this.type=0,this.length=this.buf.length}vn.Varint=0,vn.Fixed64=1,vn.Bytes=2,vn.Fixed32=5;var Uo=65536*65536,Mo=1/Uo,xo=12,Yi=typeof TextDecoder>"u"?null:new TextDecoder("utf8");vn.prototype={destroy:function(){this.buf=null},readFields:function(k,C,V){for(V=V||this.length;this.pos<V;){var oe=this.readVarint(),_e=oe>>3,Pe=this.pos;this.type=oe&7,k(_e,C,this),this.pos===Pe&&this.skip(oe)}return C},readMessage:function(k,C){return this.readFields(k,C,this.readVarint()+this.pos)},readFixed32:function(){var k=th(this.buf,this.pos);return this.pos+=4,k},readSFixed32:function(){var k=Lp(this.buf,this.pos);return this.pos+=4,k},readFixed64:function(){var k=th(this.buf,this.pos)+th(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readSFixed64:function(){var k=th(this.buf,this.pos)+Lp(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readFloat:function(){var k=ss.read(this.buf,this.pos,!0,23,4);return this.pos+=4,k},readDouble:function(){var k=ss.read(this.buf,this.pos,!0,52,8);return this.pos+=8,k},readVarint:function(k){var C=this.buf,V,oe;return oe=C[this.pos++],V=oe&127,oe<128||(oe=C[this.pos++],V|=(oe&127)<<7,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<14,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<21,oe<128)?V:(oe=C[this.pos],V|=(oe&15)<<28,Ko(V,k,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var k=this.readVarint();return k%2===1?(k+1)/-2:k/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var k=this.readVarint()+this.pos,C=this.pos;return this.pos=k,k-C>=xo&&Yi?Nl(this.buf,C,k):pp(this.buf,C,k)},readBytes:function(){var k=this.readVarint()+this.pos,C=this.buf.subarray(this.pos,k);return this.pos=k,C},readPackedVarint:function(k,C){if(this.type!==vn.Bytes)return k.push(this.readVarint(C));var V=bo(this);for(k=k||[];this.pos<V;)k.push(this.readVarint(C));return k},readPackedSVarint:function(k){if(this.type!==vn.Bytes)return k.push(this.readSVarint());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSVarint());return k},readPackedBoolean:function(k){if(this.type!==vn.Bytes)return k.push(this.readBoolean());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readBoolean());return k},readPackedFloat:function(k){if(this.type!==vn.Bytes)return k.push(this.readFloat());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFloat());return k},readPackedDouble:function(k){if(this.type!==vn.Bytes)return k.push(this.readDouble());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readDouble());return k},readPackedFixed32:function(k){if(this.type!==vn.Bytes)return k.push(this.readFixed32());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFixed32());return k},readPackedSFixed32:function(k){if(this.type!==vn.Bytes)return k.push(this.readSFixed32());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSFixed32());return k},readPackedFixed64:function(k){if(this.type!==vn.Bytes)return k.push(this.readFixed64());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFixed64());return k},readPackedSFixed64:function(k){if(this.type!==vn.Bytes)return k.push(this.readSFixed64());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSFixed64());return k},skip:function(k){var C=k&7;if(C===vn.Varint)for(;this.buf[this.pos++]>127;);else if(C===vn.Bytes)this.pos=this.readVarint()+this.pos;else if(C===vn.Fixed32)this.pos+=4;else if(C===vn.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+C)},writeTag:function(k,C){this.writeVarint(k<<3|C)},realloc:function(k){for(var C=this.length||16;C<this.pos+k;)C*=2;if(C!==this.length){var V=new Uint8Array(C);V.set(this.buf),this.buf=V,this.length=C}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(k){this.realloc(4),nf(this.buf,k,this.pos),this.pos+=4},writeSFixed32:function(k){this.realloc(4),nf(this.buf,k,this.pos),this.pos+=4},writeFixed64:function(k){this.realloc(8),nf(this.buf,k&-1,this.pos),nf(this.buf,Math.floor(k*Mo),this.pos+4),this.pos+=8},writeSFixed64:function(k){this.realloc(8),nf(this.buf,k&-1,this.pos),nf(this.buf,Math.floor(k*Mo),this.pos+4),this.pos+=8},writeVarint:function(k){if(k=+k||0,k>268435455||k<0){_u(k,this);return}this.realloc(4),this.buf[this.pos++]=k&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=k>>>7&127)))},writeSVarint:function(k){this.writeVarint(k<0?-k*2-1:k*2)},writeBoolean:function(k){this.writeVarint(!!k)},writeString:function(k){k=String(k),this.realloc(k.length*4),this.pos++;var C=this.pos;this.pos=zu(this.buf,k,this.pos);var V=this.pos-C;V>=128&&Gp(C,V,this),this.pos=C-1,this.writeVarint(V),this.pos+=V},writeFloat:function(k){this.realloc(4),ss.write(this.buf,k,this.pos,!0,23,4),this.pos+=4},writeDouble:function(k){this.realloc(8),ss.write(this.buf,k,this.pos,!0,52,8),this.pos+=8},writeBytes:function(k){var C=k.length;this.writeVarint(C),this.realloc(C);for(var V=0;V<C;V++)this.buf[this.pos++]=k[V]},writeRawMessage:function(k,C){this.pos++;var V=this.pos;k(C,this);var oe=this.pos-V;oe>=128&&Gp(V,oe,this),this.pos=V-1,this.writeVarint(oe),this.pos+=oe},writeMessage:function(k,C,V){this.writeTag(k,vn.Bytes),this.writeRawMessage(C,V)},writePackedVarint:function(k,C){C.length&&this.writeMessage(k,dh,C)},writePackedSVarint:function(k,C){C.length&&this.writeMessage(k,Nf,C)},writePackedBoolean:function(k,C){C.length&&this.writeMessage(k,Jh,C)},writePackedFloat:function(k,C){C.length&&this.writeMessage(k,Yh,C)},writePackedDouble:function(k,C){C.length&&this.writeMessage(k,Kh,C)},writePackedFixed32:function(k,C){C.length&&this.writeMessage(k,Hc,C)},writePackedSFixed32:function(k,C){C.length&&this.writeMessage(k,Uf,C)},writePackedFixed64:function(k,C){C.length&&this.writeMessage(k,Ih,C)},writePackedSFixed64:function(k,C){C.length&&this.writeMessage(k,vh,C)},writeBytesField:function(k,C){this.writeTag(k,vn.Bytes),this.writeBytes(C)},writeFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFixed32(C)},writeSFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeSFixed32(C)},writeFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeFixed64(C)},writeSFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeSFixed64(C)},writeVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeVarint(C)},writeSVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeSVarint(C)},writeStringField:function(k,C){this.writeTag(k,vn.Bytes),this.writeString(C)},writeFloatField:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFloat(C)},writeDoubleField:function(k,C){this.writeTag(k,vn.Fixed64),this.writeDouble(C)},writeBooleanField:function(k,C){this.writeVarintField(k,!!C)}};function Ko(k,C,V){var oe=V.buf,_e,Pe;if(Pe=oe[V.pos++],_e=(Pe&112)>>4,Pe<128||(Pe=oe[V.pos++],_e|=(Pe&127)<<3,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<10,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<17,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<24,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&1)<<31,Pe<128))return gs(k,_e,C);throw new Error("Expected varint not more than 10 bytes")}function bo(k){return k.type===vn.Bytes?k.readVarint()+k.pos:k.pos+1}function gs(k,C,V){return V?C*4294967296+(k>>>0):(C>>>0)*4294967296+(k>>>0)}function _u(k,C){var V,oe;if(k>=0?(V=k%4294967296|0,oe=k/4294967296|0):(V=~(-k%4294967296),oe=~(-k/4294967296),V^4294967295?V=V+1|0:(V=0,oe=oe+1|0)),k>=18446744073709552e3||k<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");C.realloc(10),pu(V,oe,C),Bf(oe,C)}function pu(k,C,V){V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos]=k&127}function Bf(k,C){var V=(k&7)<<4;C.buf[C.pos++]|=V|((k>>>=3)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127)))))}function Gp(k,C,V){var oe=C<=16383?1:C<=2097151?2:C<=268435455?3:Math.floor(Math.log(C)/(Math.LN2*7));V.realloc(oe);for(var _e=V.pos-1;_e>=k;_e--)V.buf[_e+oe]=V.buf[_e]}function dh(k,C){for(var V=0;V<k.length;V++)C.writeVarint(k[V])}function Nf(k,C){for(var V=0;V<k.length;V++)C.writeSVarint(k[V])}function Yh(k,C){for(var V=0;V<k.length;V++)C.writeFloat(k[V])}function Kh(k,C){for(var V=0;V<k.length;V++)C.writeDouble(k[V])}function Jh(k,C){for(var V=0;V<k.length;V++)C.writeBoolean(k[V])}function Hc(k,C){for(var V=0;V<k.length;V++)C.writeFixed32(k[V])}function Uf(k,C){for(var V=0;V<k.length;V++)C.writeSFixed32(k[V])}function Ih(k,C){for(var V=0;V<k.length;V++)C.writeFixed64(k[V])}function vh(k,C){for(var V=0;V<k.length;V++)C.writeSFixed64(k[V])}function th(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+k[C+3]*16777216}function nf(k,C,V){k[V]=C,k[V+1]=C>>>8,k[V+2]=C>>>16,k[V+3]=C>>>24}function Lp(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+(k[C+3]<<24)}function pp(k,C,V){for(var oe="",_e=C;_e<V;){var Pe=k[_e],je=null,ct=Pe>239?4:Pe>223?3:Pe>191?2:1;if(_e+ct>V)break;var Lt,Nt,Xt;ct===1?Pe<128&&(je=Pe):ct===2?(Lt=k[_e+1],(Lt&192)===128&&(je=(Pe&31)<<6|Lt&63,je<=127&&(je=null))):ct===3?(Lt=k[_e+1],Nt=k[_e+2],(Lt&192)===128&&(Nt&192)===128&&(je=(Pe&15)<<12|(Lt&63)<<6|Nt&63,(je<=2047||je>=55296&&je<=57343)&&(je=null))):ct===4&&(Lt=k[_e+1],Nt=k[_e+2],Xt=k[_e+3],(Lt&192)===128&&(Nt&192)===128&&(Xt&192)===128&&(je=(Pe&15)<<18|(Lt&63)<<12|(Nt&63)<<6|Xt&63,(je<=65535||je>=1114112)&&(je=null))),je===null?(je=65533,ct=1):je>65535&&(je-=65536,oe+=String.fromCharCode(je>>>10&1023|55296),je=56320|je&1023),oe+=String.fromCharCode(je),_e+=ct}return oe}function Nl(k,C,V){return Yi.decode(k.subarray(C,V))}function zu(k,C,V){for(var oe=0,_e,Pe;oe<C.length;oe++){if(_e=C.charCodeAt(oe),_e>55295&&_e<57344)if(Pe)if(_e<56320){k[V++]=239,k[V++]=191,k[V++]=189,Pe=_e;continue}else _e=Pe-55296<<10|_e-56320|65536,Pe=null;else{_e>56319||oe+1===C.length?(k[V++]=239,k[V++]=191,k[V++]=189):Pe=_e;continue}else Pe&&(k[V++]=239,k[V++]=191,k[V++]=189,Pe=null);_e<128?k[V++]=_e:(_e<2048?k[V++]=_e>>6|192:(_e<65536?k[V++]=_e>>12|224:(k[V++]=_e>>18|240,k[V++]=_e>>12&63|128),k[V++]=_e>>6&63|128),k[V++]=_e&63|128)}return V}var xu=3;function Pp(k,C,V){k===1&&V.readMessage(Ec,C)}function Ec(k,C,V){if(k===3){var oe=V.readMessage(dm,{}),_e=oe.id,Pe=oe.bitmap,je=oe.width,ct=oe.height,Lt=oe.left,Nt=oe.top,Xt=oe.advance;C.push({id:_e,bitmap:new Cp({width:je+2*xu,height:ct+2*xu},Pe),metrics:{width:je,height:ct,left:Lt,top:Nt,advance:Xt}})}}function dm(k,C,V){k===1?C.id=V.readVarint():k===2?C.bitmap=V.readBytes():k===3?C.width=V.readVarint():k===4?C.height=V.readVarint():k===5?C.left=V.readSVarint():k===6?C.top=V.readSVarint():k===7&&(C.advance=V.readVarint())}function _d(k){return new eo(k).readFields(Pp,[])}var hd=xu;function Wp(k){for(var C=0,V=0,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe];C+=Pe.w*Pe.h,V=Math.max(V,Pe.w)}k.sort(function(ii,Wa){return Wa.h-ii.h});for(var je=Math.max(Math.ceil(Math.sqrt(C/.95)),V),ct=[{x:0,y:0,w:je,h:1/0}],Lt=0,Nt=0,Xt=0,gr=k;Xt<gr.length;Xt+=1)for(var Br=gr[Xt],Rr=ct.length-1;Rr>=0;Rr--){var na=ct[Rr];if(!(Br.w>na.w||Br.h>na.h)){if(Br.x=na.x,Br.y=na.y,Nt=Math.max(Nt,Br.y+Br.h),Lt=Math.max(Lt,Br.x+Br.w),Br.w===na.w&&Br.h===na.h){var Ia=ct.pop();Rr<ct.length&&(ct[Rr]=Ia)}else Br.h===na.h?(na.x+=Br.w,na.w-=Br.w):Br.w===na.w?(na.y+=Br.h,na.h-=Br.h):(ct.push({x:na.x+Br.w,y:na.y,w:na.w-Br.w,h:Br.h}),na.y+=Br.h,na.h-=Br.h);break}}return{w:Lt,h:Nt,fill:C/(Lt*Nt)||0}}var tc=1,gf=function(C,V){var oe=V.pixelRatio,_e=V.version,Pe=V.stretchX,je=V.stretchY,ct=V.content;this.paddedRect=C,this.pixelRatio=oe,this.stretchX=Pe,this.stretchY=je,this.content=ct,this.version=_e},Zp={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};Zp.tl.get=function(){return[this.paddedRect.x+tc,this.paddedRect.y+tc]},Zp.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-tc,this.paddedRect.y+this.paddedRect.h-tc]},Zp.tlbr.get=function(){return this.tl.concat(this.br)},Zp.displaySize.get=function(){return[(this.paddedRect.w-tc*2)/this.pixelRatio,(this.paddedRect.h-tc*2)/this.pixelRatio]},Object.defineProperties(gf.prototype,Zp);var Xd=function(C,V){var oe={},_e={};this.haveRenderCallbacks=[];var Pe=[];this.addImages(C,oe,Pe),this.addImages(V,_e,Pe);var je=Wp(Pe),ct=je.w,Lt=je.h,Nt=new Of({width:ct||1,height:Lt||1});for(var Xt in C){var gr=C[Xt],Br=oe[Xt].paddedRect;Of.copy(gr.data,Nt,{x:0,y:0},{x:Br.x+tc,y:Br.y+tc},gr.data)}for(var Rr in V){var na=V[Rr],Ia=_e[Rr].paddedRect,ii=Ia.x+tc,Wa=Ia.y+tc,Si=na.data.width,ci=na.data.height;Of.copy(na.data,Nt,{x:0,y:0},{x:ii,y:Wa},na.data),Of.copy(na.data,Nt,{x:0,y:ci-1},{x:ii,y:Wa-1},{width:Si,height:1}),Of.copy(na.data,Nt,{x:0,y:0},{x:ii,y:Wa+ci},{width:Si,height:1}),Of.copy(na.data,Nt,{x:Si-1,y:0},{x:ii-1,y:Wa},{width:1,height:ci}),Of.copy(na.data,Nt,{x:0,y:0},{x:ii+Si,y:Wa},{width:1,height:ci})}this.image=Nt,this.iconPositions=oe,this.patternPositions=_e};Xd.prototype.addImages=function(C,V,oe){for(var _e in C){var Pe=C[_e],je={x:0,y:0,w:Pe.data.width+2*tc,h:Pe.data.height+2*tc};oe.push(je),V[_e]=new gf(je,Pe),Pe.hasRenderCallback&&this.haveRenderCallbacks.push(_e)}},Xd.prototype.patchUpdatedImages=function(C,V){C.dispatchRenderCallbacks(this.haveRenderCallbacks);for(var oe in C.updatedImages)this.patchUpdatedImage(this.iconPositions[oe],C.getImage(oe),V),this.patchUpdatedImage(this.patternPositions[oe],C.getImage(oe),V)},Xd.prototype.patchUpdatedImage=function(C,V,oe){if(!(!C||!V)&&C.version!==V.version){C.version=V.version;var _e=C.tl,Pe=_e[0],je=_e[1];oe.update(V.data,void 0,{x:Pe,y:je})}},de("ImagePosition",gf),de("ImageAtlas",Xd);var dp={horizontal:1,vertical:2,horizontalOnly:3},vm=-17;function Y1(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(oe.positionedGlyphs.length!==0)return!1}return!0}var R0=57344,xd=63743,Ov=function(){this.scale=1,this.fontStack="",this.imageName=null};Ov.forText=function(C,V){var oe=new Ov;return oe.scale=C||1,oe.fontStack=V,oe},Ov.forImage=function(C){var V=new Ov;return V.imageName=C,V};var rh=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};rh.fromFeature=function(C,V){for(var oe=new rh,_e=0;_e<C.sections.length;_e++){var Pe=C.sections[_e];Pe.image?oe.addImageSection(Pe):oe.addTextSection(Pe,V)}return oe},rh.prototype.length=function(){return this.text.length},rh.prototype.getSection=function(C){return this.sections[this.sectionIndex[C]]},rh.prototype.getSectionIndex=function(C){return this.sectionIndex[C]},rh.prototype.getCharCode=function(C){return this.text.charCodeAt(C)},rh.prototype.verticalizePunctuation=function(){this.text=hi(this.text)},rh.prototype.trim=function(){for(var C=0,V=0;V<this.text.length&&bd[this.text.charCodeAt(V)];V++)C++;for(var oe=this.text.length,_e=this.text.length-1;_e>=0&&_e>=C&&bd[this.text.charCodeAt(_e)];_e--)oe--;this.text=this.text.substring(C,oe),this.sectionIndex=this.sectionIndex.slice(C,oe)},rh.prototype.substring=function(C,V){var oe=new rh;return oe.text=this.text.substring(C,V),oe.sectionIndex=this.sectionIndex.slice(C,V),oe.sections=this.sections,oe},rh.prototype.toString=function(){return this.text},rh.prototype.getMaxScale=function(){var C=this;return this.sectionIndex.reduce(function(V,oe){return Math.max(V,C.sections[oe].scale)},0)},rh.prototype.addTextSection=function(C,V){this.text+=C.text,this.sections.push(Ov.forText(C.scale,C.fontStack||V));for(var oe=this.sections.length-1,_e=0;_e<C.text.length;++_e)this.sectionIndex.push(oe)},rh.prototype.addImageSection=function(C){var V=C.image?C.image.name:"";if(V.length===0){U("Can't add FormattedSection with an empty image.");return}var oe=this.getNextImageSectionCharCode();if(!oe){U("Reached maximum number of images "+(xd-R0+2));return}this.text+=String.fromCharCode(oe),this.sections.push(Ov.forImage(V)),this.sectionIndex.push(this.sections.length-1)},rh.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=xd?null:++this.imageSectionID:(this.imageSectionID=R0,this.imageSectionID)};function sA(k,C){for(var V=[],oe=k.text,_e=0,Pe=0,je=C;Pe<je.length;Pe+=1){var ct=je[Pe];V.push(k.substring(_e,ct)),_e=ct}return _e<oe.length&&V.push(k.substring(_e,oe.length)),V}function D0(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=rh.fromFeature(k,_e);gr===dp.vertical&&ii.verticalizePunctuation();var Wa,Si=Gs.processBidirectionalText,ci=Gs.processStyledBidirectionalText;if(Si&&ii.sections.length===1){Wa=[];for(var Ai=Si(ii.toString(),z0(ii,Nt,Pe,C,oe,Rr,na)),Li=0,Ki=Ai;Li<Ki.length;Li+=1){var kn=Ki[Li],Tn=new rh;Tn.text=kn,Tn.sections=ii.sections;for(var lo=0;lo<kn.length;lo++)Tn.sectionIndex.push(0);Wa.push(Tn)}}else if(ci){Wa=[];for(var qn=ci(ii.text,ii.sectionIndex,z0(ii,Nt,Pe,C,oe,Rr,na)),to=0,ds=qn;to<ds.length;to+=1){var uo=ds[to],vo=new rh;vo.text=uo[0],vo.sectionIndex=uo[1],vo.sections=ii.sections,Wa.push(vo)}}else Wa=sA(ii,z0(ii,Nt,Pe,C,oe,Rr,na));var zs=[],cs={positionedLines:zs,text:ii.toString(),top:Xt[1],bottom:Xt[1],left:Xt[0],right:Xt[0],writingMode:gr,iconsInText:!1,verticalizable:!1};return cA(cs,C,V,oe,Wa,je,ct,Lt,gr,Nt,Br,Ia),Y1(zs)?!1:cs}var bd={};bd[9]=!0,bd[10]=!0,bd[11]=!0,bd[12]=!0,bd[13]=!0,bd[32]=!0;var vp={};vp[10]=!0,vp[32]=!0,vp[38]=!0,vp[40]=!0,vp[41]=!0,vp[43]=!0,vp[45]=!0,vp[47]=!0,vp[173]=!0,vp[183]=!0,vp[8203]=!0,vp[8208]=!0,vp[8211]=!0,vp[8231]=!0;function nb(k,C,V,oe,_e,Pe){if(C.imageName){var Lt=oe[C.imageName];return Lt?Lt.displaySize[0]*C.scale*Ei/Pe+_e:0}else{var je=V[C.fontStack],ct=je&&je[k];return ct?ct.metrics.advance*C.scale+_e:0}}function lA(k,C,V,oe,_e,Pe){for(var je=0,ct=0;ct<k.length();ct++){var Lt=k.getSection(ct);je+=nb(k.getCharCode(ct),Lt,oe,_e,C,Pe)}var Nt=Math.max(1,Math.ceil(je/V));return je/Nt}function ob(k,C,V,oe){var _e=Math.pow(k-C,2);return oe?k<C?_e/2:_e*2:_e+Math.abs(V)*V}function uA(k,C,V){var oe=0;return k===10&&(oe-=1e4),V&&(oe+=150),(k===40||k===65288)&&(oe+=50),(C===41||C===65289)&&(oe+=50),oe}function id(k,C,V,oe,_e,Pe){for(var je=null,ct=ob(C,V,_e,Pe),Lt=0,Nt=oe;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt],gr=C-Xt.x,Br=ob(gr,V,_e,Pe)+Xt.badness;Br<=ct&&(je=Xt,ct=Br)}return{index:k,x:C,priorBreak:je,badness:ct}}function Fg(k){return k?Fg(k.priorBreak).concat(k.index):[]}function z0(k,C,V,oe,_e,Pe,je){if(Pe!=="point")return[];if(!k)return[];for(var ct=[],Lt=lA(k,C,V,oe,_e,je),Nt=k.text.indexOf("\u200B")>=0,Xt=0,gr=0;gr<k.length();gr++){var Br=k.getSection(gr),Rr=k.getCharCode(gr);if(bd[Rr]||(Xt+=nb(Rr,Br,oe,_e,C,je)),gr<k.length()-1){var na=va(Rr);(vp[Rr]||na||Br.imageName)&&ct.push(id(gr+1,Xt,Lt,ct,uA(Rr,k.getCharCode(gr+1),na&&Nt),!1))}}return Fg(id(k.length(),Xt,Lt,ct,0,!0))}function K1(k){var C=.5,V=.5;switch(k){case"right":case"top-right":case"bottom-right":C=1;break;case"left":case"top-left":case"bottom-left":C=0;break}switch(k){case"bottom":case"bottom-right":case"bottom-left":V=1;break;case"top":case"top-right":case"top-left":V=0;break}return{horizontalAlign:C,verticalAlign:V}}function cA(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){for(var Br=0,Rr=vm,na=0,Ia=0,ii=ct==="right"?1:ct==="left"?0:.5,Wa=0,Si=0,ci=_e;Si<ci.length;Si+=1){var Ai=ci[Si];Ai.trim();var Li=Ai.getMaxScale(),Ki=(Li-1)*Ei,kn={positionedGlyphs:[],lineOffset:0};k.positionedLines[Wa]=kn;var Tn=kn.positionedGlyphs,lo=0;if(!Ai.length()){Rr+=Pe,++Wa;continue}for(var qn=0;qn<Ai.length();qn++){var to=Ai.getSection(qn),ds=Ai.getSectionIndex(qn),uo=Ai.getCharCode(qn),vo=0,zs=null,cs=null,Tl=null,lu=Ei,Al=!(Lt===dp.horizontal||!Xt&&!fa(uo)||Xt&&(bd[uo]||_a(uo)));if(to.imageName){var Gc=oe[to.imageName];if(!Gc)continue;Tl=to.imageName,k.iconsInText=k.iconsInText||!0,cs=Gc.paddedRect;var of=Gc.displaySize;to.scale=to.scale*Ei/gr,zs={width:of[0],height:of[1],left:tc,top:-hd,advance:Al?of[1]:of[0]};var ih=Ei-of[1]*to.scale;vo=Ki+ih,lu=zs.advance;var Cf=Al?of[0]*to.scale-Ei*Li:of[1]*to.scale-Ei*Li;Cf>0&&Cf>lo&&(lo=Cf)}else{var Sl=V[to.fontStack],pl=Sl&&Sl[uo];if(pl&&pl.rect)cs=pl.rect,zs=pl.metrics;else{var bu=C[to.fontStack],Fu=bu&&bu[uo];if(!Fu)continue;zs=Fu.metrics}vo=(Li-to.scale)*Ei}Al?(k.verticalizable=!0,Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=lu*to.scale+Nt):(Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=zs.advance*to.scale+Nt)}if(Tn.length!==0){var Qh=Br-Nt;na=Math.max(Qh,na),fA(Tn,0,Tn.length-1,ii,lo)}Br=0;var ep=Pe*Li+lo;kn.lineOffset=Math.max(lo,Ki),Rr+=ep,Ia=Math.max(ep,Ia),++Wa}var nh=Rr-vm,mp=K1(je),gp=mp.horizontalAlign,jf=mp.verticalAlign;Rh(k.positionedLines,ii,gp,jf,na,Ia,Pe,nh,_e.length),k.top+=-jf*nh,k.bottom=k.top+nh,k.left+=-gp*na,k.right=k.left+na}function fA(k,C,V,oe,_e){if(!(!oe&&!_e))for(var Pe=k[V],je=Pe.metrics.advance*Pe.scale,ct=(k[V].x+je)*oe,Lt=C;Lt<=V;Lt++)k[Lt].x-=ct,k[Lt].y+=_e}function Rh(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=(C-V)*_e,Xt=0;Pe!==je?Xt=-ct*oe-vm:Xt=(-oe*Lt+.5)*je;for(var gr=0,Br=k;gr<Br.length;gr+=1)for(var Rr=Br[gr],na=0,Ia=Rr.positionedGlyphs;na<Ia.length;na+=1){var ii=Ia[na];ii.x+=Nt,ii.y+=Xt}}function Xp(k,C,V){var oe=K1(V),_e=oe.horizontalAlign,Pe=oe.verticalAlign,je=C[0],ct=C[1],Lt=je-k.displaySize[0]*_e,Nt=Lt+k.displaySize[0],Xt=ct-k.displaySize[1]*Pe,gr=Xt+k.displaySize[1];return{image:k,top:Xt,bottom:gr,left:Lt,right:Nt}}function dv(k,C,V,oe,_e,Pe){var je=k.image,ct;if(je.content){var Lt=je.content,Nt=je.pixelRatio||1;ct=[Lt[0]/Nt,Lt[1]/Nt,je.displaySize[0]-Lt[2]/Nt,je.displaySize[1]-Lt[3]/Nt]}var Xt=C.left*Pe,gr=C.right*Pe,Br,Rr,na,Ia;V==="width"||V==="both"?(Ia=_e[0]+Xt-oe[3],Rr=_e[0]+gr+oe[1]):(Ia=_e[0]+(Xt+gr-je.displaySize[0])/2,Rr=Ia+je.displaySize[0]);var ii=C.top*Pe,Wa=C.bottom*Pe;return V==="height"||V==="both"?(Br=_e[1]+ii-oe[0],na=_e[1]+Wa+oe[2]):(Br=_e[1]+(ii+Wa-je.displaySize[1])/2,na=Br+je.displaySize[1]),{image:je,top:Br,right:Rr,bottom:na,left:Ia,collisionPadding:ct}}var $h=function(k){function C(V,oe,_e,Pe){k.call(this,V,oe),this.angle=_e,Pe!==void 0&&(this.segment=Pe)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.clone=function(){return new C(this.x,this.y,this.angle,this.segment)},C}(i);de("Anchor",$h);var Dh=128;function nd(k,C){var V=C.expression;if(V.kind==="constant"){var oe=V.evaluate(new Vi(k+1));return{kind:"constant",layoutSize:oe}}else{if(V.kind==="source")return{kind:"source"};for(var _e=V.zoomStops,Pe=V.interpolationType,je=0;je<_e.length&&_e[je]<=k;)je++;je=Math.max(0,je-1);for(var ct=je;ct<_e.length&&_e[ct]<k+1;)ct++;ct=Math.min(_e.length-1,ct);var Lt=_e[je],Nt=_e[ct];if(V.kind==="composite")return{kind:"composite",minZoom:Lt,maxZoom:Nt,interpolationType:Pe};var Xt=V.evaluate(new Vi(Lt)),gr=V.evaluate(new Vi(Nt));return{kind:"camera",minZoom:Lt,maxZoom:Nt,minSize:Xt,maxSize:gr,interpolationType:Pe}}}function hC(k,C,V){var oe=C.uSize,_e=C.uSizeT,Pe=V.lowerSize,je=V.upperSize;return k.kind==="source"?Pe/Dh:k.kind==="composite"?xl(Pe/Dh,je/Dh,_e):oe}function pC(k,C){var V=0,oe=0;if(k.kind==="constant")oe=k.layoutSize;else if(k.kind!=="source"){var _e=k.interpolationType,Pe=k.minZoom,je=k.maxZoom,ct=_e?l(Vl.interpolationFactor(_e,C,Pe,je),0,1):0;k.kind==="camera"?oe=xl(k.minSize,k.maxSize,ct):V=ct}return{uSizeT:V,uSize:oe}}var $G=Object.freeze({__proto__:null,getSizeData:nd,evaluateSizeForFeature:hC,evaluateSizeForZoom:pC,SIZE_PACK_FACTOR:Dh});function dC(k,C,V,oe,_e){if(C.segment===void 0)return!0;for(var Pe=C,je=C.segment+1,ct=0;ct>-V/2;){if(je--,je<0)return!1;ct-=k[je].dist(Pe),Pe=k[je]}ct+=k[je].dist(k[je+1]),je++;for(var Lt=[],Nt=0;ct<V/2;){var Xt=k[je-1],gr=k[je],Br=k[je+1];if(!Br)return!1;var Rr=Xt.angleTo(gr)-gr.angleTo(Br);for(Rr=Math.abs((Rr+3*Math.PI)%(Math.PI*2)-Math.PI),Lt.push({distance:ct,angleDelta:Rr}),Nt+=Rr;ct-Lt[0].distance>oe;)Nt-=Lt.shift().angleDelta;if(Nt>_e)return!1;je++,ct+=gr.dist(Br)}return!0}function vC(k){for(var C=0,V=0;V<k.length-1;V++)C+=k[V].dist(k[V+1]);return C}function mC(k,C,V){return k?3/5*C*V:0}function gC(k,C){return Math.max(k?k.right-k.left:0,C?C.right-C.left:0)}function QG(k,C,V,oe,_e,Pe){for(var je=mC(V,_e,Pe),ct=gC(V,oe)*Pe,Lt=0,Nt=vC(k)/2,Xt=0;Xt<k.length-1;Xt++){var gr=k[Xt],Br=k[Xt+1],Rr=gr.dist(Br);if(Lt+Rr>Nt){var na=(Nt-Lt)/Rr,Ia=xl(gr.x,Br.x,na),ii=xl(gr.y,Br.y,na),Wa=new $h(Ia,ii,Br.angleTo(gr),Xt);return Wa._round(),!je||dC(k,Wa,ct,je,C)?Wa:void 0}Lt+=Rr}}function eW(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=mC(oe,Pe,je),Xt=gC(oe,_e),gr=Xt*je,Br=k[0].x===0||k[0].x===Lt||k[0].y===0||k[0].y===Lt;C-gr<C/4&&(C=gr+C/4);var Rr=Pe*2,na=Br?C/2*ct%C:(Xt/2+Rr)*je*ct%C;return yC(k,na,C,Nt,V,gr,Br,!1,Lt)}function yC(k,C,V,oe,_e,Pe,je,ct,Lt){for(var Nt=Pe/2,Xt=vC(k),gr=0,Br=C-V,Rr=[],na=0;na<k.length-1;na++){for(var Ia=k[na],ii=k[na+1],Wa=Ia.dist(ii),Si=ii.angleTo(Ia);Br+V<gr+Wa;){Br+=V;var ci=(Br-gr)/Wa,Ai=xl(Ia.x,ii.x,ci),Li=xl(Ia.y,ii.y,ci);if(Ai>=0&&Ai<Lt&&Li>=0&&Li<Lt&&Br-Nt>=0&&Br+Nt<=Xt){var Ki=new $h(Ai,Li,Si,na);Ki._round(),(!oe||dC(k,Ki,Pe,oe,_e))&&Rr.push(Ki)}}gr+=Wa}return!ct&&!Rr.length&&!je&&(Rr=yC(k,gr/2,V,oe,_e,Pe,je,!0,Lt)),Rr}function _C(k,C,V,oe,_e){for(var Pe=[],je=0;je<k.length;je++)for(var ct=k[je],Lt=void 0,Nt=0;Nt<ct.length-1;Nt++){var Xt=ct[Nt],gr=ct[Nt+1];Xt.x<C&&gr.x<C||(Xt.x<C?Xt=new i(C,Xt.y+(gr.y-Xt.y)*((C-Xt.x)/(gr.x-Xt.x)))._round():gr.x<C&&(gr=new i(C,Xt.y+(gr.y-Xt.y)*((C-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y<V&&gr.y<V)&&(Xt.y<V?Xt=new i(Xt.x+(gr.x-Xt.x)*((V-Xt.y)/(gr.y-Xt.y)),V)._round():gr.y<V&&(gr=new i(Xt.x+(gr.x-Xt.x)*((V-Xt.y)/(gr.y-Xt.y)),V)._round()),!(Xt.x>=oe&&gr.x>=oe)&&(Xt.x>=oe?Xt=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round():gr.x>=oe&&(gr=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y>=_e&&gr.y>=_e)&&(Xt.y>=_e?Xt=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round():gr.y>=_e&&(gr=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round()),(!Lt||!Xt.equals(Lt[Lt.length-1]))&&(Lt=[Xt],Pe.push(Lt)),Lt.push(gr)))))}return Pe}var F0=tc;function xC(k,C,V,oe){var _e=[],Pe=k.image,je=Pe.pixelRatio,ct=Pe.paddedRect.w-2*F0,Lt=Pe.paddedRect.h-2*F0,Nt=k.right-k.left,Xt=k.bottom-k.top,gr=Pe.stretchX||[[0,ct]],Br=Pe.stretchY||[[0,Lt]],Rr=function(Sl,pl){return Sl+pl[1]-pl[0]},na=gr.reduce(Rr,0),Ia=Br.reduce(Rr,0),ii=ct-na,Wa=Lt-Ia,Si=0,ci=na,Ai=0,Li=Ia,Ki=0,kn=ii,Tn=0,lo=Wa;if(Pe.content&&oe){var qn=Pe.content;Si=sb(gr,0,qn[0]),Ai=sb(Br,0,qn[1]),ci=sb(gr,qn[0],qn[2]),Li=sb(Br,qn[1],qn[3]),Ki=qn[0]-Si,Tn=qn[1]-Ai,kn=qn[2]-qn[0]-ci,lo=qn[3]-qn[1]-Li}var to=function(Sl,pl,bu,Fu){var Gc=lb(Sl.stretch-Si,ci,Nt,k.left),of=ub(Sl.fixed-Ki,kn,Sl.stretch,na),ih=lb(pl.stretch-Ai,Li,Xt,k.top),Cf=ub(pl.fixed-Tn,lo,pl.stretch,Ia),Qh=lb(bu.stretch-Si,ci,Nt,k.left),ep=ub(bu.fixed-Ki,kn,bu.stretch,na),nh=lb(Fu.stretch-Ai,Li,Xt,k.top),mp=ub(Fu.fixed-Tn,lo,Fu.stretch,Ia),gp=new i(Gc,ih),jf=new i(Qh,ih),yp=new i(Qh,nh),od=new i(Gc,nh),Uv=new i(of/je,Cf/je),ym=new i(ep/je,mp/je),_m=C*Math.PI/180;if(_m){var xm=Math.sin(_m),H0=Math.cos(_m),wd=[H0,-xm,xm,H0];gp._matMult(wd),jf._matMult(wd),od._matMult(wd),yp._matMult(wd)}var vb=Sl.stretch+Sl.fixed,_A=bu.stretch+bu.fixed,mb=pl.stretch+pl.fixed,xA=Fu.stretch+Fu.fixed,pd={x:Pe.paddedRect.x+F0+vb,y:Pe.paddedRect.y+F0+mb,w:_A-vb,h:xA-mb},G0=kn/je/Nt,gb=lo/je/Xt;return{tl:gp,tr:jf,bl:od,br:yp,tex:pd,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:Uv,pixelOffsetBR:ym,minFontScaleX:G0,minFontScaleY:gb,isSDF:V}};if(!oe||!Pe.stretchX&&!Pe.stretchY)_e.push(to({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ct+1},{fixed:0,stretch:Lt+1}));else for(var ds=bC(gr,ii,na),uo=bC(Br,Wa,Ia),vo=0;vo<ds.length-1;vo++)for(var zs=ds[vo],cs=ds[vo+1],Tl=0;Tl<uo.length-1;Tl++){var lu=uo[Tl],Al=uo[Tl+1];_e.push(to(zs,lu,cs,Al))}return _e}function sb(k,C,V){for(var oe=0,_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e];oe+=Math.max(C,Math.min(V,je[1]))-Math.max(C,Math.min(V,je[0]))}return oe}function bC(k,C,V){for(var oe=[{fixed:-F0,stretch:0}],_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je[0],Lt=je[1],Nt=oe[oe.length-1];oe.push({fixed:ct-Nt.stretch,stretch:Nt.stretch}),oe.push({fixed:ct-Nt.stretch,stretch:Nt.stretch+(Lt-ct)})}return oe.push({fixed:C+F0,stretch:V}),oe}function lb(k,C,V,oe){return k/C*V+oe}function ub(k,C,V,oe){return k-C*V/oe}function tW(k,C,V,oe,_e,Pe,je,ct){for(var Lt=oe.layout.get("text-rotate").evaluate(Pe,{})*Math.PI/180,Nt=[],Xt=0,gr=C.positionedLines;Xt<gr.length;Xt+=1)for(var Br=gr[Xt],Rr=0,na=Br.positionedGlyphs;Rr<na.length;Rr+=1){var Ia=na[Rr];if(Ia.rect){var ii=Ia.rect||{},Wa=1,Si=hd+Wa,ci=!0,Ai=1,Li=0,Ki=(_e||ct)&&Ia.vertical,kn=Ia.metrics.advance*Ia.scale/2;if(ct&&C.verticalizable){var Tn=(Ia.scale-1)*Ei,lo=(Ei-Ia.metrics.width*Ia.scale)/2;Li=Br.lineOffset/2-(Ia.imageName?-lo:Tn)}if(Ia.imageName){var qn=je[Ia.imageName];ci=qn.sdf,Ai=qn.pixelRatio,Si=tc/Ai}var to=_e?[Ia.x+kn,Ia.y]:[0,0],ds=_e?[0,0]:[Ia.x+kn+V[0],Ia.y+V[1]-Li],uo=[0,0];Ki&&(uo=ds,ds=[0,0]);var vo=(Ia.metrics.left-Si)*Ia.scale-kn+ds[0],zs=(-Ia.metrics.top-Si)*Ia.scale+ds[1],cs=vo+ii.w*Ia.scale/Ai,Tl=zs+ii.h*Ia.scale/Ai,lu=new i(vo,zs),Al=new i(cs,zs),Sl=new i(vo,Tl),pl=new i(cs,Tl);if(Ki){var bu=new i(-kn,kn-vm),Fu=-Math.PI/2,Gc=Ei/2-kn,of=Ia.imageName?Gc:0,ih=new i(5-vm-Gc,-of),Cf=new(Function.prototype.bind.apply(i,[null].concat(uo)));lu._rotateAround(Fu,bu)._add(ih)._add(Cf),Al._rotateAround(Fu,bu)._add(ih)._add(Cf),Sl._rotateAround(Fu,bu)._add(ih)._add(Cf),pl._rotateAround(Fu,bu)._add(ih)._add(Cf)}if(Lt){var Qh=Math.sin(Lt),ep=Math.cos(Lt),nh=[ep,-Qh,Qh,ep];lu._matMult(nh),Al._matMult(nh),Sl._matMult(nh),pl._matMult(nh)}var mp=new i(0,0),gp=new i(0,0),jf=0,yp=0;Nt.push({tl:lu,tr:Al,bl:Sl,br:pl,tex:ii,writingMode:C.writingMode,glyphOffset:to,sectionIndex:Ia.sectionIndex,isSDF:ci,pixelOffsetTL:mp,pixelOffsetBR:gp,minFontScaleX:jf,minFontScaleY:yp})}}return Nt}var cb=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){if(this.boxStartIndex=C.length,Nt){var gr=je.top,Br=je.bottom,Rr=je.collisionPadding;Rr&&(gr-=Rr[1],Br+=Rr[3]);var na=Br-gr;na>0&&(na=Math.max(10,na),this.circleDiameter=na)}else{var Ia=je.top*ct-Lt,ii=je.bottom*ct+Lt,Wa=je.left*ct-Lt,Si=je.right*ct+Lt,ci=je.collisionPadding;if(ci&&(Wa-=ci[0]*ct,Ia-=ci[1]*ct,Si+=ci[2]*ct,ii+=ci[3]*ct),Xt){var Ai=new i(Wa,Ia),Li=new i(Si,Ia),Ki=new i(Wa,ii),kn=new i(Si,ii),Tn=Xt*Math.PI/180;Ai._rotate(Tn),Li._rotate(Tn),Ki._rotate(Tn),kn._rotate(Tn),Wa=Math.min(Ai.x,Li.x,Ki.x,kn.x),Si=Math.max(Ai.x,Li.x,Ki.x,kn.x),Ia=Math.min(Ai.y,Li.y,Ki.y,kn.y),ii=Math.max(Ai.y,Li.y,Ki.y,kn.y)}C.emplaceBack(V.x,V.y,Wa,Ia,Si,ii,oe,_e,Pe)}this.boxEndIndex=C.length},O0=function(C,V){if(C===void 0&&(C=[]),V===void 0&&(V=rW),this.data=C,this.length=this.data.length,this.compare=V,this.length>0)for(var oe=(this.length>>1)-1;oe>=0;oe--)this._down(oe)};O0.prototype.push=function(C){this.data.push(C),this.length++,this._up(this.length-1)},O0.prototype.pop=function(){if(this.length!==0){var C=this.data[0],V=this.data.pop();return this.length--,this.length>0&&(this.data[0]=V,this._down(0)),C}},O0.prototype.peek=function(){return this.data[0]},O0.prototype._up=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=oe[C];C>0;){var je=C-1>>1,ct=oe[je];if(_e(Pe,ct)>=0)break;oe[C]=ct,C=je}oe[C]=Pe},O0.prototype._down=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=this.length>>1,je=oe[C];C<Pe;){var ct=(C<<1)+1,Lt=oe[ct],Nt=ct+1;if(Nt<this.length&&_e(oe[Nt],Lt)<0&&(ct=Nt,Lt=oe[Nt]),_e(Lt,je)>=0)break;oe[C]=Lt,C=ct}oe[C]=je};function rW(k,C){return k<C?-1:k>C?1:0}function aW(k,C,V){C===void 0&&(C=1),V===void 0&&(V=!1);for(var oe=1/0,_e=1/0,Pe=-1/0,je=-1/0,ct=k[0],Lt=0;Lt<ct.length;Lt++){var Nt=ct[Lt];(!Lt||Nt.x<oe)&&(oe=Nt.x),(!Lt||Nt.y<_e)&&(_e=Nt.y),(!Lt||Nt.x>Pe)&&(Pe=Nt.x),(!Lt||Nt.y>je)&&(je=Nt.y)}var Xt=Pe-oe,gr=je-_e,Br=Math.min(Xt,gr),Rr=Br/2,na=new O0([],iW);if(Br===0)return new i(oe,_e);for(var Ia=oe;Ia<Pe;Ia+=Br)for(var ii=_e;ii<je;ii+=Br)na.push(new B0(Ia+Rr,ii+Rr,Rr,k));for(var Wa=oW(k),Si=na.length;na.length;){var ci=na.pop();(ci.d>Wa.d||!Wa.d)&&(Wa=ci,V&&console.log("found best %d after %d probes",Math.round(1e4*ci.d)/1e4,Si)),!(ci.max-Wa.d<=C)&&(Rr=ci.h/2,na.push(new B0(ci.p.x-Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x-Rr,ci.p.y+Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y+Rr,Rr,k)),Si+=4)}return V&&(console.log("num probes: "+Si),console.log("best distance: "+Wa.d)),Wa.p}function iW(k,C){return C.max-k.max}function B0(k,C,V,oe){this.p=new i(k,C),this.h=V,this.d=nW(this.p,oe),this.max=this.d+this.h*Math.SQRT2}function nW(k,C){for(var V=!1,oe=1/0,_e=0;_e<C.length;_e++)for(var Pe=C[_e],je=0,ct=Pe.length,Lt=ct-1;je<ct;Lt=je++){var Nt=Pe[je],Xt=Pe[Lt];Nt.y>k.y!=Xt.y>k.y&&k.x<(Xt.x-Nt.x)*(k.y-Nt.y)/(Xt.y-Nt.y)+Nt.x&&(V=!V),oe=Math.min(oe,Vd(k,Nt,Xt))}return(V?1:-1)*Math.sqrt(oe)}function oW(k){for(var C=0,V=0,oe=0,_e=k[0],Pe=0,je=_e.length,ct=je-1;Pe<je;ct=Pe++){var Lt=_e[Pe],Nt=_e[ct],Xt=Lt.x*Nt.y-Nt.x*Lt.y;V+=(Lt.x+Nt.x)*Xt,oe+=(Lt.y+Nt.y)*Xt,C+=Xt*3}return new B0(V/C,oe/C,0,k)}var N0=7,hA=Number.POSITIVE_INFINITY;function wC(k,C){function V(_e,Pe){var je=0,ct=0;Pe<0&&(Pe=0);var Lt=Pe/Math.sqrt(2);switch(_e){case"top-right":case"top-left":ct=Lt-N0;break;case"bottom-right":case"bottom-left":ct=-Lt+N0;break;case"bottom":ct=-Pe+N0;break;case"top":ct=Pe-N0;break}switch(_e){case"top-right":case"bottom-right":je=-Lt;break;case"top-left":case"bottom-left":je=Lt;break;case"left":je=Pe;break;case"right":je=-Pe;break}return[je,ct]}function oe(_e,Pe,je){var ct=0,Lt=0;switch(Pe=Math.abs(Pe),je=Math.abs(je),_e){case"top-right":case"top-left":case"top":Lt=je-N0;break;case"bottom-right":case"bottom-left":case"bottom":Lt=-je+N0;break}switch(_e){case"top-right":case"bottom-right":case"right":ct=-Pe;break;case"top-left":case"bottom-left":case"left":ct=Pe;break}return[ct,Lt]}return C[1]!==hA?oe(k,C[0],C[1]):V(k,C[0])}function sW(k,C,V,oe,_e,Pe,je){k.createArrays();var ct=512*k.overscaling;k.tilePixelRatio=Ii/ct,k.compareText={},k.iconsNeedLinear=!1;var Lt=k.layers[0].layout,Nt=k.layers[0]._unevaluatedLayout._values,Xt={};if(k.textSizeData.kind==="composite"){var gr=k.textSizeData,Br=gr.minZoom,Rr=gr.maxZoom;Xt.compositeTextSizes=[Nt["text-size"].possiblyEvaluate(new Vi(Br),je),Nt["text-size"].possiblyEvaluate(new Vi(Rr),je)]}if(k.iconSizeData.kind==="composite"){var na=k.iconSizeData,Ia=na.minZoom,ii=na.maxZoom;Xt.compositeIconSizes=[Nt["icon-size"].possiblyEvaluate(new Vi(Ia),je),Nt["icon-size"].possiblyEvaluate(new Vi(ii),je)]}Xt.layoutTextSize=Nt["text-size"].possiblyEvaluate(new Vi(k.zoom+1),je),Xt.layoutIconSize=Nt["icon-size"].possiblyEvaluate(new Vi(k.zoom+1),je),Xt.textMaxSize=Nt["text-size"].possiblyEvaluate(new Vi(18));for(var Wa=Lt.get("text-line-height")*Ei,Si=Lt.get("text-rotation-alignment")==="map"&&Lt.get("symbol-placement")!=="point",ci=Lt.get("text-keep-upright"),Ai=Lt.get("text-size"),Li=function(){var Tn=kn[Ki],lo=Lt.get("text-font").evaluate(Tn,{},je).join(","),qn=Ai.evaluate(Tn,{},je),to=Xt.layoutTextSize.evaluate(Tn,{},je),ds=Xt.layoutIconSize.evaluate(Tn,{},je),uo={horizontal:{},vertical:void 0},vo=Tn.text,zs=[0,0];if(vo){var cs=vo.toString(),Tl=Lt.get("text-letter-spacing").evaluate(Tn,{},je)*Ei,lu=Dr(cs)?Tl:0,Al=Lt.get("text-anchor").evaluate(Tn,{},je),Sl=Lt.get("text-variable-anchor");if(!Sl){var pl=Lt.get("text-radial-offset").evaluate(Tn,{},je);pl?zs=wC(Al,[pl*Ei,hA]):zs=Lt.get("text-offset").evaluate(Tn,{},je).map(function(Uv){return Uv*Ei})}var bu=Si?"center":Lt.get("text-justify").evaluate(Tn,{},je),Fu=Lt.get("symbol-placement"),Gc=Fu==="point"?Lt.get("text-max-width").evaluate(Tn,{},je)*Ei:0,of=function(){k.allowVerticalPlacement&&or(cs)&&(uo.vertical=D0(vo,C,V,_e,lo,Gc,Wa,Al,"left",lu,zs,dp.vertical,!0,Fu,to,qn))};if(!Si&&Sl){for(var ih=bu==="auto"?Sl.map(function(Uv){return pA(Uv)}):[bu],Cf=!1,Qh=0;Qh<ih.length;Qh++){var ep=ih[Qh];if(!uo.horizontal[ep])if(Cf)uo.horizontal[ep]=uo.horizontal[0];else{var nh=D0(vo,C,V,_e,lo,Gc,Wa,"center",ep,lu,zs,dp.horizontal,!1,Fu,to,qn);nh&&(uo.horizontal[ep]=nh,Cf=nh.positionedLines.length===1)}}of()}else{bu==="auto"&&(bu=pA(Al));var mp=D0(vo,C,V,_e,lo,Gc,Wa,Al,bu,lu,zs,dp.horizontal,!1,Fu,to,qn);mp&&(uo.horizontal[bu]=mp),of(),or(cs)&&Si&&ci&&(uo.vertical=D0(vo,C,V,_e,lo,Gc,Wa,Al,bu,lu,zs,dp.vertical,!1,Fu,to,qn))}}var gp=void 0,jf=!1;if(Tn.icon&&Tn.icon.name){var yp=oe[Tn.icon.name];yp&&(gp=Xp(_e[Tn.icon.name],Lt.get("icon-offset").evaluate(Tn,{},je),Lt.get("icon-anchor").evaluate(Tn,{},je)),jf=yp.sdf,k.sdfIcons===void 0?k.sdfIcons=yp.sdf:k.sdfIcons!==yp.sdf&&U("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(yp.pixelRatio!==k.pixelRatio||Lt.get("icon-rotate").constantOr(1)!==0)&&(k.iconsNeedLinear=!0))}var od=AC(uo.horizontal)||uo.vertical;k.iconsInText=od?od.iconsInText:!1,(od||gp)&&lW(k,Tn,uo,gp,oe,Xt,to,ds,zs,jf,je)},Ki=0,kn=k.features;Ki<kn.length;Ki+=1)Li();Pe&&k.generateCollisionDebugBuffers()}function pA(k){switch(k){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function lW(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=Pe.textMaxSize.evaluate(C,{});gr===void 0&&(gr=je);var Br=k.layers[0].layout,Rr=Br.get("icon-offset").evaluate(C,{},Xt),na=AC(V.horizontal),Ia=24,ii=je/Ia,Wa=k.tilePixelRatio*ii,Si=k.tilePixelRatio*gr/Ia,ci=k.tilePixelRatio*ct,Ai=k.tilePixelRatio*Br.get("symbol-spacing"),Li=Br.get("text-padding")*k.tilePixelRatio,Ki=Br.get("icon-padding")*k.tilePixelRatio,kn=Br.get("text-max-angle")/180*Math.PI,Tn=Br.get("text-rotation-alignment")==="map"&&Br.get("symbol-placement")!=="point",lo=Br.get("icon-rotation-alignment")==="map"&&Br.get("symbol-placement")!=="point",qn=Br.get("symbol-placement"),to=Ai/2,ds=Br.get("icon-text-fit"),uo;oe&&ds!=="none"&&(k.allowVerticalPlacement&&V.vertical&&(uo=dv(oe,V.vertical,ds,Br.get("icon-text-fit-padding"),Rr,ii)),na&&(oe=dv(oe,na,ds,Br.get("icon-text-fit-padding"),Rr,ii)));var vo=function(H0,wd){wd.x<0||wd.x>=Ii||wd.y<0||wd.y>=Ii||uW(k,wd,H0,V,oe,_e,uo,k.layers[0],k.collisionBoxArray,C.index,C.sourceLayerIndex,k.index,Wa,Li,Tn,Lt,ci,Ki,lo,Rr,C,Pe,Nt,Xt,je)};if(qn==="line")for(var zs=0,cs=_C(C.geometry,0,0,Ii,Ii);zs<cs.length;zs+=1)for(var Tl=cs[zs],lu=eW(Tl,Ai,kn,V.vertical||na,oe,Ia,Si,k.overscaling,Ii),Al=0,Sl=lu;Al<Sl.length;Al+=1){var pl=Sl[Al],bu=na;(!bu||!cW(k,bu.text,to,pl))&&vo(Tl,pl)}else if(qn==="line-center")for(var Fu=0,Gc=C.geometry;Fu<Gc.length;Fu+=1){var of=Gc[Fu];if(of.length>1){var ih=QG(of,kn,V.vertical||na,oe,Ia,Si);ih&&vo(of,ih)}}else if(C.type==="Polygon")for(var Cf=0,Qh=E0(C.geometry,0);Cf<Qh.length;Cf+=1){var ep=Qh[Cf],nh=aW(ep,16);vo(ep[0],new $h(nh.x,nh.y,0))}else if(C.type==="LineString")for(var mp=0,gp=C.geometry;mp<gp.length;mp+=1){var jf=gp[mp];vo(jf,new $h(jf[0].x,jf[0].y,0))}else if(C.type==="Point")for(var yp=0,od=C.geometry;yp<od.length;yp+=1)for(var Uv=od[yp],ym=0,_m=Uv;ym<_m.length;ym+=1){var xm=_m[ym];vo([xm],new $h(xm.x,xm.y,0))}}var J1=255,mm=J1*Dh;function TC(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=tW(C,V,ct,_e,Pe,je,oe,k.allowVerticalPlacement),ii=k.textSizeData,Wa=null;ii.kind==="source"?(Wa=[Dh*_e.layout.get("text-size").evaluate(je,{})],Wa[0]>mm&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')):ii.kind==="composite"&&(Wa=[Dh*Rr.compositeTextSizes[0].evaluate(je,{},na),Dh*Rr.compositeTextSizes[1].evaluate(je,{},na)],(Wa[0]>mm||Wa[1]>mm)&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')),k.addSymbols(k.text,Ia,Wa,ct,Pe,je,Nt,C,Lt.lineStartIndex,Lt.lineLength,Br,na);for(var Si=0,ci=Xt;Si<ci.length;Si+=1){var Ai=ci[Si];gr[Ai]=k.text.placedSymbolArray.length-1}return Ia.length*4}function AC(k){for(var C in k)return k[C];return null}function uW(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn){var lo,qn=k.addToLineVertexArray(C,V),to,ds,uo,vo,zs=0,cs=0,Tl=0,lu=0,Al=-1,Sl=-1,pl={},bu=xe(""),Fu=0,Gc=0;if(ct._unevaluatedLayout.getValue("text-radial-offset")===void 0?(lo=ct.layout.get("text-offset").evaluate(Ai,{},kn).map(function(e_){return e_*Ei}),Fu=lo[0],Gc=lo[1]):(Fu=ct.layout.get("text-radial-offset").evaluate(Ai,{},kn)*Ei,Gc=hA),k.allowVerticalPlacement&&oe.vertical){var of=ct.layout.get("text-rotate").evaluate(Ai,{},kn),ih=of+90,Cf=oe.vertical;uo=new cb(Lt,C,Nt,Xt,gr,Cf,Br,Rr,na,ih),je&&(vo=new cb(Lt,C,Nt,Xt,gr,je,ii,Wa,na,ih))}if(_e){var Qh=ct.layout.get("icon-rotate").evaluate(Ai,{}),ep=ct.layout.get("icon-text-fit")!=="none",nh=xC(_e,Qh,Ki,ep),mp=je?xC(je,Qh,Ki,ep):void 0;ds=new cb(Lt,C,Nt,Xt,gr,_e,ii,Wa,!1,Qh),zs=nh.length*4;var gp=k.iconSizeData,jf=null;gp.kind==="source"?(jf=[Dh*ct.layout.get("icon-size").evaluate(Ai,{})],jf[0]>mm&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')):gp.kind==="composite"&&(jf=[Dh*Li.compositeIconSizes[0].evaluate(Ai,{},kn),Dh*Li.compositeIconSizes[1].evaluate(Ai,{},kn)],(jf[0]>mm||jf[1]>mm)&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')),k.addSymbols(k.icon,nh,jf,ci,Si,Ai,!1,C,qn.lineStartIndex,qn.lineLength,-1,kn),Al=k.icon.placedSymbolArray.length-1,mp&&(cs=mp.length*4,k.addSymbols(k.icon,mp,jf,ci,Si,Ai,dp.vertical,C,qn.lineStartIndex,qn.lineLength,-1,kn),Sl=k.icon.placedSymbolArray.length-1)}for(var yp in oe.horizontal){var od=oe.horizontal[yp];if(!to){bu=xe(od.text);var Uv=ct.layout.get("text-rotate").evaluate(Ai,{},kn);to=new cb(Lt,C,Nt,Xt,gr,od,Br,Rr,na,Uv)}var ym=od.positionedLines.length===1;if(Tl+=TC(k,C,od,Pe,ct,na,Ai,Ia,qn,oe.vertical?dp.horizontal:dp.horizontalOnly,ym?Object.keys(oe.horizontal):[yp],pl,Al,Li,kn),ym)break}oe.vertical&&(lu+=TC(k,C,oe.vertical,Pe,ct,na,Ai,Ia,qn,dp.vertical,["vertical"],pl,Sl,Li,kn));var _m=to?to.boxStartIndex:k.collisionBoxArray.length,xm=to?to.boxEndIndex:k.collisionBoxArray.length,H0=uo?uo.boxStartIndex:k.collisionBoxArray.length,wd=uo?uo.boxEndIndex:k.collisionBoxArray.length,vb=ds?ds.boxStartIndex:k.collisionBoxArray.length,_A=ds?ds.boxEndIndex:k.collisionBoxArray.length,mb=vo?vo.boxStartIndex:k.collisionBoxArray.length,xA=vo?vo.boxEndIndex:k.collisionBoxArray.length,pd=-1,G0=function(e_,UC){return e_&&e_.circleDiameter?Math.max(e_.circleDiameter,UC):UC};pd=G0(to,pd),pd=G0(uo,pd),pd=G0(ds,pd),pd=G0(vo,pd);var gb=pd>-1?1:0;gb&&(pd*=Tn/Ei),k.glyphOffsetArray.length>=su.MAX_GLYPHS&&U("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Ai.sortKey!==void 0&&k.addToSortKeyRanges(k.symbolInstances.length,Ai.sortKey),k.symbolInstances.emplaceBack(C.x,C.y,pl.right>=0?pl.right:-1,pl.center>=0?pl.center:-1,pl.left>=0?pl.left:-1,pl.vertical||-1,Al,Sl,bu,_m,xm,H0,wd,vb,_A,mb,xA,Nt,Tl,lu,zs,cs,gb,0,Br,Fu,Gc,pd)}function cW(k,C,V,oe){var _e=k.compareText;if(!(C in _e))_e[C]=[];else for(var Pe=_e[C],je=Pe.length-1;je>=0;je--)if(oe.dist(Pe[je])<V)return!0;return _e[C].push(oe),!1}var fW=Zd.VectorTileFeature.types,hW=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function fb(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=ct?Math.min(mm,Math.round(ct[0])):0,na=ct?Math.min(mm,Math.round(ct[1])):0;k.emplaceBack(C,V,Math.round(oe*32),Math.round(_e*32),Pe,je,(Rr<<1)+(Lt?1:0),na,Nt*16,Xt*16,gr*256,Br*256)}function dA(k,C,V){k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V)}function pW(k){for(var C=0,V=k.sections;C<V.length;C+=1){var oe=V[C];if(Qa(oe.text))return!0}return!1}var U0=function(C){this.layoutVertexArray=new _o,this.indexArray=new jn,this.programConfigurations=C,this.segments=new Cs,this.dynamicLayoutVertexArray=new Zi,this.opacityVertexArray=new Ui,this.placedSymbolArray=new Ol};U0.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},U0.prototype.upload=function(C,V,oe,_e){this.isEmpty()||(oe&&(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,Ce.members),this.indexBuffer=C.createIndexBuffer(this.indexArray,V),this.dynamicLayoutVertexBuffer=C.createVertexBuffer(this.dynamicLayoutVertexArray,Ue.members,!0),this.opacityVertexBuffer=C.createVertexBuffer(this.opacityVertexArray,hW,!0),this.opacityVertexBuffer.itemSize=1),(oe||_e)&&this.programConfigurations.upload(C))},U0.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},de("SymbolBuffers",U0);var $1=function(C,V,oe){this.layoutVertexArray=new C,this.layoutAttributes=V,this.indexArray=new oe,this.segments=new Cs,this.collisionVertexArray=new dn};$1.prototype.upload=function(C){this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=C.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=C.createVertexBuffer(this.collisionVertexArray,ut.members,!0)},$1.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},de("CollisionBuffers",$1);var su=function(C){this.collisionBoxArray=C.collisionBoxArray,this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(Lt){return Lt.id}),this.index=C.index,this.pixelRatio=C.pixelRatio,this.sourceLayerIndex=C.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Pv([]),this.placementViewportMatrix=Pv([]);var V=this.layers[0],oe=V._unevaluatedLayout._values;this.textSizeData=nd(this.zoom,oe["text-size"]),this.iconSizeData=nd(this.zoom,oe["icon-size"]);var _e=this.layers[0].layout,Pe=_e.get("symbol-sort-key"),je=_e.get("symbol-z-order");this.canOverlap=_e.get("text-allow-overlap")||_e.get("icon-allow-overlap")||_e.get("text-ignore-placement")||_e.get("icon-ignore-placement"),this.sortFeaturesByKey=je!=="viewport-y"&&Pe.constantOr(1)!==void 0;var ct=je==="viewport-y"||je==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=ct&&this.canOverlap,_e.get("symbol-placement")==="point"&&(this.writingModes=_e.get("text-writing-mode").map(function(Lt){return dp[Lt]})),this.stateDependentLayerIds=this.layers.filter(function(Lt){return Lt.isStateDependent()}).map(function(Lt){return Lt.id}),this.sourceID=C.sourceID};su.prototype.createArrays=function(){this.text=new U0(new mi(this.layers,this.zoom,function(C){return/^text/.test(C)})),this.icon=new U0(new mi(this.layers,this.zoom,function(C){return/^icon/.test(C)})),this.glyphOffsetArray=new rf,this.lineVertexArray=new Yl,this.symbolInstances=new mc},su.prototype.calculateGlyphDependencies=function(C,V,oe,_e,Pe){for(var je=0;je<C.length;je++)if(V[C.charCodeAt(je)]=!0,(oe||_e)&&Pe){var ct=ei[C.charAt(je)];ct&&(V[ct.charCodeAt(0)]=!0)}},su.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=_e.layout,je=Pe.get("text-font"),ct=Pe.get("text-field"),Lt=Pe.get("icon-image"),Nt=(ct.value.kind!=="constant"||ct.value.value instanceof Zl&&!ct.value.value.isEmpty()||ct.value.value.toString().length>0)&&(je.value.kind!=="constant"||je.value.value.length>0),Xt=Lt.value.kind!=="constant"||!!Lt.value.value||Object.keys(Lt.parameters).length>0,gr=Pe.get("symbol-sort-key");if(this.features=[],!(!Nt&&!Xt)){for(var Br=V.iconDependencies,Rr=V.glyphDependencies,na=V.availableImages,Ia=new Vi(this.zoom),ii=0,Wa=C;ii<Wa.length;ii+=1){var Si=Wa[ii],ci=Si.feature,Ai=Si.id,Li=Si.index,Ki=Si.sourceLayerIndex,kn=_e._featureFilter.needGeometry,Tn=ms(ci,kn);if(_e._featureFilter.filter(Ia,Tn,oe)){kn||(Tn.geometry=zn(ci));var lo=void 0;if(Nt){var qn=_e.getValueAndResolveTokens("text-field",Tn,oe,na),to=Zl.factory(qn);pW(to)&&(this.hasRTLText=!0),(!this.hasRTLText||No()==="unavailable"||this.hasRTLText&&Gs.isParsed())&&(lo=ja(to,_e,Tn))}var ds=void 0;if(Xt){var uo=_e.getValueAndResolveTokens("icon-image",Tn,oe,na);uo instanceof yl?ds=uo:ds=yl.fromString(uo)}if(!(!lo&&!ds)){var vo=this.sortFeaturesByKey?gr.evaluate(Tn,{},oe):void 0,zs={id:Ai,text:lo,icon:ds,index:Li,sourceLayerIndex:Ki,geometry:Tn.geometry,properties:ci.properties,type:fW[ci.type],sortKey:vo};if(this.features.push(zs),ds&&(Br[ds.name]=!0),lo){var cs=je.evaluate(Tn,{},oe).join(","),Tl=Pe.get("text-rotation-alignment")==="map"&&Pe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(dp.vertical)>=0;for(var lu=0,Al=lo.sections;lu<Al.length;lu+=1){var Sl=Al[lu];if(Sl.image)Br[Sl.image.name]=!0;else{var pl=or(lo.toString()),bu=Sl.fontStack||cs,Fu=Rr[bu]=Rr[bu]||{};this.calculateGlyphDependencies(Sl.text,Fu,Tl,this.allowVerticalPlacement,pl)}}}}}}Pe.get("symbol-placement")==="line"&&(this.features=gi(this.features)),this.sortFeaturesByKey&&this.features.sort(function(Gc,of){return Gc.sortKey-of.sortKey})}},su.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(C,V,this.layers,oe),this.icon.programConfigurations.updatePaintArrays(C,V,this.layers,oe))},su.prototype.isEmpty=function(){return this.symbolInstances.length===0&&!this.hasRTLText},su.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},su.prototype.upload=function(C){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(C),this.iconCollisionBox.upload(C)),this.text.upload(C,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(C,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},su.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},su.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},su.prototype.addToLineVertexArray=function(C,V){var oe=this.lineVertexArray.length;if(C.segment!==void 0){for(var _e=C.dist(V[C.segment+1]),Pe=C.dist(V[C.segment]),je={},ct=C.segment+1;ct<V.length;ct++)je[ct]={x:V[ct].x,y:V[ct].y,tileUnitDistanceFromAnchor:_e},ct<V.length-1&&(_e+=V[ct+1].dist(V[ct]));for(var Lt=C.segment||0;Lt>=0;Lt--)je[Lt]={x:V[Lt].x,y:V[Lt].y,tileUnitDistanceFromAnchor:Pe},Lt>0&&(Pe+=V[Lt-1].dist(V[Lt]));for(var Nt=0;Nt<V.length;Nt++){var Xt=je[Nt];this.lineVertexArray.emplaceBack(Xt.x,Xt.y,Xt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:oe,lineLength:this.lineVertexArray.length-oe}},su.prototype.addSymbols=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){for(var Rr=C.indexArray,na=C.layoutVertexArray,Ia=C.segments.prepareSegment(4*V.length,na,Rr,this.canOverlap?je.sortKey:void 0),ii=this.glyphOffsetArray.length,Wa=Ia.vertexLength,Si=this.allowVerticalPlacement&&ct===dp.vertical?Math.PI/2:0,ci=je.text&&je.text.sections,Ai=0;Ai<V.length;Ai++){var Li=V[Ai],Ki=Li.tl,kn=Li.tr,Tn=Li.bl,lo=Li.br,qn=Li.tex,to=Li.pixelOffsetTL,ds=Li.pixelOffsetBR,uo=Li.minFontScaleX,vo=Li.minFontScaleY,zs=Li.glyphOffset,cs=Li.isSDF,Tl=Li.sectionIndex,lu=Ia.vertexLength,Al=zs[1];fb(na,Lt.x,Lt.y,Ki.x,Al+Ki.y,qn.x,qn.y,oe,cs,to.x,to.y,uo,vo),fb(na,Lt.x,Lt.y,kn.x,Al+kn.y,qn.x+qn.w,qn.y,oe,cs,ds.x,to.y,uo,vo),fb(na,Lt.x,Lt.y,Tn.x,Al+Tn.y,qn.x,qn.y+qn.h,oe,cs,to.x,ds.y,uo,vo),fb(na,Lt.x,Lt.y,lo.x,Al+lo.y,qn.x+qn.w,qn.y+qn.h,oe,cs,ds.x,ds.y,uo,vo),dA(C.dynamicLayoutVertexArray,Lt,Si),Rr.emplaceBack(lu,lu+1,lu+2),Rr.emplaceBack(lu+1,lu+2,lu+3),Ia.vertexLength+=4,Ia.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(zs[0]),(Ai===V.length-1||Tl!==V[Ai+1].sectionIndex)&&C.programConfigurations.populatePaintArrays(na.length,je,je.index,{},Br,ci&&ci[Tl])}C.placedSymbolArray.emplaceBack(Lt.x,Lt.y,ii,this.glyphOffsetArray.length-ii,Wa,Nt,Xt,Lt.segment,oe?oe[0]:0,oe?oe[1]:0,_e[0],_e[1],ct,0,!1,0,gr)},su.prototype._addCollisionDebugVertex=function(C,V,oe,_e,Pe,je){return V.emplaceBack(0,0),C.emplaceBack(oe.x,oe.y,_e,Pe,Math.round(je.x),Math.round(je.y))},su.prototype.addCollisionDebugVertices=function(C,V,oe,_e,Pe,je,ct){var Lt=Pe.segments.prepareSegment(4,Pe.layoutVertexArray,Pe.indexArray),Nt=Lt.vertexLength,Xt=Pe.layoutVertexArray,gr=Pe.collisionVertexArray,Br=ct.anchorX,Rr=ct.anchorY;this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(C,V)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(oe,V)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(oe,_e)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(C,_e)),Lt.vertexLength+=4;var na=Pe.indexArray;na.emplaceBack(Nt,Nt+1),na.emplaceBack(Nt+1,Nt+2),na.emplaceBack(Nt+2,Nt+3),na.emplaceBack(Nt+3,Nt),Lt.primitiveLength+=4},su.prototype.addDebugCollisionBoxes=function(C,V,oe,_e){for(var Pe=C;Pe<V;Pe++){var je=this.collisionBoxArray.get(Pe),ct=je.x1,Lt=je.y1,Nt=je.x2,Xt=je.y2;this.addCollisionDebugVertices(ct,Lt,Nt,Xt,_e?this.textCollisionBox:this.iconCollisionBox,je.anchorPoint,oe)}},su.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new $1(Rn,Ft.members,os),this.iconCollisionBox=new $1(Rn,Ft.members,os);for(var C=0;C<this.symbolInstances.length;C++){var V=this.symbolInstances.get(C);this.addDebugCollisionBoxes(V.textBoxStartIndex,V.textBoxEndIndex,V,!0),this.addDebugCollisionBoxes(V.verticalTextBoxStartIndex,V.verticalTextBoxEndIndex,V,!0),this.addDebugCollisionBoxes(V.iconBoxStartIndex,V.iconBoxEndIndex,V,!1),this.addDebugCollisionBoxes(V.verticalIconBoxStartIndex,V.verticalIconBoxEndIndex,V,!1)}},su.prototype._deserializeCollisionBoxesForSymbol=function(C,V,oe,_e,Pe,je,ct,Lt,Nt){for(var Xt={},gr=V;gr<oe;gr++){var Br=C.get(gr);Xt.textBox={x1:Br.x1,y1:Br.y1,x2:Br.x2,y2:Br.y2,anchorPointX:Br.anchorPointX,anchorPointY:Br.anchorPointY},Xt.textFeatureIndex=Br.featureIndex;break}for(var Rr=_e;Rr<Pe;Rr++){var na=C.get(Rr);Xt.verticalTextBox={x1:na.x1,y1:na.y1,x2:na.x2,y2:na.y2,anchorPointX:na.anchorPointX,anchorPointY:na.anchorPointY},Xt.verticalTextFeatureIndex=na.featureIndex;break}for(var Ia=je;Ia<ct;Ia++){var ii=C.get(Ia);Xt.iconBox={x1:ii.x1,y1:ii.y1,x2:ii.x2,y2:ii.y2,anchorPointX:ii.anchorPointX,anchorPointY:ii.anchorPointY},Xt.iconFeatureIndex=ii.featureIndex;break}for(var Wa=Lt;Wa<Nt;Wa++){var Si=C.get(Wa);Xt.verticalIconBox={x1:Si.x1,y1:Si.y1,x2:Si.x2,y2:Si.y2,anchorPointX:Si.anchorPointX,anchorPointY:Si.anchorPointY},Xt.verticalIconFeatureIndex=Si.featureIndex;break}return Xt},su.prototype.deserializeCollisionBoxes=function(C){this.collisionArrays=[];for(var V=0;V<this.symbolInstances.length;V++){var oe=this.symbolInstances.get(V);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(C,oe.textBoxStartIndex,oe.textBoxEndIndex,oe.verticalTextBoxStartIndex,oe.verticalTextBoxEndIndex,oe.iconBoxStartIndex,oe.iconBoxEndIndex,oe.verticalIconBoxStartIndex,oe.verticalIconBoxEndIndex))}},su.prototype.hasTextData=function(){return this.text.segments.get().length>0},su.prototype.hasIconData=function(){return this.icon.segments.get().length>0},su.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},su.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},su.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},su.prototype.addIndicesForPlacedSymbol=function(C,V){for(var oe=C.placedSymbolArray.get(V),_e=oe.vertexStartIndex+oe.numGlyphs*4,Pe=oe.vertexStartIndex;Pe<_e;Pe+=4)C.indexArray.emplaceBack(Pe,Pe+1,Pe+2),C.indexArray.emplaceBack(Pe+1,Pe+2,Pe+3)},su.prototype.getSortedSymbolIndexes=function(C){if(this.sortedAngle===C&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var V=Math.sin(C),oe=Math.cos(C),_e=[],Pe=[],je=[],ct=0;ct<this.symbolInstances.length;++ct){je.push(ct);var Lt=this.symbolInstances.get(ct);_e.push(Math.round(V*Lt.anchorX+oe*Lt.anchorY)|0),Pe.push(Lt.featureIndex)}return je.sort(function(Nt,Xt){return _e[Nt]-_e[Xt]||Pe[Xt]-Pe[Nt]}),je},su.prototype.addToSortKeyRanges=function(C,V){var oe=this.sortKeyRanges[this.sortKeyRanges.length-1];oe&&oe.sortKey===V?oe.symbolInstanceEnd=C+1:this.sortKeyRanges.push({sortKey:V,symbolInstanceStart:C,symbolInstanceEnd:C+1})},su.prototype.sortFeatures=function(C){var V=this;if(this.sortFeaturesByY&&this.sortedAngle!==C&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(C),this.sortedAngle=C,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var oe=0,_e=this.symbolInstanceIndexes;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.symbolInstances.get(Pe);this.featureSortOrder.push(je.featureIndex),[je.rightJustifiedTextSymbolIndex,je.centerJustifiedTextSymbolIndex,je.leftJustifiedTextSymbolIndex].forEach(function(ct,Lt,Nt){ct>=0&&Nt.indexOf(ct)===Lt&&V.addIndicesForPlacedSymbol(V.text,ct)}),je.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,je.verticalPlacedTextSymbolIndex),je.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.placedIconSymbolIndex),je.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},de("SymbolBucket",su,{omit:["layers","collisionBoxArray","features","compareText"]}),su.MAX_GLYPHS=65535,su.addDynamicAttributes=dA;function dW(k,C){return C.replace(/{([^{}]+)}/g,function(V,oe){return oe in k?String(k[oe]):""})}var vW=new xi({"symbol-placement":new Qt(fi.layout_symbol["symbol-placement"]),"symbol-spacing":new Qt(fi.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Qt(fi.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new ra(fi.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Qt(fi.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Qt(fi.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Qt(fi.layout_symbol["icon-ignore-placement"]),"icon-optional":new Qt(fi.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Qt(fi.layout_symbol["icon-rotation-alignment"]),"icon-size":new ra(fi.layout_symbol["icon-size"]),"icon-text-fit":new Qt(fi.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Qt(fi.layout_symbol["icon-text-fit-padding"]),"icon-image":new ra(fi.layout_symbol["icon-image"]),"icon-rotate":new ra(fi.layout_symbol["icon-rotate"]),"icon-padding":new Qt(fi.layout_symbol["icon-padding"]),"icon-keep-upright":new Qt(fi.layout_symbol["icon-keep-upright"]),"icon-offset":new ra(fi.layout_symbol["icon-offset"]),"icon-anchor":new ra(fi.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Qt(fi.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Qt(fi.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Qt(fi.layout_symbol["text-rotation-alignment"]),"text-field":new ra(fi.layout_symbol["text-field"]),"text-font":new ra(fi.layout_symbol["text-font"]),"text-size":new ra(fi.layout_symbol["text-size"]),"text-max-width":new ra(fi.layout_symbol["text-max-width"]),"text-line-height":new Qt(fi.layout_symbol["text-line-height"]),"text-letter-spacing":new ra(fi.layout_symbol["text-letter-spacing"]),"text-justify":new ra(fi.layout_symbol["text-justify"]),"text-radial-offset":new ra(fi.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Qt(fi.layout_symbol["text-variable-anchor"]),"text-anchor":new ra(fi.layout_symbol["text-anchor"]),"text-max-angle":new Qt(fi.layout_symbol["text-max-angle"]),"text-writing-mode":new Qt(fi.layout_symbol["text-writing-mode"]),"text-rotate":new ra(fi.layout_symbol["text-rotate"]),"text-padding":new Qt(fi.layout_symbol["text-padding"]),"text-keep-upright":new Qt(fi.layout_symbol["text-keep-upright"]),"text-transform":new ra(fi.layout_symbol["text-transform"]),"text-offset":new ra(fi.layout_symbol["text-offset"]),"text-allow-overlap":new Qt(fi.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Qt(fi.layout_symbol["text-ignore-placement"]),"text-optional":new Qt(fi.layout_symbol["text-optional"])}),mW=new xi({"icon-opacity":new ra(fi.paint_symbol["icon-opacity"]),"icon-color":new ra(fi.paint_symbol["icon-color"]),"icon-halo-color":new ra(fi.paint_symbol["icon-halo-color"]),"icon-halo-width":new ra(fi.paint_symbol["icon-halo-width"]),"icon-halo-blur":new ra(fi.paint_symbol["icon-halo-blur"]),"icon-translate":new Qt(fi.paint_symbol["icon-translate"]),"icon-translate-anchor":new Qt(fi.paint_symbol["icon-translate-anchor"]),"text-opacity":new ra(fi.paint_symbol["text-opacity"]),"text-color":new ra(fi.paint_symbol["text-color"],{runtimeType:_s,getOverride:function(k){return k.textColor},hasOverride:function(k){return!!k.textColor}}),"text-halo-color":new ra(fi.paint_symbol["text-halo-color"]),"text-halo-width":new ra(fi.paint_symbol["text-halo-width"]),"text-halo-blur":new ra(fi.paint_symbol["text-halo-blur"]),"text-translate":new Qt(fi.paint_symbol["text-translate"]),"text-translate-anchor":new Qt(fi.paint_symbol["text-translate-anchor"])}),vA={paint:mW,layout:vW},j0=function(C){this.type=C.property.overrides?C.property.overrides.runtimeType:vl,this.defaultValue=C};j0.prototype.evaluate=function(C){if(C.formattedSection){var V=this.defaultValue.property.overrides;if(V&&V.hasOverride(C.formattedSection))return V.getOverride(C.formattedSection)}return C.feature&&C.featureState?this.defaultValue.evaluate(C.feature,C.featureState):this.defaultValue.property.specification.default},j0.prototype.eachChild=function(C){if(!this.defaultValue.isConstant()){var V=this.defaultValue.value;C(V._styleExpression.expression)}},j0.prototype.outputDefined=function(){return!1},j0.prototype.serialize=function(){return null},de("FormatSectionOverride",j0,{omit:["defaultValue"]});var gW=function(k){function C(V){k.call(this,V,vA)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){if(k.prototype.recalculate.call(this,oe,_e),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var Pe=this.layout.get("text-writing-mode");if(Pe){for(var je=[],ct=0,Lt=Pe;ct<Lt.length;ct+=1){var Nt=Lt[ct];je.indexOf(Nt)<0&&je.push(Nt)}this.layout._values["text-writing-mode"]=je}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},C.prototype.getValueAndResolveTokens=function(oe,_e,Pe,je){var ct=this.layout.get(oe).evaluate(_e,{},Pe,je),Lt=this._unevaluatedLayout._values[oe];return!Lt.isDataDriven()&&!ro(Lt.value)&&ct?dW(_e.properties,ct):ct},C.prototype.createBucket=function(oe){return new su(oe)},C.prototype.queryRadius=function(){return 0},C.prototype.queryIntersectsFeature=function(){return!1},C.prototype._setPaintOverrides=function(){for(var oe=0,_e=vA.paint.overridableProperties;oe<_e.length;oe+=1){var Pe=_e[oe];if(C.hasPaintOverride(this.layout,Pe)){var je=this.paint.get(Pe),ct=new j0(je),Lt=new Ac(ct,je.property.specification),Nt=null;je.value.kind==="constant"||je.value.kind==="source"?Nt=new Nc("source",Lt):Nt=new hc("composite",Lt,je.value.zoomStops,je.value._interpolationType),this.paint._values[Pe]=new Ll(je.property,Nt,je.parameters)}}},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!this.layout||_e.isDataDriven()||Pe.isDataDriven()?!1:C.hasPaintOverride(this.layout,oe)},C.hasPaintOverride=function(oe,_e){var Pe=oe.get("text-field"),je=vA.paint.properties[_e],ct=!1,Lt=function(gr){for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(je.overrides&&je.overrides.hasOverride(na)){ct=!0;return}}};if(Pe.value.kind==="constant"&&Pe.value.value instanceof Zl)Lt(Pe.value.value.sections);else if(Pe.value.kind==="source"){var Nt=function(gr){if(!ct)if(gr instanceof Bs&&Zs(gr.value)===ml){var Br=gr.value;Lt(Br.sections)}else gr instanceof Yu?Lt(gr.sections):gr.eachChild(Nt)},Xt=Pe.value;Xt._styleExpression&&Nt(Xt._styleExpression.expression)}return ct},C}(Fi),yW=new xi({"background-color":new Qt(fi.paint_background["background-color"]),"background-pattern":new si(fi.paint_background["background-pattern"]),"background-opacity":new Qt(fi.paint_background["background-opacity"])}),_W={paint:yW},xW=function(k){function C(V){k.call(this,V,_W)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Fi),bW=new xi({"raster-opacity":new Qt(fi.paint_raster["raster-opacity"]),"raster-hue-rotate":new Qt(fi.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Qt(fi.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Qt(fi.paint_raster["raster-brightness-max"]),"raster-saturation":new Qt(fi.paint_raster["raster-saturation"]),"raster-contrast":new Qt(fi.paint_raster["raster-contrast"]),"raster-resampling":new Qt(fi.paint_raster["raster-resampling"]),"raster-fade-duration":new Qt(fi.paint_raster["raster-fade-duration"])}),wW={paint:bW},TW=function(k){function C(V){k.call(this,V,wW)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Fi);function AW(k){var C=[],V=k.id;return V===void 0&&C.push({message:"layers."+V+': missing required property "id"'}),k.render===void 0&&C.push({message:"layers."+V+': missing required method "render"'}),k.renderingMode&&k.renderingMode!=="2d"&&k.renderingMode!=="3d"&&C.push({message:"layers."+V+': property "renderingMode" must be either "2d" or "3d"'}),C}var SW=function(k){function C(V){k.call(this,V,{}),this.implementation=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.is3D=function(){return this.implementation.renderingMode==="3d"},C.prototype.hasOffscreenPass=function(){return this.implementation.prerender!==void 0},C.prototype.recalculate=function(){},C.prototype.updateTransitions=function(){},C.prototype.hasTransition=function(){},C.prototype.serialize=function(){},C.prototype.onAdd=function(oe){this.implementation.onAdd&&this.implementation.onAdd(oe,oe.painter.context.gl)},C.prototype.onRemove=function(oe){this.implementation.onRemove&&this.implementation.onRemove(oe,oe.painter.context.gl)},C}(Fi),MW={circle:WT,heatmap:w0,hillshade:Px,fill:Rg,"fill-extrusion":pv,line:D,symbol:gW,background:xW,raster:TW};function EW(k){return k.type==="custom"?new SW(k):new MW[k.type](k)}var SC=s.HTMLImageElement,MC=s.HTMLCanvasElement,EC=s.HTMLVideoElement,kC=s.ImageData,hb=s.ImageBitmap,Og=function(C,V,oe,_e){this.context=C,this.format=oe,this.texture=C.gl.createTexture(),this.update(V,_e)};Og.prototype.update=function(C,V,oe){var _e=C.width,Pe=C.height,je=(!this.size||this.size[0]!==_e||this.size[1]!==Pe)&&!oe,ct=this,Lt=ct.context,Nt=Lt.gl;if(this.useMipmap=!!(V&&V.useMipmap),Nt.bindTexture(Nt.TEXTURE_2D,this.texture),Lt.pixelStoreUnpackFlipY.set(!1),Lt.pixelStoreUnpack.set(1),Lt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Nt.RGBA&&(!V||V.premultiply!==!1)),je)this.size=[_e,Pe],C instanceof SC||C instanceof MC||C instanceof EC||C instanceof kC||hb&&C instanceof hb?Nt.texImage2D(Nt.TEXTURE_2D,0,this.format,this.format,Nt.UNSIGNED_BYTE,C):Nt.texImage2D(Nt.TEXTURE_2D,0,this.format,_e,Pe,0,this.format,Nt.UNSIGNED_BYTE,C.data);else{var Xt=oe||{x:0,y:0},gr=Xt.x,Br=Xt.y;C instanceof SC||C instanceof MC||C instanceof EC||C instanceof kC||hb&&C instanceof hb?Nt.texSubImage2D(Nt.TEXTURE_2D,0,gr,Br,Nt.RGBA,Nt.UNSIGNED_BYTE,C):Nt.texSubImage2D(Nt.TEXTURE_2D,0,gr,Br,_e,Pe,Nt.RGBA,Nt.UNSIGNED_BYTE,C.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Nt.generateMipmap(Nt.TEXTURE_2D)},Og.prototype.bind=function(C,V,oe){var _e=this,Pe=_e.context,je=Pe.gl;je.bindTexture(je.TEXTURE_2D,this.texture),oe===je.LINEAR_MIPMAP_NEAREST&&!this.isSizePowerOfTwo()&&(oe=je.LINEAR),C!==this.filter&&(je.texParameteri(je.TEXTURE_2D,je.TEXTURE_MAG_FILTER,C),je.texParameteri(je.TEXTURE_2D,je.TEXTURE_MIN_FILTER,oe||C),this.filter=C),V!==this.wrap&&(je.texParameteri(je.TEXTURE_2D,je.TEXTURE_WRAP_S,V),je.texParameteri(je.TEXTURE_2D,je.TEXTURE_WRAP_T,V),this.wrap=V)},Og.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1===0},Og.prototype.destroy=function(){var C=this.context,V=C.gl;V.deleteTexture(this.texture),this.texture=null};var mA=function(C){var V=this;this._callback=C,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){V._triggered=!1,V._callback()})};mA.prototype.trigger=function(){var C=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(function(){C._triggered=!1,C._callback()},0))},mA.prototype.remove=function(){delete this._channel,this._callback=function(){}};var V0=function(C,V,oe){this.target=C,this.parent=V,this.mapId=oe,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},L(["receive","process"],this),this.invoker=new mA(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=se()?C:s};V0.prototype.send=function(C,V,oe,_e,Pe){var je=this;Pe===void 0&&(Pe=!1);var ct=Math.round(Math.random()*1e18).toString(36).substring(0,10);oe&&(this.callbacks[ct]=oe);var Lt=$(this.globalScope)?void 0:[];return this.target.postMessage({id:ct,type:C,hasCallback:!!oe,targetMapId:_e,mustQueue:Pe,sourceMapId:this.mapId,data:vt(V,Lt)},Lt),{cancel:function(){oe&&delete je.callbacks[ct],je.target.postMessage({id:ct,type:"<cancel>",targetMapId:_e,sourceMapId:je.mapId})}}},V0.prototype.receive=function(C){var V=C.data,oe=V.id;if(oe&&!(V.targetMapId&&this.mapId!==V.targetMapId))if(V.type==="<cancel>"){delete this.tasks[oe];var _e=this.cancelCallbacks[oe];delete this.cancelCallbacks[oe],_e&&_e()}else se()||V.mustQueue?(this.tasks[oe]=V,this.taskQueue.push(oe),this.invoker.trigger()):this.processTask(oe,V)},V0.prototype.process=function(){if(this.taskQueue.length){var C=this.taskQueue.shift(),V=this.tasks[C];delete this.tasks[C],this.taskQueue.length&&this.invoker.trigger(),V&&this.processTask(C,V)}},V0.prototype.processTask=function(C,V){var oe=this;if(V.type==="<response>"){var _e=this.callbacks[C];delete this.callbacks[C],_e&&(V.error?_e(wt(V.error)):_e(null,wt(V.data)))}else{var Pe=!1,je=$(this.globalScope)?void 0:[],ct=V.hasCallback?function(Br,Rr){Pe=!0,delete oe.cancelCallbacks[C],oe.target.postMessage({id:C,type:"<response>",sourceMapId:oe.mapId,error:Br?vt(Br):null,data:vt(Rr,je)},je)}:function(Br){Pe=!0},Lt=null,Nt=wt(V.data);if(this.parent[V.type])Lt=this.parent[V.type](V.sourceMapId,Nt,ct);else if(this.parent.getWorkerSource){var Xt=V.type.split("."),gr=this.parent.getWorkerSource(V.sourceMapId,Xt[0],Nt.source);Lt=gr[Xt[1]](Nt,ct)}else ct(new Error("Could not find function "+V.type));!Pe&&Lt&&Lt.cancel&&(this.cancelCallbacks[C]=Lt.cancel)}},V0.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function kW(k,C,V){C=Math.pow(2,V)-C-1;var oe=CC(k*256,C*256,V),_e=CC((k+1)*256,(C+1)*256,V);return oe[0]+","+oe[1]+","+_e[0]+","+_e[1]}function CC(k,C,V){var oe=2*Math.PI*6378137/256/Math.pow(2,V),_e=k*oe-2*Math.PI*6378137/2,Pe=C*oe-2*Math.PI*6378137/2;return[_e,Pe]}var Ef=function(C,V){C&&(V?this.setSouthWest(C).setNorthEast(V):C.length===4?this.setSouthWest([C[0],C[1]]).setNorthEast([C[2],C[3]]):this.setSouthWest(C[0]).setNorthEast(C[1]))};Ef.prototype.setNorthEast=function(C){return this._ne=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.setSouthWest=function(C){return this._sw=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.extend=function(C){var V=this._sw,oe=this._ne,_e,Pe;if(C instanceof rc)_e=C,Pe=C;else if(C instanceof Ef){if(_e=C._sw,Pe=C._ne,!_e||!Pe)return this}else{if(Array.isArray(C))if(C.length===4||C.every(Array.isArray)){var je=C;return this.extend(Ef.convert(je))}else{var ct=C;return this.extend(rc.convert(ct))}return this}return!V&&!oe?(this._sw=new rc(_e.lng,_e.lat),this._ne=new rc(Pe.lng,Pe.lat)):(V.lng=Math.min(_e.lng,V.lng),V.lat=Math.min(_e.lat,V.lat),oe.lng=Math.max(Pe.lng,oe.lng),oe.lat=Math.max(Pe.lat,oe.lat)),this},Ef.prototype.getCenter=function(){return new rc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Ef.prototype.getSouthWest=function(){return this._sw},Ef.prototype.getNorthEast=function(){return this._ne},Ef.prototype.getNorthWest=function(){return new rc(this.getWest(),this.getNorth())},Ef.prototype.getSouthEast=function(){return new rc(this.getEast(),this.getSouth())},Ef.prototype.getWest=function(){return this._sw.lng},Ef.prototype.getSouth=function(){return this._sw.lat},Ef.prototype.getEast=function(){return this._ne.lng},Ef.prototype.getNorth=function(){return this._ne.lat},Ef.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Ef.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Ef.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Ef.prototype.contains=function(C){var V=rc.convert(C),oe=V.lng,_e=V.lat,Pe=this._sw.lat<=_e&&_e<=this._ne.lat,je=this._sw.lng<=oe&&oe<=this._ne.lng;return this._sw.lng>this._ne.lng&&(je=this._sw.lng>=oe&&oe>=this._ne.lng),Pe&&je},Ef.convert=function(C){return!C||C instanceof Ef?C:new Ef(C)};var LC=63710088e-1,rc=function(C,V){if(isNaN(C)||isNaN(V))throw new Error("Invalid LngLat object: ("+C+", "+V+")");if(this.lng=+C,this.lat=+V,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};rc.prototype.wrap=function(){return new rc(_(this.lng,-180,180),this.lat)},rc.prototype.toArray=function(){return[this.lng,this.lat]},rc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},rc.prototype.distanceTo=function(C){var V=Math.PI/180,oe=this.lat*V,_e=C.lat*V,Pe=Math.sin(oe)*Math.sin(_e)+Math.cos(oe)*Math.cos(_e)*Math.cos((C.lng-this.lng)*V),je=LC*Math.acos(Math.min(Pe,1));return je},rc.prototype.toBounds=function(C){C===void 0&&(C=0);var V=40075017,oe=360*C/V,_e=oe/Math.cos(Math.PI/180*this.lat);return new Ef(new rc(this.lng-_e,this.lat-oe),new rc(this.lng+_e,this.lat+oe))},rc.convert=function(C){if(C instanceof rc)return C;if(Array.isArray(C)&&(C.length===2||C.length===3))return new rc(Number(C[0]),Number(C[1]));if(!Array.isArray(C)&&typeof C=="object"&&C!==null)return new rc(Number("lng"in C?C.lng:C.lon),Number(C.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var PC=2*Math.PI*LC;function IC(k){return PC*Math.cos(k*Math.PI/180)}function RC(k){return(180+k)/360}function DC(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function zC(k,C){return k/IC(C)}function CW(k){return k*360-180}function gA(k){var C=180-k*360;return 360/Math.PI*Math.atan(Math.exp(C*Math.PI/180))-90}function LW(k,C){return k*IC(gA(C))}function PW(k){return 1/Math.cos(k*Math.PI/180)}var Bg=function(C,V,oe){oe===void 0&&(oe=0),this.x=+C,this.y=+V,this.z=+oe};Bg.fromLngLat=function(C,V){V===void 0&&(V=0);var oe=rc.convert(C);return new Bg(RC(oe.lng),DC(oe.lat),zC(V,oe.lat))},Bg.prototype.toLngLat=function(){return new rc(CW(this.x),gA(this.y))},Bg.prototype.toAltitude=function(){return LW(this.z,this.y)},Bg.prototype.meterInMercatorCoordinateUnits=function(){return 1/PC*PW(gA(this.y))};var Ng=function(C,V,oe){this.z=C,this.x=V,this.y=oe,this.key=Q1(0,C,C,V,oe)};Ng.prototype.equals=function(C){return this.z===C.z&&this.x===C.x&&this.y===C.y},Ng.prototype.url=function(C,V){var oe=kW(this.x,this.y,this.z),_e=IW(this.z,this.x,this.y);return C[(this.x+this.y)%C.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(V==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",_e).replace("{bbox-epsg-3857}",oe)},Ng.prototype.getTilePoint=function(C){var V=Math.pow(2,this.z);return new i((C.x*V-this.x)*Ii,(C.y*V-this.y)*Ii)},Ng.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var FC=function(C,V){this.wrap=C,this.canonical=V,this.key=Q1(C,V.z,V.z,V.x,V.y)},kf=function(C,V,oe,_e,Pe){this.overscaledZ=C,this.wrap=V,this.canonical=new Ng(oe,+_e,+Pe),this.key=Q1(V,C,oe,_e,Pe)};kf.prototype.equals=function(C){return this.overscaledZ===C.overscaledZ&&this.wrap===C.wrap&&this.canonical.equals(C.canonical)},kf.prototype.scaledTo=function(C){var V=this.canonical.z-C;return C>this.canonical.z?new kf(C,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new kf(C,this.wrap,C,this.canonical.x>>V,this.canonical.y>>V)},kf.prototype.calculateScaledKey=function(C,V){var oe=this.canonical.z-C;return C>this.canonical.z?Q1(this.wrap*+V,C,this.canonical.z,this.canonical.x,this.canonical.y):Q1(this.wrap*+V,C,C,this.canonical.x>>oe,this.canonical.y>>oe)},kf.prototype.isChildOf=function(C){if(C.wrap!==this.wrap)return!1;var V=this.canonical.z-C.canonical.z;return C.overscaledZ===0||C.overscaledZ<this.overscaledZ&&C.canonical.x===this.canonical.x>>V&&C.canonical.y===this.canonical.y>>V},kf.prototype.children=function(C){if(this.overscaledZ>=C)return[new kf(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var V=this.canonical.z+1,oe=this.canonical.x*2,_e=this.canonical.y*2;return[new kf(V,this.wrap,V,oe,_e),new kf(V,this.wrap,V,oe+1,_e),new kf(V,this.wrap,V,oe,_e+1),new kf(V,this.wrap,V,oe+1,_e+1)]},kf.prototype.isLessThan=function(C){return this.wrap<C.wrap?!0:this.wrap>C.wrap?!1:this.overscaledZ<C.overscaledZ?!0:this.overscaledZ>C.overscaledZ?!1:this.canonical.x<C.canonical.x?!0:this.canonical.x>C.canonical.x?!1:this.canonical.y<C.canonical.y},kf.prototype.wrapped=function(){return new kf(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},kf.prototype.unwrapTo=function(C){return new kf(this.overscaledZ,C,this.canonical.z,this.canonical.x,this.canonical.y)},kf.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},kf.prototype.toUnwrapped=function(){return new FC(this.wrap,this.canonical)},kf.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},kf.prototype.getTilePoint=function(C){return this.canonical.getTilePoint(new Bg(C.x-this.wrap,C.y))};function Q1(k,C,V,oe,_e){k*=2,k<0&&(k=k*-1-1);var Pe=1<<V;return(Pe*Pe*k+Pe*_e+oe).toString(36)+V.toString(36)+C.toString(36)}function IW(k,C,V){for(var oe="",_e,Pe=k;Pe>0;Pe--)_e=1<<Pe-1,oe+=(C&_e?1:0)+(V&_e?2:0);return oe}de("CanonicalTileID",Ng),de("OverscaledTileID",kf,{omit:["posMatrix"]});var Bv=function(C,V,oe){if(this.uid=C,V.height!==V.width)throw new RangeError("DEM tiles must be square");if(oe&&oe!=="mapbox"&&oe!=="terrarium")return U('"'+oe+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');this.stride=V.height;var _e=this.dim=V.height-2;this.data=new Uint32Array(V.data.buffer),this.encoding=oe||"mapbox";for(var Pe=0;Pe<_e;Pe++)this.data[this._idx(-1,Pe)]=this.data[this._idx(0,Pe)],this.data[this._idx(_e,Pe)]=this.data[this._idx(_e-1,Pe)],this.data[this._idx(Pe,-1)]=this.data[this._idx(Pe,0)],this.data[this._idx(Pe,_e)]=this.data[this._idx(Pe,_e-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(_e,-1)]=this.data[this._idx(_e-1,0)],this.data[this._idx(-1,_e)]=this.data[this._idx(0,_e-1)],this.data[this._idx(_e,_e)]=this.data[this._idx(_e-1,_e-1)]};Bv.prototype.get=function(C,V){var oe=new Uint8Array(this.data.buffer),_e=this._idx(C,V)*4,Pe=this.encoding==="terrarium"?this._unpackTerrarium:this._unpackMapbox;return Pe(oe[_e],oe[_e+1],oe[_e+2])},Bv.prototype.getUnpackVector=function(){return this.encoding==="terrarium"?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},Bv.prototype._idx=function(C,V){if(C<-1||C>=this.dim+1||V<-1||V>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(V+1)*this.stride+(C+1)},Bv.prototype._unpackMapbox=function(C,V,oe){return(C*256*256+V*256+oe)/10-1e4},Bv.prototype._unpackTerrarium=function(C,V,oe){return C*256+V+oe/256-32768},Bv.prototype.getPixels=function(){return new Of({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bv.prototype.backfillBorder=function(C,V,oe){if(this.dim!==C.dim)throw new Error("dem dimension mismatch");var _e=V*this.dim,Pe=V*this.dim+this.dim,je=oe*this.dim,ct=oe*this.dim+this.dim;switch(V){case-1:_e=Pe-1;break;case 1:Pe=_e+1;break}switch(oe){case-1:je=ct-1;break;case 1:ct=je+1;break}for(var Lt=-V*this.dim,Nt=-oe*this.dim,Xt=je;Xt<ct;Xt++)for(var gr=_e;gr<Pe;gr++)this.data[this._idx(gr,Xt)]=C.data[this._idx(gr+Lt,Xt+Nt)]},de("DEMData",Bv);function RW(k,C){var V={};if(!C)return V;for(var oe=function(){var je=Pe[_e],ct=je.layerIds.map(function(gr){return C.getLayer(gr)}).filter(Boolean);if(ct.length!==0){je.layers=ct,je.stateDependentLayerIds&&(je.stateDependentLayers=je.stateDependentLayerIds.map(function(gr){return ct.filter(function(Br){return Br.id===gr})[0]}));for(var Lt=0,Nt=ct;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt];V[Xt.id]=je}}},_e=0,Pe=k;_e<Pe.length;_e+=1)oe();return V}var pb=function(C){this._stringToNumber={},this._numberToString=[];for(var V=0;V<C.length;V++){var oe=C[V];this._stringToNumber[oe]=V,this._numberToString[V]=oe}};pb.prototype.encode=function(C){return this._stringToNumber[C]},pb.prototype.decode=function(C){return this._numberToString[C]};var db=function(C,V,oe,_e,Pe){this.type="Feature",this._vectorTileFeature=C,C._z=V,C._x=oe,C._y=_e,this.properties=C.properties,this.id=Pe},yA={geometry:{configurable:!0}};yA.geometry.get=function(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},yA.geometry.set=function(k){this._geometry=k},db.prototype.toJSON=function(){var C={geometry:this.geometry};for(var V in this)V==="_geometry"||V==="_vectorTileFeature"||(C[V]=this[V]);return C},Object.defineProperties(db.prototype,yA);var q0=function(){this.state={},this.stateChanges={},this.deletedStates={}};q0.prototype.updateState=function(C,V,oe){var _e=String(V);if(this.stateChanges[C]=this.stateChanges[C]||{},this.stateChanges[C][_e]=this.stateChanges[C][_e]||{},m(this.stateChanges[C][_e],oe),this.deletedStates[C]===null){this.deletedStates[C]={};for(var Pe in this.state[C])Pe!==_e&&(this.deletedStates[C][Pe]=null)}else{var je=this.deletedStates[C]&&this.deletedStates[C][_e]===null;if(je){this.deletedStates[C][_e]={};for(var ct in this.state[C][_e])oe[ct]||(this.deletedStates[C][_e][ct]=null)}else for(var Lt in oe){var Nt=this.deletedStates[C]&&this.deletedStates[C][_e]&&this.deletedStates[C][_e][Lt]===null;Nt&&delete this.deletedStates[C][_e][Lt]}}},q0.prototype.removeFeatureState=function(C,V,oe){var _e=this.deletedStates[C]===null;if(!_e){var Pe=String(V);if(this.deletedStates[C]=this.deletedStates[C]||{},oe&&V!==void 0)this.deletedStates[C][Pe]!==null&&(this.deletedStates[C][Pe]=this.deletedStates[C][Pe]||{},this.deletedStates[C][Pe][oe]=null);else if(V!==void 0){var je=this.stateChanges[C]&&this.stateChanges[C][Pe];if(je){this.deletedStates[C][Pe]={};for(oe in this.stateChanges[C][Pe])this.deletedStates[C][Pe][oe]=null}else this.deletedStates[C][Pe]=null}else this.deletedStates[C]=null}},q0.prototype.getState=function(C,V){var oe=String(V),_e=this.state[C]||{},Pe=this.stateChanges[C]||{},je=m({},_e[oe],Pe[oe]);if(this.deletedStates[C]===null)return{};if(this.deletedStates[C]){var ct=this.deletedStates[C][V];if(ct===null)return{};for(var Lt in ct)delete je[Lt]}return je},q0.prototype.initializeTileState=function(C,V){C.setFeatureState(this.state,V)},q0.prototype.coalesceChanges=function(C,V){var oe={};for(var _e in this.stateChanges){this.state[_e]=this.state[_e]||{};var Pe={};for(var je in this.stateChanges[_e])this.state[_e][je]||(this.state[_e][je]={}),m(this.state[_e][je],this.stateChanges[_e][je]),Pe[je]=this.state[_e][je];oe[_e]=Pe}for(var ct in this.deletedStates){this.state[ct]=this.state[ct]||{};var Lt={};if(this.deletedStates[ct]===null)for(var Nt in this.state[ct])Lt[Nt]={},this.state[ct][Nt]={};else for(var Xt in this.deletedStates[ct]){var gr=this.deletedStates[ct][Xt]===null;if(gr)this.state[ct][Xt]={};else for(var Br=0,Rr=Object.keys(this.deletedStates[ct][Xt]);Br<Rr.length;Br+=1){var na=Rr[Br];delete this.state[ct][Xt][na]}Lt[Xt]=this.state[ct][Xt]}oe[ct]=oe[ct]||{},m(oe[ct],Lt)}if(this.stateChanges={},this.deletedStates={},Object.keys(oe).length!==0)for(var Ia in C){var ii=C[Ia];ii.setFeatureState(oe,V)}};var Nv=function(C,V){this.tileID=C,this.x=C.canonical.x,this.y=C.canonical.y,this.z=C.canonical.z,this.grid=new fu(Ii,16,0),this.grid3D=new fu(Ii,16,0),this.featureIndexArray=new Vc,this.promoteId=V};Nv.prototype.insert=function(C,V,oe,_e,Pe,je){var ct=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(oe,_e,Pe);for(var Lt=je?this.grid3D:this.grid,Nt=0;Nt<V.length;Nt++){for(var Xt=V[Nt],gr=[1/0,1/0,-1/0,-1/0],Br=0;Br<Xt.length;Br++){var Rr=Xt[Br];gr[0]=Math.min(gr[0],Rr.x),gr[1]=Math.min(gr[1],Rr.y),gr[2]=Math.max(gr[2],Rr.x),gr[3]=Math.max(gr[3],Rr.y)}gr[0]<Ii&&gr[1]<Ii&&gr[2]>=0&&gr[3]>=0&&Lt.insert(ct,gr[0],gr[1],gr[2],gr[3])}},Nv.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Zd.VectorTile(new eo(this.rawTileData)).layers,this.sourceLayerCoder=new pb(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Nv.prototype.query=function(C,V,oe,_e){var Pe=this;this.loadVTLayers();for(var je=C.params||{},ct=Ii/C.tileSize/C.scale,Lt=Je(je.filter),Nt=C.queryGeometry,Xt=C.queryPadding*ct,gr=BC(Nt),Br=this.grid.query(gr.minX-Xt,gr.minY-Xt,gr.maxX+Xt,gr.maxY+Xt),Rr=BC(C.cameraQueryGeometry),na=this.grid3D.query(Rr.minX-Xt,Rr.minY-Xt,Rr.maxX+Xt,Rr.maxY+Xt,function(Ki,kn,Tn,lo){return rd(C.cameraQueryGeometry,Ki-Xt,kn-Xt,Tn+Xt,lo+Xt)}),Ia=0,ii=na;Ia<ii.length;Ia+=1){var Wa=ii[Ia];Br.push(Wa)}Br.sort(DW);for(var Si={},ci,Ai=function(Ki){var kn=Br[Ki];if(kn!==ci){ci=kn;var Tn=Pe.featureIndexArray.get(kn),lo=null;Pe.loadMatchingFeature(Si,Tn.bucketIndex,Tn.sourceLayerIndex,Tn.featureIndex,Lt,je.layers,je.availableImages,V,oe,_e,function(qn,to,ds){return lo||(lo=zn(qn)),to.queryIntersectsFeature(Nt,qn,ds,lo,Pe.z,C.transform,ct,C.pixelPosMatrix)})}},Li=0;Li<Br.length;Li++)Ai(Li);return Si},Nv.prototype.loadMatchingFeature=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.bucketLayerIDs[V];if(!(je&&!I(je,Br))){var Rr=this.sourceLayerCoder.decode(oe),na=this.vtLayers[Rr],Ia=na.feature(_e);if(Pe.needGeometry){var ii=ms(Ia,!0);if(!Pe.filter(new Vi(this.tileID.overscaledZ),ii,this.tileID.canonical))return}else if(!Pe.filter(new Vi(this.tileID.overscaledZ),Ia))return;for(var Wa=this.getId(Ia,Rr),Si=0;Si<Br.length;Si++){var ci=Br[Si];if(!(je&&je.indexOf(ci)<0)){var Ai=Lt[ci];if(Ai){var Li={};Wa!==void 0&&Xt&&(Li=Xt.getState(Ai.sourceLayer||"_geojsonTileLayer",Wa));var Ki=m({},Nt[ci]);Ki.paint=OC(Ki.paint,Ai.paint,Ia,Li,ct),Ki.layout=OC(Ki.layout,Ai.layout,Ia,Li,ct);var kn=!gr||gr(Ia,Ai,Li);if(kn){var Tn=new db(Ia,this.z,this.x,this.y,Wa);Tn.layer=Ki;var lo=C[ci];lo===void 0&&(lo=C[ci]=[]),lo.push({featureIndex:_e,feature:Tn,intersectionZ:kn})}}}}}},Nv.prototype.lookupSymbolFeatures=function(C,V,oe,_e,Pe,je,ct,Lt){var Nt={};this.loadVTLayers();for(var Xt=Je(Pe),gr=0,Br=C;gr<Br.length;gr+=1){var Rr=Br[gr];this.loadMatchingFeature(Nt,oe,_e,Rr,Xt,je,ct,Lt,V)}return Nt},Nv.prototype.hasLayer=function(C){for(var V=0,oe=this.bucketLayerIDs;V<oe.length;V+=1)for(var _e=oe[V],Pe=0,je=_e;Pe<je.length;Pe+=1){var ct=je[Pe];if(C===ct)return!0}return!1},Nv.prototype.getId=function(C,V){var oe=C.id;if(this.promoteId){var _e=typeof this.promoteId=="string"?this.promoteId:this.promoteId[V];oe=C.properties[_e],typeof oe=="boolean"&&(oe=Number(oe))}return oe},de("FeatureIndex",Nv,{omit:["rawTileData","sourceLayerCoder"]});function OC(k,C,V,oe,_e){return F(k,function(Pe,je){var ct=C instanceof dc?C.get(je):null;return ct&&ct.evaluate?ct.evaluate(V,oe,_e):ct})}function BC(k){for(var C=1/0,V=1/0,oe=-1/0,_e=-1/0,Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe];C=Math.min(C,ct.x),V=Math.min(V,ct.y),oe=Math.max(oe,ct.x),_e=Math.max(_e,ct.y)}return{minX:C,minY:V,maxX:oe,maxY:_e}}function DW(k,C){return C-k}var zW=3e4,ah=function(C,V){this.tileID=C,this.uid=u(),this.uses=0,this.tileSize=V,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state="loading"};ah.prototype.registerFadeDuration=function(C){var V=C+this.timeAdded;V<be.now()||this.fadeEndTime&&V<this.fadeEndTime||(this.fadeEndTime=V)},ah.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},ah.prototype.loadVectorData=function(C,V,oe){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",!C){this.collisionBoxArray=new Ws;return}C.featureIndex&&(this.latestFeatureIndex=C.featureIndex,C.rawTileData?(this.latestRawTileData=C.rawTileData,this.latestFeatureIndex.rawTileData=C.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=C.collisionBoxArray,this.buckets=RW(C.buckets,V.style),this.hasSymbolBuckets=!1;for(var _e in this.buckets){var Pe=this.buckets[_e];if(Pe instanceof su)if(this.hasSymbolBuckets=!0,oe)Pe.justReloaded=!0;else break}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var je in this.buckets){var ct=this.buckets[je];if(ct instanceof su&&ct.hasRTLText){this.hasRTLText=!0,sl();break}}this.queryPadding=0;for(var Lt in this.buckets){var Nt=this.buckets[Lt];this.queryPadding=Math.max(this.queryPadding,V.style.getLayer(Lt).queryRadius(Nt))}C.imageAtlas&&(this.imageAtlas=C.imageAtlas),C.glyphAtlasImage&&(this.glyphAtlasImage=C.glyphAtlasImage)},ah.prototype.unloadVectorData=function(){for(var C in this.buckets)this.buckets[C].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"},ah.prototype.getBucket=function(C){return this.buckets[C.id]},ah.prototype.upload=function(C){for(var V in this.buckets){var oe=this.buckets[V];oe.uploadPending()&&oe.upload(C)}var _e=C.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Og(C,this.imageAtlas.image,_e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Og(C,this.glyphAtlasImage,_e.ALPHA),this.glyphAtlasImage=null)},ah.prototype.prepare=function(C){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(C,this.imageAtlasTexture)},ah.prototype.queryRenderedFeatures=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){return!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData?{}:this.latestFeatureIndex.query({queryGeometry:_e,cameraQueryGeometry:Pe,scale:je,tileSize:this.tileSize,pixelPosMatrix:Xt,transform:Lt,params:ct,queryPadding:this.queryPadding*Nt},C,V,oe)},ah.prototype.querySourceFeatures=function(C,V){var oe=this.latestFeatureIndex;if(!(!oe||!oe.rawTileData)){var _e=oe.loadVTLayers(),Pe=V?V.sourceLayer:"",je=_e._geojsonTileLayer||_e[Pe];if(je)for(var ct=Je(V&&V.filter),Lt=this.tileID.canonical,Nt=Lt.z,Xt=Lt.x,gr=Lt.y,Br={z:Nt,x:Xt,y:gr},Rr=0;Rr<je.length;Rr++){var na=je.feature(Rr);if(ct.needGeometry){var Ia=ms(na,!0);if(!ct.filter(new Vi(this.tileID.overscaledZ),Ia,this.tileID.canonical))continue}else if(!ct.filter(new Vi(this.tileID.overscaledZ),na))continue;var ii=oe.getId(na,Pe),Wa=new db(na,Nt,Xt,gr,ii);Wa.tile=Br,C.push(Wa)}}},ah.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},ah.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},ah.prototype.setExpiryData=function(C){var V=this.expirationTime;if(C.cacheControl){var oe=he(C.cacheControl);oe["max-age"]&&(this.expirationTime=Date.now()+oe["max-age"]*1e3)}else C.expires&&(this.expirationTime=new Date(C.expires).getTime());if(this.expirationTime){var _e=Date.now(),Pe=!1;if(this.expirationTime>_e)Pe=!1;else if(!V)Pe=!0;else if(this.expirationTime<V)Pe=!0;else{var je=this.expirationTime-V;je?this.expirationTime=_e+Math.max(je,zW):Pe=!0}Pe?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},ah.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-new Date().getTime(),Math.pow(2,31)-1)},ah.prototype.setFeatureState=function(C,V){if(!(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(C).length===0)){var oe=this.latestFeatureIndex.loadVTLayers();for(var _e in this.buckets)if(V.style.hasLayer(_e)){var Pe=this.buckets[_e],je=Pe.layers[0].sourceLayer||"_geojsonTileLayer",ct=oe[je],Lt=C[je];if(!(!ct||!Lt||Object.keys(Lt).length===0)){Pe.update(Lt,ct,this.imageAtlas&&this.imageAtlas.patternPositions||{});var Nt=V&&V.style&&V.style.getLayer(_e);Nt&&(this.queryPadding=Math.max(this.queryPadding,Nt.queryRadius(Pe)))}}}},ah.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},ah.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<be.now()},ah.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},ah.prototype.setHoldDuration=function(C){this.symbolFadeHoldUntil=be.now()+C},ah.prototype.setDependencies=function(C,V){for(var oe={},_e=0,Pe=V;_e<Pe.length;_e+=1){var je=Pe[_e];oe[je]=!0}this.dependencies[C]=oe},ah.prototype.hasDependency=function(C,V){for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.dependencies[Pe];if(je)for(var ct=0,Lt=V;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(je[Nt])return!0}}return!1};var FW=["type","source","source-layer","minzoom","maxzoom","filter","layout"],gm=s.performance,NC=function(C){this._marks={start:[C.url,"start"].join("#"),end:[C.url,"end"].join("#"),measure:C.url.toString()},gm.mark(this._marks.start)};NC.prototype.finish=function(){gm.mark(this._marks.end);var C=gm.getEntriesByName(this._marks.measure);return C.length===0&&(gm.measure(this._marks.measure,this._marks.start,this._marks.end),C=gm.getEntriesByName(this._marks.measure),gm.clearMarks(this._marks.start),gm.clearMarks(this._marks.end),gm.clearMeasures(this._marks.measure)),C},e.Actor=V0,e.AlphaImage=Cp,e.CanonicalTileID=Ng,e.CollisionBoxArray=Ws,e.Color=Rs,e.DEMData=Bv,e.DataConstantProperty=Qt,e.DictionaryCoder=pb,e.EXTENT=Ii,e.ErrorEvent=Fr,e.EvaluationParameters=Vi,e.Event=Mr,e.Evented=Lr,e.FeatureIndex=Nv,e.FillBucket=ad,e.FillExtrusionBucket=fd,e.ImageAtlas=Xd,e.ImagePosition=gf,e.LineBucket=Mf,e.LngLat=rc,e.LngLatBounds=Ef,e.MercatorCoordinate=Bg,e.ONE_EM=Ei,e.OverscaledTileID=kf,e.Point=i,e.Point$1=i,e.Properties=xi,e.Protobuf=eo,e.RGBAImage=Of,e.RequestManager=ce,e.RequestPerformance=NC,e.ResourceType=Ua,e.SegmentVector=Cs,e.SourceFeatureState=q0,e.StructArrayLayout1ui2=As,e.StructArrayLayout2f1f2i16=xn,e.StructArrayLayout2i4=Mi,e.StructArrayLayout3ui6=jn,e.StructArrayLayout4i8=tn,e.SymbolBucket=su,e.Texture=Og,e.Tile=ah,e.Transitionable=hs,e.Uniform1f=tr,e.Uniform1i=qt,e.Uniform2f=dr,e.Uniform3f=Pr,e.Uniform4f=Vr,e.UniformColor=Hr,e.UniformMatrix4f=Qr,e.UnwrappedTileID=FC,e.ValidationError=mn,e.WritingMode=dp,e.ZoomHistory=Jt,e.add=kp,e.addDynamicAttributes=dA,e.asyncAll=w,e.bezier=p,e.bindAll=L,e.browser=be,e.cacheEntryPossiblyAdded=sa,e.clamp=l,e.clearTileCache=La,e.clipLine=_C,e.clone=nm,e.clone$1=O,e.clone$2=y0,e.collisionCircleLayout=$t,e.config=Ae,e.create=im,e.create$1=eh,e.create$2=Hd,e.createCommonjsModule=t,e.createExpression=Po,e.createLayout=on,e.createStyleLayer=EW,e.cross=UT,e.deepEqual=c,e.dot=NT,e.dot$1=GT,e.ease=T,e.emitValidationErrors=qu,e.endsWith=z,e.enforceCacheSizeLimit=Aa,e.evaluateSizeForFeature=hC,e.evaluateSizeForZoom=pC,e.evaluateVariableOffset=wC,e.evented=Vn,e.extend=m,e.featureFilter=Je,e.filterObject=B,e.fromRotation=iv,e.getAnchorAlignment=K1,e.getAnchorJustification=pA,e.getArrayBuffer=pa,e.getImage=Er,e.getJSON=Zr,e.getRTLTextPluginStatus=No,e.getReferrer=Wt,e.getVideo=kr,e.identity=Pv,e.invert=nv,e.isChar=Rt,e.isMapboxURL=ze,e.keysDifference=E,e.makeRequest=xr,e.mapObject=F,e.mercatorXfromLng=RC,e.mercatorYfromLat=DC,e.mercatorZfromAltitude=zC,e.mul=xg,e.multiply=ov,e.mvt=Zd,e.nextPowerOfTwo=f,e.normalize=bg,e.number=xl,e.offscreenCanvasSupported=Ma,e.ortho=Ql,e.parseGlyphPBF=_d,e.pbf=eo,e.performSymbolLayout=sW,e.perspective=om,e.pick=b,e.plugin=Gs,e.polygonIntersectsPolygon=qo,e.postMapLoadEvent=Ne,e.postTurnstileEvent=Fe,e.potpack=Wp,e.refProperties=FW,e.register=de,e.registerForPluginStateChange=Gn,e.renderColorRamp=Ag,e.rotate=Lv,e.rotateX=Lh,e.rotateZ=Iv,e.scale=Bl,e.scale$1=HT,e.scale$2=_0,e.setCacheLimits=ka,e.setRTLTextPlugin=Fo,e.sphericalToCartesian=ue,e.sqrLen=L1,e.styleSpec=fi,e.sub=VT,e.symbolSize=$G,e.transformMat3=jT,e.transformMat4=Rv,e.translate=Du,e.triggerPluginCompletionEvent=hn,e.uniqueId=u,e.validateCustomStyleLayer=AW,e.validateLight=Go,e.validateStyle=Zo,e.values=S,e.vectorTile=Zd,e.version=r,e.warnOnce=U,e.webpSupported=Be,e.window=s,e.wrap=_}),M(["./shared"],function(e){"use strict";function t(Wt){var zt=typeof Wt;if(zt==="number"||zt==="boolean"||zt==="string"||Wt===void 0||Wt===null)return JSON.stringify(Wt);if(Array.isArray(Wt)){for(var Vt="[",Ut=0,xr=Wt;Ut<xr.length;Ut+=1){var Zr=xr[Ut];Vt+=t(Zr)+","}return Vt+"]"}for(var pa=Object.keys(Wt).sort(),Xr="{",Ea=0;Ea<pa.length;Ea++)Xr+=JSON.stringify(pa[Ea])+":"+t(Wt[pa[Ea]])+",";return Xr+"}"}function r(Wt){for(var zt="",Vt=0,Ut=e.refProperties;Vt<Ut.length;Vt+=1){var xr=Ut[Vt];zt+="/"+t(Wt[xr])}return zt}function o(Wt,zt){for(var Vt={},Ut=0;Ut<Wt.length;Ut++){var xr=zt&&zt[Wt[Ut].id]||r(Wt[Ut]);zt&&(zt[Wt[Ut].id]=xr);var Zr=Vt[xr];Zr||(Zr=Vt[xr]=[]),Zr.push(Wt[Ut])}var pa=[];for(var Xr in Vt)pa.push(Vt[Xr]);return pa}var a=function(zt){this.keyCache={},zt&&this.replace(zt)};a.prototype.replace=function(zt){this._layerConfigs={},this._layers={},this.update(zt,[])},a.prototype.update=function(zt,Vt){for(var Ut=this,xr=0,Zr=zt;xr<Zr.length;xr+=1){var pa=Zr[xr];this._layerConfigs[pa.id]=pa;var Xr=this._layers[pa.id]=e.createStyleLayer(pa);Xr._featureFilter=e.featureFilter(Xr.filter),this.keyCache[pa.id]&&delete this.keyCache[pa.id]}for(var Ea=0,Fa=Vt;Ea<Fa.length;Ea+=1){var qa=Fa[Ea];delete this.keyCache[qa],delete this._layerConfigs[qa],delete this._layers[qa]}this.familiesBySource={};for(var ya=o(e.values(this._layerConfigs),this.keyCache),$a=0,mt=ya;$a<mt.length;$a+=1){var gt=mt[$a],Er=gt.map(function(Lr){return Ut._layers[Lr.id]}),kr=Er[0];if(kr.visibility!=="none"){var br=kr.source||"",Tr=this.familiesBySource[br];Tr||(Tr=this.familiesBySource[br]={});var Mr=kr.sourceLayer||"_geojsonTileLayer",Fr=Tr[Mr];Fr||(Fr=Tr[Mr]=[]),Fr.push(Er)}}};var i=1,n=function(zt){var Vt={},Ut=[];for(var xr in zt){var Zr=zt[xr],pa=Vt[xr]={};for(var Xr in Zr){var Ea=Zr[+Xr];if(!(!Ea||Ea.bitmap.width===0||Ea.bitmap.height===0)){var Fa={x:0,y:0,w:Ea.bitmap.width+2*i,h:Ea.bitmap.height+2*i};Ut.push(Fa),pa[Xr]={rect:Fa,metrics:Ea.metrics}}}}var qa=e.potpack(Ut),ya=qa.w,$a=qa.h,mt=new e.AlphaImage({width:ya||1,height:$a||1});for(var gt in zt){var Er=zt[gt];for(var kr in Er){var br=Er[+kr];if(!(!br||br.bitmap.width===0||br.bitmap.height===0)){var Tr=Vt[gt][kr].rect;e.AlphaImage.copy(br.bitmap,mt,{x:0,y:0},{x:Tr.x+i,y:Tr.y+i},br.bitmap)}}}this.image=mt,this.positions=Vt};e.register("GlyphAtlas",n);var s=function(zt){this.tileID=new e.OverscaledTileID(zt.tileID.overscaledZ,zt.tileID.wrap,zt.tileID.canonical.z,zt.tileID.canonical.x,zt.tileID.canonical.y),this.uid=zt.uid,this.zoom=zt.zoom,this.pixelRatio=zt.pixelRatio,this.tileSize=zt.tileSize,this.source=zt.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=zt.showCollisionBoxes,this.collectResourceTiming=!!zt.collectResourceTiming,this.returnDependencies=!!zt.returnDependencies,this.promoteId=zt.promoteId};s.prototype.parse=function(zt,Vt,Ut,xr,Zr){var pa=this;this.status="parsing",this.data=zt,this.collisionBoxArray=new e.CollisionBoxArray;var Xr=new e.DictionaryCoder(Object.keys(zt.layers).sort()),Ea=new e.FeatureIndex(this.tileID,this.promoteId);Ea.bucketLayerIDs=[];var Fa={},qa={featureIndex:Ea,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ut},ya=Vt.familiesBySource[this.source];for(var $a in ya){var mt=zt.layers[$a];if(mt){mt.version===1&&e.warnOnce('Vector tile source "'+this.source+'" layer "'+$a+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var gt=Xr.encode($a),Er=[],kr=0;kr<mt.length;kr++){var br=mt.feature(kr),Tr=Ea.getId(br,$a);Er.push({feature:br,id:Tr,index:kr,sourceLayerIndex:gt})}for(var Mr=0,Fr=ya[$a];Mr<Fr.length;Mr+=1){var Lr=Fr[Mr],Jr=Lr[0];if(!(Jr.minzoom&&this.zoom<Math.floor(Jr.minzoom))&&!(Jr.maxzoom&&this.zoom>=Jr.maxzoom)&&Jr.visibility!=="none"){c(Lr,this.zoom,Ut);var oa=Fa[Jr.id]=Jr.createBucket({index:Ea.bucketLayerIDs.length,layers:Lr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:gt,sourceID:this.source});oa.populate(Er,qa,this.tileID.canonical),Ea.bucketLayerIDs.push(Lr.map(function(da){return da.id}))}}}}var ca,kt,ir,mr,$r=e.mapObject(qa.glyphDependencies,function(da){return Object.keys(da).map(Number)});Object.keys($r).length?xr.send("getGlyphs",{uid:this.uid,stacks:$r},function(da,Sa){ca||(ca=da,kt=Sa,Ca.call(pa))}):kt={};var ma=Object.keys(qa.iconDependencies);ma.length?xr.send("getImages",{icons:ma,source:this.source,tileID:this.tileID,type:"icons"},function(da,Sa){ca||(ca=da,ir=Sa,Ca.call(pa))}):ir={};var Ba=Object.keys(qa.patternDependencies);Ba.length?xr.send("getImages",{icons:Ba,source:this.source,tileID:this.tileID,type:"patterns"},function(da,Sa){ca||(ca=da,mr=Sa,Ca.call(pa))}):mr={},Ca.call(this);function Ca(){if(ca)return Zr(ca);if(kt&&ir&&mr){var da=new n(kt),Sa=new e.ImageAtlas(ir,mr);for(var Ti in Fa){var ai=Fa[Ti];ai instanceof e.SymbolBucket?(c(ai.layers,this.zoom,Ut),e.performSymbolLayout(ai,kt,da.positions,ir,Sa.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):ai.hasPattern&&(ai instanceof e.LineBucket||ai instanceof e.FillBucket||ai instanceof e.FillExtrusionBucket)&&(c(ai.layers,this.zoom,Ut),ai.addFeatures(qa,this.tileID.canonical,Sa.patternPositions))}this.status="done",Zr(null,{buckets:e.values(Fa).filter(function(an){return!an.isEmpty()}),featureIndex:Ea,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:da.image,imageAtlas:Sa,glyphMap:this.returnDependencies?kt:null,iconMap:this.returnDependencies?ir:null,glyphPositions:this.returnDependencies?da.positions:null})}}};function c(Wt,zt,Vt){for(var Ut=new e.EvaluationParameters(zt),xr=0,Zr=Wt;xr<Zr.length;xr+=1){var pa=Zr[xr];pa.recalculate(Ut,Vt)}}function h(Wt,zt){var Vt=e.getArrayBuffer(Wt.request,function(Ut,xr,Zr,pa){Ut?zt(Ut):xr&&zt(null,{vectorTile:new e.vectorTile.VectorTile(new e.pbf(xr)),rawData:xr,cacheControl:Zr,expires:pa})});return function(){Vt.cancel(),zt()}}var v=function(zt,Vt,Ut,xr){this.actor=zt,this.layerIndex=Vt,this.availableImages=Ut,this.loadVectorData=xr||h,this.loading={},this.loaded={}};v.prototype.loadTile=function(zt,Vt){var Ut=this,xr=zt.uid;this.loading||(this.loading={});var Zr=zt&&zt.request&&zt.request.collectResourceTiming?new e.RequestPerformance(zt.request):!1,pa=this.loading[xr]=new s(zt);pa.abort=this.loadVectorData(zt,function(Xr,Ea){if(delete Ut.loading[xr],Xr||!Ea)return pa.status="done",Ut.loaded[xr]=pa,Vt(Xr);var Fa=Ea.rawData,qa={};Ea.expires&&(qa.expires=Ea.expires),Ea.cacheControl&&(qa.cacheControl=Ea.cacheControl);var ya={};if(Zr){var $a=Zr.finish();$a&&(ya.resourceTiming=JSON.parse(JSON.stringify($a)))}pa.vectorTile=Ea.vectorTile,pa.parse(Ea.vectorTile,Ut.layerIndex,Ut.availableImages,Ut.actor,function(mt,gt){if(mt||!gt)return Vt(mt);Vt(null,e.extend({rawTileData:Fa.slice(0)},gt,qa,ya))}),Ut.loaded=Ut.loaded||{},Ut.loaded[xr]=pa})},v.prototype.reloadTile=function(zt,Vt){var Ut=this,xr=this.loaded,Zr=zt.uid,pa=this;if(xr&&xr[Zr]){var Xr=xr[Zr];Xr.showCollisionBoxes=zt.showCollisionBoxes;var Ea=function(Fa,qa){var ya=Xr.reloadCallback;ya&&(delete Xr.reloadCallback,Xr.parse(Xr.vectorTile,pa.layerIndex,Ut.availableImages,pa.actor,ya)),Vt(Fa,qa)};Xr.status==="parsing"?Xr.reloadCallback=Ea:Xr.status==="done"&&(Xr.vectorTile?Xr.parse(Xr.vectorTile,this.layerIndex,this.availableImages,this.actor,Ea):Ea())}},v.prototype.abortTile=function(zt,Vt){var Ut=this.loading,xr=zt.uid;Ut&&Ut[xr]&&Ut[xr].abort&&(Ut[xr].abort(),delete Ut[xr]),Vt()},v.prototype.removeTile=function(zt,Vt){var Ut=this.loaded,xr=zt.uid;Ut&&Ut[xr]&&delete Ut[xr],Vt()};var p=e.window.ImageBitmap,T=function(){this.loaded={}};T.prototype.loadTile=function(zt,Vt){var Ut=zt.uid,xr=zt.encoding,Zr=zt.rawImageData,pa=p&&Zr instanceof p?this.getImageData(Zr):Zr,Xr=new e.DEMData(Ut,pa,xr);this.loaded=this.loaded||{},this.loaded[Ut]=Xr,Vt(null,Xr)},T.prototype.getImageData=function(zt){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(zt.width,zt.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=zt.width,this.offscreenCanvas.height=zt.height,this.offscreenCanvasContext.drawImage(zt,0,0,zt.width,zt.height);var Vt=this.offscreenCanvasContext.getImageData(-1,-1,zt.width+2,zt.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new e.RGBAImage({width:Vt.width,height:Vt.height},Vt.data)},T.prototype.removeTile=function(zt){var Vt=this.loaded,Ut=zt.uid;Vt&&Vt[Ut]&&delete Vt[Ut]};var l=_;function _(Wt,zt){var Vt=Wt&&Wt.type,Ut;if(Vt==="FeatureCollection")for(Ut=0;Ut<Wt.features.length;Ut++)_(Wt.features[Ut],zt);else if(Vt==="GeometryCollection")for(Ut=0;Ut<Wt.geometries.length;Ut++)_(Wt.geometries[Ut],zt);else if(Vt==="Feature")_(Wt.geometry,zt);else if(Vt==="Polygon")w(Wt.coordinates,zt);else if(Vt==="MultiPolygon")for(Ut=0;Ut<Wt.coordinates.length;Ut++)w(Wt.coordinates[Ut],zt);return Wt}function w(Wt,zt){if(Wt.length!==0){S(Wt[0],zt);for(var Vt=1;Vt<Wt.length;Vt++)S(Wt[Vt],!zt)}}function S(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-1;Ut<xr;Zr=Ut++)Vt+=(Wt[Ut][0]-Wt[Zr][0])*(Wt[Zr][1]+Wt[Ut][1]);Vt>=0!=!!zt&&Wt.reverse()}var E=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(zt){this._feature=zt,this.extent=e.EXTENT,this.type=zt.type,this.properties=zt.tags,"id"in zt&&!isNaN(zt.id)&&(this.id=parseInt(zt.id,10))};m.prototype.loadGeometry=function(){if(this._feature.type===1){for(var zt=[],Vt=0,Ut=this._feature.geometry;Vt<Ut.length;Vt+=1){var xr=Ut[Vt];zt.push([new e.Point$1(xr[0],xr[1])])}return zt}else{for(var Zr=[],pa=0,Xr=this._feature.geometry;pa<Xr.length;pa+=1){for(var Ea=Xr[pa],Fa=[],qa=0,ya=Ea;qa<ya.length;qa+=1){var $a=ya[qa];Fa.push(new e.Point$1($a[0],$a[1]))}Zr.push(Fa)}return Zr}},m.prototype.toGeoJSON=function(zt,Vt,Ut){return E.call(this,zt,Vt,Ut)};var b=function(zt){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.EXTENT,this.length=zt.length,this._features=zt};b.prototype.feature=function(zt){return new m(this._features[zt])};var d=e.vectorTile.VectorTileFeature,u=y;function y(Wt,zt){this.options=zt||{},this.features=Wt,this.length=Wt.length}y.prototype.feature=function(Wt){return new f(this.features[Wt],this.options.extent)};function f(Wt,zt){this.id=typeof Wt.id=="number"?Wt.id:void 0,this.type=Wt.type,this.rawGeometry=Wt.type===1?[Wt.geometry]:Wt.geometry,this.properties=Wt.tags,this.extent=zt||4096}f.prototype.loadGeometry=function(){var Wt=this.rawGeometry;this.geometry=[];for(var zt=0;zt<Wt.length;zt++){for(var Vt=Wt[zt],Ut=[],xr=0;xr<Vt.length;xr++)Ut.push(new e.Point$1(Vt[xr][0],Vt[xr][1]));this.geometry.push(Ut)}return this.geometry},f.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var Wt=this.geometry,zt=1/0,Vt=-1/0,Ut=1/0,xr=-1/0,Zr=0;Zr<Wt.length;Zr++)for(var pa=Wt[Zr],Xr=0;Xr<pa.length;Xr++){var Ea=pa[Xr];zt=Math.min(zt,Ea.x),Vt=Math.max(Vt,Ea.x),Ut=Math.min(Ut,Ea.y),xr=Math.max(xr,Ea.y)}return[zt,Ut,Vt,xr]},f.prototype.toGeoJSON=d.prototype.toGeoJSON;var P=B,L=B,z=O,F=u;function B(Wt){var zt=new e.pbf;return I(Wt,zt),zt.finish()}function O(Wt,zt){zt=zt||{};var Vt={};for(var Ut in Wt)Vt[Ut]=new u(Wt[Ut].features,zt),Vt[Ut].name=Ut,Vt[Ut].version=zt.version,Vt[Ut].extent=zt.extent;return B({layers:Vt})}function I(Wt,zt){for(var Vt in Wt.layers)zt.writeMessage(3,N,Wt.layers[Vt])}function N(Wt,zt){zt.writeVarintField(15,Wt.version||1),zt.writeStringField(1,Wt.name||""),zt.writeVarintField(5,Wt.extent||4096);var Vt,Ut={keys:[],values:[],keycache:{},valuecache:{}};for(Vt=0;Vt<Wt.length;Vt++)Ut.feature=Wt.feature(Vt),zt.writeMessage(2,U,Ut);var xr=Ut.keys;for(Vt=0;Vt<xr.length;Vt++)zt.writeStringField(3,xr[Vt]);var Zr=Ut.values;for(Vt=0;Vt<Zr.length;Vt++)zt.writeMessage(4,he,Zr[Vt])}function U(Wt,zt){var Vt=Wt.feature;Vt.id!==void 0&&zt.writeVarintField(1,Vt.id),zt.writeMessage(2,W,Wt),zt.writeVarintField(3,Vt.type),zt.writeMessage(4,se,Vt)}function W(Wt,zt){var Vt=Wt.feature,Ut=Wt.keys,xr=Wt.values,Zr=Wt.keycache,pa=Wt.valuecache;for(var Xr in Vt.properties){var Ea=Zr[Xr];typeof Ea>"u"&&(Ut.push(Xr),Ea=Ut.length-1,Zr[Xr]=Ea),zt.writeVarint(Ea);var Fa=Vt.properties[Xr],qa=typeof Fa;qa!=="string"&&qa!=="boolean"&&qa!=="number"&&(Fa=JSON.stringify(Fa));var ya=qa+":"+Fa,$a=pa[ya];typeof $a>"u"&&(xr.push(Fa),$a=xr.length-1,pa[ya]=$a),zt.writeVarint($a)}}function Q(Wt,zt){return(zt<<3)+(Wt&7)}function ue(Wt){return Wt<<1^Wt>>31}function se(Wt,zt){for(var Vt=Wt.loadGeometry(),Ut=Wt.type,xr=0,Zr=0,pa=Vt.length,Xr=0;Xr<pa;Xr++){var Ea=Vt[Xr],Fa=1;Ut===1&&(Fa=Ea.length),zt.writeVarint(Q(1,Fa));for(var qa=Ut===3?Ea.length-1:Ea.length,ya=0;ya<qa;ya++){ya===1&&Ut!==1&&zt.writeVarint(Q(2,qa-1));var $a=Ea[ya].x-xr,mt=Ea[ya].y-Zr;zt.writeVarint(ue($a)),zt.writeVarint(ue(mt)),xr+=$a,Zr+=mt}Ut===3&&zt.writeVarint(Q(7,1))}}function he(Wt,zt){var Vt=typeof Wt;Vt==="string"?zt.writeStringField(1,Wt):Vt==="boolean"?zt.writeBooleanField(7,Wt):Vt==="number"&&(Wt%1!==0?zt.writeDoubleField(3,Wt):Wt<0?zt.writeSVarintField(6,Wt):zt.writeVarintField(5,Wt))}P.fromVectorTileJs=L,P.fromGeojsonVt=z,P.GeoJSONWrapper=F;function G(Wt,zt,Vt,Ut,xr,Zr){if(!(xr-Ut<=Vt)){var pa=Ut+xr>>1;$(Wt,zt,pa,Ut,xr,Zr%2),G(Wt,zt,Vt,Ut,pa-1,Zr+1),G(Wt,zt,Vt,pa+1,xr,Zr+1)}}function $(Wt,zt,Vt,Ut,xr,Zr){for(;xr>Ut;){if(xr-Ut>600){var pa=xr-Ut+1,Xr=Vt-Ut+1,Ea=Math.log(pa),Fa=.5*Math.exp(2*Ea/3),qa=.5*Math.sqrt(Ea*Fa*(pa-Fa)/pa)*(Xr-pa/2<0?-1:1),ya=Math.max(Ut,Math.floor(Vt-Xr*Fa/pa+qa)),$a=Math.min(xr,Math.floor(Vt+(pa-Xr)*Fa/pa+qa));$(Wt,zt,Vt,ya,$a,Zr)}var mt=zt[2*Vt+Zr],gt=Ut,Er=xr;for(J(Wt,zt,Ut,Vt),zt[2*xr+Zr]>mt&&J(Wt,zt,Ut,xr);gt<Er;){for(J(Wt,zt,gt,Er),gt++,Er--;zt[2*gt+Zr]<mt;)gt++;for(;zt[2*Er+Zr]>mt;)Er--}zt[2*Ut+Zr]===mt?J(Wt,zt,Ut,Er):(Er++,J(Wt,zt,Er,xr)),Er<=Vt&&(Ut=Er+1),Vt<=Er&&(xr=Er-1)}}function J(Wt,zt,Vt,Ut){Z(Wt,Vt,Ut),Z(zt,2*Vt,2*Ut),Z(zt,2*Vt+1,2*Ut+1)}function Z(Wt,zt,Vt){var Ut=Wt[zt];Wt[zt]=Wt[Vt],Wt[Vt]=Ut}function re(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[0,Wt.length-1,0],Ea=[],Fa,qa;Xr.length;){var ya=Xr.pop(),$a=Xr.pop(),mt=Xr.pop();if($a-mt<=pa){for(var gt=mt;gt<=$a;gt++)Fa=zt[2*gt],qa=zt[2*gt+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[gt]);continue}var Er=Math.floor((mt+$a)/2);Fa=zt[2*Er],qa=zt[2*Er+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[Er]);var kr=(ya+1)%2;(ya===0?Vt<=Fa:Ut<=qa)&&(Xr.push(mt),Xr.push(Er-1),Xr.push(kr)),(ya===0?xr>=Fa:Zr>=qa)&&(Xr.push(Er+1),Xr.push($a),Xr.push(kr))}return Ea}function ne(Wt,zt,Vt,Ut,xr,Zr){for(var pa=[0,Wt.length-1,0],Xr=[],Ea=xr*xr;pa.length;){var Fa=pa.pop(),qa=pa.pop(),ya=pa.pop();if(qa-ya<=Zr){for(var $a=ya;$a<=qa;$a++)j(zt[2*$a],zt[2*$a+1],Vt,Ut)<=Ea&&Xr.push(Wt[$a]);continue}var mt=Math.floor((ya+qa)/2),gt=zt[2*mt],Er=zt[2*mt+1];j(gt,Er,Vt,Ut)<=Ea&&Xr.push(Wt[mt]);var kr=(Fa+1)%2;(Fa===0?Vt-xr<=gt:Ut-xr<=Er)&&(pa.push(ya),pa.push(mt-1),pa.push(kr)),(Fa===0?Vt+xr>=gt:Ut+xr>=Er)&&(pa.push(mt+1),pa.push(qa),pa.push(kr))}return Xr}function j(Wt,zt,Vt,Ut){var xr=Wt-Vt,Zr=zt-Ut;return xr*xr+Zr*Zr}var ee=function(Wt){return Wt[0]},ie=function(Wt){return Wt[1]},fe=function(zt,Vt,Ut,xr,Zr){Vt===void 0&&(Vt=ee),Ut===void 0&&(Ut=ie),xr===void 0&&(xr=64),Zr===void 0&&(Zr=Float64Array),this.nodeSize=xr,this.points=zt;for(var pa=zt.length<65536?Uint16Array:Uint32Array,Xr=this.ids=new pa(zt.length),Ea=this.coords=new Zr(zt.length*2),Fa=0;Fa<zt.length;Fa++)Xr[Fa]=Fa,Ea[2*Fa]=Vt(zt[Fa]),Ea[2*Fa+1]=Ut(zt[Fa]);G(Xr,Ea,xr,0,Xr.length-1,0)};fe.prototype.range=function(zt,Vt,Ut,xr){return re(this.ids,this.coords,zt,Vt,Ut,xr,this.nodeSize)},fe.prototype.within=function(zt,Vt,Ut){return ne(this.ids,this.coords,zt,Vt,Ut,this.nodeSize)};var be={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(Wt){return Wt}},Ae=function(zt){this.options=ge(Object.create(be),zt),this.trees=new Array(this.options.maxZoom+1)};Ae.prototype.load=function(zt){var Vt=this.options,Ut=Vt.log,xr=Vt.minZoom,Zr=Vt.maxZoom,pa=Vt.nodeSize;Ut&&console.time("total time");var Xr="prepare "+zt.length+" points";Ut&&console.time(Xr),this.points=zt;for(var Ea=[],Fa=0;Fa<zt.length;Fa++)zt[Fa].geometry&&Ea.push(Ie(zt[Fa],Fa));this.trees[Zr+1]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.timeEnd(Xr);for(var qa=Zr;qa>=xr;qa--){var ya=+Date.now();Ea=this._cluster(Ea,qa),this.trees[qa]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.log("z%d: %d clusters in %dms",qa,Ea.length,+Date.now()-ya)}return Ut&&console.timeEnd("total time"),this},Ae.prototype.getClusters=function(zt,Vt){var Ut=((zt[0]+180)%360+360)%360-180,xr=Math.max(-90,Math.min(90,zt[1])),Zr=zt[2]===180?180:((zt[2]+180)%360+360)%360-180,pa=Math.max(-90,Math.min(90,zt[3]));if(zt[2]-zt[0]>=360)Ut=-180,Zr=180;else if(Ut>Zr){var Xr=this.getClusters([Ut,xr,180,pa],Vt),Ea=this.getClusters([-180,xr,Zr,pa],Vt);return Xr.concat(Ea)}for(var Fa=this.trees[this._limitZoom(Vt)],qa=Fa.range(it(Ut),et(pa),it(Zr),et(xr)),ya=[],$a=0,mt=qa;$a<mt.length;$a+=1){var gt=mt[$a],Er=Fa.points[gt];ya.push(Er.numPoints?Ze(Er):this.points[Er.index])}return ya},Ae.prototype.getChildren=function(zt){var Vt=this._getOriginId(zt),Ut=this._getOriginZoom(zt),xr="No cluster with the specified id.",Zr=this.trees[Ut];if(!Zr)throw new Error(xr);var pa=Zr.points[Vt];if(!pa)throw new Error(xr);for(var Xr=this.options.radius/(this.options.extent*Math.pow(2,Ut-1)),Ea=Zr.within(pa.x,pa.y,Xr),Fa=[],qa=0,ya=Ea;qa<ya.length;qa+=1){var $a=ya[qa],mt=Zr.points[$a];mt.parentId===zt&&Fa.push(mt.numPoints?Ze(mt):this.points[mt.index])}if(Fa.length===0)throw new Error(xr);return Fa},Ae.prototype.getLeaves=function(zt,Vt,Ut){Vt=Vt||10,Ut=Ut||0;var xr=[];return this._appendLeaves(xr,zt,Vt,Ut,0),xr},Ae.prototype.getTile=function(zt,Vt,Ut){var xr=this.trees[this._limitZoom(zt)],Zr=Math.pow(2,zt),pa=this.options,Xr=pa.extent,Ea=pa.radius,Fa=Ea/Xr,qa=(Ut-Fa)/Zr,ya=(Ut+1+Fa)/Zr,$a={features:[]};return this._addTileFeatures(xr.range((Vt-Fa)/Zr,qa,(Vt+1+Fa)/Zr,ya),xr.points,Vt,Ut,Zr,$a),Vt===0&&this._addTileFeatures(xr.range(1-Fa/Zr,qa,1,ya),xr.points,Zr,Ut,Zr,$a),Vt===Zr-1&&this._addTileFeatures(xr.range(0,qa,Fa/Zr,ya),xr.points,-1,Ut,Zr,$a),$a.features.length?$a:null},Ae.prototype.getClusterExpansionZoom=function(zt){for(var Vt=this._getOriginZoom(zt)-1;Vt<=this.options.maxZoom;){var Ut=this.getChildren(zt);if(Vt++,Ut.length!==1)break;zt=Ut[0].properties.cluster_id}return Vt},Ae.prototype._appendLeaves=function(zt,Vt,Ut,xr,Zr){for(var pa=this.getChildren(Vt),Xr=0,Ea=pa;Xr<Ea.length;Xr+=1){var Fa=Ea[Xr],qa=Fa.properties;if(qa&&qa.cluster?Zr+qa.point_count<=xr?Zr+=qa.point_count:Zr=this._appendLeaves(zt,qa.cluster_id,Ut,xr,Zr):Zr<xr?Zr++:zt.push(Fa),zt.length===Ut)break}return Zr},Ae.prototype._addTileFeatures=function(zt,Vt,Ut,xr,Zr,pa){for(var Xr=0,Ea=zt;Xr<Ea.length;Xr+=1){var Fa=Ea[Xr],qa=Vt[Fa],ya=qa.numPoints,$a={type:1,geometry:[[Math.round(this.options.extent*(qa.x*Zr-Ut)),Math.round(this.options.extent*(qa.y*Zr-xr))]],tags:ya?at(qa):this.points[qa.index].properties},mt=void 0;ya?mt=qa.id:this.options.generateId?mt=qa.index:this.points[qa.index].id&&(mt=this.points[qa.index].id),mt!==void 0&&($a.id=mt),pa.features.push($a)}},Ae.prototype._limitZoom=function(zt){return Math.max(this.options.minZoom,Math.min(+zt,this.options.maxZoom+1))},Ae.prototype._cluster=function(zt,Vt){for(var Ut=[],xr=this.options,Zr=xr.radius,pa=xr.extent,Xr=xr.reduce,Ea=xr.minPoints,Fa=Zr/(pa*Math.pow(2,Vt)),qa=0;qa<zt.length;qa++){var ya=zt[qa];if(!(ya.zoom<=Vt)){ya.zoom=Vt;for(var $a=this.trees[Vt+1],mt=$a.within(ya.x,ya.y,Fa),gt=ya.numPoints||1,Er=gt,kr=0,br=mt;kr<br.length;kr+=1){var Tr=br[kr],Mr=$a.points[Tr];Mr.zoom>Vt&&(Er+=Mr.numPoints||1)}if(Er>=Ea){for(var Fr=ya.x*gt,Lr=ya.y*gt,Jr=Xr&&gt>1?this._map(ya,!0):null,oa=(qa<<5)+(Vt+1)+this.points.length,ca=0,kt=mt;ca<kt.length;ca+=1){var ir=kt[ca],mr=$a.points[ir];if(!(mr.zoom<=Vt)){mr.zoom=Vt;var $r=mr.numPoints||1;Fr+=mr.x*$r,Lr+=mr.y*$r,mr.parentId=oa,Xr&&(Jr||(Jr=this._map(ya,!0)),Xr(Jr,this._map(mr)))}}ya.parentId=oa,Ut.push(Be(Fr/Er,Lr/Er,oa,Er,Jr))}else if(Ut.push(ya),Er>1)for(var ma=0,Ba=mt;ma<Ba.length;ma+=1){var Ca=Ba[ma],da=$a.points[Ca];da.zoom<=Vt||(da.zoom=Vt,Ut.push(da))}}}return Ut},Ae.prototype._getOriginId=function(zt){return zt-this.points.length>>5},Ae.prototype._getOriginZoom=function(zt){return(zt-this.points.length)%32},Ae.prototype._map=function(zt,Vt){if(zt.numPoints)return Vt?ge({},zt.properties):zt.properties;var Ut=this.points[zt.index].properties,xr=this.options.map(Ut);return Vt&&xr===Ut?ge({},xr):xr};function Be(Wt,zt,Vt,Ut,xr){return{x:Wt,y:zt,zoom:1/0,id:Vt,parentId:-1,numPoints:Ut,properties:xr}}function Ie(Wt,zt){var Vt=Wt.geometry.coordinates,Ut=Vt[0],xr=Vt[1];return{x:it(Ut),y:et(xr),zoom:1/0,index:zt,parentId:-1}}function Ze(Wt){return{type:"Feature",id:Wt.id,properties:at(Wt),geometry:{type:"Point",coordinates:[lt(Wt.x),Me(Wt.y)]}}}function at(Wt){var zt=Wt.numPoints,Vt=zt>=1e4?Math.round(zt/1e3)+"k":zt>=1e3?Math.round(zt/100)/10+"k":zt;return ge(ge({},Wt.properties),{cluster:!0,cluster_id:Wt.id,point_count:zt,point_count_abbreviated:Vt})}function it(Wt){return Wt/360+.5}function et(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function lt(Wt){return(Wt-.5)*360}function Me(Wt){var zt=(180-Wt*360)*Math.PI/180;return 360*Math.atan(Math.exp(zt))/Math.PI-90}function ge(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function ce(Wt){return Wt.x}function ze(Wt){return Wt.y}function tt(Wt,zt,Vt,Ut){for(var xr=Ut,Zr=Vt-zt>>1,pa=Vt-zt,Xr,Ea=Wt[zt],Fa=Wt[zt+1],qa=Wt[Vt],ya=Wt[Vt+1],$a=zt+3;$a<Vt;$a+=3){var mt=nt(Wt[$a],Wt[$a+1],Ea,Fa,qa,ya);if(mt>xr)Xr=$a,xr=mt;else if(mt===xr){var gt=Math.abs($a-Zr);gt<pa&&(Xr=$a,pa=gt)}}xr>Ut&&(Xr-zt>3&&tt(Wt,zt,Xr,Ut),Wt[Xr+2]=xr,Vt-Xr>3&&tt(Wt,Xr,Vt,Ut))}function nt(Wt,zt,Vt,Ut,xr,Zr){var pa=xr-Vt,Xr=Zr-Ut;if(pa!==0||Xr!==0){var Ea=((Wt-Vt)*pa+(zt-Ut)*Xr)/(pa*pa+Xr*Xr);Ea>1?(Vt=xr,Ut=Zr):Ea>0&&(Vt+=pa*Ea,Ut+=Xr*Ea)}return pa=Wt-Vt,Xr=zt-Ut,pa*pa+Xr*Xr}function Qe(Wt,zt,Vt,Ut){var xr={id:typeof Wt>"u"?null:Wt,type:zt,geometry:Vt,tags:Ut,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return Ct(xr),xr}function Ct(Wt){var zt=Wt.geometry,Vt=Wt.type;if(Vt==="Point"||Vt==="MultiPoint"||Vt==="LineString")St(Wt,zt);else if(Vt==="Polygon"||Vt==="MultiLineString")for(var Ut=0;Ut<zt.length;Ut++)St(Wt,zt[Ut]);else if(Vt==="MultiPolygon")for(Ut=0;Ut<zt.length;Ut++)for(var xr=0;xr<zt[Ut].length;xr++)St(Wt,zt[Ut][xr])}function St(Wt,zt){for(var Vt=0;Vt<zt.length;Vt+=3)Wt.minX=Math.min(Wt.minX,zt[Vt]),Wt.minY=Math.min(Wt.minY,zt[Vt+1]),Wt.maxX=Math.max(Wt.maxX,zt[Vt]),Wt.maxY=Math.max(Wt.maxY,zt[Vt+1])}function Ot(Wt,zt){var Vt=[];if(Wt.type==="FeatureCollection")for(var Ut=0;Ut<Wt.features.length;Ut++)jt(Vt,Wt.features[Ut],zt,Ut);else Wt.type==="Feature"?jt(Vt,Wt,zt):jt(Vt,{geometry:Wt},zt);return Vt}function jt(Wt,zt,Vt,Ut){if(zt.geometry){var xr=zt.geometry.coordinates,Zr=zt.geometry.type,pa=Math.pow(Vt.tolerance/((1<<Vt.maxZoom)*Vt.extent),2),Xr=[],Ea=zt.id;if(Vt.promoteId?Ea=zt.properties[Vt.promoteId]:Vt.generateId&&(Ea=Ut||0),Zr==="Point")ur(xr,Xr);else if(Zr==="MultiPoint")for(var Fa=0;Fa<xr.length;Fa++)ur(xr[Fa],Xr);else if(Zr==="LineString")ar(xr,Xr,pa,!1);else if(Zr==="MultiLineString")if(Vt.lineMetrics){for(Fa=0;Fa<xr.length;Fa++)Xr=[],ar(xr[Fa],Xr,pa,!1),Wt.push(Qe(Ea,"LineString",Xr,zt.properties));return}else Cr(xr,Xr,pa,!1);else if(Zr==="Polygon")Cr(xr,Xr,pa,!0);else if(Zr==="MultiPolygon")for(Fa=0;Fa<xr.length;Fa++){var qa=[];Cr(xr[Fa],qa,pa,!0),Xr.push(qa)}else if(Zr==="GeometryCollection"){for(Fa=0;Fa<zt.geometry.geometries.length;Fa++)jt(Wt,{id:Ea,geometry:zt.geometry.geometries[Fa],properties:zt.properties},Vt,Ut);return}else throw new Error("Input data is not a valid GeoJSON object.");Wt.push(Qe(Ea,Zr,Xr,zt.properties))}}function ur(Wt,zt){zt.push(vr(Wt[0])),zt.push(_r(Wt[1])),zt.push(0)}function ar(Wt,zt,Vt,Ut){for(var xr,Zr,pa=0,Xr=0;Xr<Wt.length;Xr++){var Ea=vr(Wt[Xr][0]),Fa=_r(Wt[Xr][1]);zt.push(Ea),zt.push(Fa),zt.push(0),Xr>0&&(Ut?pa+=(xr*Fa-Ea*Zr)/2:pa+=Math.sqrt(Math.pow(Ea-xr,2)+Math.pow(Fa-Zr,2))),xr=Ea,Zr=Fa}var qa=zt.length-3;zt[2]=1,tt(zt,0,qa,Vt),zt[qa+2]=1,zt.size=Math.abs(pa),zt.start=0,zt.end=zt.size}function Cr(Wt,zt,Vt,Ut){for(var xr=0;xr<Wt.length;xr++){var Zr=[];ar(Wt[xr],Zr,Vt,Ut),zt.push(Zr)}}function vr(Wt){return Wt/360+.5}function _r(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function yt(Wt,zt,Vt,Ut,xr,Zr,pa,Xr){if(Vt/=zt,Ut/=zt,Zr>=Vt&&pa<Ut)return Wt;if(pa<Vt||Zr>=Ut)return null;for(var Ea=[],Fa=0;Fa<Wt.length;Fa++){var qa=Wt[Fa],ya=qa.geometry,$a=qa.type,mt=xr===0?qa.minX:qa.minY,gt=xr===0?qa.maxX:qa.maxY;if(mt>=Vt&&gt<Ut){Ea.push(qa);continue}else if(gt<Vt||mt>=Ut)continue;var Er=[];if($a==="Point"||$a==="MultiPoint")Fe(ya,Er,Vt,Ut,xr);else if($a==="LineString")Ke(ya,Er,Vt,Ut,xr,!1,Xr.lineMetrics);else if($a==="MultiLineString")Ee(ya,Er,Vt,Ut,xr,!1);else if($a==="Polygon")Ee(ya,Er,Vt,Ut,xr,!0);else if($a==="MultiPolygon")for(var kr=0;kr<ya.length;kr++){var br=[];Ee(ya[kr],br,Vt,Ut,xr,!0),br.length&&Er.push(br)}if(Er.length){if(Xr.lineMetrics&&$a==="LineString"){for(kr=0;kr<Er.length;kr++)Ea.push(Qe(qa.id,$a,Er[kr],qa.tags));continue}($a==="LineString"||$a==="MultiLineString")&&(Er.length===1?($a="LineString",Er=Er[0]):$a="MultiLineString"),($a==="Point"||$a==="MultiPoint")&&($a=Er.length===3?"Point":"MultiPoint"),Ea.push(Qe(qa.id,$a,Er,qa.tags))}}return Ea.length?Ea:null}function Fe(Wt,zt,Vt,Ut,xr){for(var Zr=0;Zr<Wt.length;Zr+=3){var pa=Wt[Zr+xr];pa>=Vt&&pa<=Ut&&(zt.push(Wt[Zr]),zt.push(Wt[Zr+1]),zt.push(Wt[Zr+2]))}}function Ke(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=Ne(Wt),Ea=xr===0?ke:Te,Fa=Wt.start,qa,ya,$a=0;$a<Wt.length-3;$a+=3){var mt=Wt[$a],gt=Wt[$a+1],Er=Wt[$a+2],kr=Wt[$a+3],br=Wt[$a+4],Tr=xr===0?mt:gt,Mr=xr===0?kr:br,Fr=!1;pa&&(qa=Math.sqrt(Math.pow(mt-kr,2)+Math.pow(gt-br,2))),Tr<Vt?Mr>Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),pa&&(Xr.start=Fa+qa*ya)):Tr>Ut?Mr<Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),pa&&(Xr.start=Fa+qa*ya)):Ve(Xr,mt,gt,Er),Mr<Vt&&Tr>=Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),Fr=!0),Mr>Ut&&Tr<=Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),Fr=!0),!Zr&&Fr&&(pa&&(Xr.end=Fa+qa*ya),zt.push(Xr),Xr=Ne(Wt)),pa&&(Fa+=qa)}var Lr=Wt.length-3;mt=Wt[Lr],gt=Wt[Lr+1],Er=Wt[Lr+2],Tr=xr===0?mt:gt,Tr>=Vt&&Tr<=Ut&&Ve(Xr,mt,gt,Er),Lr=Xr.length-3,Zr&&Lr>=3&&(Xr[Lr]!==Xr[0]||Xr[Lr+1]!==Xr[1])&&Ve(Xr,Xr[0],Xr[1],Xr[2]),Xr.length&&zt.push(Xr)}function Ne(Wt){var zt=[];return zt.size=Wt.size,zt.start=Wt.start,zt.end=Wt.end,zt}function Ee(Wt,zt,Vt,Ut,xr,Zr){for(var pa=0;pa<Wt.length;pa++)Ke(Wt[pa],zt,Vt,Ut,xr,Zr,!1)}function Ve(Wt,zt,Vt,Ut){Wt.push(zt),Wt.push(Vt),Wt.push(Ut)}function ke(Wt,zt,Vt,Ut,xr,Zr){var pa=(Zr-zt)/(Ut-zt);return Wt.push(Zr),Wt.push(Vt+(xr-Vt)*pa),Wt.push(1),pa}function Te(Wt,zt,Vt,Ut,xr,Zr){var pa=(Zr-Vt)/(xr-Vt);return Wt.push(zt+(Ut-zt)*pa),Wt.push(Zr),Wt.push(1),pa}function Le(Wt,zt){var Vt=zt.buffer/zt.extent,Ut=Wt,xr=yt(Wt,1,-1-Vt,Vt,0,-1,2,zt),Zr=yt(Wt,1,1-Vt,2+Vt,0,-1,2,zt);return(xr||Zr)&&(Ut=yt(Wt,1,-Vt,1+Vt,0,-1,2,zt)||[],xr&&(Ut=rt(xr,1).concat(Ut)),Zr&&(Ut=Ut.concat(rt(Zr,-1)))),Ut}function rt(Wt,zt){for(var Vt=[],Ut=0;Ut<Wt.length;Ut++){var xr=Wt[Ut],Zr=xr.type,pa;if(Zr==="Point"||Zr==="MultiPoint"||Zr==="LineString")pa=dt(xr.geometry,zt);else if(Zr==="MultiLineString"||Zr==="Polygon"){pa=[];for(var Xr=0;Xr<xr.geometry.length;Xr++)pa.push(dt(xr.geometry[Xr],zt))}else if(Zr==="MultiPolygon")for(pa=[],Xr=0;Xr<xr.geometry.length;Xr++){for(var Ea=[],Fa=0;Fa<xr.geometry[Xr].length;Fa++)Ea.push(dt(xr.geometry[Xr][Fa],zt));pa.push(Ea)}Vt.push(Qe(xr.id,Zr,pa,xr.tags))}return Vt}function dt(Wt,zt){var Vt=[];Vt.size=Wt.size,Wt.start!==void 0&&(Vt.start=Wt.start,Vt.end=Wt.end);for(var Ut=0;Ut<Wt.length;Ut+=3)Vt.push(Wt[Ut]+zt,Wt[Ut+1],Wt[Ut+2]);return Vt}function xt(Wt,zt){if(Wt.transformed)return Wt;var Vt=1<<Wt.z,Ut=Wt.x,xr=Wt.y,Zr,pa,Xr;for(Zr=0;Zr<Wt.features.length;Zr++){var Ea=Wt.features[Zr],Fa=Ea.geometry,qa=Ea.type;if(Ea.geometry=[],qa===1)for(pa=0;pa<Fa.length;pa+=2)Ea.geometry.push(It(Fa[pa],Fa[pa+1],zt,Vt,Ut,xr));else for(pa=0;pa<Fa.length;pa++){var ya=[];for(Xr=0;Xr<Fa[pa].length;Xr+=2)ya.push(It(Fa[pa][Xr],Fa[pa][Xr+1],zt,Vt,Ut,xr));Ea.geometry.push(ya)}}return Wt.transformed=!0,Wt}function It(Wt,zt,Vt,Ut,xr,Zr){return[Math.round(Vt*(Wt*Ut-xr)),Math.round(Vt*(zt*Ut-Zr))]}function Bt(Wt,zt,Vt,Ut,xr){for(var Zr=zt===xr.maxZoom?0:xr.tolerance/((1<<zt)*xr.extent),pa={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:Vt,y:Ut,z:zt,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},Xr=0;Xr<Wt.length;Xr++){pa.numFeatures++,Gt(pa,Wt[Xr],Zr,xr);var Ea=Wt[Xr].minX,Fa=Wt[Xr].minY,qa=Wt[Xr].maxX,ya=Wt[Xr].maxY;Ea<pa.minX&&(pa.minX=Ea),Fa<pa.minY&&(pa.minY=Fa),qa>pa.maxX&&(pa.maxX=qa),ya>pa.maxY&&(pa.maxY=ya)}return pa}function Gt(Wt,zt,Vt,Ut){var xr=zt.geometry,Zr=zt.type,pa=[];if(Zr==="Point"||Zr==="MultiPoint")for(var Xr=0;Xr<xr.length;Xr+=3)pa.push(xr[Xr]),pa.push(xr[Xr+1]),Wt.numPoints++,Wt.numSimplified++;else if(Zr==="LineString")Kt(pa,xr,Wt,Vt,!1,!1);else if(Zr==="MultiLineString"||Zr==="Polygon")for(Xr=0;Xr<xr.length;Xr++)Kt(pa,xr[Xr],Wt,Vt,Zr==="Polygon",Xr===0);else if(Zr==="MultiPolygon")for(var Ea=0;Ea<xr.length;Ea++){var Fa=xr[Ea];for(Xr=0;Xr<Fa.length;Xr++)Kt(pa,Fa[Xr],Wt,Vt,!0,Xr===0)}if(pa.length){var qa=zt.tags||null;if(Zr==="LineString"&&Ut.lineMetrics){qa={};for(var ya in zt.tags)qa[ya]=zt.tags[ya];qa.mapbox_clip_start=xr.start/xr.size,qa.mapbox_clip_end=xr.end/xr.size}var $a={geometry:pa,type:Zr==="Polygon"||Zr==="MultiPolygon"?3:Zr==="LineString"||Zr==="MultiLineString"?2:1,tags:qa};zt.id!==null&&($a.id=zt.id),Wt.features.push($a)}}function Kt(Wt,zt,Vt,Ut,xr,Zr){var pa=Ut*Ut;if(Ut>0&&zt.size<(xr?pa:Ut)){Vt.numPoints+=zt.length/3;return}for(var Xr=[],Ea=0;Ea<zt.length;Ea+=3)(Ut===0||zt[Ea+2]>pa)&&(Vt.numSimplified++,Xr.push(zt[Ea]),Xr.push(zt[Ea+1])),Vt.numPoints++;xr&&sr(Xr,Zr),Wt.push(Xr)}function sr(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-2;Ut<xr;Zr=Ut,Ut+=2)Vt+=(Wt[Ut]-Wt[Zr])*(Wt[Ut+1]+Wt[Zr+1]);if(Vt>0===zt)for(Ut=0,xr=Wt.length;Ut<xr/2;Ut+=2){var pa=Wt[Ut],Xr=Wt[Ut+1];Wt[Ut]=Wt[xr-2-Ut],Wt[Ut+1]=Wt[xr-1-Ut],Wt[xr-2-Ut]=pa,Wt[xr-1-Ut]=Xr}}function sa(Wt,zt){return new Aa(Wt,zt)}function Aa(Wt,zt){zt=this.options=ka(Object.create(this.options),zt);var Vt=zt.debug;if(Vt&&console.time("preprocess data"),zt.maxZoom<0||zt.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(zt.promoteId&&zt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Ut=Ot(Wt,zt);this.tiles={},this.tileCoords=[],Vt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",zt.indexMaxZoom,zt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ut=Le(Ut,zt),Ut.length&&this.splitTile(Ut,0,0,0),Vt&&(Ut.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Aa.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Aa.prototype.splitTile=function(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[Wt,zt,Vt,Ut],Ea=this.options,Fa=Ea.debug;Xr.length;){Ut=Xr.pop(),Vt=Xr.pop(),zt=Xr.pop(),Wt=Xr.pop();var qa=1<<zt,ya=La(zt,Vt,Ut),$a=this.tiles[ya];if(!$a&&(Fa>1&&console.time("creation"),$a=this.tiles[ya]=Bt(Wt,zt,Vt,Ut,Ea),this.tileCoords.push({z:zt,x:Vt,y:Ut}),Fa)){Fa>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",zt,Vt,Ut,$a.numFeatures,$a.numPoints,$a.numSimplified),console.timeEnd("creation"));var mt="z"+zt;this.stats[mt]=(this.stats[mt]||0)+1,this.total++}if($a.source=Wt,xr){if(zt===Ea.maxZoom||zt===xr)continue;var gt=1<<xr-zt;if(Vt!==Math.floor(Zr/gt)||Ut!==Math.floor(pa/gt))continue}else if(zt===Ea.indexMaxZoom||$a.numPoints<=Ea.indexMaxPoints)continue;if($a.source=null,Wt.length!==0){Fa>1&&console.time("clipping");var Er=.5*Ea.buffer/Ea.extent,kr=.5-Er,br=.5+Er,Tr=1+Er,Mr,Fr,Lr,Jr,oa,ca;Mr=Fr=Lr=Jr=null,oa=yt(Wt,qa,Vt-Er,Vt+br,0,$a.minX,$a.maxX,Ea),ca=yt(Wt,qa,Vt+kr,Vt+Tr,0,$a.minX,$a.maxX,Ea),Wt=null,oa&&(Mr=yt(oa,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Fr=yt(oa,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),oa=null),ca&&(Lr=yt(ca,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Jr=yt(ca,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),ca=null),Fa>1&&console.timeEnd("clipping"),Xr.push(Mr||[],zt+1,Vt*2,Ut*2),Xr.push(Fr||[],zt+1,Vt*2,Ut*2+1),Xr.push(Lr||[],zt+1,Vt*2+1,Ut*2),Xr.push(Jr||[],zt+1,Vt*2+1,Ut*2+1)}}},Aa.prototype.getTile=function(Wt,zt,Vt){var Ut=this.options,xr=Ut.extent,Zr=Ut.debug;if(Wt<0||Wt>24)return null;var pa=1<<Wt;zt=(zt%pa+pa)%pa;var Xr=La(Wt,zt,Vt);if(this.tiles[Xr])return xt(this.tiles[Xr],xr);Zr>1&&console.log("drilling down to z%d-%d-%d",Wt,zt,Vt);for(var Ea=Wt,Fa=zt,qa=Vt,ya;!ya&&Ea>0;)Ea--,Fa=Math.floor(Fa/2),qa=Math.floor(qa/2),ya=this.tiles[La(Ea,Fa,qa)];return!ya||!ya.source?null:(Zr>1&&console.log("found parent tile z%d-%d-%d",Ea,Fa,qa),Zr>1&&console.time("drilling down"),this.splitTile(ya.source,Ea,Fa,qa,Wt,zt,Vt),Zr>1&&console.timeEnd("drilling down"),this.tiles[Xr]?xt(this.tiles[Xr],xr):null)};function La(Wt,zt,Vt){return((1<<Wt)*Vt+zt)*32+Wt}function ka(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function Ga(Wt,zt){var Vt=Wt.tileID.canonical;if(!this._geoJSONIndex)return zt(null,null);var Ut=this._geoJSONIndex.getTile(Vt.z,Vt.x,Vt.y);if(!Ut)return zt(null,null);var xr=new b(Ut.features),Zr=P(xr);(Zr.byteOffset!==0||Zr.byteLength!==Zr.buffer.byteLength)&&(Zr=new Uint8Array(Zr)),zt(null,{vectorTile:xr,rawData:Zr.buffer})}var Ma=function(Wt){function zt(Vt,Ut,xr,Zr){Wt.call(this,Vt,Ut,xr,Ga),Zr&&(this.loadGeoJSON=Zr)}return Wt&&(zt.__proto__=Wt),zt.prototype=Object.create(Wt&&Wt.prototype),zt.prototype.constructor=zt,zt.prototype.loadData=function(Ut,xr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=xr,this._pendingLoadDataParams=Ut,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},zt.prototype._loadData=function(){var Ut=this;if(!(!this._pendingCallback||!this._pendingLoadDataParams)){var xr=this._pendingCallback,Zr=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var pa=Zr&&Zr.request&&Zr.request.collectResourceTiming?new e.RequestPerformance(Zr.request):!1;this.loadGeoJSON(Zr,function(Xr,Ea){if(Xr||!Ea)return xr(Xr);if(typeof Ea!="object")return xr(new Error("Input data given to '"+Zr.source+"' is not a valid GeoJSON object."));l(Ea,!0);try{if(Zr.filter){var Fa=e.createExpression(Zr.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Fa.result==="error")throw new Error(Fa.value.map(function(mt){return mt.key+": "+mt.message}).join(", "));var qa=Ea.features.filter(function(mt){return Fa.value.evaluate({zoom:0},mt)});Ea={type:"FeatureCollection",features:qa}}Ut._geoJSONIndex=Zr.cluster?new Ae(Ua(Zr)).load(Ea.features):sa(Ea,Zr.geojsonVtOptions)}catch(mt){return xr(mt)}Ut.loaded={};var ya={};if(pa){var $a=pa.finish();$a&&(ya.resourceTiming={},ya.resourceTiming[Zr.source]=JSON.parse(JSON.stringify($a)))}xr(null,ya)})}},zt.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},zt.prototype.reloadTile=function(Ut,xr){var Zr=this.loaded,pa=Ut.uid;return Zr&&Zr[pa]?Wt.prototype.reloadTile.call(this,Ut,xr):this.loadTile(Ut,xr)},zt.prototype.loadGeoJSON=function(Ut,xr){if(Ut.request)e.getJSON(Ut.request,xr);else if(typeof Ut.data=="string")try{return xr(null,JSON.parse(Ut.data))}catch{return xr(new Error("Input data given to '"+Ut.source+"' is not a valid GeoJSON object."))}else return xr(new Error("Input data given to '"+Ut.source+"' is not a valid GeoJSON object."))},zt.prototype.removeSource=function(Ut,xr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),xr()},zt.prototype.getClusterExpansionZoom=function(Ut,xr){try{xr(null,this._geoJSONIndex.getClusterExpansionZoom(Ut.clusterId))}catch(Zr){xr(Zr)}},zt.prototype.getClusterChildren=function(Ut,xr){try{xr(null,this._geoJSONIndex.getChildren(Ut.clusterId))}catch(Zr){xr(Zr)}},zt.prototype.getClusterLeaves=function(Ut,xr){try{xr(null,this._geoJSONIndex.getLeaves(Ut.clusterId,Ut.limit,Ut.offset))}catch(Zr){xr(Zr)}},zt}(v);function Ua(Wt){var zt=Wt.superclusterOptions,Vt=Wt.clusterProperties;if(!Vt||!zt)return zt;for(var Ut={},xr={},Zr={accumulated:null,zoom:0},pa={properties:null},Xr=Object.keys(Vt),Ea=0,Fa=Xr;Ea<Fa.length;Ea+=1){var qa=Fa[Ea],ya=Vt[qa],$a=ya[0],mt=ya[1],gt=e.createExpression(mt),Er=e.createExpression(typeof $a=="string"?[$a,["accumulated"],["get",qa]]:$a);Ut[qa]=gt.value,xr[qa]=Er.value}return zt.map=function(kr){pa.properties=kr;for(var br={},Tr=0,Mr=Xr;Tr<Mr.length;Tr+=1){var Fr=Mr[Tr];br[Fr]=Ut[Fr].evaluate(Zr,pa)}return br},zt.reduce=function(kr,br){pa.properties=br;for(var Tr=0,Mr=Xr;Tr<Mr.length;Tr+=1){var Fr=Mr[Tr];Zr.accumulated=kr[Fr],kr[Fr]=xr[Fr].evaluate(Zr,pa)}},zt}var ni=function(zt){var Vt=this;this.self=zt,this.actor=new e.Actor(zt,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:v,geojson:Ma},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(Ut,xr){if(Vt.workerSourceTypes[Ut])throw new Error('Worker source with name "'+Ut+'" already registered.');Vt.workerSourceTypes[Ut]=xr},this.self.registerRTLTextPlugin=function(Ut){if(e.plugin.isParsed())throw new Error("RTL text plugin already registered.");e.plugin.applyArabicShaping=Ut.applyArabicShaping,e.plugin.processBidirectionalText=Ut.processBidirectionalText,e.plugin.processStyledBidirectionalText=Ut.processStyledBidirectionalText}};return ni.prototype.setReferrer=function(zt,Vt){this.referrer=Vt},ni.prototype.setImages=function(zt,Vt,Ut){this.availableImages[zt]=Vt;for(var xr in this.workerSources[zt]){var Zr=this.workerSources[zt][xr];for(var pa in Zr)Zr[pa].availableImages=Vt}Ut()},ni.prototype.setLayers=function(zt,Vt,Ut){this.getLayerIndex(zt).replace(Vt),Ut()},ni.prototype.updateLayers=function(zt,Vt,Ut){this.getLayerIndex(zt).update(Vt.layers,Vt.removedIds),Ut()},ni.prototype.loadTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).loadTile(Vt,Ut)},ni.prototype.loadDEMTile=function(zt,Vt,Ut){this.getDEMWorkerSource(zt,Vt.source).loadTile(Vt,Ut)},ni.prototype.reloadTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).reloadTile(Vt,Ut)},ni.prototype.abortTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).abortTile(Vt,Ut)},ni.prototype.removeTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).removeTile(Vt,Ut)},ni.prototype.removeDEMTile=function(zt,Vt){this.getDEMWorkerSource(zt,Vt.source).removeTile(Vt)},ni.prototype.removeSource=function(zt,Vt,Ut){if(!(!this.workerSources[zt]||!this.workerSources[zt][Vt.type]||!this.workerSources[zt][Vt.type][Vt.source])){var xr=this.workerSources[zt][Vt.type][Vt.source];delete this.workerSources[zt][Vt.type][Vt.source],xr.removeSource!==void 0?xr.removeSource(Vt,Ut):Ut()}},ni.prototype.loadWorkerSource=function(zt,Vt,Ut){try{this.self.importScripts(Vt.url),Ut()}catch(xr){Ut(xr.toString())}},ni.prototype.syncRTLPluginState=function(zt,Vt,Ut){try{e.plugin.setState(Vt);var xr=e.plugin.getPluginURL();if(e.plugin.isLoaded()&&!e.plugin.isParsed()&&xr!=null){this.self.importScripts(xr);var Zr=e.plugin.isParsed(),pa=Zr?void 0:new Error("RTL Text Plugin failed to import scripts from "+xr);Ut(pa,Zr)}}catch(Xr){Ut(Xr.toString())}},ni.prototype.getAvailableImages=function(zt){var Vt=this.availableImages[zt];return Vt||(Vt=[]),Vt},ni.prototype.getLayerIndex=function(zt){var Vt=this.layerIndexes[zt];return Vt||(Vt=this.layerIndexes[zt]=new a),Vt},ni.prototype.getWorkerSource=function(zt,Vt,Ut){var xr=this;if(this.workerSources[zt]||(this.workerSources[zt]={}),this.workerSources[zt][Vt]||(this.workerSources[zt][Vt]={}),!this.workerSources[zt][Vt][Ut]){var Zr={send:function(pa,Xr,Ea){xr.actor.send(pa,Xr,Ea,zt)}};this.workerSources[zt][Vt][Ut]=new this.workerSourceTypes[Vt](Zr,this.getLayerIndex(zt),this.getAvailableImages(zt))}return this.workerSources[zt][Vt][Ut]},ni.prototype.getDEMWorkerSource=function(zt,Vt){return this.demWorkerSources[zt]||(this.demWorkerSources[zt]={}),this.demWorkerSources[zt][Vt]||(this.demWorkerSources[zt][Vt]=new T),this.demWorkerSources[zt][Vt]},ni.prototype.enforceCacheSizeLimit=function(zt,Vt){e.enforceCacheSizeLimit(Vt)},typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope&&(self.worker=new ni(self)),ni}),M(["./shared"],function(e){"use strict";var t=e.createCommonjsModule(function(ve){ve.exports?ve.exports=K:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=K,window.mapboxgl.notSupportedReason=ye);function K(Pr){return!ye(Pr)}function ye(Pr){if(!te())return"not a browser";if(!xe())return"insufficent Array support";if(!We())return"insufficient Function support";if(!He())return"insufficient Object support";if(!st())return"insufficient JSON support";if(!Et())return"insufficient worker support";if(!Ht())return"insufficient Uint8ClampedArray support";if(!yr())return"insufficient ArrayBuffer support";if(!Ir())return"insufficient Canvas/getImageData support";if(!qt(Pr&&Pr.failIfMajorPerformanceCaveat))return"insufficient WebGL support"}function te(){return typeof window<"u"&&typeof document<"u"}function xe(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function We(){return Function.prototype&&Function.prototype.bind}function He(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function st(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function Et(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var Pr=new Blob([""],{type:"text/javascript"}),Vr=URL.createObjectURL(Pr),Hr,aa;try{aa=new Worker(Vr),Hr=!0}catch{Hr=!1}return aa&&aa.terminate(),URL.revokeObjectURL(Vr),Hr}function Ht(){return"Uint8ClampedArray"in window}function yr(){return ArrayBuffer.isView}function Ir(){var Pr=document.createElement("canvas");Pr.width=Pr.height=1;var Vr=Pr.getContext("2d");if(!Vr)return!1;var Hr=Vr.getImageData(0,0,1,1);return Hr&&Hr.width===Pr.width}var wr={};function qt(Pr){return wr[Pr]===void 0&&(wr[Pr]=dr(Pr)),wr[Pr]}K.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};function tr(Pr){var Vr=document.createElement("canvas"),Hr=Object.create(K.webGLContextAttributes);return Hr.failIfMajorPerformanceCaveat=Pr,Vr.probablySupportsContext?Vr.probablySupportsContext("webgl",Hr)||Vr.probablySupportsContext("experimental-webgl",Hr):Vr.supportsContext?Vr.supportsContext("webgl",Hr)||Vr.supportsContext("experimental-webgl",Hr):Vr.getContext("webgl",Hr)||Vr.getContext("experimental-webgl",Hr)}function dr(Pr){var Vr=tr(Pr);if(!Vr)return!1;var Hr=Vr.createShader(Vr.VERTEX_SHADER);return!Hr||Vr.isContextLost()?!1:(Vr.shaderSource(Hr,"void main() {}"),Vr.compileShader(Hr),Vr.getShaderParameter(Hr,Vr.COMPILE_STATUS)===!0)}}),r={};r.create=function(ve,K,ye){var te=e.window.document.createElement(ve);return K!==void 0&&(te.className=K),ye&&ye.appendChild(te),te},r.createNS=function(ve,K){var ye=e.window.document.createElementNS(ve,K);return ye};var o=e.window.document&&e.window.document.documentElement.style;function a(ve){if(!o)return ve[0];for(var K=0;K<ve.length;K++)if(ve[K]in o)return ve[K];return ve[0]}var i=a(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),n;r.disableDrag=function(){o&&i&&(n=o[i],o[i]="none")},r.enableDrag=function(){o&&i&&(o[i]=n)};var s=a(["transform","WebkitTransform"]);r.setTransform=function(ve,K){ve.style[s]=K};var c=!1;try{var h=Object.defineProperty({},"passive",{get:function(){c=!0}});e.window.addEventListener("test",h,h),e.window.removeEventListener("test",h,h)}catch{c=!1}r.addEventListener=function(ve,K,ye,te){te===void 0&&(te={}),"passive"in te&&c?ve.addEventListener(K,ye,te):ve.addEventListener(K,ye,te.capture)},r.removeEventListener=function(ve,K,ye,te){te===void 0&&(te={}),"passive"in te&&c?ve.removeEventListener(K,ye,te):ve.removeEventListener(K,ye,te.capture)};var v=function(ve){ve.preventDefault(),ve.stopPropagation(),e.window.removeEventListener("click",v,!0)};r.suppressClick=function(){e.window.addEventListener("click",v,!0),e.window.setTimeout(function(){e.window.removeEventListener("click",v,!0)},0)},r.mousePos=function(ve,K){var ye=ve.getBoundingClientRect();return new e.Point(K.clientX-ye.left-ve.clientLeft,K.clientY-ye.top-ve.clientTop)},r.touchPos=function(ve,K){for(var ye=ve.getBoundingClientRect(),te=[],xe=0;xe<K.length;xe++)te.push(new e.Point(K[xe].clientX-ye.left-ve.clientLeft,K[xe].clientY-ye.top-ve.clientTop));return te},r.mouseButton=function(ve){return typeof e.window.InstallTrigger<"u"&&ve.button===2&&ve.ctrlKey&&e.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:ve.button},r.remove=function(ve){ve.parentNode&&ve.parentNode.removeChild(ve)};function p(ve,K,ye){var te,xe,We,He=e.browser.devicePixelRatio>1?"@2x":"",st=e.getJSON(K.transformRequest(K.normalizeSpriteURL(ve,He,".json"),e.ResourceType.SpriteJSON),function(yr,Ir){st=null,We||(We=yr,te=Ir,Ht())}),Et=e.getImage(K.transformRequest(K.normalizeSpriteURL(ve,He,".png"),e.ResourceType.SpriteImage),function(yr,Ir){Et=null,We||(We=yr,xe=Ir,Ht())});function Ht(){if(We)ye(We);else if(te&&xe){var yr=e.browser.getImageData(xe),Ir={};for(var wr in te){var qt=te[wr],tr=qt.width,dr=qt.height,Pr=qt.x,Vr=qt.y,Hr=qt.sdf,aa=qt.pixelRatio,Qr=qt.stretchX,Gr=qt.stretchY,ia=qt.content,Ur=new e.RGBAImage({width:tr,height:dr});e.RGBAImage.copy(yr,Ur,{x:Pr,y:Vr},{x:0,y:0},{width:tr,height:dr}),Ir[wr]={data:Ur,pixelRatio:aa,sdf:Hr,stretchX:Qr,stretchY:Gr,content:ia}}ye(null,Ir)}}return{cancel:function(){st&&(st.cancel(),st=null),Et&&(Et.cancel(),Et=null)}}}function T(ve){var K=ve.userImage;if(K&&K.render){var ye=K.render();if(ye)return ve.data.replace(new Uint8Array(K.data.buffer)),!0}return!1}var l=1,_=function(ve){function K(){ve.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.isLoaded=function(){return this.loaded},K.prototype.setLoaded=function(te){if(this.loaded!==te&&(this.loaded=te,te)){for(var xe=0,We=this.requestors;xe<We.length;xe+=1){var He=We[xe],st=He.ids,Et=He.callback;this._notify(st,Et)}this.requestors=[]}},K.prototype.getImage=function(te){return this.images[te]},K.prototype.addImage=function(te,xe){this._validate(te,xe)&&(this.images[te]=xe)},K.prototype._validate=function(te,xe){var We=!0;return this._validateStretch(xe.stretchX,xe.data&&xe.data.width)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "stretchX" value'))),We=!1),this._validateStretch(xe.stretchY,xe.data&&xe.data.height)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "stretchY" value'))),We=!1),this._validateContent(xe.content,xe)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "content" value'))),We=!1),We},K.prototype._validateStretch=function(te,xe){if(!te)return!0;for(var We=0,He=0,st=te;He<st.length;He+=1){var Et=st[He];if(Et[0]<We||Et[1]<Et[0]||xe<Et[1])return!1;We=Et[1]}return!0},K.prototype._validateContent=function(te,xe){return te?!(te.length!==4||te[0]<0||xe.data.width<te[0]||te[1]<0||xe.data.height<te[1]||te[2]<0||xe.data.width<te[2]||te[3]<0||xe.data.height<te[3]||te[2]<te[0]||te[3]<te[1]):!0},K.prototype.updateImage=function(te,xe){var We=this.images[te];xe.version=We.version+1,this.images[te]=xe,this.updatedImages[te]=!0},K.prototype.removeImage=function(te){var xe=this.images[te];delete this.images[te],delete this.patterns[te],xe.userImage&&xe.userImage.onRemove&&xe.userImage.onRemove()},K.prototype.listImages=function(){return Object.keys(this.images)},K.prototype.getImages=function(te,xe){var We=!0;if(!this.isLoaded())for(var He=0,st=te;He<st.length;He+=1){var Et=st[He];this.images[Et]||(We=!1)}this.isLoaded()||We?this._notify(te,xe):this.requestors.push({ids:te,callback:xe})},K.prototype._notify=function(te,xe){for(var We={},He=0,st=te;He<st.length;He+=1){var Et=st[He];this.images[Et]||this.fire(new e.Event("styleimagemissing",{id:Et}));var Ht=this.images[Et];Ht?We[Et]={data:Ht.data.clone(),pixelRatio:Ht.pixelRatio,sdf:Ht.sdf,version:Ht.version,stretchX:Ht.stretchX,stretchY:Ht.stretchY,content:Ht.content,hasRenderCallback:!!(Ht.userImage&&Ht.userImage.render)}:e.warnOnce('Image "'+Et+'" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.')}xe(null,We)},K.prototype.getPixelSize=function(){var te=this.atlasImage,xe=te.width,We=te.height;return{width:xe,height:We}},K.prototype.getPattern=function(te){var xe=this.patterns[te],We=this.getImage(te);if(!We)return null;if(xe&&xe.position.version===We.version)return xe.position;if(xe)xe.position.version=We.version;else{var He=We.data.width+l*2,st=We.data.height+l*2,Et={w:He,h:st,x:0,y:0},Ht=new e.ImagePosition(Et,We);this.patterns[te]={bin:Et,position:Ht}}return this._updatePatternAtlas(),this.patterns[te].position},K.prototype.bind=function(te){var xe=te.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new e.Texture(te,this.atlasImage,xe.RGBA),this.atlasTexture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE)},K.prototype._updatePatternAtlas=function(){var te=[];for(var xe in this.patterns)te.push(this.patterns[xe].bin);var We=e.potpack(te),He=We.w,st=We.h,Et=this.atlasImage;Et.resize({width:He||1,height:st||1});for(var Ht in this.patterns){var yr=this.patterns[Ht],Ir=yr.bin,wr=Ir.x+l,qt=Ir.y+l,tr=this.images[Ht].data,dr=tr.width,Pr=tr.height;e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr,y:qt},{width:dr,height:Pr}),e.RGBAImage.copy(tr,Et,{x:0,y:Pr-1},{x:wr,y:qt-1},{width:dr,height:1}),e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr,y:qt+Pr},{width:dr,height:1}),e.RGBAImage.copy(tr,Et,{x:dr-1,y:0},{x:wr-1,y:qt},{width:1,height:Pr}),e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr+dr,y:qt},{width:1,height:Pr})}this.dirty=!0},K.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},K.prototype.dispatchRenderCallbacks=function(te){for(var xe=0,We=te;xe<We.length;xe+=1){var He=We[xe];if(!this.callbackDispatchedThisFrame[He]){this.callbackDispatchedThisFrame[He]=!0;var st=this.images[He],Et=T(st);Et&&this.updateImage(He,st)}}},K}(e.Evented);function w(ve,K,ye,te,xe){var We=K*256,He=We+255,st=te.transformRequest(te.normalizeGlyphsURL(ye).replace("{fontstack}",ve).replace("{range}",We+"-"+He),e.ResourceType.Glyphs);e.getArrayBuffer(st,function(Et,Ht){if(Et)xe(Et);else if(Ht){for(var yr={},Ir=0,wr=e.parseGlyphPBF(Ht);Ir<wr.length;Ir+=1){var qt=wr[Ir];yr[qt.id]=qt}xe(null,yr)}})}var S=b,E=b,m=1e20;function b(ve,K,ye,te,xe,We){this.fontSize=ve||24,this.buffer=K===void 0?3:K,this.cutoff=te||.25,this.fontFamily=xe||"sans-serif",this.fontWeight=We||"normal",this.radius=ye||8;var He=this.size=this.fontSize+this.buffer*2;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=He,this.ctx=this.canvas.getContext("2d"),this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily,this.ctx.textBaseline="middle",this.ctx.fillStyle="black",this.gridOuter=new Float64Array(He*He),this.gridInner=new Float64Array(He*He),this.f=new Float64Array(He),this.d=new Float64Array(He),this.z=new Float64Array(He+1),this.v=new Int16Array(He),this.middle=Math.round(He/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}b.prototype.draw=function(ve){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(ve,this.buffer,this.middle);for(var K=this.ctx.getImageData(0,0,this.size,this.size),ye=new Uint8ClampedArray(this.size*this.size),te=0;te<this.size*this.size;te++){var xe=K.data[te*4+3]/255;this.gridOuter[te]=xe===1?0:xe===0?m:Math.pow(Math.max(0,.5-xe),2),this.gridInner[te]=xe===1?m:xe===0?0:Math.pow(Math.max(0,xe-.5),2)}for(d(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),d(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),te=0;te<this.size*this.size;te++){var We=this.gridOuter[te]-this.gridInner[te];ye[te]=Math.max(0,Math.min(255,Math.round(255-255*(We/this.radius+this.cutoff))))}return ye};function d(ve,K,ye,te,xe,We,He){for(var st=0;st<K;st++){for(var Et=0;Et<ye;Et++)te[Et]=ve[Et*K+st];for(u(te,xe,We,He,ye),Et=0;Et<ye;Et++)ve[Et*K+st]=xe[Et]}for(Et=0;Et<ye;Et++){for(st=0;st<K;st++)te[st]=ve[Et*K+st];for(u(te,xe,We,He,K),st=0;st<K;st++)ve[Et*K+st]=Math.sqrt(xe[st])}}function u(ve,K,ye,te,xe){ye[0]=0,te[0]=-m,te[1]=+m;for(var We=1,He=0;We<xe;We++){for(var st=(ve[We]+We*We-(ve[ye[He]]+ye[He]*ye[He]))/(2*We-2*ye[He]);st<=te[He];)He--,st=(ve[We]+We*We-(ve[ye[He]]+ye[He]*ye[He]))/(2*We-2*ye[He]);He++,ye[He]=We,te[He]=st,te[He+1]=+m}for(We=0,He=0;We<xe;We++){for(;te[He+1]<We;)He++;K[We]=(We-ye[He])*(We-ye[He])+ve[ye[He]]}}S.default=E;var y=function(K,ye){this.requestManager=K,this.localIdeographFontFamily=ye,this.entries={}};y.prototype.setURL=function(K){this.url=K},y.prototype.getGlyphs=function(K,ye){var te=this,xe=[];for(var We in K)for(var He=0,st=K[We];He<st.length;He+=1){var Et=st[He];xe.push({stack:We,id:Et})}e.asyncAll(xe,function(Ht,yr){var Ir=Ht.stack,wr=Ht.id,qt=te.entries[Ir];qt||(qt=te.entries[Ir]={glyphs:{},requests:{},ranges:{}});var tr=qt.glyphs[wr];if(tr!==void 0){yr(null,{stack:Ir,id:wr,glyph:tr});return}if(tr=te._tinySDF(qt,Ir,wr),tr){qt.glyphs[wr]=tr,yr(null,{stack:Ir,id:wr,glyph:tr});return}var dr=Math.floor(wr/256);if(dr*256>65535){yr(new Error("glyphs > 65535 not supported"));return}if(qt.ranges[dr]){yr(null,{stack:Ir,id:wr,glyph:tr});return}var Pr=qt.requests[dr];Pr||(Pr=qt.requests[dr]=[],y.loadGlyphRange(Ir,dr,te.url,te.requestManager,function(Vr,Hr){if(Hr){for(var aa in Hr)te._doesCharSupportLocalGlyph(+aa)||(qt.glyphs[+aa]=Hr[+aa]);qt.ranges[dr]=!0}for(var Qr=0,Gr=Pr;Qr<Gr.length;Qr+=1){var ia=Gr[Qr];ia(Vr,Hr)}delete qt.requests[dr]})),Pr.push(function(Vr,Hr){Vr?yr(Vr):Hr&&yr(null,{stack:Ir,id:wr,glyph:Hr[wr]||null})})},function(Ht,yr){if(Ht)ye(Ht);else if(yr){for(var Ir={},wr=0,qt=yr;wr<qt.length;wr+=1){var tr=qt[wr],dr=tr.stack,Pr=tr.id,Vr=tr.glyph;(Ir[dr]||(Ir[dr]={}))[Pr]=Vr&&{id:Vr.id,bitmap:Vr.bitmap.clone(),metrics:Vr.metrics}}ye(null,Ir)}})},y.prototype._doesCharSupportLocalGlyph=function(K){return!!this.localIdeographFontFamily&&(e.isChar["CJK Unified Ideographs"](K)||e.isChar["Hangul Syllables"](K)||e.isChar.Hiragana(K)||e.isChar.Katakana(K))},y.prototype._tinySDF=function(K,ye,te){var xe=this.localIdeographFontFamily;if(xe&&this._doesCharSupportLocalGlyph(te)){var We=K.tinySDF;if(!We){var He="400";/bold/i.test(ye)?He="900":/medium/i.test(ye)?He="500":/light/i.test(ye)&&(He="200"),We=K.tinySDF=new y.TinySDF(24,3,8,.25,xe,He)}return{id:te,bitmap:new e.AlphaImage({width:30,height:30},We.draw(String.fromCharCode(te))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},y.loadGlyphRange=w,y.TinySDF=S;var f=function(){this.specification=e.styleSpec.light.position};f.prototype.possiblyEvaluate=function(K,ye){return e.sphericalToCartesian(K.expression.evaluate(ye))},f.prototype.interpolate=function(K,ye,te){return{x:e.number(K.x,ye.x,te),y:e.number(K.y,ye.y,te),z:e.number(K.z,ye.z,te)}};var P=new e.Properties({anchor:new e.DataConstantProperty(e.styleSpec.light.anchor),position:new f,color:new e.DataConstantProperty(e.styleSpec.light.color),intensity:new e.DataConstantProperty(e.styleSpec.light.intensity)}),L="-transition",z=function(ve){function K(ye){ve.call(this),this._transitionable=new e.Transitionable(P),this.setLight(ye),this._transitioning=this._transitionable.untransitioned()}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getLight=function(){return this._transitionable.serialize()},K.prototype.setLight=function(te,xe){if(xe===void 0&&(xe={}),!this._validate(e.validateLight,te,xe))for(var We in te){var He=te[We];e.endsWith(We,L)?this._transitionable.setTransition(We.slice(0,-L.length),He):this._transitionable.setValue(We,He)}},K.prototype.updateTransitions=function(te){this._transitioning=this._transitionable.transitioned(te,this._transitioning)},K.prototype.hasTransition=function(){return this._transitioning.hasTransition()},K.prototype.recalculate=function(te){this.properties=this._transitioning.possiblyEvaluate(te)},K.prototype._validate=function(te,xe,We){return We&&We.validate===!1?!1:e.emitValidationErrors(this,te.call(e.validateStyle,e.extend({value:xe,style:{glyphs:!0,sprite:!0},styleSpec:e.styleSpec})))},K}(e.Evented),F=function(K,ye){this.width=K,this.height=ye,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};F.prototype.getDash=function(K,ye){var te=K.join(",")+String(ye);return this.dashEntry[te]||(this.dashEntry[te]=this.addDash(K,ye)),this.dashEntry[te]},F.prototype.getDashRanges=function(K,ye,te){var xe=K.length%2===1,We=[],He=xe?-K[K.length-1]*te:0,st=K[0]*te,Et=!0;We.push({left:He,right:st,isDash:Et,zeroLength:K[0]===0});for(var Ht=K[0],yr=1;yr<K.length;yr++){Et=!Et;var Ir=K[yr];He=Ht*te,Ht+=Ir,st=Ht*te,We.push({left:He,right:st,isDash:Et,zeroLength:Ir===0})}return We},F.prototype.addRoundDash=function(K,ye,te){for(var xe=ye/2,We=-te;We<=te;We++)for(var He=this.nextRow+te+We,st=this.width*He,Et=0,Ht=K[Et],yr=0;yr<this.width;yr++){yr/Ht.right>1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=void 0,dr=We/te*(xe+1);if(Ht.isDash){var Pr=xe-Math.abs(dr);tr=Math.sqrt(qt*qt+Pr*Pr)}else tr=xe-Math.sqrt(qt*qt+dr*dr);this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addRegularDash=function(K){for(var ye=K.length-1;ye>=0;--ye){var te=K[ye],xe=K[ye+1];te.zeroLength?K.splice(ye,1):xe&&xe.isDash===te.isDash&&(xe.left=te.left,K.splice(ye,1))}var We=K[0],He=K[K.length-1];We.isDash===He.isDash&&(We.left=He.left-this.width,He.right=We.right+this.width);for(var st=this.width*this.nextRow,Et=0,Ht=K[Et],yr=0;yr<this.width;yr++){yr/Ht.right>1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=Ht.isDash?qt:-qt;this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addDash=function(K,ye){var te=ye?7:0,xe=2*te+1;if(this.nextRow+xe>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var We=0,He=0;He<K.length;He++)We+=K[He];if(We!==0){var st=this.width/We,Et=this.getDashRanges(K,this.width,st);ye?this.addRoundDash(Et,st,te):this.addRegularDash(Et)}var Ht={y:(this.nextRow+te+.5)/this.height,height:2*te/this.height,width:We};return this.nextRow+=xe,this.dirty=!0,Ht},F.prototype.bind=function(K){var ye=K.gl;this.texture?(ye.bindTexture(ye.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,ye.texSubImage2D(ye.TEXTURE_2D,0,0,0,this.width,this.height,ye.ALPHA,ye.UNSIGNED_BYTE,this.data))):(this.texture=ye.createTexture(),ye.bindTexture(ye.TEXTURE_2D,this.texture),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_WRAP_S,ye.REPEAT),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_WRAP_T,ye.REPEAT),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_MIN_FILTER,ye.LINEAR),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_MAG_FILTER,ye.LINEAR),ye.texImage2D(ye.TEXTURE_2D,0,ye.ALPHA,this.width,this.height,0,ye.ALPHA,ye.UNSIGNED_BYTE,this.data))};var B=function ve(K,ye){this.workerPool=K,this.actors=[],this.currentActor=0,this.id=e.uniqueId();for(var te=this.workerPool.acquire(this.id),xe=0;xe<te.length;xe++){var We=te[xe],He=new ve.Actor(We,ye,this.id);He.name="Worker "+xe,this.actors.push(He)}};B.prototype.broadcast=function(K,ye,te){te=te||function(){},e.asyncAll(this.actors,function(xe,We){xe.send(K,ye,We)},te)},B.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},B.prototype.remove=function(){this.actors.forEach(function(K){K.remove()}),this.actors=[],this.workerPool.release(this.id)},B.Actor=e.Actor;function O(ve,K,ye){var te=function(xe,We){if(xe)return ye(xe);if(We){var He=e.pick(e.extend(We,ve),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);We.vector_layers&&(He.vectorLayers=We.vector_layers,He.vectorLayerIds=He.vectorLayers.map(function(st){return st.id})),He.tiles=K.canonicalizeTileset(He,ve.url),ye(null,He)}};return ve.url?e.getJSON(K.transformRequest(K.normalizeSourceURL(ve.url),e.ResourceType.Source),te):e.browser.frame(function(){return te(null,ve)})}var I=function(K,ye,te){this.bounds=e.LngLatBounds.convert(this.validateBounds(K)),this.minzoom=ye||0,this.maxzoom=te||24};I.prototype.validateBounds=function(K){return!Array.isArray(K)||K.length!==4?[-180,-90,180,90]:[Math.max(-180,K[0]),Math.max(-90,K[1]),Math.min(180,K[2]),Math.min(90,K[3])]},I.prototype.contains=function(K){var ye=Math.pow(2,K.z),te={minX:Math.floor(e.mercatorXfromLng(this.bounds.getWest())*ye),minY:Math.floor(e.mercatorYfromLat(this.bounds.getNorth())*ye),maxX:Math.ceil(e.mercatorXfromLng(this.bounds.getEast())*ye),maxY:Math.ceil(e.mercatorYfromLat(this.bounds.getSouth())*ye)},xe=K.x>=te.minX&&K.x<te.maxX&&K.y>=te.minY&&K.y<te.maxY;return xe};var N=function(ve){function K(ye,te,xe,We){if(ve.call(this),this.id=ye,this.dispatcher=xe,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,e.extend(this,e.pick(te,["url","scheme","tileSize","promoteId"])),this._options=e.extend({type:"vector"},te),this._collectResourceTiming=te.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(We)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(xe,We){te._tileJSONRequest=null,te._loaded=!0,xe?te.fire(new e.ErrorEvent(xe)):We&&(e.extend(te,We),We.bounds&&(te.tileBounds=new I(We.bounds,te.minzoom,te.maxzoom)),e.postTurnstileEvent(We.tiles,te.map._requestManager._customAccessToken),e.postMapLoadEvent(We.tiles,te.map._getMapId(),te.map._requestManager._skuToken,te.map._requestManager._customAccessToken),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))})},K.prototype.loaded=function(){return this._loaded},K.prototype.hasTile=function(te){return!this.tileBounds||this.tileBounds.contains(te.canonical)},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setSourceProperty=function(te){this._tileJSONRequest&&this._tileJSONRequest.cancel(),te();var xe=this.map.style.sourceCaches[this.id];xe.clearTiles(),this.load()},K.prototype.setTiles=function(te){var xe=this;return this.setSourceProperty(function(){xe._options.tiles=te}),this},K.prototype.setUrl=function(te){var xe=this;return this.setSourceProperty(function(){xe.url=te,xe._options.url=te}),this},K.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},K.prototype.serialize=function(){return e.extend({},this._options)},K.prototype.loadTile=function(te,xe){var We=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme)),He={request:this.map._requestManager.transformRequest(We,e.ResourceType.Tile),uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,tileSize:this.tileSize*te.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};He.request.collectResourceTiming=this._collectResourceTiming,!te.actor||te.state==="expired"?(te.actor=this.dispatcher.getActor(),te.request=te.actor.send("loadTile",He,st.bind(this))):te.state==="loading"?te.reloadCallback=xe:te.request=te.actor.send("reloadTile",He,st.bind(this));function st(Et,Ht){if(delete te.request,te.aborted)return xe(null);if(Et&&Et.status!==404)return xe(Et);Ht&&Ht.resourceTiming&&(te.resourceTiming=Ht.resourceTiming),this.map._refreshExpiredTiles&&Ht&&te.setExpiryData(Ht),te.loadVectorData(Ht,this.map.painter),e.cacheEntryPossiblyAdded(this.dispatcher),xe(null),te.reloadCallback&&(this.loadTile(te,te.reloadCallback),te.reloadCallback=null)}},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.actor&&te.actor.send("abortTile",{uid:te.uid,type:this.type,source:this.id},void 0)},K.prototype.unloadTile=function(te){te.unloadVectorData(),te.actor&&te.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id},void 0)},K.prototype.hasTransition=function(){return!1},K}(e.Evented),U=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.setEventedParent(We),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=e.extend({type:"raster"},te),e.extend(this,e.pick(te,["url","scheme","tileSize"]))}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(xe,We){te._tileJSONRequest=null,te._loaded=!0,xe?te.fire(new e.ErrorEvent(xe)):We&&(e.extend(te,We),We.bounds&&(te.tileBounds=new I(We.bounds,te.minzoom,te.maxzoom)),e.postTurnstileEvent(We.tiles),e.postMapLoadEvent(We.tiles,te.map._getMapId(),te.map._requestManager._skuToken),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))})},K.prototype.loaded=function(){return this._loaded},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},K.prototype.serialize=function(){return e.extend({},this._options)},K.prototype.hasTile=function(te){return!this.tileBounds||this.tileBounds.contains(te.canonical)},K.prototype.loadTile=function(te,xe){var We=this,He=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);te.request=e.getImage(this.map._requestManager.transformRequest(He,e.ResourceType.Tile),function(st,Et){if(delete te.request,te.aborted)te.state="unloaded",xe(null);else if(st)te.state="errored",xe(st);else if(Et){We.map._refreshExpiredTiles&&te.setExpiryData(Et),delete Et.cacheControl,delete Et.expires;var Ht=We.map.painter.context,yr=Ht.gl;te.texture=We.map.painter.getTileTexture(Et.width),te.texture?te.texture.update(Et,{useMipmap:!0}):(te.texture=new e.Texture(Ht,Et,yr.RGBA,{useMipmap:!0}),te.texture.bind(yr.LINEAR,yr.CLAMP_TO_EDGE,yr.LINEAR_MIPMAP_NEAREST),Ht.extTextureFilterAnisotropic&&yr.texParameterf(yr.TEXTURE_2D,Ht.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Ht.extTextureFilterAnisotropicMax)),te.state="loaded",e.cacheEntryPossiblyAdded(We.dispatcher),xe(null)}})},K.prototype.abortTile=function(te,xe){te.request&&(te.request.cancel(),delete te.request),xe()},K.prototype.unloadTile=function(te,xe){te.texture&&this.map.painter.saveTileTexture(te.texture),xe()},K.prototype.hasTransition=function(){return!1},K}(e.Evented),W=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),this.type="raster-dem",this.maxzoom=22,this._options=e.extend({type:"raster-dem"},te),this.encoding=te.encoding||"mapbox"}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},K.prototype.loadTile=function(te,xe){var We=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);te.request=e.getImage(this.map._requestManager.transformRequest(We,e.ResourceType.Tile),He.bind(this)),te.neighboringTiles=this._getNeighboringTiles(te.tileID);function He(Et,Ht){if(delete te.request,te.aborted)te.state="unloaded",xe(null);else if(Et)te.state="errored",xe(Et);else if(Ht){this.map._refreshExpiredTiles&&te.setExpiryData(Ht),delete Ht.cacheControl,delete Ht.expires;var yr=e.window.ImageBitmap&&Ht instanceof e.window.ImageBitmap&&e.offscreenCanvasSupported(),Ir=yr?Ht:e.browser.getImageData(Ht,1),wr={uid:te.uid,coord:te.tileID,source:this.id,rawImageData:Ir,encoding:this.encoding};(!te.actor||te.state==="expired")&&(te.actor=this.dispatcher.getActor(),te.actor.send("loadDEMTile",wr,st.bind(this)))}}function st(Et,Ht){Et&&(te.state="errored",xe(Et)),Ht&&(te.dem=Ht,te.needsHillshadePrepare=!0,te.state="loaded",xe(null))}},K.prototype._getNeighboringTiles=function(te){var xe=te.canonical,We=Math.pow(2,xe.z),He=(xe.x-1+We)%We,st=xe.x===0?te.wrap-1:te.wrap,Et=(xe.x+1+We)%We,Ht=xe.x+1===We?te.wrap+1:te.wrap,yr={};return yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y).key]={backfilled:!1},xe.y>0&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y-1).key]={backfilled:!1}),xe.y+1<We&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y+1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y+1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y+1).key]={backfilled:!1}),yr},K.prototype.unloadTile=function(te){te.demTexture&&this.map.painter.saveTileTexture(te.demTexture),te.fbo&&(te.fbo.destroy(),delete te.fbo),te.dem&&delete te.dem,delete te.neighboringTiles,te.state="unloaded",te.actor&&te.actor.send("removeDEMTile",{uid:te.uid,source:this.id})},K}(U),Q=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=xe.getActor(),this.setEventedParent(We),this._data=te.data,this._options=e.extend({},te),this._collectResourceTiming=te.collectResourceTiming,this._resourceTiming=[],te.maxzoom!==void 0&&(this.maxzoom=te.maxzoom),te.type&&(this.type=te.type),te.attribution&&(this.attribution=te.attribution),this.promoteId=te.promoteId;var He=e.EXTENT/this.tileSize;this.workerOptions=e.extend({source:this.id,cluster:te.cluster||!1,geojsonVtOptions:{buffer:(te.buffer!==void 0?te.buffer:128)*He,tolerance:(te.tolerance!==void 0?te.tolerance:.375)*He,extent:e.EXTENT,maxZoom:this.maxzoom,lineMetrics:te.lineMetrics||!1,generateId:te.generateId||!1},superclusterOptions:{maxZoom:te.clusterMaxZoom!==void 0?Math.min(te.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,te.clusterMinPoints||2),extent:e.EXTENT,radius:(te.clusterRadius||50)*He,log:!1,generateId:te.generateId||!1},clusterProperties:te.clusterProperties,filter:te.filter},te.workerOptions)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(xe){if(xe){te.fire(new e.ErrorEvent(xe));return}var We={dataType:"source",sourceDataType:"metadata"};te._collectResourceTiming&&te._resourceTiming&&te._resourceTiming.length>0&&(We.resourceTiming=te._resourceTiming,te._resourceTiming=[]),te.fire(new e.Event("data",We))})},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setData=function(te){var xe=this;return this._data=te,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(We){if(We){xe.fire(new e.ErrorEvent(We));return}var He={dataType:"source",sourceDataType:"content"};xe._collectResourceTiming&&xe._resourceTiming&&xe._resourceTiming.length>0&&(He.resourceTiming=xe._resourceTiming,xe._resourceTiming=[]),xe.fire(new e.Event("data",He))}),this},K.prototype.getClusterExpansionZoom=function(te,xe){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterChildren=function(te,xe){return this.actor.send("geojson.getClusterChildren",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterLeaves=function(te,xe,We,He){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:te,limit:xe,offset:We},He),this},K.prototype._updateWorkerData=function(te){var xe=this;this._loaded=!1;var We=e.extend({},this.workerOptions),He=this._data;typeof He=="string"?(We.request=this.map._requestManager.transformRequest(e.browser.resolveURL(He),e.ResourceType.Source),We.request.collectResourceTiming=this._collectResourceTiming):We.data=JSON.stringify(He),this.actor.send(this.type+".loadData",We,function(st,Et){xe._removed||Et&&Et.abandoned||(xe._loaded=!0,Et&&Et.resourceTiming&&Et.resourceTiming[xe.id]&&(xe._resourceTiming=Et.resourceTiming[xe.id].slice(0)),xe.actor.send(xe.type+".coalesce",{source:We.source},null),te(st))})},K.prototype.loaded=function(){return this._loaded},K.prototype.loadTile=function(te,xe){var We=this,He=te.actor?"reloadTile":"loadTile";te.actor=this.actor;var st={type:this.type,uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};te.request=this.actor.send(He,st,function(Et,Ht){return delete te.request,te.unloadVectorData(),te.aborted?xe(null):Et?xe(Et):(te.loadVectorData(Ht,We.map.painter,He==="reloadTile"),xe(null))})},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.aborted=!0},K.prototype.unloadTile=function(te){te.unloadVectorData(),this.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id})},K.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},K.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},K.prototype.hasTransition=function(){return!1},K}(e.Evented),ue=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),se=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.coordinates=te.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(We),this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(te,xe){var We=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),function(He,st){We._loaded=!0,He?We.fire(new e.ErrorEvent(He)):st&&(We.image=st,te&&(We.coordinates=te),xe&&xe(),We._finishLoading())})},K.prototype.loaded=function(){return this._loaded},K.prototype.updateImage=function(te){var xe=this;return!this.image||!te.url?this:(this.options.url=te.url,this.load(te.coordinates,function(){xe.texture=null}),this)},K.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setCoordinates=function(te){var xe=this;this.coordinates=te;var We=te.map(e.MercatorCoordinate.fromLngLat);this.tileID=he(We),this.minzoom=this.maxzoom=this.tileID.z;var He=We.map(function(st){return xe.tileID.getTilePoint(st)._round()});return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(He[0].x,He[0].y,0,0),this._boundsArray.emplaceBack(He[1].x,He[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(He[3].x,He[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(He[2].x,He[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(te,this.image,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.loadTile=function(te,xe){this.tileID&&this.tileID.equals(te.tileID.canonical)?(this.tiles[String(te.tileID.wrap)]=te,te.buckets={},xe(null)):(te.state="errored",xe(null))},K.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return!1},K}(e.Evented);function he(ve){for(var K=1/0,ye=1/0,te=-1/0,xe=-1/0,We=0,He=ve;We<He.length;We+=1){var st=He[We];K=Math.min(K,st.x),ye=Math.min(ye,st.y),te=Math.max(te,st.x),xe=Math.max(xe,st.y)}var Et=te-K,Ht=xe-ye,yr=Math.max(Et,Ht),Ir=Math.max(0,Math.floor(-Math.log(yr)/Math.LN2)),wr=Math.pow(2,Ir);return new e.CanonicalTileID(Ir,Math.floor((K+te)/2*wr),Math.floor((ye+xe)/2*wr))}var G=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),this.roundZoom=!0,this.type="video",this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1;var xe=this.options;this.urls=[];for(var We=0,He=xe.urls;We<He.length;We+=1){var st=He[We];this.urls.push(this.map._requestManager.transformRequest(st,e.ResourceType.Source).url)}e.getVideo(this.urls,function(Et,Ht){te._loaded=!0,Et?te.fire(new e.ErrorEvent(Et)):Ht&&(te.video=Ht,te.video.loop=!0,te.video.addEventListener("playing",function(){te.map.triggerRepaint()}),te.map&&te.video.play(),te._finishLoading())})},K.prototype.pause=function(){this.video&&this.video.pause()},K.prototype.play=function(){this.video&&this.video.play()},K.prototype.seek=function(te){if(this.video){var xe=this.video.seekable;te<xe.start(0)||te>xe.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+xe.start(0)+" and "+xe.end(0)+"-second mark."))):this.video.currentTime=te}},K.prototype.getVideo=function(){return this.video},K.prototype.onAdd=function(te){this.map||(this.map=te,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),xe.texSubImage2D(xe.TEXTURE_2D,0,0,0,xe.RGBA,xe.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(te,this.video,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this.video&&!this.video.paused},K}(se),$=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),te.coordinates?(!Array.isArray(te.coordinates)||te.coordinates.length!==4||te.coordinates.some(function(He){return!Array.isArray(He)||He.length!==2||He.some(function(st){return typeof st!="number"})}))&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "coordinates"'))),te.animate&&typeof te.animate!="boolean"&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'optional "animate" property must be a boolean value'))),te.canvas?typeof te.canvas!="string"&&!(te.canvas instanceof e.window.HTMLCanvasElement)&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "canvas"'))),this.options=te,this.animate=te.animate!==void 0?te.animate:!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},K.prototype.getCanvas=function(){return this.canvas},K.prototype.onAdd=function(te){this.map=te,this.load(),this.canvas&&this.animate&&this.play()},K.prototype.onRemove=function(){this.pause()},K.prototype.prepare=function(){var te=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,te=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,te=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var xe=this.map.painter.context,We=xe.gl;this.boundsBuffer||(this.boundsBuffer=xe.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(te||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(xe,this.canvas,We.RGBA,{premultiply:!0});for(var He in this.tiles){var st=this.tiles[He];st.state!=="loaded"&&(st.state="loaded",st.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this._playing},K.prototype._hasInvalidDimensions=function(){for(var te=0,xe=[this.canvas.width,this.canvas.height];te<xe.length;te+=1){var We=xe[te];if(isNaN(We)||We<=0)return!0}return!1},K}(se),J={vector:N,raster:U,"raster-dem":W,geojson:Q,video:G,image:se,canvas:$},Z=function(ve,K,ye,te){var xe=new J[K.type](ve,K,ye,te);if(xe.id!==ve)throw new Error("Expected Source id to be "+ve+" instead of "+xe.id);return e.bindAll(["load","abort","unload","serialize","prepare"],xe),xe},re=function(ve){return J[ve]},ne=function(ve,K){J[ve]=K};function j(ve,K){var ye=e.identity([]);return e.translate(ye,ye,[1,1,0]),e.scale(ye,ye,[ve.width*.5,ve.height*.5,1]),e.multiply(ye,ye,ve.calculatePosMatrix(K.toUnwrapped()))}function ee(ve,K,ye){if(ve)for(var te=0,xe=ve;te<xe.length;te+=1){var We=xe[te],He=K[We];if(He&&He.source===ye&&He.type==="fill-extrusion")return!0}else for(var st in K){var Et=K[st];if(Et.source===ye&&Et.type==="fill-extrusion")return!0}return!1}function ie(ve,K,ye,te,xe,We){var He=ee(xe&&xe.layers,K,ve.id),st=We.maxPitchScaleFactor(),Et=ve.tilesIn(te,st,He);Et.sort(Ae);for(var Ht=[],yr=0,Ir=Et;yr<Ir.length;yr+=1){var wr=Ir[yr];Ht.push({wrappedTileID:wr.tileID.wrapped().key,queryResults:wr.tile.queryRenderedFeatures(K,ye,ve._state,wr.queryGeometry,wr.cameraQueryGeometry,wr.scale,xe,We,st,j(ve.transform,wr.tileID))})}var qt=Be(Ht);for(var tr in qt)qt[tr].forEach(function(dr){var Pr=dr.feature,Vr=ve.getFeatureState(Pr.layer["source-layer"],Pr.id);Pr.source=Pr.layer.source,Pr.layer["source-layer"]&&(Pr.sourceLayer=Pr.layer["source-layer"]),Pr.state=Vr});return qt}function fe(ve,K,ye,te,xe,We,He){for(var st={},Et=We.queryRenderedSymbols(te),Ht=[],yr=0,Ir=Object.keys(Et).map(Number);yr<Ir.length;yr+=1){var wr=Ir[yr];Ht.push(He[wr])}Ht.sort(Ae);for(var qt=function(){var Hr=dr[tr],aa=Hr.featureIndex.lookupSymbolFeatures(Et[Hr.bucketInstanceId],K,Hr.bucketIndex,Hr.sourceLayerIndex,xe.filter,xe.layers,xe.availableImages,ve);for(var Qr in aa){var Gr=st[Qr]=st[Qr]||[],ia=aa[Qr];ia.sort(function(ri,Pi){var mi=Hr.featureSortOrder;if(mi){var Di=mi.indexOf(ri.featureIndex),An=mi.indexOf(Pi.featureIndex);return An-Di}else return Pi.featureIndex-ri.featureIndex});for(var Ur=0,wa=ia;Ur<wa.length;Ur+=1){var Oa=wa[Ur];Gr.push(Oa)}}},tr=0,dr=Ht;tr<dr.length;tr+=1)qt();var Pr=function(Hr){st[Hr].forEach(function(aa){var Qr=aa.feature,Gr=ve[Hr],ia=ye[Gr.source],Ur=ia.getFeatureState(Qr.layer["source-layer"],Qr.id);Qr.source=Qr.layer.source,Qr.layer["source-layer"]&&(Qr.sourceLayer=Qr.layer["source-layer"]),Qr.state=Ur})};for(var Vr in st)Pr(Vr);return st}function be(ve,K){for(var ye=ve.getRenderableIds().map(function(Et){return ve.getTileByID(Et)}),te=[],xe={},We=0;We<ye.length;We++){var He=ye[We],st=He.tileID.canonical.key;xe[st]||(xe[st]=!0,He.querySourceFeatures(te,K))}return te}function Ae(ve,K){var ye=ve.tileID,te=K.tileID;return ye.overscaledZ-te.overscaledZ||ye.canonical.y-te.canonical.y||ye.wrap-te.wrap||ye.canonical.x-te.canonical.x}function Be(ve){for(var K={},ye={},te=0,xe=ve;te<xe.length;te+=1){var We=xe[te],He=We.queryResults,st=We.wrappedTileID,Et=ye[st]=ye[st]||{};for(var Ht in He)for(var yr=He[Ht],Ir=Et[Ht]=Et[Ht]||{},wr=K[Ht]=K[Ht]||[],qt=0,tr=yr;qt<tr.length;qt+=1){var dr=tr[qt];Ir[dr.featureIndex]||(Ir[dr.featureIndex]=!0,wr.push(dr))}}return K}var Ie=function(K,ye){this.max=K,this.onRemove=ye,this.reset()};Ie.prototype.reset=function(){for(var K in this.data)for(var ye=0,te=this.data[K];ye<te.length;ye+=1){var xe=te[ye];xe.timeout&&clearTimeout(xe.timeout),this.onRemove(xe.value)}return this.data={},this.order=[],this},Ie.prototype.add=function(K,ye,te){var xe=this,We=K.wrapped().key;this.data[We]===void 0&&(this.data[We]=[]);var He={value:ye,timeout:void 0};if(te!==void 0&&(He.timeout=setTimeout(function(){xe.remove(K,He)},te)),this.data[We].push(He),this.order.push(We),this.order.length>this.max){var st=this._getAndRemoveByKey(this.order[0]);st&&this.onRemove(st)}return this},Ie.prototype.has=function(K){return K.wrapped().key in this.data},Ie.prototype.getAndRemove=function(K){return this.has(K)?this._getAndRemoveByKey(K.wrapped().key):null},Ie.prototype._getAndRemoveByKey=function(K){var ye=this.data[K].shift();return ye.timeout&&clearTimeout(ye.timeout),this.data[K].length===0&&delete this.data[K],this.order.splice(this.order.indexOf(K),1),ye.value},Ie.prototype.getByKey=function(K){var ye=this.data[K];return ye?ye[0].value:null},Ie.prototype.get=function(K){if(!this.has(K))return null;var ye=this.data[K.wrapped().key][0];return ye.value},Ie.prototype.remove=function(K,ye){if(!this.has(K))return this;var te=K.wrapped().key,xe=ye===void 0?0:this.data[te].indexOf(ye),We=this.data[te][xe];return this.data[te].splice(xe,1),We.timeout&&clearTimeout(We.timeout),this.data[te].length===0&&delete this.data[te],this.onRemove(We.value),this.order.splice(this.order.indexOf(te),1),this},Ie.prototype.setMaxSize=function(K){for(this.max=K;this.order.length>this.max;){var ye=this._getAndRemoveByKey(this.order[0]);ye&&this.onRemove(ye)}return this},Ie.prototype.filter=function(K){var ye=[];for(var te in this.data)for(var xe=0,We=this.data[te];xe<We.length;xe+=1){var He=We[xe];K(He.value)||ye.push(He)}for(var st=0,Et=ye;st<Et.length;st+=1){var Ht=Et[st];this.remove(Ht.value.tileID,Ht)}};var Ze=function(K,ye,te){this.context=K;var xe=K.gl;this.buffer=xe.createBuffer(),this.dynamicDraw=!!te,this.context.unbindVAO(),K.bindElementBuffer.set(this.buffer),xe.bufferData(xe.ELEMENT_ARRAY_BUFFER,ye.arrayBuffer,this.dynamicDraw?xe.DYNAMIC_DRAW:xe.STATIC_DRAW),this.dynamicDraw||delete ye.arrayBuffer};Ze.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},Ze.prototype.updateData=function(K){var ye=this.context.gl;this.context.unbindVAO(),this.bind(),ye.bufferSubData(ye.ELEMENT_ARRAY_BUFFER,0,K.arrayBuffer)},Ze.prototype.destroy=function(){var K=this.context.gl;this.buffer&&(K.deleteBuffer(this.buffer),delete this.buffer)};var at={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},it=function(K,ye,te,xe){this.length=ye.length,this.attributes=te,this.itemSize=ye.bytesPerElement,this.dynamicDraw=xe,this.context=K;var We=K.gl;this.buffer=We.createBuffer(),K.bindVertexBuffer.set(this.buffer),We.bufferData(We.ARRAY_BUFFER,ye.arrayBuffer,this.dynamicDraw?We.DYNAMIC_DRAW:We.STATIC_DRAW),this.dynamicDraw||delete ye.arrayBuffer};it.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},it.prototype.updateData=function(K){var ye=this.context.gl;this.bind(),ye.bufferSubData(ye.ARRAY_BUFFER,0,K.arrayBuffer)},it.prototype.enableAttributes=function(K,ye){for(var te=0;te<this.attributes.length;te++){var xe=this.attributes[te],We=ye.attributes[xe.name];We!==void 0&&K.enableVertexAttribArray(We)}},it.prototype.setVertexAttribPointers=function(K,ye,te){for(var xe=0;xe<this.attributes.length;xe++){var We=this.attributes[xe],He=ye.attributes[We.name];He!==void 0&&K.vertexAttribPointer(He,We.components,K[at[We.type]],!1,this.itemSize,We.offset+this.itemSize*(te||0))}},it.prototype.destroy=function(){var K=this.context.gl;this.buffer&&(K.deleteBuffer(this.buffer),delete this.buffer)};var et=function(K){this.gl=K.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};et.prototype.get=function(){return this.current},et.prototype.set=function(K){},et.prototype.getDefault=function(){return this.default},et.prototype.setDefault=function(){this.set(this.default)};var lt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return e.Color.transparent},K.prototype.set=function(te){var xe=this.current;te.r===xe.r&&te.g===xe.g&&te.b===xe.b&&te.a===xe.a&&!this.dirty||(this.gl.clearColor(te.r,te.g,te.b,te.a),this.current=te,this.dirty=!1)},K}(et),Me=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 1},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.clearDepth(te),this.current=te,this.dirty=!1)},K}(et),ge=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.clearStencil(te),this.current=te,this.dirty=!1)},K}(et),ce=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return[!0,!0,!0,!0]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&te[3]===xe[3]&&!this.dirty||(this.gl.colorMask(te[0],te[1],te[2],te[3]),this.current=te,this.dirty=!1)},K}(et),ze=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.depthMask(te),this.current=te,this.dirty=!1)},K}(et),tt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 255},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.stencilMask(te),this.current=te,this.dirty=!1)},K}(et),nt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},K.prototype.set=function(te){var xe=this.current;te.func===xe.func&&te.ref===xe.ref&&te.mask===xe.mask&&!this.dirty||(this.gl.stencilFunc(te.func,te.ref,te.mask),this.current=te,this.dirty=!1)},K}(et),Qe=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[te.KEEP,te.KEEP,te.KEEP]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&!this.dirty||(this.gl.stencilOp(te[0],te[1],te[2]),this.current=te,this.dirty=!1)},K}(et),Ct=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.STENCIL_TEST):xe.disable(xe.STENCIL_TEST),this.current=te,this.dirty=!1}},K}(et),St=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return[0,1]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&!this.dirty||(this.gl.depthRange(te[0],te[1]),this.current=te,this.dirty=!1)},K}(et),Ot=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.DEPTH_TEST):xe.disable(xe.DEPTH_TEST),this.current=te,this.dirty=!1}},K}(et),jt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.LESS},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.depthFunc(te),this.current=te,this.dirty=!1)},K}(et),ur=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.BLEND):xe.disable(xe.BLEND),this.current=te,this.dirty=!1}},K}(et),ar=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[te.ONE,te.ZERO]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&!this.dirty||(this.gl.blendFunc(te[0],te[1]),this.current=te,this.dirty=!1)},K}(et),Cr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return e.Color.transparent},K.prototype.set=function(te){var xe=this.current;te.r===xe.r&&te.g===xe.g&&te.b===xe.b&&te.a===xe.a&&!this.dirty||(this.gl.blendColor(te.r,te.g,te.b,te.a),this.current=te,this.dirty=!1)},K}(et),vr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.FUNC_ADD},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.blendEquation(te),this.current=te,this.dirty=!1)},K}(et),_r=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.CULL_FACE):xe.disable(xe.CULL_FACE),this.current=te,this.dirty=!1}},K}(et),yt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.BACK},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.cullFace(te),this.current=te,this.dirty=!1)},K}(et),Fe=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.CCW},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.frontFace(te),this.current=te,this.dirty=!1)},K}(et),Ke=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.useProgram(te),this.current=te,this.dirty=!1)},K}(et),Ne=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.TEXTURE0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.activeTexture(te),this.current=te,this.dirty=!1)},K}(et),Ee=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[0,0,te.drawingBufferWidth,te.drawingBufferHeight]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&te[3]===xe[3]&&!this.dirty||(this.gl.viewport(te[0],te[1],te[2],te[3]),this.current=te,this.dirty=!1)},K}(et),Ve=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindFramebuffer(xe.FRAMEBUFFER,te),this.current=te,this.dirty=!1}},K}(et),ke=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindRenderbuffer(xe.RENDERBUFFER,te),this.current=te,this.dirty=!1}},K}(et),Te=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindTexture(xe.TEXTURE_2D,te),this.current=te,this.dirty=!1}},K}(et),Le=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindBuffer(xe.ARRAY_BUFFER,te),this.current=te,this.dirty=!1}},K}(et),rt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){var xe=this.gl;xe.bindBuffer(xe.ELEMENT_ARRAY_BUFFER,te),this.current=te,this.dirty=!1},K}(et),dt=function(ve){function K(ye){ve.call(this,ye),this.vao=ye.extVertexArrayObject}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){!this.vao||te===this.current&&!this.dirty||(this.vao.bindVertexArrayOES(te),this.current=te,this.dirty=!1)},K}(et),xt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 4},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_ALIGNMENT,te),this.current=te,this.dirty=!1}},K}(et),It=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_PREMULTIPLY_ALPHA_WEBGL,te),this.current=te,this.dirty=!1}},K}(et),Bt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_FLIP_Y_WEBGL,te),this.current=te,this.dirty=!1}},K}(et),Gt=function(ve){function K(ye,te){ve.call(this,ye),this.context=ye,this.parent=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K}(et),Kt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.setDirty=function(){this.dirty=!0},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var xe=this.gl;xe.framebufferTexture2D(xe.FRAMEBUFFER,xe.COLOR_ATTACHMENT0,xe.TEXTURE_2D,te,0),this.current=te,this.dirty=!1}},K}(Gt),sr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var xe=this.gl;xe.framebufferRenderbuffer(xe.FRAMEBUFFER,xe.DEPTH_ATTACHMENT,xe.RENDERBUFFER,te),this.current=te,this.dirty=!1}},K}(Gt),sa=function(K,ye,te,xe){this.context=K,this.width=ye,this.height=te;var We=K.gl,He=this.framebuffer=We.createFramebuffer();this.colorAttachment=new Kt(K,He),xe&&(this.depthAttachment=new sr(K,He))};sa.prototype.destroy=function(){var K=this.context.gl,ye=this.colorAttachment.get();if(ye&&K.deleteTexture(ye),this.depthAttachment){var te=this.depthAttachment.get();te&&K.deleteRenderbuffer(te)}K.deleteFramebuffer(this.framebuffer)};var Aa=519,La=function(K,ye,te){this.func=K,this.mask=ye,this.range=te};La.ReadOnly=!1,La.ReadWrite=!0,La.disabled=new La(Aa,La.ReadOnly,[0,1]);var ka=519,Ga=7680,Ma=function(K,ye,te,xe,We,He){this.test=K,this.ref=ye,this.mask=te,this.fail=xe,this.depthFail=We,this.pass=He};Ma.disabled=new Ma({func:ka,mask:0},0,0,Ga,Ga,Ga);var Ua=0,ni=1,Wt=771,zt=function(K,ye,te){this.blendFunction=K,this.blendColor=ye,this.mask=te};zt.Replace=[ni,Ua],zt.disabled=new zt(zt.Replace,e.Color.transparent,[!1,!1,!1,!1]),zt.unblended=new zt(zt.Replace,e.Color.transparent,[!0,!0,!0,!0]),zt.alphaBlended=new zt([ni,Wt],e.Color.transparent,[!0,!0,!0,!0]);var Vt=1029,Ut=2305,xr=function(K,ye,te){this.enable=K,this.mode=ye,this.frontFace=te};xr.disabled=new xr(!1,Vt,Ut),xr.backCCW=new xr(!0,Vt,Ut);var Zr=function(K){this.gl=K,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new lt(this),this.clearDepth=new Me(this),this.clearStencil=new ge(this),this.colorMask=new ce(this),this.depthMask=new ze(this),this.stencilMask=new tt(this),this.stencilFunc=new nt(this),this.stencilOp=new Qe(this),this.stencilTest=new Ct(this),this.depthRange=new St(this),this.depthTest=new Ot(this),this.depthFunc=new jt(this),this.blend=new ur(this),this.blendFunc=new ar(this),this.blendColor=new Cr(this),this.blendEquation=new vr(this),this.cullFace=new _r(this),this.cullFaceSide=new yt(this),this.frontFace=new Fe(this),this.program=new Ke(this),this.activeTexture=new Ne(this),this.viewport=new Ee(this),this.bindFramebuffer=new Ve(this),this.bindRenderbuffer=new ke(this),this.bindTexture=new Te(this),this.bindVertexBuffer=new Le(this),this.bindElementBuffer=new rt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new dt(this),this.pixelStoreUnpack=new xt(this),this.pixelStoreUnpackPremultiplyAlpha=new It(this),this.pixelStoreUnpackFlipY=new Bt(this),this.extTextureFilterAnisotropic=K.getExtension("EXT_texture_filter_anisotropic")||K.getExtension("MOZ_EXT_texture_filter_anisotropic")||K.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=K.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=K.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(K.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=K.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=K.getExtension("EXT_disjoint_timer_query"),this.maxTextureSize=K.getParameter(K.MAX_TEXTURE_SIZE)};Zr.prototype.setDefault=function(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()},Zr.prototype.setDirty=function(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.extVertexArrayObject&&(this.bindVertexArrayOES.dirty=!0),this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0},Zr.prototype.createIndexBuffer=function(K,ye){return new Ze(this,K,ye)},Zr.prototype.createVertexBuffer=function(K,ye,te){return new it(this,K,ye,te)},Zr.prototype.createRenderbuffer=function(K,ye,te){var xe=this.gl,We=xe.createRenderbuffer();return this.bindRenderbuffer.set(We),xe.renderbufferStorage(xe.RENDERBUFFER,K,ye,te),this.bindRenderbuffer.set(null),We},Zr.prototype.createFramebuffer=function(K,ye,te){return new sa(this,K,ye,te)},Zr.prototype.clear=function(K){var ye=K.color,te=K.depth,xe=this.gl,We=0;ye&&(We|=xe.COLOR_BUFFER_BIT,this.clearColor.set(ye),this.colorMask.set([!0,!0,!0,!0])),typeof te<"u"&&(We|=xe.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(te),this.depthMask.set(!0)),xe.clear(We)},Zr.prototype.setCullFace=function(K){K.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(K.mode),this.frontFace.set(K.frontFace))},Zr.prototype.setDepthMode=function(K){K.func===this.gl.ALWAYS&&!K.mask?this.depthTest.set(!1):(this.depthTest.set(!0),this.depthFunc.set(K.func),this.depthMask.set(K.mask),this.depthRange.set(K.range))},Zr.prototype.setStencilMode=function(K){K.test.func===this.gl.ALWAYS&&!K.mask?this.stencilTest.set(!1):(this.stencilTest.set(!0),this.stencilMask.set(K.mask),this.stencilOp.set([K.fail,K.depthFail,K.pass]),this.stencilFunc.set({func:K.test.func,ref:K.ref,mask:K.test.mask}))},Zr.prototype.setColorMode=function(K){e.deepEqual(K.blendFunction,zt.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(K.blendFunction),this.blendColor.set(K.blendColor)),this.colorMask.set(K.mask)},Zr.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var pa=function(ve){function K(ye,te,xe){var We=this;ve.call(this),this.id=ye,this.dispatcher=xe,this.on("data",function(He){He.dataType==="source"&&He.sourceDataType==="metadata"&&(We._sourceLoaded=!0),We._sourceLoaded&&!We._paused&&He.dataType==="source"&&He.sourceDataType==="content"&&(We.reload(),We.transform&&We.update(We.transform))}),this.on("error",function(){We._sourceErrored=!0}),this._source=Z(ye,te,xe,this),this._tiles={},this._cache=new Ie(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new e.SourceFeatureState}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){this.map=te,this._maxTileCacheSize=te?te._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(te)},K.prototype.onRemove=function(te){this._source&&this._source.onRemove&&this._source.onRemove(te)},K.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;for(var te in this._tiles){var xe=this._tiles[te];if(xe.state!=="loaded"&&xe.state!=="errored")return!1}return!0},K.prototype.getSource=function(){return this._source},K.prototype.pause=function(){this._paused=!0},K.prototype.resume=function(){if(this._paused){var te=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,te&&this.reload(),this.transform&&this.update(this.transform)}},K.prototype._loadTile=function(te,xe){return this._source.loadTile(te,xe)},K.prototype._unloadTile=function(te){if(this._source.unloadTile)return this._source.unloadTile(te,function(){})},K.prototype._abortTile=function(te){if(this._source.abortTile)return this._source.abortTile(te,function(){})},K.prototype.serialize=function(){return this._source.serialize()},K.prototype.prepare=function(te){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(var xe in this._tiles){var We=this._tiles[xe];We.upload(te),We.prepare(this.map.style.imageManager)}},K.prototype.getIds=function(){return e.values(this._tiles).map(function(te){return te.tileID}).sort(Xr).map(function(te){return te.key})},K.prototype.getRenderableIds=function(te){var xe=this,We=[];for(var He in this._tiles)this._isIdRenderable(He,te)&&We.push(this._tiles[He]);return te?We.sort(function(st,Et){var Ht=st.tileID,yr=Et.tileID,Ir=new e.Point(Ht.canonical.x,Ht.canonical.y)._rotate(xe.transform.angle),wr=new e.Point(yr.canonical.x,yr.canonical.y)._rotate(xe.transform.angle);return Ht.overscaledZ-yr.overscaledZ||wr.y-Ir.y||wr.x-Ir.x}).map(function(st){return st.tileID.key}):We.map(function(st){return st.tileID}).sort(Xr).map(function(st){return st.key})},K.prototype.hasRenderableParent=function(te){var xe=this.findLoadedParent(te,0);return xe?this._isIdRenderable(xe.tileID.key):!1},K.prototype._isIdRenderable=function(te,xe){return this._tiles[te]&&this._tiles[te].hasData()&&!this._coveredTiles[te]&&(xe||!this._tiles[te].holdingForFade())},K.prototype.reload=function(){if(this._paused){this._shouldReloadOnResume=!0;return}this._cache.reset();for(var te in this._tiles)this._tiles[te].state!=="errored"&&this._reloadTile(te,"reloading")},K.prototype._reloadTile=function(te,xe){var We=this._tiles[te];We&&(We.state!=="loading"&&(We.state=xe),this._loadTile(We,this._tileLoaded.bind(this,We,te,xe)))},K.prototype._tileLoaded=function(te,xe,We,He){if(He){te.state="errored",He.status!==404?this._source.fire(new e.ErrorEvent(He,{tile:te})):this.update(this.transform);return}te.timeAdded=e.browser.now(),We==="expired"&&(te.refreshedUponExpiration=!0),this._setTileReloadTimer(xe,te),this.getSource().type==="raster-dem"&&te.dem&&this._backfillDEM(te),this._state.initializeTileState(te,this.map?this.map.painter:null),this._source.fire(new e.Event("data",{dataType:"source",tile:te,coord:te.tileID}))},K.prototype._backfillDEM=function(te){for(var xe=this.getRenderableIds(),We=0;We<xe.length;We++){var He=xe[We];if(te.neighboringTiles&&te.neighboringTiles[He]){var st=this.getTileByID(He);Et(te,st),Et(st,te)}}function Et(Ht,yr){Ht.needsHillshadePrepare=!0;var Ir=yr.tileID.canonical.x-Ht.tileID.canonical.x,wr=yr.tileID.canonical.y-Ht.tileID.canonical.y,qt=Math.pow(2,Ht.tileID.canonical.z),tr=yr.tileID.key;Ir===0&&wr===0||Math.abs(wr)>1||(Math.abs(Ir)>1&&(Math.abs(Ir+qt)===1?Ir+=qt:Math.abs(Ir-qt)===1&&(Ir-=qt)),!(!yr.dem||!Ht.dem)&&(Ht.dem.backfillBorder(yr.dem,Ir,wr),Ht.neighboringTiles&&Ht.neighboringTiles[tr]&&(Ht.neighboringTiles[tr].backfilled=!0)))}},K.prototype.getTile=function(te){return this.getTileByID(te.key)},K.prototype.getTileByID=function(te){return this._tiles[te]},K.prototype._retainLoadedChildren=function(te,xe,We,He){for(var st in this._tiles){var Et=this._tiles[st];if(!(He[st]||!Et.hasData()||Et.tileID.overscaledZ<=xe||Et.tileID.overscaledZ>We)){for(var Ht=Et.tileID;Et&&Et.tileID.overscaledZ>xe+1;){var yr=Et.tileID.scaledTo(Et.tileID.overscaledZ-1);Et=this._tiles[yr.key],Et&&Et.hasData()&&(Ht=yr)}for(var Ir=Ht;Ir.overscaledZ>xe;)if(Ir=Ir.scaledTo(Ir.overscaledZ-1),te[Ir.key]){He[Ht.key]=Ht;break}}}},K.prototype.findLoadedParent=function(te,xe){if(te.key in this._loadedParentTiles){var We=this._loadedParentTiles[te.key];return We&&We.tileID.overscaledZ>=xe?We:null}for(var He=te.overscaledZ-1;He>=xe;He--){var st=te.scaledTo(He),Et=this._getLoadedTile(st);if(Et)return Et}},K.prototype._getLoadedTile=function(te){var xe=this._tiles[te.key];if(xe&&xe.hasData())return xe;var We=this._cache.getByKey(te.wrapped().key);return We},K.prototype.updateCacheSize=function(te){var xe=Math.ceil(te.width/this._source.tileSize)+1,We=Math.ceil(te.height/this._source.tileSize)+1,He=xe*We,st=5,Et=Math.floor(He*st),Ht=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Et):Et;this._cache.setMaxSize(Ht)},K.prototype.handleWrapJump=function(te){var xe=this._prevLng===void 0?te:this._prevLng,We=te-xe,He=We/360,st=Math.round(He);if(this._prevLng=te,st){var Et={};for(var Ht in this._tiles){var yr=this._tiles[Ht];yr.tileID=yr.tileID.unwrapTo(yr.tileID.wrap+st),Et[yr.tileID.key]=yr}this._tiles=Et;for(var Ir in this._timers)clearTimeout(this._timers[Ir]),delete this._timers[Ir];for(var wr in this._tiles){var qt=this._tiles[wr];this._setTileReloadTimer(wr,qt)}}},K.prototype.update=function(te){var xe=this;if(this.transform=te,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(te),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var We;this.used?this._source.tileID?We=te.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(ri){return new e.OverscaledTileID(ri.canonical.z,ri.wrap,ri.canonical.z,ri.canonical.x,ri.canonical.y)}):(We=te.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(We=We.filter(function(ri){return xe._source.hasTile(ri)}))):We=[];var He=te.coveringZoomLevel(this._source),st=Math.max(He-K.maxOverzooming,this._source.minzoom),Et=Math.max(He+K.maxUnderzooming,this._source.minzoom),Ht=this._updateRetainedTiles(We,He);if(Ea(this._source.type)){for(var yr={},Ir={},wr=Object.keys(Ht),qt=0,tr=wr;qt<tr.length;qt+=1){var dr=tr[qt],Pr=Ht[dr],Vr=this._tiles[dr];if(!(!Vr||Vr.fadeEndTime&&Vr.fadeEndTime<=e.browser.now())){var Hr=this.findLoadedParent(Pr,st);Hr&&(this._addTile(Hr.tileID),yr[Hr.tileID.key]=Hr.tileID),Ir[dr]=Pr}}this._retainLoadedChildren(Ir,He,Et,Ht);for(var aa in yr)Ht[aa]||(this._coveredTiles[aa]=!0,Ht[aa]=yr[aa])}for(var Qr in Ht)this._tiles[Qr].clearFadeHold();for(var Gr=e.keysDifference(this._tiles,Ht),ia=0,Ur=Gr;ia<Ur.length;ia+=1){var wa=Ur[ia],Oa=this._tiles[wa];Oa.hasSymbolBuckets&&!Oa.holdingForFade()?Oa.setHoldDuration(this.map._fadeDuration):(!Oa.hasSymbolBuckets||Oa.symbolFadeFinished())&&this._removeTile(wa)}this._updateLoadedParentTileCache()}},K.prototype.releaseSymbolFadeTiles=function(){for(var te in this._tiles)this._tiles[te].holdingForFade()&&this._removeTile(te)},K.prototype._updateRetainedTiles=function(te,xe){for(var We={},He={},st=Math.max(xe-K.maxOverzooming,this._source.minzoom),Et=Math.max(xe+K.maxUnderzooming,this._source.minzoom),Ht={},yr=0,Ir=te;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=this._addTile(wr);We[wr.key]=wr,!qt.hasData()&&xe<this._source.maxzoom&&(Ht[wr.key]=wr)}this._retainLoadedChildren(Ht,xe,Et,We);for(var tr=0,dr=te;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=this._tiles[Pr.key];if(!Vr.hasData()){if(xe+1>this._source.maxzoom){var Hr=Pr.children(this._source.maxzoom)[0],aa=this.getTile(Hr);if(aa&&aa.hasData()){We[Hr.key]=Hr;continue}}else{var Qr=Pr.children(this._source.maxzoom);if(We[Qr[0].key]&&We[Qr[1].key]&&We[Qr[2].key]&&We[Qr[3].key])continue}for(var Gr=Vr.wasRequested(),ia=Pr.overscaledZ-1;ia>=st;--ia){var Ur=Pr.scaledTo(ia);if(He[Ur.key]||(He[Ur.key]=!0,Vr=this.getTile(Ur),!Vr&&Gr&&(Vr=this._addTile(Ur)),Vr&&(We[Ur.key]=Ur,Gr=Vr.wasRequested(),Vr.hasData())))break}}}return We},K.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var te in this._tiles){for(var xe=[],We=void 0,He=this._tiles[te].tileID;He.overscaledZ>0;){if(He.key in this._loadedParentTiles){We=this._loadedParentTiles[He.key];break}xe.push(He.key);var st=He.scaledTo(He.overscaledZ-1);if(We=this._getLoadedTile(st),We)break;He=st}for(var Et=0,Ht=xe;Et<Ht.length;Et+=1){var yr=Ht[Et];this._loadedParentTiles[yr]=We}}},K.prototype._addTile=function(te){var xe=this._tiles[te.key];if(xe)return xe;xe=this._cache.getAndRemove(te),xe&&(this._setTileReloadTimer(te.key,xe),xe.tileID=te,this._state.initializeTileState(xe,this.map?this.map.painter:null),this._cacheTimers[te.key]&&(clearTimeout(this._cacheTimers[te.key]),delete this._cacheTimers[te.key],this._setTileReloadTimer(te.key,xe)));var We=!!xe;return We||(xe=new e.Tile(te,this._source.tileSize*te.overscaleFactor()),this._loadTile(xe,this._tileLoaded.bind(this,xe,te.key,xe.state))),xe?(xe.uses++,this._tiles[te.key]=xe,We||this._source.fire(new e.Event("dataloading",{tile:xe,coord:xe.tileID,dataType:"source"})),xe):null},K.prototype._setTileReloadTimer=function(te,xe){var We=this;te in this._timers&&(clearTimeout(this._timers[te]),delete this._timers[te]);var He=xe.getExpiryTimeout();He&&(this._timers[te]=setTimeout(function(){We._reloadTile(te,"expired"),delete We._timers[te]},He))},K.prototype._removeTile=function(te){var xe=this._tiles[te];xe&&(xe.uses--,delete this._tiles[te],this._timers[te]&&(clearTimeout(this._timers[te]),delete this._timers[te]),!(xe.uses>0)&&(xe.hasData()&&xe.state!=="reloading"?this._cache.add(xe.tileID,xe,xe.getExpiryTimeout()):(xe.aborted=!0,this._abortTile(xe),this._unloadTile(xe))))},K.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var te in this._tiles)this._removeTile(te);this._cache.reset()},K.prototype.tilesIn=function(te,xe,We){var He=this,st=[],Et=this.transform;if(!Et)return st;for(var Ht=We?Et.getCameraQueryGeometry(te):te,yr=te.map(function(ia){return Et.pointCoordinate(ia)}),Ir=Ht.map(function(ia){return Et.pointCoordinate(ia)}),wr=this.getIds(),qt=1/0,tr=1/0,dr=-1/0,Pr=-1/0,Vr=0,Hr=Ir;Vr<Hr.length;Vr+=1){var aa=Hr[Vr];qt=Math.min(qt,aa.x),tr=Math.min(tr,aa.y),dr=Math.max(dr,aa.x),Pr=Math.max(Pr,aa.y)}for(var Qr=function(ia){var Ur=He._tiles[wr[ia]];if(!Ur.holdingForFade()){var wa=Ur.tileID,Oa=Math.pow(2,Et.zoom-Ur.tileID.overscaledZ),ri=xe*Ur.queryPadding*e.EXTENT/Ur.tileSize/Oa,Pi=[wa.getTilePoint(new e.MercatorCoordinate(qt,tr)),wa.getTilePoint(new e.MercatorCoordinate(dr,Pr))];if(Pi[0].x-ri<e.EXTENT&&Pi[0].y-ri<e.EXTENT&&Pi[1].x+ri>=0&&Pi[1].y+ri>=0){var mi=yr.map(function(An){return wa.getTilePoint(An)}),Di=Ir.map(function(An){return wa.getTilePoint(An)});st.push({tile:Ur,tileID:wa,queryGeometry:mi,cameraQueryGeometry:Di,scale:Oa})}}},Gr=0;Gr<wr.length;Gr++)Qr(Gr);return st},K.prototype.getVisibleCoordinates=function(te){for(var xe=this,We=this.getRenderableIds(te).map(function(Ht){return xe._tiles[Ht].tileID}),He=0,st=We;He<st.length;He+=1){var Et=st[He];Et.posMatrix=this.transform.calculatePosMatrix(Et.toUnwrapped())}return We},K.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(Ea(this._source.type))for(var te in this._tiles){var xe=this._tiles[te];if(xe.fadeEndTime!==void 0&&xe.fadeEndTime>=e.browser.now())return!0}return!1},K.prototype.setFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.updateState(te,xe,We)},K.prototype.removeFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.removeFeatureState(te,xe,We)},K.prototype.getFeatureState=function(te,xe){return te=te||"_geojsonTileLayer",this._state.getState(te,xe)},K.prototype.setDependencies=function(te,xe,We){var He=this._tiles[te];He&&He.setDependencies(xe,We)},K.prototype.reloadTilesForDependencies=function(te,xe){for(var We in this._tiles){var He=this._tiles[We];He.hasDependency(te,xe)&&this._reloadTile(We,"reloading")}this._cache.filter(function(st){return!st.hasDependency(te,xe)})},K}(e.Evented);pa.maxOverzooming=10,pa.maxUnderzooming=3;function Xr(ve,K){var ye=Math.abs(ve.wrap*2)-+(ve.wrap<0),te=Math.abs(K.wrap*2)-+(K.wrap<0);return ve.overscaledZ-K.overscaledZ||te-ye||K.canonical.y-ve.canonical.y||K.canonical.x-ve.canonical.x}function Ea(ve){return ve==="raster"||ve==="image"||ve==="video"}function Fa(){return new e.window.Worker(Cs.workerUrl)}var qa="mapboxgl_preloaded_worker_pool",ya=function(){this.active={}};ya.prototype.acquire=function(K){if(!this.workers)for(this.workers=[];this.workers.length<ya.workerCount;)this.workers.push(new Fa);return this.active[K]=!0,this.workers.slice()},ya.prototype.release=function(K){delete this.active[K],this.numActive()===0&&(this.workers.forEach(function(ye){ye.terminate()}),this.workers=null)},ya.prototype.isPreloaded=function(){return!!this.active[qa]},ya.prototype.numActive=function(){return Object.keys(this.active).length};var $a=Math.floor(e.browser.hardwareConcurrency/2);ya.workerCount=Math.max(Math.min($a,6),1);var mt;function gt(){return mt||(mt=new ya),mt}function Er(){var ve=gt();ve.acquire(qa)}function kr(){var ve=mt;ve&&(ve.isPreloaded()&&ve.numActive()===1?(ve.release(qa),mt=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))}function br(ve,K){var ye={};for(var te in ve)te!=="ref"&&(ye[te]=ve[te]);return e.refProperties.forEach(function(xe){xe in K&&(ye[xe]=K[xe])}),ye}function Tr(ve){ve=ve.slice();for(var K=Object.create(null),ye=0;ye<ve.length;ye++)K[ve[ye].id]=ve[ye];for(var te=0;te<ve.length;te++)"ref"in ve[te]&&(ve[te]=br(ve[te],K[ve[te].ref]));return ve}function Mr(){var ve={},K=e.styleSpec.$version;for(var ye in e.styleSpec.$root){var te=e.styleSpec.$root[ye];if(te.required){var xe=null;ye==="version"?xe=K:te.type==="array"?xe=[]:xe={},xe!=null&&(ve[ye]=xe)}}return ve}var Fr={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setGeoJSONSourceData:"setGeoJSONSourceData",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};function Lr(ve,K,ye){ye.push({command:Fr.addSource,args:[ve,K[ve]]})}function Jr(ve,K,ye){K.push({command:Fr.removeSource,args:[ve]}),ye[ve]=!0}function oa(ve,K,ye,te){Jr(ve,ye,te),Lr(ve,K,ye)}function ca(ve,K,ye){var te;for(te in ve[ye])if(ve[ye].hasOwnProperty(te)&&te!=="data"&&!e.deepEqual(ve[ye][te],K[ye][te]))return!1;for(te in K[ye])if(K[ye].hasOwnProperty(te)&&te!=="data"&&!e.deepEqual(ve[ye][te],K[ye][te]))return!1;return!0}function kt(ve,K,ye,te){ve=ve||{},K=K||{};var xe;for(xe in ve)ve.hasOwnProperty(xe)&&(K.hasOwnProperty(xe)||Jr(xe,ye,te));for(xe in K)K.hasOwnProperty(xe)&&(ve.hasOwnProperty(xe)?e.deepEqual(ve[xe],K[xe])||(ve[xe].type==="geojson"&&K[xe].type==="geojson"&&ca(ve,K,xe)?ye.push({command:Fr.setGeoJSONSourceData,args:[xe,K[xe].data]}):oa(xe,K,ye,te)):Lr(xe,K,ye))}function ir(ve,K,ye,te,xe,We){ve=ve||{},K=K||{};var He;for(He in ve)ve.hasOwnProperty(He)&&(e.deepEqual(ve[He],K[He])||ye.push({command:We,args:[te,He,K[He],xe]}));for(He in K)!K.hasOwnProperty(He)||ve.hasOwnProperty(He)||e.deepEqual(ve[He],K[He])||ye.push({command:We,args:[te,He,K[He],xe]})}function mr(ve){return ve.id}function $r(ve,K){return ve[K.id]=K,ve}function ma(ve,K,ye){ve=ve||[],K=K||[];var te=ve.map(mr),xe=K.map(mr),We=ve.reduce($r,{}),He=K.reduce($r,{}),st=te.slice(),Et=Object.create(null),Ht,yr,Ir,wr,qt,tr,dr;for(Ht=0,yr=0;Ht<te.length;Ht++)Ir=te[Ht],He.hasOwnProperty(Ir)?yr++:(ye.push({command:Fr.removeLayer,args:[Ir]}),st.splice(st.indexOf(Ir,yr),1));for(Ht=0,yr=0;Ht<xe.length;Ht++)Ir=xe[xe.length-1-Ht],st[st.length-1-Ht]!==Ir&&(We.hasOwnProperty(Ir)?(ye.push({command:Fr.removeLayer,args:[Ir]}),st.splice(st.lastIndexOf(Ir,st.length-yr),1)):yr++,tr=st[st.length-Ht],ye.push({command:Fr.addLayer,args:[He[Ir],tr]}),st.splice(st.length-Ht,0,Ir),Et[Ir]=!0);for(Ht=0;Ht<xe.length;Ht++)if(Ir=xe[Ht],wr=We[Ir],qt=He[Ir],!(Et[Ir]||e.deepEqual(wr,qt))){if(!e.deepEqual(wr.source,qt.source)||!e.deepEqual(wr["source-layer"],qt["source-layer"])||!e.deepEqual(wr.type,qt.type)){ye.push({command:Fr.removeLayer,args:[Ir]}),tr=st[st.lastIndexOf(Ir)+1],ye.push({command:Fr.addLayer,args:[qt,tr]});continue}ir(wr.layout,qt.layout,ye,Ir,null,Fr.setLayoutProperty),ir(wr.paint,qt.paint,ye,Ir,null,Fr.setPaintProperty),e.deepEqual(wr.filter,qt.filter)||ye.push({command:Fr.setFilter,args:[Ir,qt.filter]}),(!e.deepEqual(wr.minzoom,qt.minzoom)||!e.deepEqual(wr.maxzoom,qt.maxzoom))&&ye.push({command:Fr.setLayerZoomRange,args:[Ir,qt.minzoom,qt.maxzoom]});for(dr in wr)wr.hasOwnProperty(dr)&&(dr==="layout"||dr==="paint"||dr==="filter"||dr==="metadata"||dr==="minzoom"||dr==="maxzoom"||(dr.indexOf("paint.")===0?ir(wr[dr],qt[dr],ye,Ir,dr.slice(6),Fr.setPaintProperty):e.deepEqual(wr[dr],qt[dr])||ye.push({command:Fr.setLayerProperty,args:[Ir,dr,qt[dr]]})));for(dr in qt)!qt.hasOwnProperty(dr)||wr.hasOwnProperty(dr)||dr==="layout"||dr==="paint"||dr==="filter"||dr==="metadata"||dr==="minzoom"||dr==="maxzoom"||(dr.indexOf("paint.")===0?ir(wr[dr],qt[dr],ye,Ir,dr.slice(6),Fr.setPaintProperty):e.deepEqual(wr[dr],qt[dr])||ye.push({command:Fr.setLayerProperty,args:[Ir,dr,qt[dr]]}))}}function Ba(ve,K){if(!ve)return[{command:Fr.setStyle,args:[K]}];var ye=[];try{if(!e.deepEqual(ve.version,K.version))return[{command:Fr.setStyle,args:[K]}];e.deepEqual(ve.center,K.center)||ye.push({command:Fr.setCenter,args:[K.center]}),e.deepEqual(ve.zoom,K.zoom)||ye.push({command:Fr.setZoom,args:[K.zoom]}),e.deepEqual(ve.bearing,K.bearing)||ye.push({command:Fr.setBearing,args:[K.bearing]}),e.deepEqual(ve.pitch,K.pitch)||ye.push({command:Fr.setPitch,args:[K.pitch]}),e.deepEqual(ve.sprite,K.sprite)||ye.push({command:Fr.setSprite,args:[K.sprite]}),e.deepEqual(ve.glyphs,K.glyphs)||ye.push({command:Fr.setGlyphs,args:[K.glyphs]}),e.deepEqual(ve.transition,K.transition)||ye.push({command:Fr.setTransition,args:[K.transition]}),e.deepEqual(ve.light,K.light)||ye.push({command:Fr.setLight,args:[K.light]});var te={},xe=[];kt(ve.sources,K.sources,xe,te);var We=[];ve.layers&&ve.layers.forEach(function(He){te[He.source]?ye.push({command:Fr.removeLayer,args:[He.id]}):We.push(He)}),ye=ye.concat(xe),ma(We,K.layers,ye)}catch(He){console.warn("Unable to compute style diff:",He),ye=[{command:Fr.setStyle,args:[K]}]}return ye}var Ca=function(K,ye){this.reset(K,ye)};Ca.prototype.reset=function(K,ye){this.points=K||[],this._distances=[0];for(var te=1;te<this.points.length;te++)this._distances[te]=this._distances[te-1]+this.points[te].dist(this.points[te-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(ye||0,this.length*.5),this.paddedLength=this.length-this.padding*2},Ca.prototype.lerp=function(K){if(this.points.length===1)return this.points[0];K=e.clamp(K,0,1);for(var ye=1,te=this._distances[ye],xe=K*this.paddedLength+this.padding;te<xe&&ye<this._distances.length;)te=this._distances[++ye];var We=ye-1,He=this._distances[We],st=te-He,Et=st>0?(xe-He)/st:0;return this.points[We].mult(1-Et).add(this.points[ye].mult(Et))};var da=function(K,ye,te){var xe=this.boxCells=[],We=this.circleCells=[];this.xCellCount=Math.ceil(K/te),this.yCellCount=Math.ceil(ye/te);for(var He=0;He<this.xCellCount*this.yCellCount;He++)xe.push([]),We.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=K,this.height=ye,this.xScale=this.xCellCount/K,this.yScale=this.yCellCount/ye,this.boxUid=0,this.circleUid=0};da.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},da.prototype.insert=function(K,ye,te,xe,We){this._forEachCell(ye,te,xe,We,this._insertBoxCell,this.boxUid++),this.boxKeys.push(K),this.bboxes.push(ye),this.bboxes.push(te),this.bboxes.push(xe),this.bboxes.push(We)},da.prototype.insertCircle=function(K,ye,te,xe){this._forEachCell(ye-xe,te-xe,ye+xe,te+xe,this._insertCircleCell,this.circleUid++),this.circleKeys.push(K),this.circles.push(ye),this.circles.push(te),this.circles.push(xe)},da.prototype._insertBoxCell=function(K,ye,te,xe,We,He){this.boxCells[We].push(He)},da.prototype._insertCircleCell=function(K,ye,te,xe,We,He){this.circleCells[We].push(He)},da.prototype._query=function(K,ye,te,xe,We,He){if(te<0||K>this.width||xe<0||ye>this.height)return We?!1:[];var st=[];if(K<=0&&ye<=0&&this.width<=te&&this.height<=xe){if(We)return!0;for(var Et=0;Et<this.boxKeys.length;Et++)st.push({key:this.boxKeys[Et],x1:this.bboxes[Et*4],y1:this.bboxes[Et*4+1],x2:this.bboxes[Et*4+2],y2:this.bboxes[Et*4+3]});for(var Ht=0;Ht<this.circleKeys.length;Ht++){var yr=this.circles[Ht*3],Ir=this.circles[Ht*3+1],wr=this.circles[Ht*3+2];st.push({key:this.circleKeys[Ht],x1:yr-wr,y1:Ir-wr,x2:yr+wr,y2:Ir+wr})}return He?st.filter(He):st}else{var qt={hitTest:We,seenUids:{box:{},circle:{}}};return this._forEachCell(K,ye,te,xe,this._queryCell,st,qt,He),We?st.length>0:st}},da.prototype._queryCircle=function(K,ye,te,xe,We){var He=K-te,st=K+te,Et=ye-te,Ht=ye+te;if(st<0||He>this.width||Ht<0||Et>this.height)return xe?!1:[];var yr=[],Ir={hitTest:xe,circle:{x:K,y:ye,radius:te},seenUids:{box:{},circle:{}}};return this._forEachCell(He,Et,st,Ht,this._queryCellCircle,yr,Ir,We),xe?yr.length>0:yr},da.prototype.query=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!1,We)},da.prototype.hitTest=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!0,We)},da.prototype.hitTestCircle=function(K,ye,te,xe){return this._queryCircle(K,ye,te,!0,xe)},da.prototype._queryCell=function(K,ye,te,xe,We,He,st,Et){var Ht=st.seenUids,yr=this.boxCells[We];if(yr!==null)for(var Ir=this.bboxes,wr=0,qt=yr;wr<qt.length;wr+=1){var tr=qt[wr];if(!Ht.box[tr]){Ht.box[tr]=!0;var dr=tr*4;if(K<=Ir[dr+2]&&ye<=Ir[dr+3]&&te>=Ir[dr+0]&&xe>=Ir[dr+1]&&(!Et||Et(this.boxKeys[tr]))){if(st.hitTest)return He.push(!0),!0;He.push({key:this.boxKeys[tr],x1:Ir[dr],y1:Ir[dr+1],x2:Ir[dr+2],y2:Ir[dr+3]})}}}var Pr=this.circleCells[We];if(Pr!==null)for(var Vr=this.circles,Hr=0,aa=Pr;Hr<aa.length;Hr+=1){var Qr=aa[Hr];if(!Ht.circle[Qr]){Ht.circle[Qr]=!0;var Gr=Qr*3;if(this._circleAndRectCollide(Vr[Gr],Vr[Gr+1],Vr[Gr+2],K,ye,te,xe)&&(!Et||Et(this.circleKeys[Qr]))){if(st.hitTest)return He.push(!0),!0;var ia=Vr[Gr],Ur=Vr[Gr+1],wa=Vr[Gr+2];He.push({key:this.circleKeys[Qr],x1:ia-wa,y1:Ur-wa,x2:ia+wa,y2:Ur+wa})}}}},da.prototype._queryCellCircle=function(K,ye,te,xe,We,He,st,Et){var Ht=st.circle,yr=st.seenUids,Ir=this.boxCells[We];if(Ir!==null)for(var wr=this.bboxes,qt=0,tr=Ir;qt<tr.length;qt+=1){var dr=tr[qt];if(!yr.box[dr]){yr.box[dr]=!0;var Pr=dr*4;if(this._circleAndRectCollide(Ht.x,Ht.y,Ht.radius,wr[Pr+0],wr[Pr+1],wr[Pr+2],wr[Pr+3])&&(!Et||Et(this.boxKeys[dr])))return He.push(!0),!0}}var Vr=this.circleCells[We];if(Vr!==null)for(var Hr=this.circles,aa=0,Qr=Vr;aa<Qr.length;aa+=1){var Gr=Qr[aa];if(!yr.circle[Gr]){yr.circle[Gr]=!0;var ia=Gr*3;if(this._circlesCollide(Hr[ia],Hr[ia+1],Hr[ia+2],Ht.x,Ht.y,Ht.radius)&&(!Et||Et(this.circleKeys[Gr])))return He.push(!0),!0}}},da.prototype._forEachCell=function(K,ye,te,xe,We,He,st,Et){for(var Ht=this._convertToXCellCoord(K),yr=this._convertToYCellCoord(ye),Ir=this._convertToXCellCoord(te),wr=this._convertToYCellCoord(xe),qt=Ht;qt<=Ir;qt++)for(var tr=yr;tr<=wr;tr++){var dr=this.xCellCount*tr+qt;if(We.call(this,K,ye,te,xe,dr,He,st,Et))return}},da.prototype._convertToXCellCoord=function(K){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(K*this.xScale)))},da.prototype._convertToYCellCoord=function(K){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(K*this.yScale)))},da.prototype._circlesCollide=function(K,ye,te,xe,We,He){var st=xe-K,Et=We-ye,Ht=te+He;return Ht*Ht>st*st+Et*Et},da.prototype._circleAndRectCollide=function(K,ye,te,xe,We,He,st){var Et=(He-xe)/2,Ht=Math.abs(K-(xe+Et));if(Ht>Et+te)return!1;var yr=(st-We)/2,Ir=Math.abs(ye-(We+yr));if(Ir>yr+te)return!1;if(Ht<=Et||Ir<=yr)return!0;var wr=Ht-Et,qt=Ir-yr;return wr*wr+qt*qt<=te*te};function Sa(ve,K,ye,te,xe){var We=e.create();return K?(e.scale(We,We,[1/xe,1/xe,1]),ye||e.rotateZ(We,We,te.angle)):e.multiply(We,te.labelPlaneMatrix,ve),We}function Ti(ve,K,ye,te,xe){if(K){var We=e.clone(ve);return e.scale(We,We,[xe,xe,1]),ye||e.rotateZ(We,We,-te.angle),We}else return te.glCoordMatrix}function ai(ve,K){var ye=[ve.x,ve.y,0,1];as(ye,ye,K);var te=ye[3];return{point:new e.Point(ye[0]/te,ye[1]/te),signedDistanceFromCamera:te}}function an(ve,K){return .5+.5*(ve/K)}function sn(ve,K){var ye=ve[0]/ve[3],te=ve[1]/ve[3],xe=ye>=-K[0]&&ye<=K[0]&&te>=-K[1]&&te<=K[1];return xe}function Mn(ve,K,ye,te,xe,We,He,st){var Et=te?ve.textSizeData:ve.iconSizeData,Ht=e.evaluateSizeForZoom(Et,ye.transform.zoom),yr=[256/ye.width*2+1,256/ye.height*2+1],Ir=te?ve.text.dynamicLayoutVertexArray:ve.icon.dynamicLayoutVertexArray;Ir.clear();for(var wr=ve.lineVertexArray,qt=te?ve.text.placedSymbolArray:ve.icon.placedSymbolArray,tr=ye.transform.width/ye.transform.height,dr=!1,Pr=0;Pr<qt.length;Pr++){var Vr=qt.get(Pr);if(Vr.hidden||Vr.writingMode===e.WritingMode.vertical&&!dr){zo(Vr.numGlyphs,Ir);continue}dr=!1;var Hr=[Vr.anchorX,Vr.anchorY,0,1];if(e.transformMat4(Hr,Hr,K),!sn(Hr,yr)){zo(Vr.numGlyphs,Ir);continue}var aa=Hr[3],Qr=an(ye.transform.cameraToCenterDistance,aa),Gr=e.evaluateSizeForFeature(Et,Ht,Vr),ia=He?Gr/Qr:Gr*Qr,Ur=new e.Point(Vr.anchorX,Vr.anchorY),wa=ai(Ur,xe).point,Oa={},ri=Cn(Vr,ia,!1,st,K,xe,We,ve.glyphOffsetArray,wr,Ir,wa,Ur,Oa,tr);dr=ri.useVertical,(ri.notEnoughRoom||dr||ri.needsFlipping&&Cn(Vr,ia,!0,st,K,xe,We,ve.glyphOffsetArray,wr,Ir,wa,Ur,Oa,tr).notEnoughRoom)&&zo(Vr.numGlyphs,Ir)}te?ve.text.dynamicLayoutVertexBuffer.updateData(Ir):ve.icon.dynamicLayoutVertexBuffer.updateData(Ir)}function On(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=st.glyphStartIndex+st.numGlyphs,wr=st.lineStartIndex,qt=st.lineStartIndex+st.lineLength,tr=K.getoffsetX(st.glyphStartIndex),dr=K.getoffsetX(Ir-1),Pr=Xi(ve*tr,ye,te,xe,We,He,st.segment,wr,qt,Et,Ht,yr);if(!Pr)return null;var Vr=Xi(ve*dr,ye,te,xe,We,He,st.segment,wr,qt,Et,Ht,yr);return Vr?{first:Pr,last:Vr}:null}function $n(ve,K,ye,te){if(ve===e.WritingMode.horizontal){var xe=Math.abs(ye.y-K.y),We=Math.abs(ye.x-K.x)*te;if(xe>We)return{useVertical:!0}}return(ve===e.WritingMode.vertical?K.y<ye.y:K.x>ye.x)?{needsFlipping:!0}:null}function Cn(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=K/24,dr=ve.lineOffsetX*tr,Pr=ve.lineOffsetY*tr,Vr;if(ve.numGlyphs>1){var Hr=ve.glyphStartIndex+ve.numGlyphs,aa=ve.lineStartIndex,Qr=ve.lineStartIndex+ve.lineLength,Gr=On(tr,st,dr,Pr,ye,yr,Ir,ve,Et,We,wr);if(!Gr)return{notEnoughRoom:!0};var ia=ai(Gr.first.point,He).point,Ur=ai(Gr.last.point,He).point;if(te&&!ye){var wa=$n(ve.writingMode,ia,Ur,qt);if(wa)return wa}Vr=[Gr.first];for(var Oa=ve.glyphStartIndex+1;Oa<Hr-1;Oa++)Vr.push(Xi(tr*st.getoffsetX(Oa),dr,Pr,ye,yr,Ir,ve.segment,aa,Qr,Et,We,wr));Vr.push(Gr.last)}else{if(te&&!ye){var ri=ai(Ir,xe).point,Pi=ve.lineStartIndex+ve.segment+1,mi=new e.Point(Et.getx(Pi),Et.gety(Pi)),Di=ai(mi,xe),An=Di.signedDistanceFromCamera>0?Di.point:Lo(Ir,mi,ri,1,xe),ln=$n(ve.writingMode,ri,An,qt);if(ln)return ln}var Ii=Xi(tr*st.getoffsetX(ve.glyphStartIndex),dr,Pr,ye,yr,Ir,ve.segment,ve.lineStartIndex,ve.lineStartIndex+ve.lineLength,Et,We,wr);if(!Ii)return{notEnoughRoom:!0};Vr=[Ii]}for(var Wi=0,Hi=Vr;Wi<Hi.length;Wi+=1){var yn=Hi[Wi];e.addDynamicAttributes(Ht,yn.point,yn.angle)}return{}}function Lo(ve,K,ye,te,xe){var We=ai(ve.add(ve.sub(K)._unit()),xe).point,He=ye.sub(We);return ye.add(He._mult(te/He.mag()))}function Xi(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir){var wr=te?ve-K:ve+K,qt=wr>0?1:-1,tr=0;te&&(qt*=-1,tr=Math.PI),qt<0&&(tr+=Math.PI);for(var dr=qt>0?st+He:st+He+1,Pr=xe,Vr=xe,Hr=0,aa=0,Qr=Math.abs(wr),Gr=[];Hr+aa<=Qr;){if(dr+=qt,dr<st||dr>=Et)return null;if(Vr=Pr,Gr.push(Pr),Pr=Ir[dr],Pr===void 0){var ia=new e.Point(Ht.getx(dr),Ht.gety(dr)),Ur=ai(ia,yr);if(Ur.signedDistanceFromCamera>0)Pr=Ir[dr]=Ur.point;else{var wa=dr-qt,Oa=Hr===0?We:new e.Point(Ht.getx(wa),Ht.gety(wa));Pr=Lo(Oa,ia,Vr,Qr-Hr+1,yr)}}Hr+=aa,aa=Vr.dist(Pr)}var ri=(Qr-Hr)/aa,Pi=Pr.sub(Vr),mi=Pi.mult(ri)._add(Vr);mi._add(Pi._unit()._perp()._mult(ye*qt));var Di=tr+Math.atan2(Pr.y-Vr.y,Pr.x-Vr.x);return Gr.push(mi),{point:mi,angle:Di,path:Gr}}var Jo=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function zo(ve,K){for(var ye=0;ye<ve;ye++){var te=K.length;K.resize(te+4),K.float32.set(Jo,te*3)}}function as(ve,K,ye){var te=K[0],xe=K[1];return ve[0]=ye[0]*te+ye[4]*xe+ye[12],ve[1]=ye[1]*te+ye[5]*xe+ye[13],ve[3]=ye[3]*te+ye[7]*xe+ye[15],ve}var Pn=100,go=function(K,ye,te){ye===void 0&&(ye=new da(K.width+2*Pn,K.height+2*Pn,25)),te===void 0&&(te=new da(K.width+2*Pn,K.height+2*Pn,25)),this.transform=K,this.grid=ye,this.ignoredGrid=te,this.pitchfactor=Math.cos(K._pitch)*K.cameraToCenterDistance,this.screenRightBoundary=K.width+Pn,this.screenBottomBoundary=K.height+Pn,this.gridRightBoundary=K.width+2*Pn,this.gridBottomBoundary=K.height+2*Pn};go.prototype.placeCollisionBox=function(K,ye,te,xe,We){var He=this.projectAndGetPerspectiveRatio(xe,K.anchorPointX,K.anchorPointY),st=te*He.perspectiveRatio,Et=K.x1*st+He.point.x,Ht=K.y1*st+He.point.y,yr=K.x2*st+He.point.x,Ir=K.y2*st+He.point.y;return!this.isInsideGrid(Et,Ht,yr,Ir)||!ye&&this.grid.hitTest(Et,Ht,yr,Ir,We)?{box:[],offscreen:!1}:{box:[Et,Ht,yr,Ir],offscreen:this.isOffscreen(Et,Ht,yr,Ir)}},go.prototype.placeCollisionCircles=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=[],dr=new e.Point(ye.anchorX,ye.anchorY),Pr=ai(dr,He),Vr=an(this.transform.cameraToCenterDistance,Pr.signedDistanceFromCamera),Hr=yr?We/Vr:We*Vr,aa=Hr/e.ONE_EM,Qr=ai(dr,st).point,Gr={},ia=ye.lineOffsetX*aa,Ur=ye.lineOffsetY*aa,wa=On(aa,xe,ia,Ur,!1,Qr,dr,ye,te,st,Gr),Oa=!1,ri=!1,Pi=!0;if(wa){for(var mi=wr*.5*Vr+qt,Di=new e.Point(-Pn,-Pn),An=new e.Point(this.screenRightBoundary,this.screenBottomBoundary),ln=new Ca,Ii=wa.first,Wi=wa.last,Hi=[],yn=Ii.path.length-1;yn>=1;yn--)Hi.push(Ii.path[yn]);for(var zn=1;zn<Wi.path.length;zn++)Hi.push(Wi.path[zn]);var ms=mi*2.5;if(Et){var us=Hi.map(function(Ep){return ai(Ep,Et)});us.some(function(Ep){return Ep.signedDistanceFromCamera<=0})?Hi=[]:Hi=us.map(function(Ep){return Ep.point})}var Vs=[];if(Hi.length>0){for(var qo=Hi[0].clone(),Ls=Hi[0].clone(),wl=1;wl<Hi.length;wl++)qo.x=Math.min(qo.x,Hi[wl].x),qo.y=Math.min(qo.y,Hi[wl].y),Ls.x=Math.max(Ls.x,Hi[wl].x),Ls.y=Math.max(Ls.y,Hi[wl].y);qo.x>=Di.x&&Ls.x<=An.x&&qo.y>=Di.y&&Ls.y<=An.y?Vs=[Hi]:Ls.x<Di.x||qo.x>An.x||Ls.y<Di.y||qo.y>An.y?Vs=[]:Vs=e.clipLine([Hi],Di.x,Di.y,An.x,An.y)}for(var Ru=0,Ap=Vs;Ru<Ap.length;Ru+=1){var Sp=Ap[Ru];ln.reset(Sp,mi*.25);var Eh=0;ln.length<=.5*mi?Eh=1:Eh=Math.ceil(ln.paddedLength/ms)+1;for(var Vp=0;Vp<Eh;Vp++){var Vd=Vp/Math.max(Eh-1,1),td=ln.lerp(Vd),kh=td.x+Pn,rd=td.y+Pn;tr.push(kh,rd,mi,0);var Xh=kh-mi,Ch=rd-mi,Mp=kh+mi,qp=rd+mi;if(Pi=Pi&&this.isOffscreen(Xh,Ch,Mp,qp),ri=ri||this.isInsideGrid(Xh,Ch,Mp,qp),!K&&this.grid.hitTestCircle(kh,rd,mi,Ir)&&(Oa=!0,!Ht))return{circles:[],offscreen:!1,collisionDetected:Oa}}}}return{circles:!Ht&&Oa||!ri?[]:tr,offscreen:Pi,collisionDetected:Oa}},go.prototype.queryRenderedSymbols=function(K){if(K.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};for(var ye=[],te=1/0,xe=1/0,We=-1/0,He=-1/0,st=0,Et=K;st<Et.length;st+=1){var Ht=Et[st],yr=new e.Point(Ht.x+Pn,Ht.y+Pn);te=Math.min(te,yr.x),xe=Math.min(xe,yr.y),We=Math.max(We,yr.x),He=Math.max(He,yr.y),ye.push(yr)}for(var Ir=this.grid.query(te,xe,We,He).concat(this.ignoredGrid.query(te,xe,We,He)),wr={},qt={},tr=0,dr=Ir;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=Pr.key;if(wr[Vr.bucketInstanceId]===void 0&&(wr[Vr.bucketInstanceId]={}),!wr[Vr.bucketInstanceId][Vr.featureIndex]){var Hr=[new e.Point(Pr.x1,Pr.y1),new e.Point(Pr.x2,Pr.y1),new e.Point(Pr.x2,Pr.y2),new e.Point(Pr.x1,Pr.y2)];e.polygonIntersectsPolygon(ye,Hr)&&(wr[Vr.bucketInstanceId][Vr.featureIndex]=!0,qt[Vr.bucketInstanceId]===void 0&&(qt[Vr.bucketInstanceId]=[]),qt[Vr.bucketInstanceId].push(Vr.featureIndex))}}return qt},go.prototype.insertCollisionBox=function(K,ye,te,xe,We){var He=ye?this.ignoredGrid:this.grid,st={bucketInstanceId:te,featureIndex:xe,collisionGroupID:We};He.insert(st,K[0],K[1],K[2],K[3])},go.prototype.insertCollisionCircles=function(K,ye,te,xe,We){for(var He=ye?this.ignoredGrid:this.grid,st={bucketInstanceId:te,featureIndex:xe,collisionGroupID:We},Et=0;Et<K.length;Et+=4)He.insertCircle(st,K[Et],K[Et+1],K[Et+2])},go.prototype.projectAndGetPerspectiveRatio=function(K,ye,te){var xe=[ye,te,0,1];as(xe,xe,K);var We=new e.Point((xe[0]/xe[3]+1)/2*this.transform.width+Pn,(-xe[1]/xe[3]+1)/2*this.transform.height+Pn);return{point:We,perspectiveRatio:.5+.5*(this.transform.cameraToCenterDistance/xe[3])}},go.prototype.isOffscreen=function(K,ye,te,xe){return te<Pn||K>=this.screenRightBoundary||xe<Pn||ye>this.screenBottomBoundary},go.prototype.isInsideGrid=function(K,ye,te,xe){return te>=0&&K<this.gridRightBoundary&&xe>=0&&ye<this.gridBottomBoundary},go.prototype.getViewportMatrix=function(){var K=e.identity([]);return e.translate(K,K,[-Pn,-Pn,0]),K};function In(ve,K,ye){return K*(e.EXTENT/(ve.tileSize*Math.pow(2,ye-ve.tileID.overscaledZ)))}var Do=function(K,ye,te,xe){K?this.opacity=Math.max(0,Math.min(1,K.opacity+(K.placed?ye:-ye))):this.opacity=xe&&te?1:0,this.placed=te};Do.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Ho=function(K,ye,te,xe,We){this.text=new Do(K?K.text:null,ye,te,We),this.icon=new Do(K?K.icon:null,ye,xe,We)};Ho.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var Qo=function(K,ye,te){this.text=K,this.icon=ye,this.skipFade=te},Xn=function(){this.invProjMatrix=e.create(),this.viewportMatrix=e.create(),this.circles=[]},po=function(K,ye,te,xe,We){this.bucketInstanceId=K,this.featureIndex=ye,this.sourceLayerIndex=te,this.bucketIndex=xe,this.tileID=We},ys=function(K){this.crossSourceCollisions=K,this.maxGroupID=0,this.collisionGroups={}};ys.prototype.get=function(K){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[K]){var ye=++this.maxGroupID;this.collisionGroups[K]={ID:ye,predicate:function(te){return te.collisionGroupID===ye}}}return this.collisionGroups[K]};function Is(ve,K,ye,te,xe){var We=e.getAnchorAlignment(ve),He=We.horizontalAlign,st=We.verticalAlign,Et=-(He-.5)*K,Ht=-(st-.5)*ye,yr=e.evaluateVariableOffset(ve,te);return new e.Point(Et+yr[0]*xe,Ht+yr[1]*xe)}function Fs(ve,K,ye,te,xe,We){var He=ve.x1,st=ve.x2,Et=ve.y1,Ht=ve.y2,yr=ve.anchorPointX,Ir=ve.anchorPointY,wr=new e.Point(K,ye);return te&&wr._rotate(xe?We:-We),{x1:He+wr.x,y1:Et+wr.y,x2:st+wr.x,y2:Ht+wr.y,anchorPointX:yr,anchorPointY:Ir}}var $o=function(K,ye,te,xe){this.transform=K.clone(),this.collisionIndex=new go(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ye,this.retainedQueryData={},this.collisionGroups=new ys(te),this.collisionCircleArrays={},this.prevPlacement=xe,xe&&(xe.prevPlacement=void 0),this.placedOrientations={}};$o.prototype.getBucketParts=function(K,ye,te,xe){var We=te.getBucket(ye),He=te.latestFeatureIndex;if(!(!We||!He||ye.id!==We.layerIds[0])){var st=te.collisionBoxArray,Et=We.layers[0].layout,Ht=Math.pow(2,this.transform.zoom-te.tileID.overscaledZ),yr=te.tileSize/e.EXTENT,Ir=this.transform.calculatePosMatrix(te.tileID.toUnwrapped()),wr=Et.get("text-pitch-alignment")==="map",qt=Et.get("text-rotation-alignment")==="map",tr=In(te,1,this.transform.zoom),dr=Sa(Ir,wr,qt,this.transform,tr),Pr=null;if(wr){var Vr=Ti(Ir,wr,qt,this.transform,tr);Pr=e.multiply([],this.transform.labelPlaneMatrix,Vr)}this.retainedQueryData[We.bucketInstanceId]=new po(We.bucketInstanceId,He,We.sourceLayerIndex,We.index,te.tileID);var Hr={bucket:We,layout:Et,posMatrix:Ir,textLabelPlaneMatrix:dr,labelToScreenMatrix:Pr,scale:Ht,textPixelRatio:yr,holdingForFade:te.holdingForFade(),collisionBoxArray:st,partiallyEvaluatedTextSize:e.evaluateSizeForZoom(We.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(We.sourceID)};if(xe)for(var aa=0,Qr=We.sortKeyRanges;aa<Qr.length;aa+=1){var Gr=Qr[aa],ia=Gr.sortKey,Ur=Gr.symbolInstanceStart,wa=Gr.symbolInstanceEnd;K.push({sortKey:ia,symbolInstanceStart:Ur,symbolInstanceEnd:wa,parameters:Hr})}else K.push({symbolInstanceStart:0,symbolInstanceEnd:We.symbolInstances.length,parameters:Hr})}},$o.prototype.attemptAnchorPlacement=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt,tr,dr){var Pr=[wr.textOffset0,wr.textOffset1],Vr=Is(K,te,xe,Pr,We),Hr=this.collisionIndex.placeCollisionBox(Fs(ye,Vr.x,Vr.y,He,st,this.transform.angle),Ir,Et,Ht,yr.predicate);if(dr){var aa=this.collisionIndex.placeCollisionBox(Fs(dr,Vr.x,Vr.y,He,st,this.transform.angle),Ir,Et,Ht,yr.predicate);if(aa.box.length===0)return}if(Hr.box.length>0){var Qr;return this.prevPlacement&&this.prevPlacement.variableOffsets[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID].text&&(Qr=this.prevPlacement.variableOffsets[wr.crossTileID].anchor),this.variableOffsets[wr.crossTileID]={textOffset:Pr,width:te,height:xe,anchor:K,textBoxScale:We,prevAnchor:Qr},this.markUsedJustification(qt,K,wr,tr),qt.allowVerticalPlacement&&(this.markUsedOrientation(qt,tr,wr),this.placedOrientations[wr.crossTileID]=tr),{shift:Vr,placedGlyphBoxes:Hr}}},$o.prototype.placeLayerBucketPart=function(K,ye,te){var xe=this,We=K.parameters,He=We.bucket,st=We.layout,Et=We.posMatrix,Ht=We.textLabelPlaneMatrix,yr=We.labelToScreenMatrix,Ir=We.textPixelRatio,wr=We.holdingForFade,qt=We.collisionBoxArray,tr=We.partiallyEvaluatedTextSize,dr=We.collisionGroup,Pr=st.get("text-optional"),Vr=st.get("icon-optional"),Hr=st.get("text-allow-overlap"),aa=st.get("icon-allow-overlap"),Qr=st.get("text-rotation-alignment")==="map",Gr=st.get("text-pitch-alignment")==="map",ia=st.get("icon-text-fit")!=="none",Ur=st.get("symbol-z-order")==="viewport-y",wa=Hr&&(aa||!He.hasIconData()||Vr),Oa=aa&&(Hr||!He.hasTextData()||Pr);!He.collisionArrays&&qt&&He.deserializeCollisionBoxes(qt);var ri=function(Ii,Wi){if(!ye[Ii.crossTileID]){if(wr){xe.placements[Ii.crossTileID]=new Qo(!1,!1,!1);return}var Hi=!1,yn=!1,zn=!0,ms=null,us={box:null,offscreen:null},Vs={box:null,offscreen:null},qo=null,Ls=null,wl=null,Ru=0,Ap=0,Sp=0;Wi.textFeatureIndex?Ru=Wi.textFeatureIndex:Ii.useRuntimeCollisionCircles&&(Ru=Ii.featureIndex),Wi.verticalTextFeatureIndex&&(Ap=Wi.verticalTextFeatureIndex);var Eh=Wi.textBox;if(Eh){var Vp=function(Du){var Bl=e.WritingMode.horizontal;if(He.allowVerticalPlacement&&!Du&&xe.prevPlacement){var Lh=xe.prevPlacement.placedOrientations[Ii.crossTileID];Lh&&(xe.placedOrientations[Ii.crossTileID]=Lh,Bl=Lh,xe.markUsedOrientation(He,Bl,Ii))}return Bl},Vd=function(Du,Bl){if(He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Wi.verticalTextBox)for(var Lh=0,Iv=He.writingModes;Lh<Iv.length;Lh+=1){var om=Iv[Lh];if(om===e.WritingMode.vertical?(us=Bl(),Vs=us):us=Du(),us&&us.box&&us.box.length)break}else us=Du()};if(st.get("text-variable-anchor")){var Xh=st.get("text-variable-anchor");if(xe.prevPlacement&&xe.prevPlacement.variableOffsets[Ii.crossTileID]){var Ch=xe.prevPlacement.variableOffsets[Ii.crossTileID];Xh.indexOf(Ch.anchor)>0&&(Xh=Xh.filter(function(Du){return Du!==Ch.anchor}),Xh.unshift(Ch.anchor))}var Mp=function(Du,Bl,Lh){for(var Iv=Du.x2-Du.x1,om=Du.y2-Du.y1,Ql=Ii.textBoxScale,xg=ia&&!aa?Bl:null,sv={box:[],offscreen:!1},y0=Hr?Xh.length*2:Xh.length,kp=0;kp<y0;++kp){var lv=Xh[kp%Xh.length],_0=kp>=Xh.length,bg=xe.attemptAnchorPlacement(lv,Du,Iv,om,Ql,Qr,Gr,Ir,Et,dr,_0,Ii,He,Lh,xg);if(bg&&(sv=bg.placedGlyphBoxes,sv&&sv.box&&sv.box.length)){Hi=!0,ms=bg.shift;break}}return sv},qp=function(){return Mp(Eh,Wi.iconBox,e.WritingMode.horizontal)},Ep=function(){var Du=Wi.verticalTextBox,Bl=us&&us.box&&us.box.length;return He.allowVerticalPlacement&&!Bl&&Ii.numVerticalGlyphVertices>0&&Du?Mp(Du,Wi.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(qp,Ep),us&&(Hi=us.box,zn=us.offscreen);var Cv=Vp(us&&us.box);if(!Hi&&xe.prevPlacement){var qd=xe.prevPlacement.variableOffsets[Ii.crossTileID];qd&&(xe.variableOffsets[Ii.crossTileID]=qd,xe.markUsedJustification(He,qd.anchor,Ii,Cv))}}else{var td=function(Du,Bl){var Lh=xe.collisionIndex.placeCollisionBox(Du,Hr,Ir,Et,dr.predicate);return Lh&&Lh.box&&Lh.box.length&&(xe.markUsedOrientation(He,Bl,Ii),xe.placedOrientations[Ii.crossTileID]=Bl),Lh},kh=function(){return td(Eh,e.WritingMode.horizontal)},rd=function(){var Du=Wi.verticalTextBox;return He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Du?td(Du,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(kh,rd),Vp(us&&us.box&&us.box.length)}}if(qo=us,Hi=qo&&qo.box&&qo.box.length>0,zn=qo&&qo.offscreen,Ii.useRuntimeCollisionCircles){var Sf=He.text.placedSymbolArray.get(Ii.centerJustifiedTextSymbolIndex),Hd=e.evaluateSizeForFeature(He.textSizeData,tr,Sf),Lv=st.get("text-padding"),eh=Ii.collisionCircleDiameter;Ls=xe.collisionIndex.placeCollisionCircles(Hr,Sf,He.lineVertexArray,He.glyphOffsetArray,Hd,Et,Ht,yr,te,Gr,dr.predicate,eh,Lv),Hi=Hr||Ls.circles.length>0&&!Ls.collisionDetected,zn=zn&&Ls.offscreen}if(Wi.iconFeatureIndex&&(Sp=Wi.iconFeatureIndex),Wi.iconBox){var iv=function(Du){var Bl=ia&&ms?Fs(Du,ms.x,ms.y,Qr,Gr,xe.transform.angle):Du;return xe.collisionIndex.placeCollisionBox(Bl,aa,Ir,Et,dr.predicate)};Vs&&Vs.box&&Vs.box.length&&Wi.verticalIconBox?(wl=iv(Wi.verticalIconBox),yn=wl.box.length>0):(wl=iv(Wi.iconBox),yn=wl.box.length>0),zn=zn&&wl.offscreen}var im=Pr||Ii.numHorizontalGlyphVertices===0&&Ii.numVerticalGlyphVertices===0,nm=Vr||Ii.numIconVertices===0;if(!im&&!nm?yn=Hi=yn&&Hi:nm?im||(yn=yn&&Hi):Hi=yn&&Hi,Hi&&qo&&qo.box&&(Vs&&Vs.box&&Ap?xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ap,dr.ID):xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID)),yn&&wl&&xe.collisionIndex.insertCollisionBox(wl.box,st.get("icon-ignore-placement"),He.bucketInstanceId,Sp,dr.ID),Ls&&(Hi&&xe.collisionIndex.insertCollisionCircles(Ls.circles,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID),te)){var Pv=He.bucketInstanceId,nv=xe.collisionCircleArrays[Pv];nv===void 0&&(nv=xe.collisionCircleArrays[Pv]=new Xn);for(var ov=0;ov<Ls.circles.length;ov+=4)nv.circles.push(Ls.circles[ov+0]),nv.circles.push(Ls.circles[ov+1]),nv.circles.push(Ls.circles[ov+2]),nv.circles.push(Ls.collisionDetected?1:0)}xe.placements[Ii.crossTileID]=new Qo(Hi||wa,yn||Oa,zn||He.justReloaded),ye[Ii.crossTileID]=!0}};if(Ur)for(var Pi=He.getSortedSymbolIndexes(this.transform.angle),mi=Pi.length-1;mi>=0;--mi){var Di=Pi[mi];ri(He.symbolInstances.get(Di),He.collisionArrays[Di])}else for(var An=K.symbolInstanceStart;An<K.symbolInstanceEnd;An++)ri(He.symbolInstances.get(An),He.collisionArrays[An]);if(te&&He.bucketInstanceId in this.collisionCircleArrays){var ln=this.collisionCircleArrays[He.bucketInstanceId];e.invert(ln.invProjMatrix,Et),ln.viewportMatrix=this.collisionIndex.getViewportMatrix()}He.justReloaded=!1},$o.prototype.markUsedJustification=function(K,ye,te,xe){var We={left:te.leftJustifiedTextSymbolIndex,center:te.centerJustifiedTextSymbolIndex,right:te.rightJustifiedTextSymbolIndex},He;xe===e.WritingMode.vertical?He=te.verticalPlacedTextSymbolIndex:He=We[e.getAnchorJustification(ye)];for(var st=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex,te.verticalPlacedTextSymbolIndex],Et=0,Ht=st;Et<Ht.length;Et+=1){var yr=Ht[Et];yr>=0&&(He>=0&&yr!==He?K.text.placedSymbolArray.get(yr).crossTileID=0:K.text.placedSymbolArray.get(yr).crossTileID=te.crossTileID)}},$o.prototype.markUsedOrientation=function(K,ye,te){for(var xe=ye===e.WritingMode.horizontal||ye===e.WritingMode.horizontalOnly?ye:0,We=ye===e.WritingMode.vertical?ye:0,He=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex],st=0,Et=He;st<Et.length;st+=1){var Ht=Et[st];K.text.placedSymbolArray.get(Ht).placedOrientation=xe}te.verticalPlacedTextSymbolIndex&&(K.text.placedSymbolArray.get(te.verticalPlacedTextSymbolIndex).placedOrientation=We)},$o.prototype.commit=function(K){this.commitTime=K,this.zoomAtLastRecencyCheck=this.transform.zoom;var ye=this.prevPlacement,te=!1;this.prevZoomAdjustment=ye?ye.zoomAdjustment(this.transform.zoom):0;var xe=ye?ye.symbolFadeChange(K):1,We=ye?ye.opacities:{},He=ye?ye.variableOffsets:{},st=ye?ye.placedOrientations:{};for(var Et in this.placements){var Ht=this.placements[Et],yr=We[Et];yr?(this.opacities[Et]=new Ho(yr,xe,Ht.text,Ht.icon),te=te||Ht.text!==yr.text.placed||Ht.icon!==yr.icon.placed):(this.opacities[Et]=new Ho(null,xe,Ht.text,Ht.icon,Ht.skipFade),te=te||Ht.text||Ht.icon)}for(var Ir in We){var wr=We[Ir];if(!this.opacities[Ir]){var qt=new Ho(wr,xe,!1,!1);qt.isHidden()||(this.opacities[Ir]=qt,te=te||wr.text.placed||wr.icon.placed)}}for(var tr in He)!this.variableOffsets[tr]&&this.opacities[tr]&&!this.opacities[tr].isHidden()&&(this.variableOffsets[tr]=He[tr]);for(var dr in st)!this.placedOrientations[dr]&&this.opacities[dr]&&!this.opacities[dr].isHidden()&&(this.placedOrientations[dr]=st[dr]);te?this.lastPlacementChangeTime=K:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ye?ye.lastPlacementChangeTime:K)},$o.prototype.updateLayerOpacities=function(K,ye){for(var te={},xe=0,We=ye;xe<We.length;xe+=1){var He=We[xe],st=He.getBucket(K);st&&He.latestFeatureIndex&&K.id===st.layerIds[0]&&this.updateBucketOpacities(st,te,He.collisionBoxArray)}},$o.prototype.updateBucketOpacities=function(K,ye,te){var xe=this;K.hasTextData()&&K.text.opacityVertexArray.clear(),K.hasIconData()&&K.icon.opacityVertexArray.clear(),K.hasIconCollisionBoxData()&&K.iconCollisionBox.collisionVertexArray.clear(),K.hasTextCollisionBoxData()&&K.textCollisionBox.collisionVertexArray.clear();var We=K.layers[0].layout,He=new Ho(null,0,!1,!1,!0),st=We.get("text-allow-overlap"),Et=We.get("icon-allow-overlap"),Ht=We.get("text-variable-anchor"),yr=We.get("text-rotation-alignment")==="map",Ir=We.get("text-pitch-alignment")==="map",wr=We.get("icon-text-fit")!=="none",qt=new Ho(null,0,st&&(Et||!K.hasIconData()||We.get("icon-optional")),Et&&(st||!K.hasTextData()||We.get("text-optional")),!0);!K.collisionArrays&&te&&(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData())&&K.deserializeCollisionBoxes(te);for(var tr=function(Hr,aa,Qr){for(var Gr=0;Gr<aa/4;Gr++)Hr.opacityVertexArray.emplaceBack(Qr)},dr=function(Hr){var aa=K.symbolInstances.get(Hr),Qr=aa.numHorizontalGlyphVertices,Gr=aa.numVerticalGlyphVertices,ia=aa.crossTileID,Ur=ye[ia],wa=xe.opacities[ia];Ur?wa=He:wa||(wa=qt,xe.opacities[ia]=wa),ye[ia]=!0;var Oa=Qr>0||Gr>0,ri=aa.numIconVertices>0,Pi=xe.placedOrientations[aa.crossTileID],mi=Pi===e.WritingMode.vertical,Di=Pi===e.WritingMode.horizontal||Pi===e.WritingMode.horizontalOnly;if(Oa){var An=vl(wa.text),ln=mi?ji:An;tr(K.text,Qr,ln);var Ii=Di?ji:An;tr(K.text,Gr,Ii);var Wi=wa.text.isHidden();[aa.rightJustifiedTextSymbolIndex,aa.centerJustifiedTextSymbolIndex,aa.leftJustifiedTextSymbolIndex].forEach(function(Sp){Sp>=0&&(K.text.placedSymbolArray.get(Sp).hidden=Wi||mi?1:0)}),aa.verticalPlacedTextSymbolIndex>=0&&(K.text.placedSymbolArray.get(aa.verticalPlacedTextSymbolIndex).hidden=Wi||Di?1:0);var Hi=xe.variableOffsets[aa.crossTileID];Hi&&xe.markUsedJustification(K,Hi.anchor,aa,Pi);var yn=xe.placedOrientations[aa.crossTileID];yn&&(xe.markUsedJustification(K,"left",aa,yn),xe.markUsedOrientation(K,yn,aa))}if(ri){var zn=vl(wa.icon),ms=!(wr&&aa.verticalPlacedIconSymbolIndex&&mi);if(aa.placedIconSymbolIndex>=0){var us=ms?zn:ji;tr(K.icon,aa.numIconVertices,us),K.icon.placedSymbolArray.get(aa.placedIconSymbolIndex).hidden=wa.icon.isHidden()}if(aa.verticalPlacedIconSymbolIndex>=0){var Vs=ms?ji:zn;tr(K.icon,aa.numVerticalIconVertices,Vs),K.icon.placedSymbolArray.get(aa.verticalPlacedIconSymbolIndex).hidden=wa.icon.isHidden()}}if(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData()){var qo=K.collisionArrays[Hr];if(qo){var Ls=new e.Point(0,0);if(qo.textBox||qo.verticalTextBox){var wl=!0;if(Ht){var Ru=xe.variableOffsets[ia];Ru?(Ls=Is(Ru.anchor,Ru.width,Ru.height,Ru.textOffset,Ru.textBoxScale),yr&&Ls._rotate(Ir?xe.transform.angle:-xe.transform.angle)):wl=!1}qo.textBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||mi,Ls.x,Ls.y),qo.verticalTextBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||Di,Ls.x,Ls.y)}var Ap=!!(!Di&&qo.verticalIconBox);qo.iconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,Ap,wr?Ls.x:0,wr?Ls.y:0),qo.verticalIconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,!Ap,wr?Ls.x:0,wr?Ls.y:0)}}},Pr=0;Pr<K.symbolInstances.length;Pr++)dr(Pr);if(K.sortFeatures(this.transform.angle),this.retainedQueryData[K.bucketInstanceId]&&(this.retainedQueryData[K.bucketInstanceId].featureSortOrder=K.featureSortOrder),K.hasTextData()&&K.text.opacityVertexBuffer&&K.text.opacityVertexBuffer.updateData(K.text.opacityVertexArray),K.hasIconData()&&K.icon.opacityVertexBuffer&&K.icon.opacityVertexBuffer.updateData(K.icon.opacityVertexArray),K.hasIconCollisionBoxData()&&K.iconCollisionBox.collisionVertexBuffer&&K.iconCollisionBox.collisionVertexBuffer.updateData(K.iconCollisionBox.collisionVertexArray),K.hasTextCollisionBoxData()&&K.textCollisionBox.collisionVertexBuffer&&K.textCollisionBox.collisionVertexBuffer.updateData(K.textCollisionBox.collisionVertexArray),K.bucketInstanceId in this.collisionCircleArrays){var Vr=this.collisionCircleArrays[K.bucketInstanceId];K.placementInvProjMatrix=Vr.invProjMatrix,K.placementViewportMatrix=Vr.viewportMatrix,K.collisionCircleArray=Vr.circles,delete this.collisionCircleArrays[K.bucketInstanceId]}},$o.prototype.symbolFadeChange=function(K){return this.fadeDuration===0?1:(K-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},$o.prototype.zoomAdjustment=function(K){return Math.max(0,(this.transform.zoom-K)/1.5)},$o.prototype.hasTransitions=function(K){return this.stale||K-this.lastPlacementChangeTime<this.fadeDuration},$o.prototype.stillRecent=function(K,ye){var te=this.zoomAtLastRecencyCheck===ye?1-this.zoomAdjustment(ye):1;return this.zoomAtLastRecencyCheck=ye,this.commitTime+this.fadeDuration*te>K},$o.prototype.setStale=function(){this.stale=!0};function fi(ve,K,ye,te,xe){ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0)}var mn=Math.pow(2,25),ol=Math.pow(2,24),Os=Math.pow(2,17),so=Math.pow(2,16),Ns=Math.pow(2,9),fs=Math.pow(2,8),al=Math.pow(2,1);function vl(ve){if(ve.opacity===0&&!ve.placed)return 0;if(ve.opacity===1&&ve.placed)return 4294967295;var K=ve.placed?1:0,ye=Math.floor(ve.opacity*127);return ye*mn+K*ol+ye*Os+K*so+ye*Ns+K*fs+ye*al+K}var ji=0,To=function(K){this._sortAcrossTiles=K.layout.get("symbol-z-order")!=="viewport-y"&&K.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};To.prototype.continuePlacement=function(K,ye,te,xe,We){for(var He=this._bucketParts;this._currentTileIndex<K.length;){var st=K[this._currentTileIndex];if(ye.getBucketParts(He,xe,st,this._sortAcrossTiles),this._currentTileIndex++,We())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,He.sort(function(Ht,yr){return Ht.sortKey-yr.sortKey}));this._currentPartIndex<He.length;){var Et=He[this._currentPartIndex];if(ye.placeLayerBucketPart(Et,this._seenCrossTileIDs,te),this._currentPartIndex++,We())return!0}return!1};var Yn=function(K,ye,te,xe,We,He,st){this.placement=new $o(K,We,He,st),this._currentPlacementIndex=ye.length-1,this._forceFullPlacement=te,this._showCollisionBoxes=xe,this._done=!1};Yn.prototype.isDone=function(){return this._done},Yn.prototype.continuePlacement=function(K,ye,te){for(var xe=this,We=e.browser.now(),He=function(){var Ir=e.browser.now()-We;return xe._forceFullPlacement?!1:Ir>2};this._currentPlacementIndex>=0;){var st=K[this._currentPlacementIndex],Et=ye[st],Ht=this.placement.collisionIndex.transform.zoom;if(Et.type==="symbol"&&(!Et.minzoom||Et.minzoom<=Ht)&&(!Et.maxzoom||Et.maxzoom>Ht)){this._inProgressLayer||(this._inProgressLayer=new To(Et));var yr=this._inProgressLayer.continuePlacement(te[Et.source],this.placement,this._showCollisionBoxes,Et,He);if(yr)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Yn.prototype.commit=function(K){return this.placement.commit(K),this.placement};var _s=512/e.EXTENT/2,Yo=function(K,ye,te){this.tileID=K,this.indexedSymbolInstances={},this.bucketInstanceId=te;for(var xe=0;xe<ye.length;xe++){var We=ye.get(xe),He=We.key;this.indexedSymbolInstances[He]||(this.indexedSymbolInstances[He]=[]),this.indexedSymbolInstances[He].push({crossTileID:We.crossTileID,coord:this.getScaledCoordinates(We,K)})}};Yo.prototype.getScaledCoordinates=function(K,ye){var te=ye.canonical.z-this.tileID.canonical.z,xe=_s/Math.pow(2,te);return{x:Math.floor((ye.canonical.x*e.EXTENT+K.anchorX)*xe),y:Math.floor((ye.canonical.y*e.EXTENT+K.anchorY)*xe)}},Yo.prototype.findMatches=function(K,ye,te){for(var xe=this.tileID.canonical.z<ye.canonical.z?1:Math.pow(2,this.tileID.canonical.z-ye.canonical.z),We=0;We<K.length;We++){var He=K.get(We);if(!He.crossTileID){var st=this.indexedSymbolInstances[He.key];if(st)for(var Et=this.getScaledCoordinates(He,ye),Ht=0,yr=st;Ht<yr.length;Ht+=1){var Ir=yr[Ht];if(Math.abs(Ir.coord.x-Et.x)<=xe&&Math.abs(Ir.coord.y-Et.y)<=xe&&!te[Ir.crossTileID]){te[Ir.crossTileID]=!0,He.crossTileID=Ir.crossTileID;break}}}}};var Nn=function(){this.maxCrossTileID=0};Nn.prototype.generate=function(){return++this.maxCrossTileID};var Wl=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Wl.prototype.handleWrapJump=function(K){var ye=Math.round((K-this.lng)/360);if(ye!==0)for(var te in this.indexes){var xe=this.indexes[te],We={};for(var He in xe){var st=xe[He];st.tileID=st.tileID.unwrapTo(st.tileID.wrap+ye),We[st.tileID.key]=st}this.indexes[te]=We}this.lng=K},Wl.prototype.addBucket=function(K,ye,te){if(this.indexes[K.overscaledZ]&&this.indexes[K.overscaledZ][K.key]){if(this.indexes[K.overscaledZ][K.key].bucketInstanceId===ye.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(K.overscaledZ,this.indexes[K.overscaledZ][K.key])}for(var xe=0;xe<ye.symbolInstances.length;xe++){var We=ye.symbolInstances.get(xe);We.crossTileID=0}this.usedCrossTileIDs[K.overscaledZ]||(this.usedCrossTileIDs[K.overscaledZ]={});var He=this.usedCrossTileIDs[K.overscaledZ];for(var st in this.indexes){var Et=this.indexes[st];if(Number(st)>K.overscaledZ)for(var Ht in Et){var yr=Et[Ht];yr.tileID.isChildOf(K)&&yr.findMatches(ye.symbolInstances,K,He)}else{var Ir=K.scaledTo(Number(st)),wr=Et[Ir.key];wr&&wr.findMatches(ye.symbolInstances,K,He)}}for(var qt=0;qt<ye.symbolInstances.length;qt++){var tr=ye.symbolInstances.get(qt);tr.crossTileID||(tr.crossTileID=te.generate(),He[tr.crossTileID]=!0)}return this.indexes[K.overscaledZ]===void 0&&(this.indexes[K.overscaledZ]={}),this.indexes[K.overscaledZ][K.key]=new Yo(K,ye.symbolInstances,ye.bucketInstanceId),!0},Wl.prototype.removeBucketCrossTileIDs=function(K,ye){for(var te in ye.indexedSymbolInstances)for(var xe=0,We=ye.indexedSymbolInstances[te];xe<We.length;xe+=1){var He=We[xe];delete this.usedCrossTileIDs[K][He.crossTileID]}},Wl.prototype.removeStaleBuckets=function(K){var ye=!1;for(var te in this.indexes){var xe=this.indexes[te];for(var We in xe)K[xe[We].bucketInstanceId]||(this.removeBucketCrossTileIDs(te,xe[We]),delete xe[We],ye=!0)}return ye};var Zu=function(){this.layerIndexes={},this.crossTileIDs=new Nn,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Zu.prototype.addLayer=function(K,ye,te){var xe=this.layerIndexes[K.id];xe===void 0&&(xe=this.layerIndexes[K.id]=new Wl);var We=!1,He={};xe.handleWrapJump(te);for(var st=0,Et=ye;st<Et.length;st+=1){var Ht=Et[st],yr=Ht.getBucket(K);!yr||K.id!==yr.layerIds[0]||(yr.bucketInstanceId||(yr.bucketInstanceId=++this.maxBucketInstanceId),xe.addBucket(Ht.tileID,yr,this.crossTileIDs)&&(We=!0),He[yr.bucketInstanceId]=!0)}return xe.removeStaleBuckets(He)&&(We=!0),We},Zu.prototype.pruneUnusedLayers=function(K){var ye={};K.forEach(function(xe){ye[xe]=!0});for(var te in this.layerIndexes)ye[te]||delete this.layerIndexes[te]};var ml=function(ve,K){return e.emitValidationErrors(ve,K&&K.filter(function(ye){return ye.identifier!=="source.canvas"}))},Bu=e.pick(Fr,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),El=e.pick(Fr,["setCenter","setZoom","setBearing","setPitch"]),qs=Mr(),Jl=function(ve){function K(ye,te){var xe=this;te===void 0&&(te={}),ve.call(this),this.map=ye,this.dispatcher=new B(gt(),this),this.imageManager=new _,this.imageManager.setEventedParent(this),this.glyphManager=new y(ye._requestManager,te.localIdeographFontFamily),this.lineAtlas=new F(256,512),this.crossTileSymbolIndex=new Zu,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new e.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",e.getReferrer());var We=this;this._rtlTextPluginCallback=K.registerForPluginStateChange(function(He){var st={pluginStatus:He.pluginStatus,pluginURL:He.pluginURL};We.dispatcher.broadcast("syncRTLPluginState",st,function(Et,Ht){if(e.triggerPluginCompletionEvent(Et),Ht){var yr=Ht.every(function(wr){return wr});if(yr)for(var Ir in We.sourceCaches)We.sourceCaches[Ir].reload()}})}),this.on("data",function(He){if(!(He.dataType!=="source"||He.sourceDataType!=="metadata")){var st=xe.sourceCaches[He.sourceId];if(st){var Et=st.getSource();if(!(!Et||!Et.vectorLayerIds))for(var Ht in xe._layers){var yr=xe._layers[Ht];yr.source===Et.id&&xe._validateLayer(yr)}}}})}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.loadURL=function(te,xe){var We=this;xe===void 0&&(xe={}),this.fire(new e.Event("dataloading",{dataType:"style"}));var He=typeof xe.validate=="boolean"?xe.validate:!e.isMapboxURL(te);te=this.map._requestManager.normalizeStyleURL(te,xe.accessToken);var st=this.map._requestManager.transformRequest(te,e.ResourceType.Style);this._request=e.getJSON(st,function(Et,Ht){We._request=null,Et?We.fire(new e.ErrorEvent(Et)):Ht&&We._load(Ht,He)})},K.prototype.loadJSON=function(te,xe){var We=this;xe===void 0&&(xe={}),this.fire(new e.Event("dataloading",{dataType:"style"})),this._request=e.browser.frame(function(){We._request=null,We._load(te,xe.validate!==!1)})},K.prototype.loadEmpty=function(){this.fire(new e.Event("dataloading",{dataType:"style"})),this._load(qs,!1)},K.prototype._load=function(te,xe){if(!(xe&&ml(this,e.validateStyle(te)))){this._loaded=!0,this.stylesheet=te;for(var We in te.sources)this.addSource(We,te.sources[We],{validate:!1});te.sprite?this._loadSprite(te.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(te.glyphs);var He=Tr(this.stylesheet.layers);this._order=He.map(function(yr){return yr.id}),this._layers={},this._serializedLayers={};for(var st=0,Et=He;st<Et.length;st+=1){var Ht=Et[st];Ht=e.createStyleLayer(Ht),Ht.setEventedParent(this,{layer:{id:Ht.id}}),this._layers[Ht.id]=Ht,this._serializedLayers[Ht.id]=Ht.serialize()}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new z(this.stylesheet.light),this.fire(new e.Event("data",{dataType:"style"})),this.fire(new e.Event("style.load"))}},K.prototype._loadSprite=function(te){var xe=this;this._spriteRequest=p(te,this.map._requestManager,function(We,He){if(xe._spriteRequest=null,We)xe.fire(new e.ErrorEvent(We));else if(He)for(var st in He)xe.imageManager.addImage(st,He[st]);xe.imageManager.setLoaded(!0),xe._availableImages=xe.imageManager.listImages(),xe.dispatcher.broadcast("setImages",xe._availableImages),xe.fire(new e.Event("data",{dataType:"style"}))})},K.prototype._validateLayer=function(te){var xe=this.sourceCaches[te.source];if(xe){var We=te.sourceLayer;if(We){var He=xe.getSource();(He.type==="geojson"||He.vectorLayerIds&&He.vectorLayerIds.indexOf(We)===-1)&&this.fire(new e.ErrorEvent(new Error('Source layer "'+We+'" does not exist on source "'+He.id+'" as specified by style layer "'+te.id+'"')))}}},K.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var te in this.sourceCaches)if(!this.sourceCaches[te].loaded())return!1;return!!this.imageManager.isLoaded()},K.prototype._serializeLayers=function(te){for(var xe=[],We=0,He=te;We<He.length;We+=1){var st=He[We],Et=this._layers[st];Et.type!=="custom"&&xe.push(Et.serialize())}return xe},K.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var te in this.sourceCaches)if(this.sourceCaches[te].hasTransition())return!0;for(var xe in this._layers)if(this._layers[xe].hasTransition())return!0;return!1},K.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},K.prototype.update=function(te){if(this._loaded){var xe=this._changed;if(this._changed){var We=Object.keys(this._updatedLayers),He=Object.keys(this._removedLayers);(We.length||He.length)&&this._updateWorkerLayers(We,He);for(var st in this._updatedSources){var Et=this._updatedSources[st];Et==="reload"?this._reloadSource(st):Et==="clear"&&this._clearSource(st)}this._updateTilesForChangedImages();for(var Ht in this._updatedPaintProps)this._layers[Ht].updateTransitions(te);this.light.updateTransitions(te),this._resetUpdates()}var yr={};for(var Ir in this.sourceCaches){var wr=this.sourceCaches[Ir];yr[Ir]=wr.used,wr.used=!1}for(var qt=0,tr=this._order;qt<tr.length;qt+=1){var dr=tr[qt],Pr=this._layers[dr];Pr.recalculate(te,this._availableImages),!Pr.isHidden(te.zoom)&&Pr.source&&(this.sourceCaches[Pr.source].used=!0)}for(var Vr in yr){var Hr=this.sourceCaches[Vr];yr[Vr]!==Hr.used&&Hr.fire(new e.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:Vr}))}this.light.recalculate(te),this.z=te.zoom,xe&&this.fire(new e.Event("data",{dataType:"style"}))}},K.prototype._updateTilesForChangedImages=function(){var te=Object.keys(this._changedImages);if(te.length){for(var xe in this.sourceCaches)this.sourceCaches[xe].reloadTilesForDependencies(["icons","patterns"],te);this._changedImages={}}},K.prototype._updateWorkerLayers=function(te,xe){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(te),removedIds:xe})},K.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},K.prototype.setState=function(te){var xe=this;if(this._checkLoaded(),ml(this,e.validateStyle(te)))return!1;te=e.clone$1(te),te.layers=Tr(te.layers);var We=Ba(this.serialize(),te).filter(function(st){return!(st.command in El)});if(We.length===0)return!1;var He=We.filter(function(st){return!(st.command in Bu)});if(He.length>0)throw new Error("Unimplemented: "+He.map(function(st){return st.command}).join(", ")+".");return We.forEach(function(st){st.command!=="setTransition"&&xe[st.command].apply(xe,st.args)}),this.stylesheet=te,!0},K.prototype.addImage=function(te,xe){if(this.getImage(te))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(te,xe),this._afterImageUpdated(te)},K.prototype.updateImage=function(te,xe){this.imageManager.updateImage(te,xe)},K.prototype.getImage=function(te){return this.imageManager.getImage(te)},K.prototype.removeImage=function(te){if(!this.getImage(te))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(te),this._afterImageUpdated(te)},K.prototype._afterImageUpdated=function(te){this._availableImages=this.imageManager.listImages(),this._changedImages[te]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))},K.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},K.prototype.addSource=function(te,xe,We){var He=this;if(We===void 0&&(We={}),this._checkLoaded(),this.sourceCaches[te]!==void 0)throw new Error("There is already a source with this ID");if(!xe.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(xe).join(", ")+".");var st=["vector","raster","geojson","video","image"],Et=st.indexOf(xe.type)>=0;if(!(Et&&this._validate(e.validateStyle.source,"sources."+te,xe,null,We))){this.map&&this.map._collectResourceTiming&&(xe.collectResourceTiming=!0);var Ht=this.sourceCaches[te]=new pa(te,xe,this.dispatcher);Ht.style=this,Ht.setEventedParent(this,function(){return{isSourceLoaded:He.loaded(),source:Ht.serialize(),sourceId:te}}),Ht.onAdd(this.map),this._changed=!0}},K.prototype.removeSource=function(te){if(this._checkLoaded(),this.sourceCaches[te]===void 0)throw new Error("There is no source with this ID");for(var xe in this._layers)if(this._layers[xe].source===te)return this.fire(new e.ErrorEvent(new Error('Source "'+te+'" cannot be removed while layer "'+xe+'" is using it.')));var We=this.sourceCaches[te];delete this.sourceCaches[te],delete this._updatedSources[te],We.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:te})),We.setEventedParent(null),We.clearTiles(),We.onRemove&&We.onRemove(this.map),this._changed=!0},K.prototype.setGeoJSONSourceData=function(te,xe){this._checkLoaded();var We=this.sourceCaches[te].getSource();We.setData(xe),this._changed=!0},K.prototype.getSource=function(te){return this.sourceCaches[te]&&this.sourceCaches[te].getSource()},K.prototype.addLayer=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=te.id;if(this.getLayer(He)){this.fire(new e.ErrorEvent(new Error('Layer with id "'+He+'" already exists on this map')));return}var st;if(te.type==="custom"){if(ml(this,e.validateCustomStyleLayer(te)))return;st=e.createStyleLayer(te)}else{if(typeof te.source=="object"&&(this.addSource(He,te.source),te=e.clone$1(te),te=e.extend(te,{source:He})),this._validate(e.validateStyle.layer,"layers."+He,te,{arrayIndex:-1},We))return;st=e.createStyleLayer(te),this._validateLayer(st),st.setEventedParent(this,{layer:{id:He}}),this._serializedLayers[st.id]=st.serialize()}var Et=xe?this._order.indexOf(xe):this._order.length;if(xe&&Et===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}if(this._order.splice(Et,0,He),this._layerOrderChanged=!0,this._layers[He]=st,this._removedLayers[He]&&st.source&&st.type!=="custom"){var Ht=this._removedLayers[He];delete this._removedLayers[He],Ht.type!==st.type?this._updatedSources[st.source]="clear":(this._updatedSources[st.source]="reload",this.sourceCaches[st.source].pause())}this._updateLayer(st),st.onAdd&&st.onAdd(this.map)},K.prototype.moveLayer=function(te,xe){this._checkLoaded(),this._changed=!0;var We=this._layers[te];if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be moved.")));return}if(te!==xe){var He=this._order.indexOf(te);this._order.splice(He,1);var st=xe?this._order.indexOf(xe):this._order.length;if(xe&&st===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}this._order.splice(st,0,te),this._layerOrderChanged=!0}},K.prototype.removeLayer=function(te){this._checkLoaded();var xe=this._layers[te];if(!xe){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be removed.")));return}xe.setEventedParent(null);var We=this._order.indexOf(te);this._order.splice(We,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[te]=xe,delete this._layers[te],delete this._serializedLayers[te],delete this._updatedLayers[te],delete this._updatedPaintProps[te],xe.onRemove&&xe.onRemove(this.map)},K.prototype.getLayer=function(te){return this._layers[te]},K.prototype.hasLayer=function(te){return te in this._layers},K.prototype.setLayerZoomRange=function(te,xe,We){this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot have zoom extent.")));return}He.minzoom===xe&&He.maxzoom===We||(xe!=null&&(He.minzoom=xe),We!=null&&(He.maxzoom=We),this._updateLayer(He))},K.prototype.setFilter=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be filtered.")));return}if(!e.deepEqual(He.filter,xe)){if(xe==null){He.filter=void 0,this._updateLayer(He);return}this._validate(e.validateStyle.filter,"layers."+He.id+".filter",xe,null,We)||(He.filter=e.clone$1(xe),this._updateLayer(He))}},K.prototype.getFilter=function(te){return e.clone$1(this.getLayer(te).filter)},K.prototype.setLayoutProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}e.deepEqual(st.getLayoutProperty(xe),We)||(st.setLayoutProperty(xe,We,He),this._updateLayer(st))},K.prototype.getLayoutProperty=function(te,xe){var We=this.getLayer(te);if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style.")));return}return We.getLayoutProperty(xe)},K.prototype.setPaintProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}if(!e.deepEqual(st.getPaintProperty(xe),We)){var Et=st.setPaintProperty(xe,We,He);Et&&this._updateLayer(st),this._changed=!0,this._updatedPaintProps[te]=!0}},K.prototype.getPaintProperty=function(te,xe){return this.getLayer(te).getPaintProperty(xe)},K.prototype.setFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=te.sourceLayer,st=this.sourceCaches[We];if(st===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var Et=st.getSource().type;if(Et==="geojson"&&He){this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Et==="vector"&&!He){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),st.setFeatureState(He,te.id,xe)},K.prototype.removeFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=this.sourceCaches[We];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var st=He.getSource().type,Et=st==="vector"?te.sourceLayer:void 0;if(st==="vector"&&!Et){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(xe&&typeof te.id!="string"&&typeof te.id!="number"){this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}He.removeFeatureState(Et,te.id,xe)},K.prototype.getFeatureState=function(te){this._checkLoaded();var xe=te.source,We=te.sourceLayer,He=this.sourceCaches[xe];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+xe+"' does not exist in the map's style.")));return}var st=He.getSource().type;if(st==="vector"&&!We){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),He.getFeatureState(We,te.id)},K.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},K.prototype.serialize=function(){return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:e.mapObject(this.sourceCaches,function(te){return te.serialize()}),layers:this._serializeLayers(this._order)},function(te){return te!==void 0})},K.prototype._updateLayer=function(te){this._updatedLayers[te.id]=!0,te.source&&!this._updatedSources[te.source]&&this.sourceCaches[te.source].getSource().type!=="raster"&&(this._updatedSources[te.source]="reload",this.sourceCaches[te.source].pause()),this._changed=!0},K.prototype._flattenAndSortRenderedFeatures=function(te){for(var xe=this,We=function(Di){return xe._layers[Di].type==="fill-extrusion"},He={},st=[],Et=this._order.length-1;Et>=0;Et--){var Ht=this._order[Et];if(We(Ht)){He[Ht]=Et;for(var yr=0,Ir=te;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=wr[Ht];if(qt)for(var tr=0,dr=qt;tr<dr.length;tr+=1){var Pr=dr[tr];st.push(Pr)}}}}st.sort(function(Di,An){return An.intersectionZ-Di.intersectionZ});for(var Vr=[],Hr=this._order.length-1;Hr>=0;Hr--){var aa=this._order[Hr];if(We(aa))for(var Qr=st.length-1;Qr>=0;Qr--){var Gr=st[Qr].feature;if(He[Gr.layer.id]<Hr)break;Vr.push(Gr),st.pop()}else for(var ia=0,Ur=te;ia<Ur.length;ia+=1){var wa=Ur[ia],Oa=wa[aa];if(Oa)for(var ri=0,Pi=Oa;ri<Pi.length;ri+=1){var mi=Pi[ri];Vr.push(mi.feature)}}}return Vr},K.prototype.queryRenderedFeatures=function(te,xe,We){xe&&xe.filter&&this._validate(e.validateStyle.filter,"queryRenderedFeatures.filter",xe.filter,null,xe);var He={};if(xe&&xe.layers){if(!Array.isArray(xe.layers))return this.fire(new e.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var st=0,Et=xe.layers;st<Et.length;st+=1){var Ht=Et[st],yr=this._layers[Ht];if(!yr)return this.fire(new e.ErrorEvent(new Error("The layer '"+Ht+"' does not exist in the map's style and cannot be queried for features."))),[];He[yr.source]=!0}}var Ir=[];xe.availableImages=this._availableImages;for(var wr in this.sourceCaches)xe.layers&&!He[wr]||Ir.push(ie(this.sourceCaches[wr],this._layers,this._serializedLayers,te,xe,We));return this.placement&&Ir.push(fe(this._layers,this._serializedLayers,this.sourceCaches,te,xe,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(Ir)},K.prototype.querySourceFeatures=function(te,xe){xe&&xe.filter&&this._validate(e.validateStyle.filter,"querySourceFeatures.filter",xe.filter,null,xe);var We=this.sourceCaches[te];return We?be(We,xe):[]},K.prototype.addSourceType=function(te,xe,We){if(K.getSourceType(te))return We(new Error('A source type called "'+te+'" already exists.'));if(K.setSourceType(te,xe),!xe.workerSourceURL)return We(null,null);this.dispatcher.broadcast("loadWorkerSource",{name:te,url:xe.workerSourceURL},We)},K.prototype.getLight=function(){return this.light.getLight()},K.prototype.setLight=function(te,xe){xe===void 0&&(xe={}),this._checkLoaded();var We=this.light.getLight(),He=!1;for(var st in te)if(!e.deepEqual(te[st],We[st])){He=!0;break}if(He){var Et={now:e.browser.now(),transition:e.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(te,xe),this.light.updateTransitions(Et)}},K.prototype._validate=function(te,xe,We,He,st){return st===void 0&&(st={}),st&&st.validate===!1?!1:ml(this,te.call(e.validateStyle,e.extend({key:xe,style:this.serialize(),value:We,styleSpec:e.styleSpec},He)))},K.prototype._remove=function(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),e.evented.off("pluginStateChange",this._rtlTextPluginCallback);for(var te in this._layers){var xe=this._layers[te];xe.setEventedParent(null)}for(var We in this.sourceCaches)this.sourceCaches[We].clearTiles(),this.sourceCaches[We].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},K.prototype._clearSource=function(te){this.sourceCaches[te].clearTiles()},K.prototype._reloadSource=function(te){this.sourceCaches[te].resume(),this.sourceCaches[te].reload()},K.prototype._updateSources=function(te){for(var xe in this.sourceCaches)this.sourceCaches[xe].update(te)},K.prototype._generateCollisionBoxes=function(){for(var te in this.sourceCaches)this._reloadSource(te)},K.prototype._updatePlacement=function(te,xe,We,He,st){st===void 0&&(st=!1);for(var Et=!1,Ht=!1,yr={},Ir=0,wr=this._order;Ir<wr.length;Ir+=1){var qt=wr[Ir],tr=this._layers[qt];if(tr.type==="symbol"){if(!yr[tr.source]){var dr=this.sourceCaches[tr.source];yr[tr.source]=dr.getRenderableIds(!0).map(function(ia){return dr.getTileByID(ia)}).sort(function(ia,Ur){return Ur.tileID.overscaledZ-ia.tileID.overscaledZ||(ia.tileID.isLessThan(Ur.tileID)?-1:1)})}var Pr=this.crossTileSymbolIndex.addLayer(tr,yr[tr.source],te.center.lng);Et=Et||Pr}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),st=st||this._layerOrderChanged||We===0,(st||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(e.browser.now(),te.zoom))&&(this.pauseablePlacement=new Yn(te,this._order,st,xe,We,He,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,yr),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(e.browser.now()),Ht=!0),Et&&this.pauseablePlacement.placement.setStale()),Ht||Et)for(var Vr=0,Hr=this._order;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=this._layers[aa];Qr.type==="symbol"&&this.placement.updateLayerOpacities(Qr,yr[Qr.source])}var Gr=!this.pauseablePlacement.isDone()||this.placement.hasTransitions(e.browser.now());return Gr},K.prototype._releaseSymbolFadeTiles=function(){for(var te in this.sourceCaches)this.sourceCaches[te].releaseSymbolFadeTiles()},K.prototype.getImages=function(te,xe,We){this.imageManager.getImages(xe.icons,We),this._updateTilesForChangedImages();var He=this.sourceCaches[xe.source];He&&He.setDependencies(xe.tileID.key,xe.type,xe.icons)},K.prototype.getGlyphs=function(te,xe,We){this.glyphManager.getGlyphs(xe.stacks,We)},K.prototype.getResource=function(te,xe,We){return e.makeRequest(xe,We)},K}(e.Evented);Jl.getSourceType=re,Jl.setSourceType=ne,Jl.registerForPluginStateChange=e.registerForPluginStateChange;var Nu=e.createLayout([{name:"a_pos",type:"Int16",components:2}]),Ic=`#ifdef GL_ES
precision mediump float;
#else
#if !defined(lowp)
#define lowp
#endif
#if !defined(mediump)
#define mediump
#endif
#if !defined(highp)
#define highp
#endif
#endif`,Xu=`#ifdef GL_ES
precision highp float;
#else
#if !defined(lowp)
#define lowp
#endif
#if !defined(mediump)
#define mediump
#endif
#if !defined(highp)
#define highp
#endif
#endif
vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0
);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}`,Th=`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,bf="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",Rs=`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Yc="uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}",If=`varying vec3 v_data;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define mediump float radius
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define highp vec4 stroke_color
#pragma mapbox: define mediump float stroke_width
#pragma mapbox: define lowp float stroke_opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize mediump float radius
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize highp vec4 stroke_color
#pragma mapbox: initialize mediump float stroke_width
#pragma mapbox: initialize lowp float stroke_opacity
vec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Zl=`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define mediump float radius
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define highp vec4 stroke_color
#pragma mapbox: define mediump float stroke_width
#pragma mapbox: define lowp float stroke_opacity
void main(void) {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize mediump float radius
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize highp vec4 stroke_color
#pragma mapbox: initialize mediump float stroke_width
#pragma mapbox: initialize lowp float stroke_opacity
vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,0,1);} else {gl_Position=u_matrix*vec4(circle_center,0,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`,yl="void main() {gl_FragColor=vec4(1.0);}",oc="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",_c=`uniform highp float u_intensity;varying vec2 v_extrude;
#pragma mapbox: define highp float weight
#define GAUSS_COEF 0.3989422804014327
void main() {
#pragma mapbox: initialize highp float weight
float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Zs=`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;
#pragma mapbox: define highp float weight
#pragma mapbox: define mediump float radius
const highp float ZERO=1.0/255.0/16.0;
#define GAUSS_COEF 0.3989422804014327
void main(void) {
#pragma mapbox: initialize highp float weight
#pragma mapbox: initialize mediump float radius
vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}`,_l=`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(0.0);
#endif
}`,Bs="uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}",$s="varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}",sc="attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}",zl="varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}",Yu="attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd  =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz  /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}",Qs="uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}",fp="attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}",es=`#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float opacity
gl_FragColor=color*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Wh=`attribute vec2 a_pos;uniform mat4 u_matrix;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float opacity
gl_Position=u_matrix*vec4(a_pos,0,1);}`,Ss=`varying vec2 v_pos;
#pragma mapbox: define highp vec4 outline_color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 outline_color
#pragma mapbox: initialize lowp float opacity
float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,So=`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
#pragma mapbox: define highp vec4 outline_color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 outline_color
#pragma mapbox: initialize lowp float opacity
gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`,hf=`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Ku=`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`,cu=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Zf=`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`,Rc=`varying vec4 v_color;void main() {gl_FragColor=v_color;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,pf=`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec4 v_color;
#pragma mapbox: define highp float base
#pragma mapbox: define highp float height
#pragma mapbox: define highp vec4 color
void main() {
#pragma mapbox: initialize highp float base
#pragma mapbox: initialize highp float height
#pragma mapbox: initialize highp vec4 color
vec3 normal=a_normal_ed.xyz;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`,Fl=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
#pragma mapbox: define lowp float base
#pragma mapbox: define lowp float height
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float base
#pragma mapbox: initialize lowp float height
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,lh=`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
#pragma mapbox: define lowp float base
#pragma mapbox: define lowp float height
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float base
#pragma mapbox: initialize lowp float height
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0
? a_pos
: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`,Xf=`#ifdef GL_ES
precision highp float;
#endif
uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Rf="uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}",Kc=`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;
#define PI 3.141592653589793
void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Yf="uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}",uh=`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Ju=`
#define scale 0.015873016
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float width
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float width
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Df=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Dc=`
#define scale 0.015873016
attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float width
void main() {
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float width
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Jc=`uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Eu=`
#define scale 0.015873016
#define LINE_DISTANCE_SCALE 2.0
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define mediump float width
#pragma mapbox: define lowp float floorwidth
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize mediump float width
#pragma mapbox: initialize lowp float floorwidth
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`,wf=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float width
#pragma mapbox: define lowp float floorwidth
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float width
#pragma mapbox: initialize lowp float floorwidth
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,zc=`
#define scale 0.015873016
#define LINE_DISTANCE_SCALE 2.0
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float width
#pragma mapbox: define lowp float floorwidth
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float width
#pragma mapbox: initialize lowp float floorwidth
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`,Us=`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Kf="uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}",Zh=`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize lowp float opacity
lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,ch=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize lowp float opacity
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
camera_to_anchor_distance/u_camera_to_center_distance :
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}`,df=`#define SDF_PX 8.0
uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,Ah=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
camera_to_anchor_distance/u_camera_to_center_distance :
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`,ku=`#define SDF_PX 8.0
#define SDF 1.0
#define ICON 0.0
uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,fh=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
camera_to_anchor_distance/u_camera_to_center_distance :
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,ru=el(Ic,Xu),Cu=el(Th,bf),xc=el(Rs,Yc),kl=el(If,Zl),Fc=el(yl,oc),$u=el(_c,Zs),vu=el(_l,Bs),xl=el($s,sc),hh=el(zl,Yu),Sh=el(Qs,fp),Uu=el(es,Wh),bc=el(Ss,So),lc=el(hf,Ku),hp=el(cu,Zf),vf=el(Rc,pf),Tf=el(Fl,lh),Lu=el(Xf,Rf),zf=el(Kc,Yf),au=el(uh,Ju),$c=el(Df,Dc),Mh=el(Jc,Eu),Ff=el(wf,zc),il=el(Us,Kf),mu=el(Zh,ch),gu=el(df,Ah),Jf=el(ku,fh);function el(ve,K){var ye=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,te=K.match(/attribute ([\w]+) ([\w]+)/g),xe=ve.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),We=K.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),He=We?We.concat(xe):xe,st={};return ve=ve.replace(ye,function(Et,Ht,yr,Ir,wr){return st[wr]=!0,Ht==="define"?`
#ifndef HAS_UNIFORM_u_`+wr+`
varying `+yr+" "+Ir+" "+wr+`;
#else
uniform `+yr+" "+Ir+" u_"+wr+`;
#endif
`:`
#ifdef HAS_UNIFORM_u_`+wr+`
    `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
#endif
`}),K=K.replace(ye,function(Et,Ht,yr,Ir,wr){var qt=Ir==="float"?"vec2":"vec4",tr=wr.match(/color/)?"color":qt;return st[wr]?Ht==="define"?`
#ifndef HAS_UNIFORM_u_`+wr+`
uniform lowp float u_`+wr+`_t;
attribute `+yr+" "+qt+" a_"+wr+`;
varying `+yr+" "+Ir+" "+wr+`;
#else
uniform `+yr+" "+Ir+" u_"+wr+`;
#endif
`:tr==="vec4"?`
#ifndef HAS_UNIFORM_u_`+wr+`
    `+wr+" = a_"+wr+`;
#else
    `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
#endif
`:`
#ifndef HAS_UNIFORM_u_`+wr+`
    `+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t);
#else
    `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
#endif
`:Ht==="define"?`
#ifndef HAS_UNIFORM_u_`+wr+`
uniform lowp float u_`+wr+`_t;
attribute `+yr+" "+qt+" a_"+wr+`;
#else
uniform `+yr+" "+Ir+" u_"+wr+`;
#endif
`:tr==="vec4"?`
#ifndef HAS_UNIFORM_u_`+wr+`
    `+yr+" "+Ir+" "+wr+" = a_"+wr+`;
#else
    `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
#endif
`:`
#ifndef HAS_UNIFORM_u_`+wr+`
    `+yr+" "+Ir+" "+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t);
#else
    `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
#endif
`}),{fragmentSource:ve,vertexSource:K,staticAttributes:te,staticUniforms:He}}var mf=Object.freeze({__proto__:null,prelude:ru,background:Cu,backgroundPattern:xc,circle:kl,clippingMask:Fc,heatmap:$u,heatmapTexture:vu,collisionBox:xl,collisionCircle:hh,debug:Sh,fill:Uu,fillOutline:bc,fillOutlinePattern:lc,fillPattern:hp,fillExtrusion:vf,fillExtrusionPattern:Tf,hillshadePrepare:Lu,hillshade:zf,line:au,lineGradient:$c,linePattern:Mh,lineSDF:Ff,raster:il,symbolIcon:mu,symbolSDF:gu,symbolTextAndIcon:Jf}),wc=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};wc.prototype.bind=function(K,ye,te,xe,We,He,st,Et){this.context=K;for(var Ht=this.boundPaintVertexBuffers.length!==xe.length,yr=0;!Ht&&yr<xe.length;yr++)this.boundPaintVertexBuffers[yr]!==xe[yr]&&(Ht=!0);var Ir=!this.vao||this.boundProgram!==ye||this.boundLayoutVertexBuffer!==te||Ht||this.boundIndexBuffer!==We||this.boundVertexOffset!==He||this.boundDynamicVertexBuffer!==st||this.boundDynamicVertexBuffer2!==Et;!K.extVertexArrayObject||Ir?this.freshBind(ye,te,xe,We,He,st,Et):(K.bindVertexArrayOES.set(this.vao),st&&st.bind(),We&&We.dynamicDraw&&We.bind(),Et&&Et.bind())},wc.prototype.freshBind=function(K,ye,te,xe,We,He,st){var Et,Ht=K.numAttributes,yr=this.context,Ir=yr.gl;if(yr.extVertexArrayObject)this.vao&&this.destroy(),this.vao=yr.extVertexArrayObject.createVertexArrayOES(),yr.bindVertexArrayOES.set(this.vao),Et=0,this.boundProgram=K,this.boundLayoutVertexBuffer=ye,this.boundPaintVertexBuffers=te,this.boundIndexBuffer=xe,this.boundVertexOffset=We,this.boundDynamicVertexBuffer=He,this.boundDynamicVertexBuffer2=st;else{Et=yr.currentNumAttributes||0;for(var wr=Ht;wr<Et;wr++)Ir.disableVertexAttribArray(wr)}ye.enableAttributes(Ir,K);for(var qt=0,tr=te;qt<tr.length;qt+=1){var dr=tr[qt];dr.enableAttributes(Ir,K)}He&&He.enableAttributes(Ir,K),st&&st.enableAttributes(Ir,K),ye.bind(),ye.setVertexAttribPointers(Ir,K,We);for(var Pr=0,Vr=te;Pr<Vr.length;Pr+=1){var Hr=Vr[Pr];Hr.bind(),Hr.setVertexAttribPointers(Ir,K,We)}He&&(He.bind(),He.setVertexAttribPointers(Ir,K,We)),xe&&xe.bind(),st&&(st.bind(),st.setVertexAttribPointers(Ir,K,We)),yr.currentNumAttributes=Ht},wc.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};function ju(ve){for(var K=[],ye=0;ye<ve.length;ye++)if(ve[ye]!==null){var te=ve[ye].split(" ");K.push(te.pop())}return K}var Af=function(K,ye,te,xe,We,He){var st=K.gl;this.program=st.createProgram();for(var Et=ju(te.staticAttributes),Ht=xe?xe.getBinderAttributes():[],yr=Et.concat(Ht),Ir=te.staticUniforms?ju(te.staticUniforms):[],wr=xe?xe.getBinderUniforms():[],qt=Ir.concat(wr),tr=[],dr=0,Pr=qt;dr<Pr.length;dr+=1){var Vr=Pr[dr];tr.indexOf(Vr)<0&&tr.push(Vr)}var Hr=xe?xe.defines():[];He&&Hr.push("#define OVERDRAW_INSPECTOR;");var aa=Hr.concat(ru.fragmentSource,te.fragmentSource).join(`
`),Qr=Hr.concat(ru.vertexSource,te.vertexSource).join(`
`),Gr=st.createShader(st.FRAGMENT_SHADER);if(st.isContextLost()){this.failedToCreate=!0;return}st.shaderSource(Gr,aa),st.compileShader(Gr),st.attachShader(this.program,Gr);var ia=st.createShader(st.VERTEX_SHADER);if(st.isContextLost()){this.failedToCreate=!0;return}st.shaderSource(ia,Qr),st.compileShader(ia),st.attachShader(this.program,ia),this.attributes={};var Ur={};this.numAttributes=yr.length;for(var wa=0;wa<this.numAttributes;wa++)yr[wa]&&(st.bindAttribLocation(this.program,wa,yr[wa]),this.attributes[yr[wa]]=wa);st.linkProgram(this.program),st.deleteShader(ia),st.deleteShader(Gr);for(var Oa=0;Oa<tr.length;Oa++){var ri=tr[Oa];if(ri&&!Ur[ri]){var Pi=st.getUniformLocation(this.program,ri);Pi&&(Ur[ri]=Pi)}}this.fixedUniforms=We(K,Ur),this.binderUniforms=xe?xe.getUniforms(K,Ur):[]};Af.prototype.draw=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt,tr,dr,Pr){var Vr,Hr=K.gl;if(!this.failedToCreate){K.program.set(this.program),K.setDepthMode(te),K.setStencilMode(xe),K.setColorMode(We),K.setCullFace(He);for(var aa in this.fixedUniforms)this.fixedUniforms[aa].set(st[aa]);tr&&tr.setUniforms(K,this.binderUniforms,wr,{zoom:qt});for(var Qr=(Vr={},Vr[Hr.LINES]=2,Vr[Hr.TRIANGLES]=3,Vr[Hr.LINE_STRIP]=1,Vr)[ye],Gr=0,ia=Ir.get();Gr<ia.length;Gr+=1){var Ur=ia[Gr],wa=Ur.vaos||(Ur.vaos={}),Oa=wa[Et]||(wa[Et]=new wc);Oa.bind(K,this,Ht,tr?tr.getPaintVertexBuffers():[],yr,Ur.vertexOffset,dr,Pr),Hr.drawElements(ye,Ur.primitiveLength*Qr,Hr.UNSIGNED_SHORT,Ur.primitiveOffset*Qr*2)}}};function uc(ve,K,ye){var te=1/In(ye,1,K.transform.tileZoom),xe=Math.pow(2,ye.tileID.overscaledZ),We=ye.tileSize*Math.pow(2,K.transform.tileZoom)/xe,He=We*(ye.tileID.canonical.x+ye.tileID.wrap*xe),st=We*ye.tileID.canonical.y;return{u_image:0,u_texsize:ye.imageAtlasTexture.size,u_scale:[te,ve.fromScale,ve.toScale],u_fade:ve.t,u_pixel_coord_upper:[He>>16,st>>16],u_pixel_coord_lower:[He&65535,st&65535]}}function Qc(ve,K,ye,te){var xe=ye.imageManager.getPattern(ve.from.toString()),We=ye.imageManager.getPattern(ve.to.toString()),He=ye.imageManager.getPixelSize(),st=He.width,Et=He.height,Ht=Math.pow(2,te.tileID.overscaledZ),yr=te.tileSize*Math.pow(2,ye.transform.tileZoom)/Ht,Ir=yr*(te.tileID.canonical.x+te.tileID.wrap*Ht),wr=yr*te.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:xe.tl,u_pattern_br_a:xe.br,u_pattern_tl_b:We.tl,u_pattern_br_b:We.br,u_texsize:[st,Et],u_mix:K.t,u_pattern_size_a:xe.displaySize,u_pattern_size_b:We.displaySize,u_scale_a:K.fromScale,u_scale_b:K.toScale,u_tile_units_to_pixels:1/In(te,1,ye.transform.tileZoom),u_pixel_coord_upper:[Ir>>16,wr>>16],u_pixel_coord_lower:[Ir&65535,wr&65535]}}var $f=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Vl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_height_factor:new e.Uniform1f(ve,K.u_height_factor),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Qf=function(ve,K,ye,te){var xe=K.style.light,We=xe.properties.get("position"),He=[We.x,We.y,We.z],st=e.create$1();xe.properties.get("anchor")==="viewport"&&e.fromRotation(st,-K.transform.angle),e.transformMat3(He,He,st);var Et=xe.properties.get("color");return{u_matrix:ve,u_lightpos:He,u_lightintensity:xe.properties.get("intensity"),u_lightcolor:[Et.r,Et.g,Et.b],u_vertical_gradient:+ye,u_opacity:te}},Vu=function(ve,K,ye,te,xe,We,He){return e.extend(Qf(ve,K,ye,te),uc(We,K,He),{u_height_factor:-Math.pow(2,xe.overscaledZ)/He.tileSize/8})},Tc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},cc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Cl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world)}},iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},fc=function(ve){return{u_matrix:ve}},Oc=function(ve,K,ye,te){return e.extend(fc(ve),uc(ye,K,te))},Qu=function(ve,K){return{u_matrix:ve,u_world:K}},ef=function(ve,K,ye,te,xe){return e.extend(Oc(ve,K,ye,te),{u_world:xe})},Zt=function(ve,K){return{u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(ve,K.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},fr=function(ve,K,ye,te){var xe=ve.transform,We,He;if(te.paint.get("circle-pitch-alignment")==="map"){var st=In(ye,1,xe.zoom);We=!0,He=[st,st]}else We=!1,He=xe.pixelsToGLUnits;return{u_camera_to_center_distance:xe.cameraToCenterDistance,u_scale_with_map:+(te.paint.get("circle-pitch-scale")==="map"),u_matrix:ve.translatePosMatrix(K.posMatrix,ye,te.paint.get("circle-translate"),te.paint.get("circle-translate-anchor")),u_pitch_with_map:+We,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:He}},Yr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(ve,K.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_overscale_factor:new e.Uniform1f(ve,K.u_overscale_factor)}},qr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_inv_matrix:new e.UniformMatrix4f(ve,K.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(ve,K.u_viewport_size)}},ba=function(ve,K,ye){var te=In(ye,1,K.zoom),xe=Math.pow(2,K.zoom-ye.tileID.overscaledZ),We=ye.tileID.overscaleFactor();return{u_matrix:ve,u_camera_to_center_distance:K.cameraToCenterDistance,u_pixels_to_tile_units:te,u_extrude_scale:[K.pixelsToGLUnits[0]/(te*xe),K.pixelsToGLUnits[1]/(te*xe)],u_overscale_factor:We}},Ka=function(ve,K,ye){return{u_matrix:ve,u_inv_matrix:K,u_camera_to_center_distance:ye.cameraToCenterDistance,u_viewport_size:[ye.width,ye.height]}},oi=function(ve,K){return{u_color:new e.UniformColor(ve,K.u_color),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_overlay:new e.Uniform1i(ve,K.u_overlay),u_overlay_scale:new e.Uniform1f(ve,K.u_overlay_scale)}},yi=function(ve,K,ye){return ye===void 0&&(ye=1),{u_matrix:ve,u_color:K,u_overlay:0,u_overlay_scale:ye}},ki=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},Bi=function(ve){return{u_matrix:ve}},li=function(ve,K){return{u_extrude_scale:new e.Uniform1f(ve,K.u_extrude_scale),u_intensity:new e.Uniform1f(ve,K.u_intensity),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},_i=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_color_ramp:new e.Uniform1i(ve,K.u_color_ramp),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},vi=function(ve,K,ye,te){return{u_matrix:ve,u_extrude_scale:In(K,1,ye),u_intensity:te}},ti=function(ve,K,ye,te){var xe=e.create();e.ortho(xe,0,ve.width,ve.height,0,0,1);var We=ve.context.gl;return{u_matrix:xe,u_world:[We.drawingBufferWidth,We.drawingBufferHeight],u_image:ye,u_color_ramp:te,u_opacity:K.paint.get("heatmap-opacity")}},rn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_latrange:new e.Uniform2f(ve,K.u_latrange),u_light:new e.Uniform2f(ve,K.u_light),u_shadow:new e.UniformColor(ve,K.u_shadow),u_highlight:new e.UniformColor(ve,K.u_highlight),u_accent:new e.UniformColor(ve,K.u_accent)}},Kn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_dimension:new e.Uniform2f(ve,K.u_dimension),u_zoom:new e.Uniform1f(ve,K.u_zoom),u_unpack:new e.Uniform4f(ve,K.u_unpack)}},Wn=function(ve,K,ye){var te=ye.paint.get("hillshade-shadow-color"),xe=ye.paint.get("hillshade-highlight-color"),We=ye.paint.get("hillshade-accent-color"),He=ye.paint.get("hillshade-illumination-direction")*(Math.PI/180);ye.paint.get("hillshade-illumination-anchor")==="viewport"&&(He-=ve.transform.angle);var st=!ve.options.moving;return{u_matrix:ve.transform.calculatePosMatrix(K.tileID.toUnwrapped(),st),u_image:0,u_latrange:no(ve,K.tileID),u_light:[ye.paint.get("hillshade-exaggeration"),He],u_shadow:te,u_highlight:xe,u_accent:We}},Jn=function(ve,K){var ye=K.stride,te=e.create();return e.ortho(te,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(te,te,[0,-e.EXTENT,0]),{u_matrix:te,u_image:1,u_dimension:[ye,ye],u_zoom:ve.overscaledZ,u_unpack:K.getUnpackVector()}};function no(ve,K){var ye=Math.pow(2,K.canonical.z),te=K.canonical.y;return[new e.MercatorCoordinate(0,te/ye).toLngLat().lat,new e.MercatorCoordinate(0,(te+1)/ye).toLngLat().lat]}var en=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels)}},Ri=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_image:new e.Uniform1i(ve,K.u_image),u_image_height:new e.Uniform1f(ve,K.u_image_height)}},co=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_image:new e.Uniform1i(ve,K.u_image),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Wo=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(ve,K.u_patternscale_a),u_patternscale_b:new e.Uniform2f(ve,K.u_patternscale_b),u_sdfgamma:new e.Uniform1f(ve,K.u_sdfgamma),u_image:new e.Uniform1i(ve,K.u_image),u_tex_y_a:new e.Uniform1f(ve,K.u_tex_y_a),u_tex_y_b:new e.Uniform1f(ve,K.u_tex_y_b),u_mix:new e.Uniform1f(ve,K.u_mix)}},bs=function(ve,K,ye){var te=ve.transform;return{u_matrix:Il(ve,K,ye),u_ratio:1/In(K,1,te.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/te.pixelsToGLUnits[0],1/te.pixelsToGLUnits[1]]}},Xs=function(ve,K,ye,te){return e.extend(bs(ve,K,ye),{u_image:0,u_image_height:te})},Ms=function(ve,K,ye,te){var xe=ve.transform,We=vs(K,xe);return{u_matrix:Il(ve,K,ye),u_texsize:K.imageAtlasTexture.size,u_ratio:1/In(K,1,xe.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[We,te.fromScale,te.toScale],u_fade:te.t,u_units_to_pixels:[1/xe.pixelsToGLUnits[0],1/xe.pixelsToGLUnits[1]]}},Hs=function(ve,K,ye,te,xe){var We=ve.transform,He=ve.lineAtlas,st=vs(K,We),Et=ye.layout.get("line-cap")==="round",Ht=He.getDash(te.from,Et),yr=He.getDash(te.to,Et),Ir=Ht.width*xe.fromScale,wr=yr.width*xe.toScale;return e.extend(bs(ve,K,ye),{u_patternscale_a:[st/Ir,-Ht.height/2],u_patternscale_b:[st/wr,-yr.height/2],u_sdfgamma:He.width/(Math.min(Ir,wr)*256*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:Ht.y,u_tex_y_b:yr.y,u_mix:xe.t})};function vs(ve,K){return 1/In(ve,1,K.tileZoom)}function Il(ve,K,ye){return ve.translatePosMatrix(K.tileID.posMatrix,K,ye.paint.get("line-translate"),ye.paint.get("line-translate-anchor"))}var fl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_tl_parent:new e.Uniform2f(ve,K.u_tl_parent),u_scale_parent:new e.Uniform1f(ve,K.u_scale_parent),u_buffer_scale:new e.Uniform1f(ve,K.u_buffer_scale),u_fade_t:new e.Uniform1f(ve,K.u_fade_t),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image0:new e.Uniform1i(ve,K.u_image0),u_image1:new e.Uniform1i(ve,K.u_image1),u_brightness_low:new e.Uniform1f(ve,K.u_brightness_low),u_brightness_high:new e.Uniform1f(ve,K.u_brightness_high),u_saturation_factor:new e.Uniform1f(ve,K.u_saturation_factor),u_contrast_factor:new e.Uniform1f(ve,K.u_contrast_factor),u_spin_weights:new e.Uniform3f(ve,K.u_spin_weights)}},tl=function(ve,K,ye,te,xe){return{u_matrix:ve,u_tl_parent:K,u_scale_parent:ye,u_buffer_scale:1,u_fade_t:te.mix,u_opacity:te.opacity*xe.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:xe.paint.get("raster-brightness-min"),u_brightness_high:xe.paint.get("raster-brightness-max"),u_saturation_factor:js(xe.paint.get("raster-saturation")),u_contrast_factor:Ao(xe.paint.get("raster-contrast")),u_spin_weights:Ln(xe.paint.get("raster-hue-rotate"))}};function Ln(ve){ve*=Math.PI/180;var K=Math.sin(ve),ye=Math.cos(ve);return[(2*ye+1)/3,(-Math.sqrt(3)*K-ye+1)/3,(Math.sqrt(3)*K-ye+1)/3]}function Ao(ve){return ve>0?1/(1-ve):1+ve}function js(ve){return ve>0?1-1/(1.001-ve):-ve}var Ts=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture)}},nu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},Pu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texsize_icon:new e.Uniform2f(ve,K.u_texsize_icon),u_texture:new e.Uniform1i(ve,K.u_texture),u_texture_icon:new e.Uniform1i(ve,K.u_texture_icon),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},ec=function(ve,K,ye,te,xe,We,He,st,Et,Ht){var yr=xe.transform;return{u_is_size_zoom_constant:+(ve==="constant"||ve==="source"),u_is_size_feature_constant:+(ve==="constant"||ve==="camera"),u_size_t:K?K.uSizeT:0,u_size:K?K.uSize:0,u_camera_to_center_distance:yr.cameraToCenterDistance,u_pitch:yr.pitch/360*2*Math.PI,u_rotate_symbol:+ye,u_aspect_ratio:yr.width/yr.height,u_fade_change:xe.options.fadeDuration?xe.symbolFadeChange:1,u_matrix:We,u_label_plane_matrix:He,u_coord_matrix:st,u_is_text:+Et,u_pitch_with_map:+te,u_texsize:Ht,u_texture:0}},tf=function(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=xe.transform;return e.extend(ec(ve,K,ye,te,xe,We,He,st,Et,Ht),{u_gamma_scale:te?Math.cos(Ir._pitch)*Ir.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+yr})},yu=function(ve,K,ye,te,xe,We,He,st,Et,Ht){return e.extend(tf(ve,K,ye,te,xe,We,He,st,!0,Et,!0),{u_texsize_icon:Ht,u_texture_icon:1})},Bc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_color:new e.UniformColor(ve,K.u_color)}},Iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image:new e.Uniform1i(ve,K.u_image),u_pattern_tl_a:new e.Uniform2f(ve,K.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(ve,K.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(ve,K.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(ve,K.u_pattern_br_b),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_mix:new e.Uniform1f(ve,K.u_mix),u_pattern_size_a:new e.Uniform2f(ve,K.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(ve,K.u_pattern_size_b),u_scale_a:new e.Uniform1f(ve,K.u_scale_a),u_scale_b:new e.Uniform1f(ve,K.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(ve,K.u_tile_units_to_pixels)}},Ac=function(ve,K,ye){return{u_matrix:ve,u_opacity:K,u_color:ye}},ro=function(ve,K,ye,te,xe,We){return e.extend(Qc(te,We,ye,xe),{u_matrix:ve,u_opacity:K})},Po={fillExtrusion:$f,fillExtrusionPattern:Vl,fill:Tc,fillPattern:cc,fillOutline:Cl,fillOutlinePattern:iu,circle:Zt,collisionBox:Yr,collisionCircle:qr,debug:oi,clippingMask:ki,heatmap:li,heatmapTexture:_i,hillshade:rn,hillshadePrepare:Kn,line:en,lineGradient:Ri,linePattern:co,lineSDF:Wo,raster:fl,symbolIcon:Ts,symbolSDF:nu,symbolTextAndIcon:Pu,background:Bc,backgroundPattern:Iu},Nc;function hc(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ve.useProgram("collisionBox"),yr=[],Ir=0,wr=0,qt=0;qt<te.length;qt++){var tr=te[qt],dr=K.getTile(tr),Pr=dr.getBucket(ye);if(Pr){var Vr=tr.posMatrix;(xe[0]!==0||xe[1]!==0)&&(Vr=ve.translatePosMatrix(tr.posMatrix,dr,xe,We));var Hr=He?Pr.textCollisionBox:Pr.iconCollisionBox,aa=Pr.collisionCircleArray;if(aa.length>0){var Qr=e.create(),Gr=Vr;e.mul(Qr,Pr.placementInvProjMatrix,ve.transform.glCoordMatrix),e.mul(Qr,Qr,Pr.placementViewportMatrix),yr.push({circleArray:aa,circleOffset:wr,transform:Gr,invTransform:Qr}),Ir+=aa.length/4,wr=Ir}Hr&&Ht.draw(st,Et.LINES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ba(Vr,ve.transform,dr),ye.id,Hr.layoutVertexBuffer,Hr.indexBuffer,Hr.segments,null,ve.transform.zoom,null,null,Hr.collisionVertexBuffer)}}if(!(!He||!yr.length)){var ia=ve.useProgram("collisionCircle"),Ur=new e.StructArrayLayout2f1f2i16;Ur.resize(Ir*4),Ur._trim();for(var wa=0,Oa=0,ri=yr;Oa<ri.length;Oa+=1)for(var Pi=ri[Oa],mi=0;mi<Pi.circleArray.length/4;mi++){var Di=mi*4,An=Pi.circleArray[Di+0],ln=Pi.circleArray[Di+1],Ii=Pi.circleArray[Di+2],Wi=Pi.circleArray[Di+3];Ur.emplace(wa++,An,ln,Ii,Wi,0),Ur.emplace(wa++,An,ln,Ii,Wi,1),Ur.emplace(wa++,An,ln,Ii,Wi,2),Ur.emplace(wa++,An,ln,Ii,Wi,3)}(!Nc||Nc.length<Ir*2)&&(Nc=pc(Ir));for(var Hi=st.createIndexBuffer(Nc,!0),yn=st.createVertexBuffer(Ur,e.collisionCircleLayout.members,!0),zn=0,ms=yr;zn<ms.length;zn+=1){var us=ms[zn],Vs=Ka(us.transform,us.invTransform,ve.transform);ia.draw(st,Et.TRIANGLES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,Vs,ye.id,yn,Hi,e.SegmentVector.simpleSegment(0,us.circleOffset*2,us.circleArray.length,us.circleArray.length/2),null,ve.transform.zoom,null,null,null)}yn.destroy(),Hi.destroy()}}function pc(ve){var K=ve*2,ye=new e.StructArrayLayout3ui6;ye.resize(K),ye._trim();for(var te=0;te<K;te++){var xe=te*6;ye.uint16[xe+0]=te*4+0,ye.uint16[xe+1]=te*4+1,ye.uint16[xe+2]=te*4+2,ye.uint16[xe+3]=te*4+2,ye.uint16[xe+4]=te*4+3,ye.uint16[xe+5]=te*4+0}return ye}var Oe=e.identity(new Float32Array(16));function R(ve,K,ye,te,xe){if(ve.renderPass==="translucent"){var We=Ma.disabled,He=ve.colorModeForRenderPass(),st=ye.layout.get("text-variable-anchor");st&&we(te,ve,ye,K,ye.layout.get("text-rotation-alignment"),ye.layout.get("text-pitch-alignment"),xe),ye.paint.get("icon-opacity").constantOr(1)!==0&&ft(ve,K,ye,te,!1,ye.paint.get("icon-translate"),ye.paint.get("icon-translate-anchor"),ye.layout.get("icon-rotation-alignment"),ye.layout.get("icon-pitch-alignment"),ye.layout.get("icon-keep-upright"),We,He),ye.paint.get("text-opacity").constantOr(1)!==0&&ft(ve,K,ye,te,!0,ye.paint.get("text-translate"),ye.paint.get("text-translate-anchor"),ye.layout.get("text-rotation-alignment"),ye.layout.get("text-pitch-alignment"),ye.layout.get("text-keep-upright"),We,He),K.map.showCollisionBoxes&&(hc(ve,K,ye,te,ye.paint.get("text-translate"),ye.paint.get("text-translate-anchor"),!0),hc(ve,K,ye,te,ye.paint.get("icon-translate"),ye.paint.get("icon-translate-anchor"),!1))}}function ae(ve,K,ye,te,xe,We){var He=e.getAnchorAlignment(ve),st=He.horizontalAlign,Et=He.verticalAlign,Ht=-(st-.5)*K,yr=-(Et-.5)*ye,Ir=e.evaluateVariableOffset(ve,te);return new e.Point((Ht/xe+Ir[0])*We,(yr/xe+Ir[1])*We)}function we(ve,K,ye,te,xe,We,He){for(var st=K.transform,Et=xe==="map",Ht=We==="map",yr=0,Ir=ve;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=te.getTile(wr),tr=qt.getBucket(ye);if(!(!tr||!tr.text||!tr.text.segments.get().length)){var dr=tr.textSizeData,Pr=e.evaluateSizeForZoom(dr,st.zoom),Vr=In(qt,1,K.transform.zoom),Hr=Sa(wr.posMatrix,Ht,Et,K.transform,Vr),aa=ye.layout.get("icon-text-fit")!=="none"&&tr.hasIconData();if(Pr){var Qr=Math.pow(2,st.zoom-qt.tileID.overscaledZ);Se(tr,Et,Ht,He,e.symbolSize,st,Hr,wr.posMatrix,Qr,Pr,aa)}}}}function Se(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=ve.text.placedSymbolArray,wr=ve.text.dynamicLayoutVertexArray,qt=ve.icon.dynamicLayoutVertexArray,tr={};wr.clear();for(var dr=0;dr<Ir.length;dr++){var Pr=Ir.get(dr),Vr=ve.allowVerticalPlacement&&!Pr.placedOrientation,Hr=!Pr.hidden&&Pr.crossTileID&&!Vr?te[Pr.crossTileID]:null;if(!Hr)zo(Pr.numGlyphs,wr);else{var aa=new e.Point(Pr.anchorX,Pr.anchorY),Qr=ai(aa,ye?st:He),Gr=an(We.cameraToCenterDistance,Qr.signedDistanceFromCamera),ia=xe.evaluateSizeForFeature(ve.textSizeData,Ht,Pr)*Gr/e.ONE_EM;ye&&(ia*=ve.tilePixelRatio/Et);for(var Ur=Hr.width,wa=Hr.height,Oa=Hr.anchor,ri=Hr.textOffset,Pi=Hr.textBoxScale,mi=ae(Oa,Ur,wa,ri,Pi,ia),Di=ye?ai(aa.add(mi),He).point:Qr.point.add(K?mi.rotate(-We.angle):mi),An=ve.allowVerticalPlacement&&Pr.placedOrientation===e.WritingMode.vertical?Math.PI/2:0,ln=0;ln<Pr.numGlyphs;ln++)e.addDynamicAttributes(wr,Di,An);yr&&Pr.associatedIconIndex>=0&&(tr[Pr.associatedIconIndex]={shiftedAnchor:Di,angle:An})}}if(yr){qt.clear();for(var Ii=ve.icon.placedSymbolArray,Wi=0;Wi<Ii.length;Wi++){var Hi=Ii.get(Wi);if(Hi.hidden)zo(Hi.numGlyphs,qt);else{var yn=tr[Wi];if(!yn)zo(Hi.numGlyphs,qt);else for(var zn=0;zn<Hi.numGlyphs;zn++)e.addDynamicAttributes(qt,yn.shiftedAnchor,yn.angle)}}ve.icon.dynamicLayoutVertexBuffer.updateData(qt)}ve.text.dynamicLayoutVertexBuffer.updateData(wr)}function De(ve,K,ye){return ye.iconsInText&&K?"symbolTextAndIcon":ve?"symbolSDF":"symbolIcon"}function ft(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir){for(var wr=ve.context,qt=wr.gl,tr=ve.transform,dr=st==="map",Pr=Et==="map",Vr=dr&&ye.layout.get("symbol-placement")!=="point",Hr=dr&&!Pr&&!Vr,aa=ye.layout.get("symbol-sort-key").constantOr(1)!==void 0,Qr=!1,Gr=ve.depthModeForSublayer(0,La.ReadOnly),ia=ye.layout.get("text-variable-anchor"),Ur=[],wa=0,Oa=te;wa<Oa.length;wa+=1){var ri=Oa[wa],Pi=K.getTile(ri),mi=Pi.getBucket(ye);if(mi){var Di=xe?mi.text:mi.icon;if(!(!Di||!Di.segments.get().length)){var An=Di.programConfigurations.get(ye.id),ln=xe||mi.sdfIcons,Ii=xe?mi.textSizeData:mi.iconSizeData,Wi=Pr||tr.pitch!==0,Hi=ve.useProgram(De(ln,xe,mi),An),yn=e.evaluateSizeForZoom(Ii,tr.zoom),zn=void 0,ms=[0,0],us=void 0,Vs=void 0,qo=null,Ls=void 0;if(xe){if(us=Pi.glyphAtlasTexture,Vs=qt.LINEAR,zn=Pi.glyphAtlasTexture.size,mi.iconsInText){ms=Pi.imageAtlasTexture.size,qo=Pi.imageAtlasTexture;var wl=Ii.kind==="composite"||Ii.kind==="camera";Ls=Wi||ve.options.rotating||ve.options.zooming||wl?qt.LINEAR:qt.NEAREST}}else{var Ru=ye.layout.get("icon-size").constantOr(0)!==1||mi.iconsNeedLinear;us=Pi.imageAtlasTexture,Vs=ln||ve.options.rotating||ve.options.zooming||Ru||Wi?qt.LINEAR:qt.NEAREST,zn=Pi.imageAtlasTexture.size}var Ap=In(Pi,1,ve.transform.zoom),Sp=Sa(ri.posMatrix,Pr,dr,ve.transform,Ap),Eh=Ti(ri.posMatrix,Pr,dr,ve.transform,Ap),Vp=ia&&mi.hasTextData(),Vd=ye.layout.get("icon-text-fit")!=="none"&&Vp&&mi.hasIconData();Vr&&Mn(mi,ri.posMatrix,ve,xe,Sp,Eh,Pr,Ht);var td=ve.translatePosMatrix(ri.posMatrix,Pi,We,He),kh=Vr||xe&&ia||Vd?Oe:Sp,rd=ve.translatePosMatrix(Eh,Pi,We,He,!0),Xh=ln&&ye.paint.get(xe?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ch=void 0;ln?mi.iconsInText?Ch=yu(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,zn,ms):Ch=tf(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,xe,zn,!0):Ch=ec(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,xe,zn);var Mp={program:Hi,buffers:Di,uniformValues:Ch,atlasTexture:us,atlasTextureIcon:qo,atlasInterpolation:Vs,atlasInterpolationIcon:Ls,isSDF:ln,hasHalo:Xh};if(aa&&mi.canOverlap){Qr=!0;for(var qp=Di.segments.get(),Ep=0,Cv=qp;Ep<Cv.length;Ep+=1){var qd=Cv[Ep];Ur.push({segments:new e.SegmentVector([qd]),sortKey:qd.sortKey,state:Mp})}}else Ur.push({segments:Di.segments,sortKey:0,state:Mp})}}}Qr&&Ur.sort(function(im,nm){return im.sortKey-nm.sortKey});for(var Sf=0,Hd=Ur;Sf<Hd.length;Sf+=1){var Lv=Hd[Sf],eh=Lv.state;if(wr.activeTexture.set(qt.TEXTURE0),eh.atlasTexture.bind(eh.atlasInterpolation,qt.CLAMP_TO_EDGE),eh.atlasTextureIcon&&(wr.activeTexture.set(qt.TEXTURE1),eh.atlasTextureIcon&&eh.atlasTextureIcon.bind(eh.atlasInterpolationIcon,qt.CLAMP_TO_EDGE)),eh.isSDF){var iv=eh.uniformValues;eh.hasHalo&&(iv.u_is_halo=1,bt(eh.buffers,Lv.segments,ye,ve,eh.program,Gr,yr,Ir,iv)),iv.u_is_halo=0}bt(eh.buffers,Lv.segments,ye,ve,eh.program,Gr,yr,Ir,eh.uniformValues)}}function bt(ve,K,ye,te,xe,We,He,st,Et){var Ht=te.context,yr=Ht.gl;xe.draw(Ht,yr.TRIANGLES,We,He,st,xr.disabled,Et,ye.id,ve.layoutVertexBuffer,ve.indexBuffer,K,ye.paint,te.transform.zoom,ve.programConfigurations.get(ye.id),ve.dynamicLayoutVertexBuffer,ve.opacityVertexBuffer)}function Dt(ve,K,ye,te){if(ve.renderPass==="translucent"){var xe=ye.paint.get("circle-opacity"),We=ye.paint.get("circle-stroke-width"),He=ye.paint.get("circle-stroke-opacity"),st=ye.layout.get("circle-sort-key").constantOr(1)!==void 0;if(!(xe.constantOr(1)===0&&(We.constantOr(1)===0||He.constantOr(1)===0))){for(var Et=ve.context,Ht=Et.gl,yr=ve.depthModeForSublayer(0,La.ReadOnly),Ir=Ma.disabled,wr=ve.colorModeForRenderPass(),qt=[],tr=0;tr<te.length;tr++){var dr=te[tr],Pr=K.getTile(dr),Vr=Pr.getBucket(ye);if(Vr){var Hr=Vr.programConfigurations.get(ye.id),aa=ve.useProgram("circle",Hr),Qr=Vr.layoutVertexBuffer,Gr=Vr.indexBuffer,ia=fr(ve,dr,Pr,ye),Ur={programConfiguration:Hr,program:aa,layoutVertexBuffer:Qr,indexBuffer:Gr,uniformValues:ia};if(st)for(var wa=Vr.segments.get(),Oa=0,ri=wa;Oa<ri.length;Oa+=1){var Pi=ri[Oa];qt.push({segments:new e.SegmentVector([Pi]),sortKey:Pi.sortKey,state:Ur})}else qt.push({segments:Vr.segments,sortKey:0,state:Ur})}}st&&qt.sort(function(us,Vs){return us.sortKey-Vs.sortKey});for(var mi=0,Di=qt;mi<Di.length;mi+=1){var An=Di[mi],ln=An.state,Ii=ln.programConfiguration,Wi=ln.program,Hi=ln.layoutVertexBuffer,yn=ln.indexBuffer,zn=ln.uniformValues,ms=An.segments;Wi.draw(Et,Ht.TRIANGLES,yr,Ir,wr,xr.disabled,zn,ye.id,Hi,yn,ms,ye.paint,ve.transform.zoom,Ii)}}}}function Yt(ve,K,ye,te){if(ye.paint.get("heatmap-opacity")!==0)if(ve.renderPass==="offscreen"){var xe=ve.context,We=xe.gl,He=Ma.disabled,st=new zt([We.ONE,We.ONE],e.Color.transparent,[!0,!0,!0,!0]);cr(xe,ve,ye),xe.clear({color:e.Color.transparent});for(var Et=0;Et<te.length;Et++){var Ht=te[Et];if(!K.hasRenderableParent(Ht)){var yr=K.getTile(Ht),Ir=yr.getBucket(ye);if(Ir){var wr=Ir.programConfigurations.get(ye.id),qt=ve.useProgram("heatmap",wr),tr=ve.transform,dr=tr.zoom;qt.draw(xe,We.TRIANGLES,La.disabled,He,st,xr.disabled,vi(Ht.posMatrix,yr,dr,ye.paint.get("heatmap-intensity")),ye.id,Ir.layoutVertexBuffer,Ir.indexBuffer,Ir.segments,ye.paint,ve.transform.zoom,wr)}}}xe.viewport.set([0,0,ve.width,ve.height])}else ve.renderPass==="translucent"&&(ve.context.setColorMode(ve.colorModeForRenderPass()),jr(ve,ye))}function cr(ve,K,ye){var te=ve.gl;ve.activeTexture.set(te.TEXTURE1),ve.viewport.set([0,0,K.width/4,K.height/4]);var xe=ye.heatmapFbo;if(xe)te.bindTexture(te.TEXTURE_2D,xe.colorAttachment.get()),ve.bindFramebuffer.set(xe.framebuffer);else{var We=te.createTexture();te.bindTexture(te.TEXTURE_2D,We),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_WRAP_S,te.CLAMP_TO_EDGE),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_WRAP_T,te.CLAMP_TO_EDGE),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_MIN_FILTER,te.LINEAR),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_MAG_FILTER,te.LINEAR),xe=ye.heatmapFbo=ve.createFramebuffer(K.width/4,K.height/4,!1),hr(ve,K,We,xe)}}function hr(ve,K,ye,te){var xe=ve.gl,We=ve.extRenderToTextureHalfFloat?ve.extTextureHalfFloat.HALF_FLOAT_OES:xe.UNSIGNED_BYTE;xe.texImage2D(xe.TEXTURE_2D,0,xe.RGBA,K.width/4,K.height/4,0,xe.RGBA,We,null),te.colorAttachment.set(ye)}function jr(ve,K){var ye=ve.context,te=ye.gl,xe=K.heatmapFbo;if(xe){ye.activeTexture.set(te.TEXTURE0),te.bindTexture(te.TEXTURE_2D,xe.colorAttachment.get()),ye.activeTexture.set(te.TEXTURE1);var We=K.colorRampTexture;We||(We=K.colorRampTexture=new e.Texture(ye,K.colorRamp,te.RGBA)),We.bind(te.LINEAR,te.CLAMP_TO_EDGE),ve.useProgram("heatmapTexture").draw(ye,te.TRIANGLES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ti(ve,K,0,1),K.id,ve.viewportBuffer,ve.quadTriangleIndexBuffer,ve.viewportSegments,K.paint,ve.transform.zoom)}}function ea(ve,K,ye,te){if(ve.renderPass==="translucent"){var xe=ye.paint.get("line-opacity"),We=ye.paint.get("line-width");if(!(xe.constantOr(1)===0||We.constantOr(1)===0))for(var He=ve.depthModeForSublayer(0,La.ReadOnly),st=ve.colorModeForRenderPass(),Et=ye.paint.get("line-dasharray"),Ht=ye.paint.get("line-pattern"),yr=Ht.constantOr(1),Ir=ye.paint.get("line-gradient"),wr=ye.getCrossfadeParameters(),qt=yr?"linePattern":Et?"lineSDF":Ir?"lineGradient":"line",tr=ve.context,dr=tr.gl,Pr=!0,Vr=0,Hr=te;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=K.getTile(aa);if(!(yr&&!Qr.patternsLoaded())){var Gr=Qr.getBucket(ye);if(Gr){var ia=Gr.programConfigurations.get(ye.id),Ur=ve.context.program.get(),wa=ve.useProgram(qt,ia),Oa=Pr||wa.program!==Ur,ri=Ht.constantOr(null);if(ri&&Qr.imageAtlas){var Pi=Qr.imageAtlas,mi=Pi.patternPositions[ri.to.toString()],Di=Pi.patternPositions[ri.from.toString()];mi&&Di&&ia.setConstantPatternPositions(mi,Di)}var An=yr?Ms(ve,Qr,ye,wr):Et?Hs(ve,Qr,ye,Et,wr):Ir?Xs(ve,Qr,ye,Gr.lineClipsArray.length):bs(ve,Qr,ye);if(yr)tr.activeTexture.set(dr.TEXTURE0),Qr.imageAtlasTexture.bind(dr.LINEAR,dr.CLAMP_TO_EDGE),ia.updatePaintBuffers(wr);else if(Et&&(Oa||ve.lineAtlas.dirty))tr.activeTexture.set(dr.TEXTURE0),ve.lineAtlas.bind(tr);else if(Ir){var ln=Gr.gradients[ye.id],Ii=ln.texture;if(ye.gradientVersion!==ln.version){var Wi=256;if(ye.stepInterpolant){var Hi=K.getSource().maxzoom,yn=aa.canonical.z===Hi?Math.ceil(1<<ve.transform.maxZoom-aa.canonical.z):1,zn=Gr.maxLineLength/e.EXTENT,ms=1024,us=zn*ms*yn;Wi=e.clamp(e.nextPowerOfTwo(us),256,tr.maxTextureSize)}ln.gradient=e.renderColorRamp({expression:ye.gradientExpression(),evaluationKey:"lineProgress",resolution:Wi,image:ln.gradient||void 0,clips:Gr.lineClipsArray}),ln.texture?ln.texture.update(ln.gradient):ln.texture=new e.Texture(tr,ln.gradient,dr.RGBA),ln.version=ye.gradientVersion,Ii=ln.texture}tr.activeTexture.set(dr.TEXTURE0),Ii.bind(ye.stepInterpolant?dr.NEAREST:dr.LINEAR,dr.CLAMP_TO_EDGE)}wa.draw(tr,dr.TRIANGLES,He,ve.stencilModeForClipping(aa),st,xr.disabled,An,ye.id,Gr.layoutVertexBuffer,Gr.indexBuffer,Gr.segments,ye.paint,ve.transform.zoom,ia,Gr.layoutVertexBuffer2),Pr=!1}}}}}function qe(ve,K,ye,te){var xe=ye.paint.get("fill-color"),We=ye.paint.get("fill-opacity");if(We.constantOr(1)!==0){var He=ve.colorModeForRenderPass(),st=ye.paint.get("fill-pattern"),Et=ve.opaquePassEnabledForLayer()&&!st.constantOr(1)&&xe.constantOr(e.Color.transparent).a===1&&We.constantOr(0)===1?"opaque":"translucent";if(ve.renderPass===Et){var Ht=ve.depthModeForSublayer(1,ve.renderPass==="opaque"?La.ReadWrite:La.ReadOnly);Je(ve,K,ye,te,Ht,He,!1)}if(ve.renderPass==="translucent"&&ye.paint.get("fill-antialias")){var yr=ve.depthModeForSublayer(ye.getPaintProperty("fill-outline-color")?2:0,La.ReadOnly);Je(ve,K,ye,te,yr,He,!0)}}}function Je(ve,K,ye,te,xe,We,He){var st=ve.context.gl,Et=ye.paint.get("fill-pattern"),Ht=Et&&Et.constantOr(1),yr=ye.getCrossfadeParameters(),Ir,wr,qt,tr,dr;He?(wr=Ht&&!ye.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",Ir=st.LINES):(wr=Ht?"fillPattern":"fill",Ir=st.TRIANGLES);for(var Pr=0,Vr=te;Pr<Vr.length;Pr+=1){var Hr=Vr[Pr],aa=K.getTile(Hr);if(!(Ht&&!aa.patternsLoaded())){var Qr=aa.getBucket(ye);if(Qr){var Gr=Qr.programConfigurations.get(ye.id),ia=ve.useProgram(wr,Gr);Ht&&(ve.context.activeTexture.set(st.TEXTURE0),aa.imageAtlasTexture.bind(st.LINEAR,st.CLAMP_TO_EDGE),Gr.updatePaintBuffers(yr));var Ur=Et.constantOr(null);if(Ur&&aa.imageAtlas){var wa=aa.imageAtlas,Oa=wa.patternPositions[Ur.to.toString()],ri=wa.patternPositions[Ur.from.toString()];Oa&&ri&&Gr.setConstantPatternPositions(Oa,ri)}var Pi=ve.translatePosMatrix(Hr.posMatrix,aa,ye.paint.get("fill-translate"),ye.paint.get("fill-translate-anchor"));if(!He)tr=Qr.indexBuffer,dr=Qr.segments,qt=Ht?Oc(Pi,ve,yr,aa):fc(Pi);else{tr=Qr.indexBuffer2,dr=Qr.segments2;var mi=[st.drawingBufferWidth,st.drawingBufferHeight];qt=wr==="fillOutlinePattern"&&Ht?ef(Pi,ve,yr,aa,mi):Qu(Pi,mi)}ia.draw(ve.context,Ir,xe,ve.stencilModeForClipping(Hr),We,xr.disabled,qt,ye.id,Qr.layoutVertexBuffer,tr,dr,ye.paint,ve.transform.zoom,Gr)}}}}function ot(ve,K,ye,te){var xe=ye.paint.get("fill-extrusion-opacity");if(xe!==0&&ve.renderPass==="translucent"){var We=new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D);if(xe===1&&!ye.paint.get("fill-extrusion-pattern").constantOr(1)){var He=ve.colorModeForRenderPass();ht(ve,K,ye,te,We,Ma.disabled,He)}else ht(ve,K,ye,te,We,Ma.disabled,zt.disabled),ht(ve,K,ye,te,We,ve.stencilModeFor3D(),ve.colorModeForRenderPass())}}function ht(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ye.paint.get("fill-extrusion-pattern"),yr=Ht.constantOr(1),Ir=ye.getCrossfadeParameters(),wr=ye.paint.get("fill-extrusion-opacity"),qt=0,tr=te;qt<tr.length;qt+=1){var dr=tr[qt],Pr=K.getTile(dr),Vr=Pr.getBucket(ye);if(Vr){var Hr=Vr.programConfigurations.get(ye.id),aa=ve.useProgram(yr?"fillExtrusionPattern":"fillExtrusion",Hr);yr&&(ve.context.activeTexture.set(Et.TEXTURE0),Pr.imageAtlasTexture.bind(Et.LINEAR,Et.CLAMP_TO_EDGE),Hr.updatePaintBuffers(Ir));var Qr=Ht.constantOr(null);if(Qr&&Pr.imageAtlas){var Gr=Pr.imageAtlas,ia=Gr.patternPositions[Qr.to.toString()],Ur=Gr.patternPositions[Qr.from.toString()];ia&&Ur&&Hr.setConstantPatternPositions(ia,Ur)}var wa=ve.translatePosMatrix(dr.posMatrix,Pr,ye.paint.get("fill-extrusion-translate"),ye.paint.get("fill-extrusion-translate-anchor")),Oa=ye.paint.get("fill-extrusion-vertical-gradient"),ri=yr?Vu(wa,ve,Oa,wr,dr,Ir,Pr):Qf(wa,ve,Oa,wr);aa.draw(st,st.gl.TRIANGLES,xe,We,He,xr.backCCW,ri,ye.id,Vr.layoutVertexBuffer,Vr.indexBuffer,Vr.segments,ye.paint,ve.transform.zoom,Hr)}}}function At(ve,K,ye,te){if(!(ve.renderPass!=="offscreen"&&ve.renderPass!=="translucent")){for(var xe=ve.context,We=ve.depthModeForSublayer(0,La.ReadOnly),He=ve.colorModeForRenderPass(),st=ve.renderPass==="translucent"?ve.stencilConfigForOverlap(te):[{},te],Et=st[0],Ht=st[1],yr=0,Ir=Ht;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=K.getTile(wr);qt.needsHillshadePrepare&&ve.renderPass==="offscreen"?Pt(ve,qt,ye,We,Ma.disabled,He):ve.renderPass==="translucent"&&_t(ve,qt,ye,We,Et[wr.overscaledZ],He)}xe.viewport.set([0,0,ve.width,ve.height])}}function _t(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl,Et=K.fbo;if(Et){var Ht=ve.useProgram("hillshade");He.activeTexture.set(st.TEXTURE0),st.bindTexture(st.TEXTURE_2D,Et.colorAttachment.get());var yr=Wn(ve,K,ye);Ht.draw(He,st.TRIANGLES,te,xe,We,xr.disabled,yr,ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments)}}function Pt(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl,Et=K.dem;if(Et&&Et.data){var Ht=Et.dim,yr=Et.stride,Ir=Et.getPixels();if(He.activeTexture.set(st.TEXTURE1),He.pixelStoreUnpackPremultiplyAlpha.set(!1),K.demTexture=K.demTexture||ve.getTileTexture(yr),K.demTexture){var wr=K.demTexture;wr.update(Ir,{premultiply:!1}),wr.bind(st.NEAREST,st.CLAMP_TO_EDGE)}else K.demTexture=new e.Texture(He,Ir,st.RGBA,{premultiply:!1}),K.demTexture.bind(st.NEAREST,st.CLAMP_TO_EDGE);He.activeTexture.set(st.TEXTURE0);var qt=K.fbo;if(!qt){var tr=new e.Texture(He,{width:Ht,height:Ht,data:null},st.RGBA);tr.bind(st.LINEAR,st.CLAMP_TO_EDGE),qt=K.fbo=He.createFramebuffer(Ht,Ht,!0),qt.colorAttachment.set(tr.texture)}He.bindFramebuffer.set(qt.framebuffer),He.viewport.set([0,0,Ht,Ht]),ve.useProgram("hillshadePrepare").draw(He,st.TRIANGLES,te,xe,We,xr.disabled,Jn(K.tileID,Et),ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments),K.needsHillshadePrepare=!1}}function er(ve,K,ye,te){if(ve.renderPass==="translucent"&&ye.paint.get("raster-opacity")!==0&&te.length)for(var xe=ve.context,We=xe.gl,He=K.getSource(),st=ve.useProgram("raster"),Et=ve.colorModeForRenderPass(),Ht=He instanceof se?[{},te]:ve.stencilConfigForOverlap(te),yr=Ht[0],Ir=Ht[1],wr=Ir[Ir.length-1].overscaledZ,qt=!ve.options.moving,tr=0,dr=Ir;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=ve.depthModeForSublayer(Pr.overscaledZ-wr,ye.paint.get("raster-opacity")===1?La.ReadWrite:La.ReadOnly,We.LESS),Hr=K.getTile(Pr),aa=ve.transform.calculatePosMatrix(Pr.toUnwrapped(),qt);Hr.registerFadeDuration(ye.paint.get("raster-fade-duration"));var Qr=K.findLoadedParent(Pr,0),Gr=nr(Hr,Qr,K,ye,ve.transform),ia=void 0,Ur=void 0,wa=ye.paint.get("raster-resampling")==="nearest"?We.NEAREST:We.LINEAR;xe.activeTexture.set(We.TEXTURE0),Hr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST),xe.activeTexture.set(We.TEXTURE1),Qr?(Qr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST),ia=Math.pow(2,Qr.tileID.overscaledZ-Hr.tileID.overscaledZ),Ur=[Hr.tileID.canonical.x*ia%1,Hr.tileID.canonical.y*ia%1]):Hr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST);var Oa=tl(aa,Ur||[0,0],ia||1,Gr,ye);He instanceof se?st.draw(xe,We.TRIANGLES,Vr,Ma.disabled,Et,xr.disabled,Oa,ye.id,He.boundsBuffer,ve.quadTriangleIndexBuffer,He.boundsSegments):st.draw(xe,We.TRIANGLES,Vr,yr[Pr.overscaledZ],Et,xr.disabled,Oa,ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments)}}function nr(ve,K,ye,te,xe){var We=te.paint.get("raster-fade-duration");if(We>0){var He=e.browser.now(),st=(He-ve.timeAdded)/We,Et=K?(He-K.timeAdded)/We:-1,Ht=ye.getSource(),yr=xe.coveringZoomLevel({tileSize:Ht.tileSize,roundZoom:Ht.roundZoom}),Ir=!K||Math.abs(K.tileID.overscaledZ-yr)>Math.abs(ve.tileID.overscaledZ-yr),wr=Ir&&ve.refreshedUponExpiration?1:e.clamp(Ir?st:1-Et,0,1);return ve.refreshedUponExpiration&&st>=1&&(ve.refreshedUponExpiration=!1),K?{opacity:1,mix:1-wr}:{opacity:wr,mix:0}}else return{opacity:1,mix:0}}function pr(ve,K,ye){var te=ye.paint.get("background-color"),xe=ye.paint.get("background-opacity");if(xe!==0){var We=ve.context,He=We.gl,st=ve.transform,Et=st.tileSize,Ht=ye.paint.get("background-pattern");if(!ve.isPatternMissing(Ht)){var yr=!Ht&&te.a===1&&xe===1&&ve.opaquePassEnabledForLayer()?"opaque":"translucent";if(ve.renderPass===yr){var Ir=Ma.disabled,wr=ve.depthModeForSublayer(0,yr==="opaque"?La.ReadWrite:La.ReadOnly),qt=ve.colorModeForRenderPass(),tr=ve.useProgram(Ht?"backgroundPattern":"background"),dr=st.coveringTiles({tileSize:Et});Ht&&(We.activeTexture.set(He.TEXTURE0),ve.imageManager.bind(ve.context));for(var Pr=ye.getCrossfadeParameters(),Vr=0,Hr=dr;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=ve.transform.calculatePosMatrix(aa.toUnwrapped()),Gr=Ht?ro(Qr,xe,ve,Ht,{tileID:aa,tileSize:Et},Pr):Ac(Qr,xe,te);tr.draw(We,He.TRIANGLES,wr,Ir,qt,xr.disabled,Gr,ye.id,ve.tileExtentBuffer,ve.quadTriangleIndexBuffer,ve.tileExtentSegments)}}}}}var Sr=new e.Color(1,0,0,1),Wr=new e.Color(0,1,0,1),ha=new e.Color(0,0,1,1),ga=new e.Color(1,0,1,1),Pa=new e.Color(0,1,1,1);function Ja(ve){var K=ve.transform.padding,ye=3;pi(ve,ve.transform.height-(K.top||0),ye,Sr),pi(ve,K.bottom||0,ye,Wr),Ci(ve,K.left||0,ye,ha),Ci(ve,ve.transform.width-(K.right||0),ye,ga);var te=ve.transform.centerPoint;di(ve,te.x,ve.transform.height-te.y,Pa)}function di(ve,K,ye,te){var xe=20,We=2;$i(ve,K-We/2,ye-xe/2,We,xe,te),$i(ve,K-xe/2,ye-We/2,xe,We,te)}function pi(ve,K,ye,te){$i(ve,0,K+ye/2,ve.transform.width,ye,te)}function Ci(ve,K,ye,te){$i(ve,K-ye/2,0,ye,ve.transform.height,te)}function $i(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl;st.enable(st.SCISSOR_TEST),st.scissor(K*e.browser.devicePixelRatio,ye*e.browser.devicePixelRatio,te*e.browser.devicePixelRatio,xe*e.browser.devicePixelRatio),He.clear({color:We}),st.disable(st.SCISSOR_TEST)}function Bn(ve,K,ye){for(var te=0;te<ye.length;te++)Sn(ve,K,ye[te])}function Sn(ve,K,ye){var te=ve.context,xe=te.gl,We=ye.posMatrix,He=ve.useProgram("debug"),st=La.disabled,Et=Ma.disabled,Ht=ve.colorModeForRenderPass(),yr="$debug";te.activeTexture.set(xe.TEXTURE0),ve.emptyTexture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),He.draw(te,xe.LINE_STRIP,st,Et,Ht,xr.disabled,yi(We,e.Color.red),yr,ve.debugBuffer,ve.tileBorderIndexBuffer,ve.debugSegments);var Ir=K.getTileByID(ye.key).latestRawTileData,wr=Ir&&Ir.byteLength||0,qt=Math.floor(wr/1024),tr=K.getTile(ye).tileSize,dr=512/Math.min(tr,512)*(ye.overscaledZ/ve.transform.zoom)*.5,Pr=ye.canonical.toString();ye.overscaledZ!==ye.canonical.z&&(Pr+=" => "+ye.overscaledZ);var Vr=Pr+" "+qt+"kb";ho(ve,Vr),He.draw(te,xe.TRIANGLES,st,Et,zt.alphaBlended,xr.disabled,yi(We,e.Color.transparent,dr),yr,ve.debugBuffer,ve.quadTriangleIndexBuffer,ve.debugSegments)}function ho(ve,K){ve.initDebugOverlayCanvas();var ye=ve.debugOverlayCanvas,te=ve.context.gl,xe=ve.debugOverlayCanvas.getContext("2d");xe.clearRect(0,0,ye.width,ye.height),xe.shadowColor="white",xe.shadowBlur=2,xe.lineWidth=1.5,xe.strokeStyle="white",xe.textBaseline="top",xe.font="bold 36px Open Sans, sans-serif",xe.fillText(K,5,5),xe.strokeText(K,5,5),ve.debugOverlayTexture.update(ye),ve.debugOverlayTexture.bind(te.LINEAR,te.CLAMP_TO_EDGE)}function ts(ve,K,ye){var te=ve.context,xe=ye.implementation;if(ve.renderPass==="offscreen"){var We=xe.prerender;We&&(ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),We.call(xe,te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState())}else if(ve.renderPass==="translucent"){ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),te.setStencilMode(Ma.disabled);var He=xe.renderingMode==="3d"?new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D):ve.depthModeForSublayer(0,La.ReadOnly);te.setDepthMode(He),xe.render(te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState(),te.bindFramebuffer.set(null)}}var yo={symbol:R,circle:Dt,heatmap:Yt,line:ea,fill:qe,"fill-extrusion":ot,hillshade:At,raster:er,background:pr,debug:Bn,custom:ts},Vo=function(K,ye){this.context=new Zr(K),this.transform=ye,this._tileTextures={},this.setup(),this.numSublayers=pa.maxUnderzooming+pa.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Zu,this.gpuTimers={}};Vo.prototype.resize=function(K,ye){if(this.width=K*e.browser.devicePixelRatio,this.height=ye*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var te=0,xe=this.style._order;te<xe.length;te+=1){var We=xe[te];this.style._layers[We].resize()}},Vo.prototype.setup=function(){var K=this.context,ye=new e.StructArrayLayout2i4;ye.emplaceBack(0,0),ye.emplaceBack(e.EXTENT,0),ye.emplaceBack(0,e.EXTENT),ye.emplaceBack(e.EXTENT,e.EXTENT),this.tileExtentBuffer=K.createVertexBuffer(ye,Nu.members),this.tileExtentSegments=e.SegmentVector.simpleSegment(0,0,4,2);var te=new e.StructArrayLayout2i4;te.emplaceBack(0,0),te.emplaceBack(e.EXTENT,0),te.emplaceBack(0,e.EXTENT),te.emplaceBack(e.EXTENT,e.EXTENT),this.debugBuffer=K.createVertexBuffer(te,Nu.members),this.debugSegments=e.SegmentVector.simpleSegment(0,0,4,5);var xe=new e.StructArrayLayout4i8;xe.emplaceBack(0,0,0,0),xe.emplaceBack(e.EXTENT,0,e.EXTENT,0),xe.emplaceBack(0,e.EXTENT,0,e.EXTENT),xe.emplaceBack(e.EXTENT,e.EXTENT,e.EXTENT,e.EXTENT),this.rasterBoundsBuffer=K.createVertexBuffer(xe,ue.members),this.rasterBoundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);var We=new e.StructArrayLayout2i4;We.emplaceBack(0,0),We.emplaceBack(1,0),We.emplaceBack(0,1),We.emplaceBack(1,1),this.viewportBuffer=K.createVertexBuffer(We,Nu.members),this.viewportSegments=e.SegmentVector.simpleSegment(0,0,4,2);var He=new e.StructArrayLayout1ui2;He.emplaceBack(0),He.emplaceBack(1),He.emplaceBack(3),He.emplaceBack(2),He.emplaceBack(0),this.tileBorderIndexBuffer=K.createIndexBuffer(He);var st=new e.StructArrayLayout3ui6;st.emplaceBack(0,1,2),st.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=K.createIndexBuffer(st),this.emptyTexture=new e.Texture(K,{width:1,height:1,data:new Uint8Array([0,0,0,0])},K.gl.RGBA);var Et=this.context.gl;this.stencilClearMode=new Ma({func:Et.ALWAYS,mask:0},0,255,Et.ZERO,Et.ZERO,Et.ZERO)},Vo.prototype.clearStencil=function(){var K=this.context,ye=K.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var te=e.create();e.ortho(te,0,this.width,this.height,0,0,1),e.scale(te,te,[ye.drawingBufferWidth,ye.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(K,ye.TRIANGLES,La.disabled,this.stencilClearMode,zt.disabled,xr.disabled,Bi(te),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},Vo.prototype._renderTileClippingMasks=function(K,ye){if(!(this.currentStencilSource===K.source||!K.isTileClipped()||!ye||!ye.length)){this.currentStencilSource=K.source;var te=this.context,xe=te.gl;this.nextStencilID+ye.length>256&&this.clearStencil(),te.setColorMode(zt.disabled),te.setDepthMode(La.disabled);var We=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var He=0,st=ye;He<st.length;He+=1){var Et=st[He],Ht=this._tileClippingMaskIDs[Et.key]=this.nextStencilID++;We.draw(te,xe.TRIANGLES,La.disabled,new Ma({func:xe.ALWAYS,mask:0},Ht,255,xe.KEEP,xe.KEEP,xe.REPLACE),zt.disabled,xr.disabled,Bi(Et.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},Vo.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var K=this.nextStencilID++,ye=this.context.gl;return new Ma({func:ye.NOTEQUAL,mask:255},K,255,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilModeForClipping=function(K){var ye=this.context.gl;return new Ma({func:ye.EQUAL,mask:255},this._tileClippingMaskIDs[K.key],0,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilConfigForOverlap=function(K){var ye,te=this.context.gl,xe=K.sort(function(Ht,yr){return yr.overscaledZ-Ht.overscaledZ}),We=xe[xe.length-1].overscaledZ,He=xe[0].overscaledZ-We+1;if(He>1){this.currentStencilSource=void 0,this.nextStencilID+He>256&&this.clearStencil();for(var st={},Et=0;Et<He;Et++)st[Et+We]=new Ma({func:te.GEQUAL,mask:255},Et+this.nextStencilID,255,te.KEEP,te.KEEP,te.REPLACE);return this.nextStencilID+=He,[st,xe]}return[(ye={},ye[We]=Ma.disabled,ye),xe]},Vo.prototype.colorModeForRenderPass=function(){var K=this.context.gl;if(this._showOverdrawInspector){var ye=8,te=1/ye;return new zt([K.CONSTANT_COLOR,K.ONE],new e.Color(te,te,te,0),[!0,!0,!0,!0])}else return this.renderPass==="opaque"?zt.unblended:zt.alphaBlended},Vo.prototype.depthModeForSublayer=function(K,ye,te){if(!this.opaquePassEnabledForLayer())return La.disabled;var xe=1-((1+this.currentLayer)*this.numSublayers+K)*this.depthEpsilon;return new La(te||this.context.gl.LEQUAL,ye,[xe,xe])},Vo.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},Vo.prototype.render=function(K,ye){var te=this;this.style=K,this.options=ye,this.lineAtlas=K.lineAtlas,this.imageManager=K.imageManager,this.glyphManager=K.glyphManager,this.symbolFadeChange=K.placement.symbolFadeChange(e.browser.now()),this.imageManager.beginFrame();var xe=this.style._order,We=this.style.sourceCaches;for(var He in We){var st=We[He];st.used&&st.prepare(this.context)}var Et={},Ht={},yr={};for(var Ir in We){var wr=We[Ir];Et[Ir]=wr.getVisibleCoordinates(),Ht[Ir]=Et[Ir].slice().reverse(),yr[Ir]=wr.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var qt=0;qt<xe.length;qt++){var tr=xe[qt];if(this.style._layers[tr].is3D()){this.opaquePassCutoff=qt;break}}this.renderPass="offscreen";for(var dr=0,Pr=xe;dr<Pr.length;dr+=1){var Vr=Pr[dr],Hr=this.style._layers[Vr];if(!(!Hr.hasOffscreenPass()||Hr.isHidden(this.transform.zoom))){var aa=Ht[Hr.source];Hr.type!=="custom"&&!aa.length||this.renderLayer(this,We[Hr.source],Hr,aa)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:ye.showOverdrawInspector?e.Color.black:e.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=ye.showOverdrawInspector,this.depthRangeFor3D=[0,1-(K._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=xe.length-1;this.currentLayer>=0;this.currentLayer--){var Qr=this.style._layers[xe[this.currentLayer]],Gr=We[Qr.source],ia=Et[Qr.source];this._renderTileClippingMasks(Qr,ia),this.renderLayer(this,Gr,Qr,ia)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<xe.length;this.currentLayer++){var Ur=this.style._layers[xe[this.currentLayer]],wa=We[Ur.source],Oa=(Ur.type==="symbol"?yr:Ht)[Ur.source];this._renderTileClippingMasks(Ur,Et[Ur.source]),this.renderLayer(this,wa,Ur,Oa)}if(this.options.showTileBoundaries){var ri,Pi,mi=e.values(this.style._layers);mi.forEach(function(Di){Di.source&&!Di.isHidden(te.transform.zoom)&&(Di.source!==(Pi&&Pi.id)&&(Pi=te.style.sourceCaches[Di.source]),(!ri||ri.getSource().maxzoom<Pi.getSource().maxzoom)&&(ri=Pi))}),ri&&yo.debug(this,ri,ri.getVisibleCoordinates())}this.options.showPadding&&Ja(this),this.context.setDefault()},Vo.prototype.renderLayer=function(K,ye,te,xe){te.isHidden(this.transform.zoom)||te.type!=="background"&&te.type!=="custom"&&!xe.length||(this.id=te.id,this.gpuTimingStart(te),yo[te.type](K,ye,te,xe,this.style.placement.variableOffsets),this.gpuTimingEnd())},Vo.prototype.gpuTimingStart=function(K){if(this.options.gpuTiming){var ye=this.context.extTimerQuery,te=this.gpuTimers[K.id];te||(te=this.gpuTimers[K.id]={calls:0,cpuTime:0,query:ye.createQueryEXT()}),te.calls++,ye.beginQueryEXT(ye.TIME_ELAPSED_EXT,te.query)}},Vo.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var K=this.context.extTimerQuery;K.endQueryEXT(K.TIME_ELAPSED_EXT)}},Vo.prototype.collectGpuTimers=function(){var K=this.gpuTimers;return this.gpuTimers={},K},Vo.prototype.queryGpuTimers=function(K){var ye={};for(var te in K){var xe=K[te],We=this.context.extTimerQuery,He=We.getQueryObjectEXT(xe.query,We.QUERY_RESULT_EXT)/(1e3*1e3);We.deleteQueryEXT(xe.query),ye[te]=He}return ye},Vo.prototype.translatePosMatrix=function(K,ye,te,xe,We){if(!te[0]&&!te[1])return K;var He=We?xe==="map"?this.transform.angle:0:xe==="viewport"?-this.transform.angle:0;if(He){var st=Math.sin(He),Et=Math.cos(He);te=[te[0]*Et-te[1]*st,te[0]*st+te[1]*Et]}var Ht=[We?te[0]:In(ye,te[0],this.transform.zoom),We?te[1]:In(ye,te[1],this.transform.zoom),0],yr=new Float32Array(16);return e.translate(yr,K,Ht),yr},Vo.prototype.saveTileTexture=function(K){var ye=this._tileTextures[K.size[0]];ye?ye.push(K):this._tileTextures[K.size[0]]=[K]},Vo.prototype.getTileTexture=function(K){var ye=this._tileTextures[K];return ye&&ye.length>0?ye.pop():null},Vo.prototype.isPatternMissing=function(K){if(!K)return!1;if(!K.from||!K.to)return!0;var ye=this.imageManager.getPattern(K.from.toString()),te=this.imageManager.getPattern(K.to.toString());return!ye||!te},Vo.prototype.useProgram=function(K,ye){this.cache=this.cache||{};var te=""+K+(ye?ye.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[te]||(this.cache[te]=new Af(this.context,K,mf[K],ye,Po[K],this._showOverdrawInspector)),this.cache[te]},Vo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Vo.prototype.setBaseState=function(){var K=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(K.FUNC_ADD)},Vo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var K=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,K.RGBA)}},Vo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var ls=function(K,ye){this.points=K,this.planes=ye};ls.fromInvProjectionMatrix=function(K,ye,te){var xe=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],We=Math.pow(2,te),He=xe.map(function(Ht){return e.transformMat4([],Ht,K)}).map(function(Ht){return e.scale$1([],Ht,1/Ht[3]/ye*We)}),st=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Et=st.map(function(Ht){var yr=e.sub([],He[Ht[0]],He[Ht[1]]),Ir=e.sub([],He[Ht[2]],He[Ht[1]]),wr=e.normalize([],e.cross([],yr,Ir)),qt=-e.dot(wr,He[Ht[1]]);return wr.concat(qt)});return new ls(He,Et)};var rl=function(K,ye){this.min=K,this.max=ye,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};rl.prototype.quadrant=function(K){for(var ye=[K%2===0,K<2],te=e.clone$2(this.min),xe=e.clone$2(this.max),We=0;We<ye.length;We++)te[We]=ye[We]?this.min[We]:this.center[We],xe[We]=ye[We]?this.center[We]:this.max[We];return xe[2]=this.max[2],new rl(te,xe)},rl.prototype.distanceX=function(K){var ye=Math.max(Math.min(this.max[0],K[0]),this.min[0]);return ye-K[0]},rl.prototype.distanceY=function(K){var ye=Math.max(Math.min(this.max[1],K[1]),this.min[1]);return ye-K[1]},rl.prototype.intersects=function(K){for(var ye=[[this.min[0],this.min[1],0,1],[this.max[0],this.min[1],0,1],[this.max[0],this.max[1],0,1],[this.min[0],this.max[1],0,1]],te=!0,xe=0;xe<K.planes.length;xe++){for(var We=K.planes[xe],He=0,st=0;st<ye.length;st++)He+=e.dot$1(We,ye[st])>=0;if(He===0)return 0;He!==ye.length&&(te=!1)}if(te)return 2;for(var Et=0;Et<3;Et++){for(var Ht=Number.MAX_VALUE,yr=-Number.MAX_VALUE,Ir=0;Ir<K.points.length;Ir++){var wr=K.points[Ir][Et]-this.min[Et];Ht=Math.min(Ht,wr),yr=Math.max(yr,wr)}if(yr<0||Ht>this.max[Et]-this.min[Et])return 0}return 1};var Ys=function(K,ye,te,xe){if(K===void 0&&(K=0),ye===void 0&&(ye=0),te===void 0&&(te=0),xe===void 0&&(xe=0),isNaN(K)||K<0||isNaN(ye)||ye<0||isNaN(te)||te<0||isNaN(xe)||xe<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=K,this.bottom=ye,this.left=te,this.right=xe};Ys.prototype.interpolate=function(K,ye,te){return ye.top!=null&&K.top!=null&&(this.top=e.number(K.top,ye.top,te)),ye.bottom!=null&&K.bottom!=null&&(this.bottom=e.number(K.bottom,ye.bottom,te)),ye.left!=null&&K.left!=null&&(this.left=e.number(K.left,ye.left,te)),ye.right!=null&&K.right!=null&&(this.right=e.number(K.right,ye.right,te)),this},Ys.prototype.getCenter=function(K,ye){var te=e.clamp((this.left+K-this.right)/2,0,K),xe=e.clamp((this.top+ye-this.bottom)/2,0,ye);return new e.Point(te,xe)},Ys.prototype.equals=function(K){return this.top===K.top&&this.bottom===K.bottom&&this.left===K.left&&this.right===K.right},Ys.prototype.clone=function(){return new Ys(this.top,this.bottom,this.left,this.right)},Ys.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var Zo=function(K,ye,te,xe,We){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=We===void 0?!0:We,this._minZoom=K||0,this._maxZoom=ye||22,this._minPitch=te??0,this._maxPitch=xe??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ys,this._posMatrixCache={},this._alignedPosMatrixCache={}},Go={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};Zo.prototype.clone=function(){var K=new Zo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return K.tileSize=this.tileSize,K.latRange=this.latRange,K.width=this.width,K.height=this.height,K._center=this._center,K.zoom=this.zoom,K.angle=this.angle,K._fov=this._fov,K._pitch=this._pitch,K._unmodified=this._unmodified,K._edgeInsets=this._edgeInsets.clone(),K._calcMatrices(),K},Go.minZoom.get=function(){return this._minZoom},Go.minZoom.set=function(ve){this._minZoom!==ve&&(this._minZoom=ve,this.zoom=Math.max(this.zoom,ve))},Go.maxZoom.get=function(){return this._maxZoom},Go.maxZoom.set=function(ve){this._maxZoom!==ve&&(this._maxZoom=ve,this.zoom=Math.min(this.zoom,ve))},Go.minPitch.get=function(){return this._minPitch},Go.minPitch.set=function(ve){this._minPitch!==ve&&(this._minPitch=ve,this.pitch=Math.max(this.pitch,ve))},Go.maxPitch.get=function(){return this._maxPitch},Go.maxPitch.set=function(ve){this._maxPitch!==ve&&(this._maxPitch=ve,this.pitch=Math.min(this.pitch,ve))},Go.renderWorldCopies.get=function(){return this._renderWorldCopies},Go.renderWorldCopies.set=function(ve){ve===void 0?ve=!0:ve===null&&(ve=!1),this._renderWorldCopies=ve},Go.worldSize.get=function(){return this.tileSize*this.scale},Go.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Go.size.get=function(){return new e.Point(this.width,this.height)},Go.bearing.get=function(){return-this.angle/Math.PI*180},Go.bearing.set=function(ve){var K=-e.wrap(ve,-180,180)*Math.PI/180;this.angle!==K&&(this._unmodified=!1,this.angle=K,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Go.pitch.get=function(){return this._pitch/Math.PI*180},Go.pitch.set=function(ve){var K=e.clamp(ve,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==K&&(this._unmodified=!1,this._pitch=K,this._calcMatrices())},Go.fov.get=function(){return this._fov/Math.PI*180},Go.fov.set=function(ve){ve=Math.max(.01,Math.min(60,ve)),this._fov!==ve&&(this._unmodified=!1,this._fov=ve/180*Math.PI,this._calcMatrices())},Go.zoom.get=function(){return this._zoom},Go.zoom.set=function(ve){var K=Math.min(Math.max(ve,this.minZoom),this.maxZoom);this._zoom!==K&&(this._unmodified=!1,this._zoom=K,this.scale=this.zoomScale(K),this.tileZoom=Math.floor(K),this.zoomFraction=K-this.tileZoom,this._constrain(),this._calcMatrices())},Go.center.get=function(){return this._center},Go.center.set=function(ve){ve.lat===this._center.lat&&ve.lng===this._center.lng||(this._unmodified=!1,this._center=ve,this._constrain(),this._calcMatrices())},Go.padding.get=function(){return this._edgeInsets.toJSON()},Go.padding.set=function(ve){this._edgeInsets.equals(ve)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,ve,1),this._calcMatrices())},Go.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},Zo.prototype.isPaddingEqual=function(K){return this._edgeInsets.equals(K)},Zo.prototype.interpolatePadding=function(K,ye,te){this._unmodified=!1,this._edgeInsets.interpolate(K,ye,te),this._constrain(),this._calcMatrices()},Zo.prototype.coveringZoomLevel=function(K){var ye=(K.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/K.tileSize));return Math.max(0,ye)},Zo.prototype.getVisibleUnwrappedCoordinates=function(K){var ye=[new e.UnwrappedTileID(0,K)];if(this._renderWorldCopies)for(var te=this.pointCoordinate(new e.Point(0,0)),xe=this.pointCoordinate(new e.Point(this.width,0)),We=this.pointCoordinate(new e.Point(this.width,this.height)),He=this.pointCoordinate(new e.Point(0,this.height)),st=Math.floor(Math.min(te.x,xe.x,We.x,He.x)),Et=Math.floor(Math.max(te.x,xe.x,We.x,He.x)),Ht=1,yr=st-Ht;yr<=Et+Ht;yr++)yr!==0&&ye.push(new e.UnwrappedTileID(yr,K));return ye},Zo.prototype.coveringTiles=function(K){var ye=this.coveringZoomLevel(K),te=ye;if(K.minzoom!==void 0&&ye<K.minzoom)return[];K.maxzoom!==void 0&&ye>K.maxzoom&&(ye=K.maxzoom);var xe=e.MercatorCoordinate.fromLngLat(this.center),We=Math.pow(2,ye),He=[We*xe.x,We*xe.y,0],st=ls.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,ye),Et=K.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Et=ye);var Ht=3,yr=function(mi){return{aabb:new rl([mi*We,0,0],[(mi+1)*We,We,0]),zoom:0,x:0,y:0,wrap:mi,fullyVisible:!1}},Ir=[],wr=[],qt=ye,tr=K.reparseOverscaled?te:ye;if(this._renderWorldCopies)for(var dr=1;dr<=3;dr++)Ir.push(yr(-dr)),Ir.push(yr(dr));for(Ir.push(yr(0));Ir.length>0;){var Pr=Ir.pop(),Vr=Pr.x,Hr=Pr.y,aa=Pr.fullyVisible;if(!aa){var Qr=Pr.aabb.intersects(st);if(Qr===0)continue;aa=Qr===2}var Gr=Pr.aabb.distanceX(He),ia=Pr.aabb.distanceY(He),Ur=Math.max(Math.abs(Gr),Math.abs(ia)),wa=Ht+(1<<qt-Pr.zoom)-2;if(Pr.zoom===qt||Ur>wa&&Pr.zoom>=Et){wr.push({tileID:new e.OverscaledTileID(Pr.zoom===qt?tr:Pr.zoom,Pr.wrap,Pr.zoom,Vr,Hr),distanceSq:e.sqrLen([He[0]-.5-Vr,He[1]-.5-Hr])});continue}for(var Oa=0;Oa<4;Oa++){var ri=(Vr<<1)+Oa%2,Pi=(Hr<<1)+(Oa>>1);Ir.push({aabb:Pr.aabb.quadrant(Oa),zoom:Pr.zoom+1,x:ri,y:Pi,wrap:Pr.wrap,fullyVisible:aa})}}return wr.sort(function(mi,Di){return mi.distanceSq-Di.distanceSq}).map(function(mi){return mi.tileID})},Zo.prototype.resize=function(K,ye){this.width=K,this.height=ye,this.pixelsToGLUnits=[2/K,-2/ye],this._constrain(),this._calcMatrices()},Go.unmodified.get=function(){return this._unmodified},Zo.prototype.zoomScale=function(K){return Math.pow(2,K)},Zo.prototype.scaleZoom=function(K){return Math.log(K)/Math.LN2},Zo.prototype.project=function(K){var ye=e.clamp(K.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(K.lng)*this.worldSize,e.mercatorYfromLat(ye)*this.worldSize)},Zo.prototype.unproject=function(K){return new e.MercatorCoordinate(K.x/this.worldSize,K.y/this.worldSize).toLngLat()},Go.point.get=function(){return this.project(this.center)},Zo.prototype.setLocationAtPoint=function(K,ye){var te=this.pointCoordinate(ye),xe=this.pointCoordinate(this.centerPoint),We=this.locationCoordinate(K),He=new e.MercatorCoordinate(We.x-(te.x-xe.x),We.y-(te.y-xe.y));this.center=this.coordinateLocation(He),this._renderWorldCopies&&(this.center=this.center.wrap())},Zo.prototype.locationPoint=function(K){return this.coordinatePoint(this.locationCoordinate(K))},Zo.prototype.pointLocation=function(K){return this.coordinateLocation(this.pointCoordinate(K))},Zo.prototype.locationCoordinate=function(K){return e.MercatorCoordinate.fromLngLat(K)},Zo.prototype.coordinateLocation=function(K){return K.toLngLat()},Zo.prototype.pointCoordinate=function(K){var ye=0,te=[K.x,K.y,0,1],xe=[K.x,K.y,1,1];e.transformMat4(te,te,this.pixelMatrixInverse),e.transformMat4(xe,xe,this.pixelMatrixInverse);var We=te[3],He=xe[3],st=te[0]/We,Et=xe[0]/He,Ht=te[1]/We,yr=xe[1]/He,Ir=te[2]/We,wr=xe[2]/He,qt=Ir===wr?0:(ye-Ir)/(wr-Ir);return new e.MercatorCoordinate(e.number(st,Et,qt)/this.worldSize,e.number(Ht,yr,qt)/this.worldSize)},Zo.prototype.coordinatePoint=function(K){var ye=[K.x*this.worldSize,K.y*this.worldSize,0,1];return e.transformMat4(ye,ye,this.pixelMatrix),new e.Point(ye[0]/ye[3],ye[1]/ye[3])},Zo.prototype.getBounds=function(){return new e.LngLatBounds().extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},Zo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},Zo.prototype.setMaxBounds=function(K){K?(this.lngRange=[K.getWest(),K.getEast()],this.latRange=[K.getSouth(),K.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},Zo.prototype.calculatePosMatrix=function(K,ye){ye===void 0&&(ye=!1);var te=K.key,xe=ye?this._alignedPosMatrixCache:this._posMatrixCache;if(xe[te])return xe[te];var We=K.canonical,He=this.worldSize/this.zoomScale(We.z),st=We.x+Math.pow(2,We.z)*K.wrap,Et=e.identity(new Float64Array(16));return e.translate(Et,Et,[st*He,We.y*He,0]),e.scale(Et,Et,[He/e.EXTENT,He/e.EXTENT,1]),e.multiply(Et,ye?this.alignedProjMatrix:this.projMatrix,Et),xe[te]=new Float32Array(Et),xe[te]},Zo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},Zo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var K=-90,ye=90,te=-180,xe=180,We,He,st,Et,Ht=this.size,yr=this._unmodified;if(this.latRange){var Ir=this.latRange;K=e.mercatorYfromLat(Ir[1])*this.worldSize,ye=e.mercatorYfromLat(Ir[0])*this.worldSize,We=ye-K<Ht.y?Ht.y/(ye-K):0}if(this.lngRange){var wr=this.lngRange;te=e.mercatorXfromLng(wr[0])*this.worldSize,xe=e.mercatorXfromLng(wr[1])*this.worldSize,He=xe-te<Ht.x?Ht.x/(xe-te):0}var qt=this.point,tr=Math.max(He||0,We||0);if(tr){this.center=this.unproject(new e.Point(He?(xe+te)/2:qt.x,We?(ye+K)/2:qt.y)),this.zoom+=this.scaleZoom(tr),this._unmodified=yr,this._constraining=!1;return}if(this.latRange){var dr=qt.y,Pr=Ht.y/2;dr-Pr<K&&(Et=K+Pr),dr+Pr>ye&&(Et=ye-Pr)}if(this.lngRange){var Vr=qt.x,Hr=Ht.x/2;Vr-Hr<te&&(st=te+Hr),Vr+Hr>xe&&(st=xe-Hr)}(st!==void 0||Et!==void 0)&&(this.center=this.unproject(new e.Point(st!==void 0?st:qt.x,Et!==void 0?Et:qt.y))),this._unmodified=yr,this._constraining=!1}},Zo.prototype._calcMatrices=function(){if(this.height){var K=this._fov/2,ye=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(K)*this.height;var te=Math.PI/2+this._pitch,xe=this._fov*(.5+ye.y/this.height),We=Math.sin(xe)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-te-xe,.01,Math.PI-.01)),He=this.point,st=He.x,Et=He.y,Ht=Math.cos(Math.PI/2-this._pitch)*We+this.cameraToCenterDistance,yr=Ht*1.01,Ir=this.height/50,wr=new Float64Array(16);e.perspective(wr,this._fov,this.width/this.height,Ir,yr),wr[8]=-ye.x*2/this.width,wr[9]=ye.y*2/this.height,e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[0,0,-this.cameraToCenterDistance]),e.rotateX(wr,wr,this._pitch),e.rotateZ(wr,wr,this.angle),e.translate(wr,wr,[-st,-Et,0]),this.mercatorMatrix=e.scale([],wr,[this.worldSize,this.worldSize,this.worldSize]),e.scale(wr,wr,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=wr,this.invProjMatrix=e.invert([],this.projMatrix);var qt=this.width%2/2,tr=this.height%2/2,dr=Math.cos(this.angle),Pr=Math.sin(this.angle),Vr=st-Math.round(st)+dr*qt+Pr*tr,Hr=Et-Math.round(Et)+dr*tr+Pr*qt,aa=new Float64Array(wr);if(e.translate(aa,aa,[Vr>.5?Vr-1:Vr,Hr>.5?Hr-1:Hr,0]),this.alignedProjMatrix=aa,wr=e.create(),e.scale(wr,wr,[this.width/2,-this.height/2,1]),e.translate(wr,wr,[1,-1,0]),this.labelPlaneMatrix=wr,wr=e.create(),e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[-1,-1,0]),e.scale(wr,wr,[2/this.width,2/this.height,1]),this.glCoordMatrix=wr,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),wr=e.invert(new Float64Array(16),this.pixelMatrix),!wr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=wr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},Zo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var K=this.pointCoordinate(new e.Point(0,0)),ye=[K.x*this.worldSize,K.y*this.worldSize,0,1],te=e.transformMat4(ye,ye,this.pixelMatrix);return te[3]/this.cameraToCenterDistance},Zo.prototype.getCameraPoint=function(){var K=this._pitch,ye=Math.tan(K)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,ye))},Zo.prototype.getCameraQueryGeometry=function(K){var ye=this.getCameraPoint();if(K.length===1)return[K[0],ye];for(var te=ye.x,xe=ye.y,We=ye.x,He=ye.y,st=0,Et=K;st<Et.length;st+=1){var Ht=Et[st];te=Math.min(te,Ht.x),xe=Math.min(xe,Ht.y),We=Math.max(We,Ht.x),He=Math.max(He,Ht.y)}return[new e.Point(te,xe),new e.Point(We,xe),new e.Point(We,He),new e.Point(te,He),new e.Point(te,xe)]},Object.defineProperties(Zo.prototype,Go);function Rl(ve,K){var ye=!1,te=null,xe=function(){te=null,ye&&(ve(),te=setTimeout(xe,K),ye=!1)};return function(){return ye=!0,te||xe(),te}}var Xl=function(K){this._hashName=K&&encodeURIComponent(K),e.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=Rl(this._updateHashUnthrottled.bind(this),30*1e3/100)};Xl.prototype.addTo=function(K){return this._map=K,e.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Xl.prototype.remove=function(){return e.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Xl.prototype.getHashString=function(K){var ye=this._map.getCenter(),te=Math.round(this._map.getZoom()*100)/100,xe=Math.ceil((te*Math.LN2+Math.log(512/360/.5))/Math.LN10),We=Math.pow(10,xe),He=Math.round(ye.lng*We)/We,st=Math.round(ye.lat*We)/We,Et=this._map.getBearing(),Ht=this._map.getPitch(),yr="";if(K?yr+="/"+He+"/"+st+"/"+te:yr+=te+"/"+st+"/"+He,(Et||Ht)&&(yr+="/"+Math.round(Et*10)/10),Ht&&(yr+="/"+Math.round(Ht)),this._hashName){var Ir=this._hashName,wr=!1,qt=e.window.location.hash.slice(1).split("&").map(function(tr){var dr=tr.split("=")[0];return dr===Ir?(wr=!0,dr+"="+yr):tr}).filter(function(tr){return tr});return wr||qt.push(Ir+"="+yr),"#"+qt.join("&")}return"#"+yr},Xl.prototype._getCurrentHash=function(){var K=this,ye=e.window.location.hash.replace("#","");if(this._hashName){var te;return ye.split("&").map(function(xe){return xe.split("=")}).forEach(function(xe){xe[0]===K._hashName&&(te=xe)}),(te&&te[1]||"").split("/")}return ye.split("/")},Xl.prototype._onHashChange=function(){var K=this._getCurrentHash();if(K.length>=3&&!K.some(function(te){return isNaN(te)})){var ye=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(K[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+K[2],+K[1]],zoom:+K[0],bearing:ye,pitch:+(K[4]||0)}),!0}return!1},Xl.prototype._updateHashUnthrottled=function(){var K=e.window.location.href.replace(/(#.+)?$/,this.getHashString());try{e.window.history.replaceState(e.window.history.state,null,K)}catch{}};var qu={linearity:.3,easing:e.bezier(0,0,.3,1)},fu=e.extend({deceleration:2500,maxSpeed:1400},qu),bl=e.extend({deceleration:20,maxSpeed:1400},qu),ou=e.extend({deceleration:1e3,maxSpeed:360},qu),Sc=e.extend({deceleration:1e3,maxSpeed:90},qu),ql=function(K){this._map=K,this.clear()};ql.prototype.clear=function(){this._inertiaBuffer=[]},ql.prototype.record=function(K){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.browser.now(),settings:K})},ql.prototype._drainInertiaBuffer=function(){for(var K=this._inertiaBuffer,ye=e.browser.now(),te=160;K.length>0&&ye-K[0].time>te;)K.shift()},ql.prototype._onMoveEnd=function(K){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var ye={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},te=0,xe=this._inertiaBuffer;te<xe.length;te+=1){var We=xe[te],He=We.settings;ye.zoom+=He.zoomDelta||0,ye.bearing+=He.bearingDelta||0,ye.pitch+=He.pitchDelta||0,He.panDelta&&ye.pan._add(He.panDelta),He.around&&(ye.around=He.around),He.pinchAround&&(ye.pinchAround=He.pinchAround)}var st=this._inertiaBuffer[this._inertiaBuffer.length-1],Et=st.time-this._inertiaBuffer[0].time,Ht={};if(ye.pan.mag()){var yr=de(ye.pan.mag(),Et,e.extend({},fu,K||{}));Ht.offset=ye.pan.mult(yr.amount/ye.pan.mag()),Ht.center=this._map.transform.center,Hl(Ht,yr)}if(ye.zoom){var Ir=de(ye.zoom,Et,bl);Ht.zoom=this._map.transform.zoom+Ir.amount,Hl(Ht,Ir)}if(ye.bearing){var wr=de(ye.bearing,Et,ou);Ht.bearing=this._map.transform.bearing+e.clamp(wr.amount,-179,179),Hl(Ht,wr)}if(ye.pitch){var qt=de(ye.pitch,Et,Sc);Ht.pitch=this._map.transform.pitch+qt.amount,Hl(Ht,qt)}if(Ht.zoom||Ht.bearing){var tr=ye.pinchAround===void 0?ye.around:ye.pinchAround;Ht.around=tr?this._map.unproject(tr):this._map.getCenter()}return this.clear(),e.extend(Ht,{noMoveStart:!0})}};function Hl(ve,K){(!ve.duration||ve.duration<K.duration)&&(ve.duration=K.duration,ve.easing=K.easing)}function de(ve,K,ye){var te=ye.maxSpeed,xe=ye.linearity,We=ye.deceleration,He=e.clamp(ve*xe/(K/1e3),-te,te),st=Math.abs(He)/(We*xe);return{easing:ye.easing,duration:st*1e3,amount:He*(st/2)}}var Re=function(ve){function K(te,xe,We,He){He===void 0&&(He={});var st=r.mousePos(xe.getCanvasContainer(),We),Et=xe.unproject(st);ve.call(this,te,e.extend({point:st,lngLat:Et,originalEvent:We},He)),this._defaultPrevented=!1,this.target=xe}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),$e=function(ve){function K(te,xe,We){var He=te==="touchend"?We.changedTouches:We.touches,st=r.touchPos(xe.getCanvasContainer(),He),Et=st.map(function(Ir){return xe.unproject(Ir)}),Ht=st.reduce(function(Ir,wr,qt,tr){return Ir.add(wr.div(tr.length))},new e.Point(0,0)),yr=xe.unproject(Ht);ve.call(this,te,{points:st,point:Ht,lngLats:Et,lngLat:yr,originalEvent:We}),this._defaultPrevented=!1}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),pt=function(ve){function K(te,xe,We){ve.call(this,te,{originalEvent:We}),this._defaultPrevented=!1}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),vt=function(K,ye){this._map=K,this._clickTolerance=ye.clickTolerance};vt.prototype.reset=function(){delete this._mousedownPos},vt.prototype.wheel=function(K){return this._firePreventable(new pt(K.type,this._map,K))},vt.prototype.mousedown=function(K,ye){return this._mousedownPos=ye,this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseup=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.click=function(K,ye){this._mousedownPos&&this._mousedownPos.dist(ye)>=this._clickTolerance||this._map.fire(new Re(K.type,this._map,K))},vt.prototype.dblclick=function(K){return this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseover=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.mouseout=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.touchstart=function(K){return this._firePreventable(new $e(K.type,this._map,K))},vt.prototype.touchmove=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchend=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchcancel=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype._firePreventable=function(K){if(this._map.fire(K),K.defaultPrevented)return{}},vt.prototype.isEnabled=function(){return!0},vt.prototype.isActive=function(){return!1},vt.prototype.enable=function(){},vt.prototype.disable=function(){};var wt=function(K){this._map=K};wt.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},wt.prototype.mousemove=function(K){this._map.fire(new Re(K.type,this._map,K))},wt.prototype.mousedown=function(){this._delayContextMenu=!0},wt.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Re("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},wt.prototype.contextmenu=function(K){this._delayContextMenu?this._contextMenuEvent=K:this._map.fire(new Re(K.type,this._map,K)),this._map.listens("contextmenu")&&K.preventDefault()},wt.prototype.isEnabled=function(){return!0},wt.prototype.isActive=function(){return!1},wt.prototype.enable=function(){},wt.prototype.disable=function(){};var Jt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._container=K.getContainer(),this._clickTolerance=ye.clickTolerance||1};Jt.prototype.isEnabled=function(){return!!this._enabled},Jt.prototype.isActive=function(){return!!this._active},Jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Jt.prototype.mousedown=function(K,ye){this.isEnabled()&&K.shiftKey&&K.button===0&&(r.disableDrag(),this._startPos=this._lastPos=ye,this._active=!0)},Jt.prototype.mousemoveWindow=function(K,ye){if(this._active){var te=ye;if(!(this._lastPos.equals(te)||!this._box&&te.dist(this._startPos)<this._clickTolerance)){var xe=this._startPos;this._lastPos=te,this._box||(this._box=r.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",K));var We=Math.min(xe.x,te.x),He=Math.max(xe.x,te.x),st=Math.min(xe.y,te.y),Et=Math.max(xe.y,te.y);r.setTransform(this._box,"translate("+We+"px,"+st+"px)"),this._box.style.width=He-We+"px",this._box.style.height=Et-st+"px"}}},Jt.prototype.mouseupWindow=function(K,ye){var te=this;if(this._active&&K.button===0){var xe=this._startPos,We=ye;if(this.reset(),r.suppressClick(),xe.x===We.x&&xe.y===We.y)this._fireEvent("boxzoomcancel",K);else return this._map.fire(new e.Event("boxzoomend",{originalEvent:K})),{cameraAnimation:function(He){return He.fitScreenCoordinates(xe,We,te._map.getBearing(),{linear:!0})}}}},Jt.prototype.keydown=function(K){this._active&&K.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",K))},Jt.prototype.reset=function(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(r.remove(this._box),this._box=null),r.enableDrag(),delete this._startPos,delete this._lastPos},Jt.prototype._fireEvent=function(K,ye){return this._map.fire(new e.Event(K,{originalEvent:ye}))};function Rt(ve,K){for(var ye={},te=0;te<ve.length;te++)ye[ve[te].identifier]=K[te];return ye}function or(ve){for(var K=new e.Point(0,0),ye=0,te=ve;ye<te.length;ye+=1){var xe=te[ye];K._add(xe)}return K.div(ve.length)}var Dr=500,Or=500,va=30,fa=function(K){this.reset(),this.numTouches=K.numTouches};fa.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},fa.prototype.touchstart=function(K,ye,te){(this.centroid||te.length>this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=K.timeStamp),te.length===this.numTouches&&(this.centroid=or(ye),this.touches=Rt(te,ye)))},fa.prototype.touchmove=function(K,ye,te){if(!(this.aborted||!this.centroid)){var xe=Rt(te,ye);for(var We in this.touches){var He=this.touches[We],st=xe[We];(!st||st.dist(He)>va)&&(this.aborted=!0)}}},fa.prototype.touchend=function(K,ye,te){if((!this.centroid||K.timeStamp-this.startTime>Or)&&(this.aborted=!0),te.length===0){var xe=!this.aborted&&this.centroid;if(this.reset(),xe)return xe}};var Va=function(K){this.singleTap=new fa(K),this.numTaps=K.numTaps,this.reset()};Va.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Va.prototype.touchstart=function(K,ye,te){this.singleTap.touchstart(K,ye,te)},Va.prototype.touchmove=function(K,ye,te){this.singleTap.touchmove(K,ye,te)},Va.prototype.touchend=function(K,ye,te){var xe=this.singleTap.touchend(K,ye,te);if(xe){var We=K.timeStamp-this.lastTime<Dr,He=!this.lastTap||this.lastTap.dist(xe)<va;if((!We||!He)&&this.reset(),this.count++,this.lastTime=K.timeStamp,this.lastTap=xe,this.count===this.numTaps)return this.reset(),xe}};var Xa=function(){this._zoomIn=new Va({numTouches:1,numTaps:2}),this._zoomOut=new Va({numTouches:2,numTaps:1}),this.reset()};Xa.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Xa.prototype.touchstart=function(K,ye,te){this._zoomIn.touchstart(K,ye,te),this._zoomOut.touchstart(K,ye,te)},Xa.prototype.touchmove=function(K,ye,te){this._zoomIn.touchmove(K,ye,te),this._zoomOut.touchmove(K,ye,te)},Xa.prototype.touchend=function(K,ye,te){var xe=this,We=this._zoomIn.touchend(K,ye,te),He=this._zoomOut.touchend(K,ye,te);if(We)return this._active=!0,K.preventDefault(),setTimeout(function(){return xe.reset()},0),{cameraAnimation:function(st){return st.easeTo({duration:300,zoom:st.getZoom()+1,around:st.unproject(We)},{originalEvent:K})}};if(He)return this._active=!0,K.preventDefault(),setTimeout(function(){return xe.reset()},0),{cameraAnimation:function(st){return st.easeTo({duration:300,zoom:st.getZoom()-1,around:st.unproject(He)},{originalEvent:K})}}},Xa.prototype.touchcancel=function(){this.reset()},Xa.prototype.enable=function(){this._enabled=!0},Xa.prototype.disable=function(){this._enabled=!1,this.reset()},Xa.prototype.isEnabled=function(){return this._enabled},Xa.prototype.isActive=function(){return this._active};var _a=0,Ra=2,Na={};Na[_a]=1,Na[Ra]=2;function Qa(ve,K){var ye=Na[K];return ve.buttons===void 0||(ve.buttons&ye)!==ye}var Ya=function(K){this.reset(),this._clickTolerance=K.clickTolerance||1};Ya.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},Ya.prototype._correctButton=function(K,ye){return!1},Ya.prototype._move=function(K,ye){return{}},Ya.prototype.mousedown=function(K,ye){if(!this._lastPoint){var te=r.mouseButton(K);this._correctButton(K,te)&&(this._lastPoint=ye,this._eventButton=te)}},Ya.prototype.mousemoveWindow=function(K,ye){var te=this._lastPoint;if(te){if(K.preventDefault(),Qa(K,this._eventButton)){this.reset();return}if(!(!this._moved&&ye.dist(te)<this._clickTolerance))return this._moved=!0,this._lastPoint=ye,this._move(te,ye)}},Ya.prototype.mouseupWindow=function(K){if(this._lastPoint){var ye=r.mouseButton(K);ye===this._eventButton&&(this._moved&&r.suppressClick(),this.reset())}},Ya.prototype.enable=function(){this._enabled=!0},Ya.prototype.disable=function(){this._enabled=!1,this.reset()},Ya.prototype.isEnabled=function(){return this._enabled},Ya.prototype.isActive=function(){return this._active};var Da=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.mousedown=function(te,xe){ve.prototype.mousedown.call(this,te,xe),this._lastPoint&&(this._active=!0)},K.prototype._correctButton=function(te,xe){return xe===_a&&!te.ctrlKey},K.prototype._move=function(te,xe){return{around:xe,panDelta:xe.sub(te)}},K}(Ya),zi=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype._correctButton=function(te,xe){return xe===_a&&te.ctrlKey||xe===Ra},K.prototype._move=function(te,xe){var We=.8,He=(xe.x-te.x)*We;if(He)return this._active=!0,{bearingDelta:He}},K.prototype.contextmenu=function(te){te.preventDefault()},K}(Ya),Ni=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype._correctButton=function(te,xe){return xe===_a&&te.ctrlKey||xe===Ra},K.prototype._move=function(te,xe){var We=-.5,He=(xe.y-te.y)*We;if(He)return this._active=!0,{pitchDelta:He}},K.prototype.contextmenu=function(te){te.preventDefault()},K}(Ya),Qi=function(K){this._minTouches=1,this._clickTolerance=K.clickTolerance||1,this.reset()};Qi.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new e.Point(0,0)},Qi.prototype.touchstart=function(K,ye,te){return this._calculateTransform(K,ye,te)},Qi.prototype.touchmove=function(K,ye,te){if(!(!this._active||te.length<this._minTouches))return K.preventDefault(),this._calculateTransform(K,ye,te)},Qi.prototype.touchend=function(K,ye,te){this._calculateTransform(K,ye,te),this._active&&te.length<this._minTouches&&this.reset()},Qi.prototype.touchcancel=function(){this.reset()},Qi.prototype._calculateTransform=function(K,ye,te){te.length>0&&(this._active=!0);var xe=Rt(te,ye),We=new e.Point(0,0),He=new e.Point(0,0),st=0;for(var Et in xe){var Ht=xe[Et],yr=this._touches[Et];yr&&(We._add(Ht),He._add(Ht.sub(yr)),st++,xe[Et]=Ht)}if(this._touches=xe,!(st<this._minTouches||!He.mag())){var Ir=He.div(st);if(this._sum._add(Ir),!(this._sum.mag()<this._clickTolerance)){var wr=We.div(st);return{around:wr,panDelta:Ir}}}},Qi.prototype.enable=function(){this._enabled=!0},Qi.prototype.disable=function(){this._enabled=!1,this.reset()},Qi.prototype.isEnabled=function(){return this._enabled},Qi.prototype.isActive=function(){return this._active};var hn=function(){this.reset()};hn.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},hn.prototype._start=function(K){},hn.prototype._move=function(K,ye,te){return{}},hn.prototype.touchstart=function(K,ye,te){this._firstTwoTouches||te.length<2||(this._firstTwoTouches=[te[0].identifier,te[1].identifier],this._start([ye[0],ye[1]]))},hn.prototype.touchmove=function(K,ye,te){if(this._firstTwoTouches){K.preventDefault();var xe=this._firstTwoTouches,We=xe[0],He=xe[1],st=Un(te,ye,We),Et=Un(te,ye,He);if(!(!st||!Et)){var Ht=this._aroundCenter?null:st.add(Et).div(2);return this._move([st,Et],Ht,K)}}},hn.prototype.touchend=function(K,ye,te){if(this._firstTwoTouches){var xe=this._firstTwoTouches,We=xe[0],He=xe[1],st=Un(te,ye,We),Et=Un(te,ye,He);st&&Et||(this._active&&r.suppressClick(),this.reset())}},hn.prototype.touchcancel=function(){this.reset()},hn.prototype.enable=function(K){this._enabled=!0,this._aroundCenter=!!K&&K.around==="center"},hn.prototype.disable=function(){this._enabled=!1,this.reset()},hn.prototype.isEnabled=function(){return this._enabled},hn.prototype.isActive=function(){return this._active};function Un(ve,K,ye){for(var te=0;te<ve.length;te++)if(ve[te].identifier===ye)return K[te]}var Vn=.1;function No(ve,K){return Math.log(ve/K)/Math.LN2}var Gn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),delete this._distance,delete this._startDistance},K.prototype._start=function(te){this._startDistance=this._distance=te[0].dist(te[1])},K.prototype._move=function(te,xe){var We=this._distance;if(this._distance=te[0].dist(te[1]),!(!this._active&&Math.abs(No(this._distance,this._startDistance))<Vn))return this._active=!0,{zoomDelta:No(this._distance,We),pinchAround:xe}},K}(hn),Fo=25;function Ks(ve,K){return ve.angleWith(K)*180/Math.PI}var Gs=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},K.prototype._start=function(te){this._startVector=this._vector=te[0].sub(te[1]),this._minDiameter=te[0].dist(te[1])},K.prototype._move=function(te,xe){var We=this._vector;if(this._vector=te[0].sub(te[1]),!(!this._active&&this._isBelowThreshold(this._vector)))return this._active=!0,{bearingDelta:Ks(this._vector,We),pinchAround:xe}},K.prototype._isBelowThreshold=function(te){this._minDiameter=Math.min(this._minDiameter,te.mag());var xe=Math.PI*this._minDiameter,We=Fo/xe*360,He=Ks(te,this._startVector);return Math.abs(He)<We},K}(hn);function sl(ve){return Math.abs(ve.y)>Math.abs(ve.x)}var Vi=100,ao=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},K.prototype._start=function(te){this._lastPoints=te,sl(te[0].sub(te[1]))&&(this._valid=!1)},K.prototype._move=function(te,xe,We){var He=te[0].sub(this._lastPoints[0]),st=te[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(He,st,We.timeStamp),!!this._valid){this._lastPoints=te,this._active=!0;var Et=(He.y+st.y)/2,Ht=-.5;return{pitchDelta:Et*Ht}}},K.prototype.gestureBeginsVertically=function(te,xe,We){if(this._valid!==void 0)return this._valid;var He=2,st=te.mag()>=He,Et=xe.mag()>=He;if(!(!st&&!Et)){if(!st||!Et)return this._firstMove===void 0&&(this._firstMove=We),We-this._firstMove<Vi?void 0:!1;var Ht=te.y>0==xe.y>0;return sl(te)&&sl(xe)&&Ht}},K}(hn),ns={panStep:100,bearingStep:15,pitchStep:10},hs=function(){var K=ns;this._panStep=K.panStep,this._bearingStep=K.bearingStep,this._pitchStep=K.pitchStep,this._rotationDisabled=!1};hs.prototype.reset=function(){this._active=!1},hs.prototype.keydown=function(K){var ye=this;if(!(K.altKey||K.ctrlKey||K.metaKey)){var te=0,xe=0,We=0,He=0,st=0;switch(K.keyCode){case 61:case 107:case 171:case 187:te=1;break;case 189:case 109:case 173:te=-1;break;case 37:K.shiftKey?xe=-1:(K.preventDefault(),He=-1);break;case 39:K.shiftKey?xe=1:(K.preventDefault(),He=1);break;case 38:K.shiftKey?We=1:(K.preventDefault(),st=-1);break;case 40:K.shiftKey?We=-1:(K.preventDefault(),st=1);break;default:return}return this._rotationDisabled&&(xe=0,We=0),{cameraAnimation:function(Et){var Ht=Et.getZoom();Et.easeTo({duration:300,easeId:"keyboardHandler",easing:hl,zoom:te?Math.round(Ht)+te*(K.shiftKey?2:1):Ht,bearing:Et.getBearing()+xe*ye._bearingStep,pitch:Et.getPitch()+We*ye._pitchStep,offset:[-He*ye._panStep,-st*ye._panStep],center:Et.getCenter()},{originalEvent:K})}}}},hs.prototype.enable=function(){this._enabled=!0},hs.prototype.disable=function(){this._enabled=!1,this.reset()},hs.prototype.isEnabled=function(){return this._enabled},hs.prototype.isActive=function(){return this._active},hs.prototype.disableRotation=function(){this._rotationDisabled=!0},hs.prototype.enableRotation=function(){this._rotationDisabled=!1};function hl(ve){return ve*(2-ve)}var Dl=4.000244140625,hu=1/100,Ll=1/450,dc=2,Qt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._handler=ye,this._delta=0,this._defaultZoomRate=hu,this._wheelZoomRate=Ll,e.bindAll(["_onTimeout"],this)};Qt.prototype.setZoomRate=function(K){this._defaultZoomRate=K},Qt.prototype.setWheelZoomRate=function(K){this._wheelZoomRate=K},Qt.prototype.isEnabled=function(){return!!this._enabled},Qt.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Qt.prototype.isZooming=function(){return!!this._zooming},Qt.prototype.enable=function(K){this.isEnabled()||(this._enabled=!0,this._aroundCenter=K&&K.around==="center")},Qt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Qt.prototype.wheel=function(K){if(this.isEnabled()){var ye=K.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?K.deltaY*40:K.deltaY,te=e.browser.now(),xe=te-(this._lastWheelEventTime||0);this._lastWheelEventTime=te,ye!==0&&ye%Dl===0?this._type="wheel":ye!==0&&Math.abs(ye)<4?this._type="trackpad":xe>400?(this._type=null,this._lastValue=ye,this._timeout=setTimeout(this._onTimeout,40,K)):this._type||(this._type=Math.abs(xe*ye)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ye+=this._lastValue)),K.shiftKey&&ye&&(ye=ye/4),this._type&&(this._lastWheelEvent=K,this._delta-=ye,this._active||this._start(K)),K.preventDefault()}},Qt.prototype._onTimeout=function(K){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(K)},Qt.prototype._start=function(K){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var ye=r.mousePos(this._el,K);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(ye)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Qt.prototype.renderFrame=function(){var K=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var ye=this._map.transform;if(this._delta!==0){var te=this._type==="wheel"&&Math.abs(this._delta)>Dl?this._wheelZoomRate:this._defaultZoomRate,xe=dc/(1+Math.exp(-Math.abs(this._delta*te)));this._delta<0&&xe!==0&&(xe=1/xe);var We=typeof this._targetZoom=="number"?ye.zoomScale(this._targetZoom):ye.scale;this._targetZoom=Math.min(ye.maxZoom,Math.max(ye.minZoom,ye.scaleZoom(We*xe))),this._type==="wheel"&&(this._startZoom=ye.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var He=typeof this._targetZoom=="number"?this._targetZoom:ye.zoom,st=this._startZoom,Et=this._easing,Ht=!1,yr;if(this._type==="wheel"&&st&&Et){var Ir=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),wr=Et(Ir);yr=e.number(st,He,wr),Ir<1?this._frameId||(this._frameId=!0):Ht=!0}else yr=He,Ht=!0;return this._active=!0,Ht&&(this._active=!1,this._finishTimeout=setTimeout(function(){K._zooming=!1,K._handler._triggerRenderFrame(),delete K._targetZoom,delete K._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Ht,zoomDelta:yr-ye.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Qt.prototype._smoothOutEasing=function(K){var ye=e.ease;if(this._prevEase){var te=this._prevEase,xe=(e.browser.now()-te.start)/te.duration,We=te.easing(xe+.01)-te.easing(xe),He=.27/Math.sqrt(We*We+1e-4)*.01,st=Math.sqrt(.27*.27-He*He);ye=e.bezier(He,st,.25,1)}return this._prevEase={start:e.browser.now(),duration:K,easing:ye},ye},Qt.prototype.reset=function(){this._active=!1};var ra=function(K,ye){this._clickZoom=K,this._tapZoom=ye};ra.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},ra.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},ra.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},ra.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Ta=function(){this.reset()};Ta.prototype.reset=function(){this._active=!1},Ta.prototype.dblclick=function(K,ye){return K.preventDefault(),{cameraAnimation:function(te){te.easeTo({duration:300,zoom:te.getZoom()+(K.shiftKey?-1:1),around:te.unproject(ye)},{originalEvent:K})}}},Ta.prototype.enable=function(){this._enabled=!0},Ta.prototype.disable=function(){this._enabled=!1,this.reset()},Ta.prototype.isEnabled=function(){return this._enabled},Ta.prototype.isActive=function(){return this._active};var si=function(){this._tap=new Va({numTouches:1,numTaps:1}),this.reset()};si.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},si.prototype.touchstart=function(K,ye,te){this._swipePoint||(this._tapTime&&K.timeStamp-this._tapTime>Dr&&this.reset(),this._tapTime?te.length>0&&(this._swipePoint=ye[0],this._swipeTouch=te[0].identifier):this._tap.touchstart(K,ye,te))},si.prototype.touchmove=function(K,ye,te){if(!this._tapTime)this._tap.touchmove(K,ye,te);else if(this._swipePoint){if(te[0].identifier!==this._swipeTouch)return;var xe=ye[0],We=xe.y-this._swipePoint.y;return this._swipePoint=xe,K.preventDefault(),this._active=!0,{zoomDelta:We/128}}},si.prototype.touchend=function(K,ye,te){if(this._tapTime)this._swipePoint&&te.length===0&&this.reset();else{var xe=this._tap.touchend(K,ye,te);xe&&(this._tapTime=K.timeStamp)}},si.prototype.touchcancel=function(){this.reset()},si.prototype.enable=function(){this._enabled=!0},si.prototype.disable=function(){this._enabled=!1,this.reset()},si.prototype.isEnabled=function(){return this._enabled},si.prototype.isActive=function(){return this._active};var wi=function(K,ye,te){this._el=K,this._mousePan=ye,this._touchPan=te};wi.prototype.enable=function(K){this._inertiaOptions=K||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},wi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},wi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},wi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xi=function(K,ye,te){this._pitchWithRotate=K.pitchWithRotate,this._mouseRotate=ye,this._mousePitch=te};xi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var bi=function(K,ye,te,xe){this._el=K,this._touchZoom=ye,this._touchRotate=te,this._tapDragZoom=xe,this._rotationDisabled=!1,this._enabled=!0};bi.prototype.enable=function(K){this._touchZoom.enable(K),this._rotationDisabled||this._touchRotate.enable(K),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},bi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},bi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},bi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},bi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},bi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var Fi=function(ve){return ve.zoom||ve.drag||ve.pitch||ve.rotate},cn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K}(e.Event);function fn(ve){return ve.panDelta&&ve.panDelta.mag()||ve.zoomDelta||ve.bearingDelta||ve.pitchDelta}var Gi=function(K,ye){this._map=K,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new ql(K),this._bearingSnap=ye.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ye),e.bindAll(["handleEvent","handleWindowEvent"],this);var te=this._el;this._listeners=[[te,"touchstart",{passive:!0}],[te,"touchmove",{passive:!1}],[te,"touchend",void 0],[te,"touchcancel",void 0],[te,"mousedown",void 0],[te,"mousemove",void 0],[te,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[te,"mouseover",void 0],[te,"mouseout",void 0],[te,"dblclick",void 0],[te,"click",void 0],[te,"keydown",{capture:!1}],[te,"keyup",void 0],[te,"wheel",{passive:!1}],[te,"contextmenu",void 0],[e.window,"blur",void 0]];for(var xe=0,We=this._listeners;xe<We.length;xe+=1){var He=We[xe],st=He[0],Et=He[1],Ht=He[2];r.addEventListener(st,Et,st===e.window.document?this.handleWindowEvent:this.handleEvent,Ht)}};Gi.prototype.destroy=function(){for(var K=0,ye=this._listeners;K<ye.length;K+=1){var te=ye[K],xe=te[0],We=te[1],He=te[2];r.removeEventListener(xe,We,xe===e.window.document?this.handleWindowEvent:this.handleEvent,He)}},Gi.prototype._addDefaultHandlers=function(K){var ye=this._map,te=ye.getCanvasContainer();this._add("mapEvent",new vt(ye,K));var xe=ye.boxZoom=new Jt(ye,K);this._add("boxZoom",xe);var We=new Xa,He=new Ta;ye.doubleClickZoom=new ra(He,We),this._add("tapZoom",We),this._add("clickZoom",He);var st=new si;this._add("tapDragZoom",st);var Et=ye.touchPitch=new ao;this._add("touchPitch",Et);var Ht=new zi(K),yr=new Ni(K);ye.dragRotate=new xi(K,Ht,yr),this._add("mouseRotate",Ht,["mousePitch"]),this._add("mousePitch",yr,["mouseRotate"]);var Ir=new Da(K),wr=new Qi(K);ye.dragPan=new wi(te,Ir,wr),this._add("mousePan",Ir),this._add("touchPan",wr,["touchZoom","touchRotate"]);var qt=new Gs,tr=new Gn;ye.touchZoomRotate=new bi(te,tr,qt,st),this._add("touchRotate",qt,["touchPan","touchZoom"]),this._add("touchZoom",tr,["touchPan","touchRotate"]);var dr=ye.scrollZoom=new Qt(ye,this);this._add("scrollZoom",dr,["mousePan"]);var Pr=ye.keyboard=new hs;this._add("keyboard",Pr),this._add("blockableMapEvent",new wt(ye));for(var Vr=0,Hr=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];Vr<Hr.length;Vr+=1){var aa=Hr[Vr];K.interactive&&K[aa]&&ye[aa].enable(K[aa])}},Gi.prototype._add=function(K,ye,te){this._handlers.push({handlerName:K,handler:ye,allowed:te}),this._handlersById[K]=ye},Gi.prototype.stop=function(K){if(!this._updatingCamera){for(var ye=0,te=this._handlers;ye<te.length;ye+=1){var xe=te[ye],We=xe.handler;We.reset()}this._inertia.clear(),this._fireEvents({},{},K),this._changes=[]}},Gi.prototype.isActive=function(){for(var K=0,ye=this._handlers;K<ye.length;K+=1){var te=ye[K],xe=te.handler;if(xe.isActive())return!0}return!1},Gi.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},Gi.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},Gi.prototype.isMoving=function(){return!!Fi(this._eventsInProgress)||this.isZooming()},Gi.prototype._blockedByActive=function(K,ye,te){for(var xe in K)if(xe!==te&&(!ye||ye.indexOf(xe)<0))return!0;return!1},Gi.prototype.handleWindowEvent=function(K){this.handleEvent(K,K.type+"Window")},Gi.prototype._getMapTouches=function(K){for(var ye=[],te=0,xe=K;te<xe.length;te+=1){var We=xe[te],He=We.target;this._el.contains(He)&&ye.push(We)}return ye},Gi.prototype.handleEvent=function(K,ye){if(K.type==="blur"){this.stop(!0);return}this._updatingCamera=!0;for(var te=K.type==="renderFrame"?void 0:K,xe={needsRenderFrame:!1},We={},He={},st=K.touches?this._getMapTouches(K.touches):void 0,Et=st?r.touchPos(this._el,st):r.mousePos(this._el,K),Ht=0,yr=this._handlers;Ht<yr.length;Ht+=1){var Ir=yr[Ht],wr=Ir.handlerName,qt=Ir.handler,tr=Ir.allowed;if(qt.isEnabled()){var dr=void 0;this._blockedByActive(He,tr,wr)?qt.reset():qt[ye||K.type]&&(dr=qt[ye||K.type](K,Et,st),this.mergeHandlerResult(xe,We,dr,wr,te),dr&&dr.needsRenderFrame&&this._triggerRenderFrame()),(dr||qt.isActive())&&(He[wr]=qt)}}var Pr={};for(var Vr in this._previousActiveHandlers)He[Vr]||(Pr[Vr]=te);this._previousActiveHandlers=He,(Object.keys(Pr).length||fn(xe))&&(this._changes.push([xe,We,Pr]),this._triggerRenderFrame()),(Object.keys(He).length||fn(xe))&&this._map._stop(!0),this._updatingCamera=!1;var Hr=xe.cameraAnimation;Hr&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],Hr(this._map))},Gi.prototype.mergeHandlerResult=function(K,ye,te,xe,We){if(te){e.extend(K,te);var He={handlerName:xe,originalEvent:te.originalEvent||We};te.zoomDelta!==void 0&&(ye.zoom=He),te.panDelta!==void 0&&(ye.drag=He),te.pitchDelta!==void 0&&(ye.pitch=He),te.bearingDelta!==void 0&&(ye.rotate=He)}},Gi.prototype._applyChanges=function(){for(var K={},ye={},te={},xe=0,We=this._changes;xe<We.length;xe+=1){var He=We[xe],st=He[0],Et=He[1],Ht=He[2];st.panDelta&&(K.panDelta=(K.panDelta||new e.Point(0,0))._add(st.panDelta)),st.zoomDelta&&(K.zoomDelta=(K.zoomDelta||0)+st.zoomDelta),st.bearingDelta&&(K.bearingDelta=(K.bearingDelta||0)+st.bearingDelta),st.pitchDelta&&(K.pitchDelta=(K.pitchDelta||0)+st.pitchDelta),st.around!==void 0&&(K.around=st.around),st.pinchAround!==void 0&&(K.pinchAround=st.pinchAround),st.noInertia&&(K.noInertia=st.noInertia),e.extend(ye,Et),e.extend(te,Ht)}this._updateMapTransform(K,ye,te),this._changes=[]},Gi.prototype._updateMapTransform=function(K,ye,te){var xe=this._map,We=xe.transform;if(!fn(K))return this._fireEvents(ye,te,!0);var He=K.panDelta,st=K.zoomDelta,Et=K.bearingDelta,Ht=K.pitchDelta,yr=K.around,Ir=K.pinchAround;Ir!==void 0&&(yr=Ir),xe._stop(!0),yr=yr||xe.transform.centerPoint;var wr=We.pointLocation(He?yr.sub(He):yr);Et&&(We.bearing+=Et),Ht&&(We.pitch+=Ht),st&&(We.zoom+=st),We.setLocationAtPoint(wr,yr),this._map._update(),K.noInertia||this._inertia.record(K),this._fireEvents(ye,te,!0)},Gi.prototype._fireEvents=function(K,ye,te){var xe=this,We=Fi(this._eventsInProgress),He=Fi(K),st={};for(var Et in K){var Ht=K[Et],yr=Ht.originalEvent;this._eventsInProgress[Et]||(st[Et+"start"]=yr),this._eventsInProgress[Et]=K[Et]}!We&&He&&this._fireEvent("movestart",He.originalEvent);for(var Ir in st)this._fireEvent(Ir,st[Ir]);He&&this._fireEvent("move",He.originalEvent);for(var wr in K){var qt=K[wr],tr=qt.originalEvent;this._fireEvent(wr,tr)}var dr={},Pr;for(var Vr in this._eventsInProgress){var Hr=this._eventsInProgress[Vr],aa=Hr.handlerName,Qr=Hr.originalEvent;this._handlersById[aa].isActive()||(delete this._eventsInProgress[Vr],Pr=ye[aa]||Qr,dr[Vr+"end"]=Pr)}for(var Gr in dr)this._fireEvent(Gr,dr[Gr]);var ia=Fi(this._eventsInProgress);if(te&&(We||He)&&!ia){this._updatingCamera=!0;var Ur=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),wa=function(Oa){return Oa!==0&&-xe._bearingSnap<Oa&&Oa<xe._bearingSnap};Ur?(wa(Ur.bearing||this._map.getBearing())&&(Ur.bearing=0),this._map.easeTo(Ur,{originalEvent:Pr})):(this._map.fire(new e.Event("moveend",{originalEvent:Pr})),wa(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},Gi.prototype._fireEvent=function(K,ye){this._map.fire(new e.Event(K,ye?{originalEvent:ye}:{}))},Gi.prototype._requestFrame=function(){var K=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add(function(ye){delete K._frameId,K.handleEvent(new cn("renderFrame",{timeStamp:ye})),K._applyChanges()})},Gi.prototype._triggerRenderFrame=function(){this._frameId===void 0&&(this._frameId=this._requestFrame())};var Io=function(ve){function K(ye,te){ve.call(this),this._moving=!1,this._zooming=!1,this.transform=ye,this._bearingSnap=te.bearingSnap,e.bindAll(["_renderFrameCallback"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getCenter=function(){return new e.LngLat(this.transform.center.lng,this.transform.center.lat)},K.prototype.setCenter=function(te,xe){return this.jumpTo({center:te},xe)},K.prototype.panBy=function(te,xe,We){return te=e.Point.convert(te).mult(-1),this.panTo(this.transform.center,e.extend({offset:te},xe),We)},K.prototype.panTo=function(te,xe,We){return this.easeTo(e.extend({center:te},xe),We)},K.prototype.getZoom=function(){return this.transform.zoom},K.prototype.setZoom=function(te,xe){return this.jumpTo({zoom:te},xe),this},K.prototype.zoomTo=function(te,xe,We){return this.easeTo(e.extend({zoom:te},xe),We)},K.prototype.zoomIn=function(te,xe){return this.zoomTo(this.getZoom()+1,te,xe),this},K.prototype.zoomOut=function(te,xe){return this.zoomTo(this.getZoom()-1,te,xe),this},K.prototype.getBearing=function(){return this.transform.bearing},K.prototype.setBearing=function(te,xe){return this.jumpTo({bearing:te},xe),this},K.prototype.getPadding=function(){return this.transform.padding},K.prototype.setPadding=function(te,xe){return this.jumpTo({padding:te},xe),this},K.prototype.rotateTo=function(te,xe,We){return this.easeTo(e.extend({bearing:te},xe),We)},K.prototype.resetNorth=function(te,xe){return this.rotateTo(0,e.extend({duration:1e3},te),xe),this},K.prototype.resetNorthPitch=function(te,xe){return this.easeTo(e.extend({bearing:0,pitch:0,duration:1e3},te),xe),this},K.prototype.snapToNorth=function(te,xe){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(te,xe):this},K.prototype.getPitch=function(){return this.transform.pitch},K.prototype.setPitch=function(te,xe){return this.jumpTo({pitch:te},xe),this},K.prototype.cameraForBounds=function(te,xe){te=e.LngLatBounds.convert(te);var We=xe&&xe.bearing||0;return this._cameraForBoxAndBearing(te.getNorthWest(),te.getSouthEast(),We,xe)},K.prototype._cameraForBoxAndBearing=function(te,xe,We,He){var st={top:0,bottom:0,right:0,left:0};if(He=e.extend({padding:st,offset:[0,0],maxZoom:this.transform.maxZoom},He),typeof He.padding=="number"){var Et=He.padding;He.padding={top:Et,bottom:Et,right:Et,left:Et}}He.padding=e.extend(st,He.padding);var Ht=this.transform,yr=Ht.padding,Ir=Ht.project(e.LngLat.convert(te)),wr=Ht.project(e.LngLat.convert(xe)),qt=Ir.rotate(-We*Math.PI/180),tr=wr.rotate(-We*Math.PI/180),dr=new e.Point(Math.max(qt.x,tr.x),Math.max(qt.y,tr.y)),Pr=new e.Point(Math.min(qt.x,tr.x),Math.min(qt.y,tr.y)),Vr=dr.sub(Pr),Hr=(Ht.width-(yr.left+yr.right+He.padding.left+He.padding.right))/Vr.x,aa=(Ht.height-(yr.top+yr.bottom+He.padding.top+He.padding.bottom))/Vr.y;if(aa<0||Hr<0){e.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.");return}var Qr=Math.min(Ht.scaleZoom(Ht.scale*Math.min(Hr,aa)),He.maxZoom),Gr=typeof He.offset.x=="number"?new e.Point(He.offset.x,He.offset.y):e.Point.convert(He.offset),ia=(He.padding.left-He.padding.right)/2,Ur=(He.padding.top-He.padding.bottom)/2,wa=new e.Point(ia,Ur),Oa=wa.rotate(We*Math.PI/180),ri=Gr.add(Oa),Pi=ri.mult(Ht.scale/Ht.zoomScale(Qr)),mi=Ht.unproject(Ir.add(wr).div(2).sub(Pi));return{center:mi,zoom:Qr,bearing:We}},K.prototype.fitBounds=function(te,xe,We){return this._fitInternal(this.cameraForBounds(te,xe),xe,We)},K.prototype.fitScreenCoordinates=function(te,xe,We,He,st){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(e.Point.convert(te)),this.transform.pointLocation(e.Point.convert(xe)),We,He),He,st)},K.prototype._fitInternal=function(te,xe,We){return te?(xe=e.extend(te,xe),delete xe.padding,xe.linear?this.easeTo(xe,We):this.flyTo(xe,We)):this},K.prototype.jumpTo=function(te,xe){this.stop();var We=this.transform,He=!1,st=!1,Et=!1;return"zoom"in te&&We.zoom!==+te.zoom&&(He=!0,We.zoom=+te.zoom),te.center!==void 0&&(We.center=e.LngLat.convert(te.center)),"bearing"in te&&We.bearing!==+te.bearing&&(st=!0,We.bearing=+te.bearing),"pitch"in te&&We.pitch!==+te.pitch&&(Et=!0,We.pitch=+te.pitch),te.padding!=null&&!We.isPaddingEqual(te.padding)&&(We.padding=te.padding),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe)),He&&this.fire(new e.Event("zoomstart",xe)).fire(new e.Event("zoom",xe)).fire(new e.Event("zoomend",xe)),st&&this.fire(new e.Event("rotatestart",xe)).fire(new e.Event("rotate",xe)).fire(new e.Event("rotateend",xe)),Et&&this.fire(new e.Event("pitchstart",xe)).fire(new e.Event("pitch",xe)).fire(new e.Event("pitchend",xe)),this.fire(new e.Event("moveend",xe))},K.prototype.easeTo=function(te,xe){var We=this;this._stop(!1,te.easeId),te=e.extend({offset:[0,0],duration:500,easing:e.ease},te),(te.animate===!1||!te.essential&&e.browser.prefersReducedMotion)&&(te.duration=0);var He=this.transform,st=this.getZoom(),Et=this.getBearing(),Ht=this.getPitch(),yr=this.getPadding(),Ir="zoom"in te?+te.zoom:st,wr="bearing"in te?this._normalizeBearing(te.bearing,Et):Et,qt="pitch"in te?+te.pitch:Ht,tr="padding"in te?te.padding:He.padding,dr=e.Point.convert(te.offset),Pr=He.centerPoint.add(dr),Vr=He.pointLocation(Pr),Hr=e.LngLat.convert(te.center||Vr);this._normalizeCenter(Hr);var aa=He.project(Vr),Qr=He.project(Hr).sub(aa),Gr=He.zoomScale(Ir-st),ia,Ur;te.around&&(ia=e.LngLat.convert(te.around),Ur=He.locationPoint(ia));var wa={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||Ir!==st,this._rotating=this._rotating||Et!==wr,this._pitching=this._pitching||qt!==Ht,this._padding=!He.isPaddingEqual(tr),this._easeId=te.easeId,this._prepareEase(xe,te.noMoveStart,wa),this._ease(function(Oa){if(We._zooming&&(He.zoom=e.number(st,Ir,Oa)),We._rotating&&(He.bearing=e.number(Et,wr,Oa)),We._pitching&&(He.pitch=e.number(Ht,qt,Oa)),We._padding&&(He.interpolatePadding(yr,tr,Oa),Pr=He.centerPoint.add(dr)),ia)He.setLocationAtPoint(ia,Ur);else{var ri=He.zoomScale(He.zoom-st),Pi=Ir>st?Math.min(2,Gr):Math.max(.5,Gr),mi=Math.pow(Pi,1-Oa),Di=He.unproject(aa.add(Qr.mult(Oa*mi)).mult(ri));He.setLocationAtPoint(He.renderWorldCopies?Di.wrap():Di,Pr)}We._fireMoveEvents(xe)},function(Oa){We._afterEase(xe,Oa)},te),this},K.prototype._prepareEase=function(te,xe,We){We===void 0&&(We={}),this._moving=!0,!xe&&!We.moving&&this.fire(new e.Event("movestart",te)),this._zooming&&!We.zooming&&this.fire(new e.Event("zoomstart",te)),this._rotating&&!We.rotating&&this.fire(new e.Event("rotatestart",te)),this._pitching&&!We.pitching&&this.fire(new e.Event("pitchstart",te))},K.prototype._fireMoveEvents=function(te){this.fire(new e.Event("move",te)),this._zooming&&this.fire(new e.Event("zoom",te)),this._rotating&&this.fire(new e.Event("rotate",te)),this._pitching&&this.fire(new e.Event("pitch",te))},K.prototype._afterEase=function(te,xe){if(!(this._easeId&&xe&&this._easeId===xe)){delete this._easeId;var We=this._zooming,He=this._rotating,st=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,We&&this.fire(new e.Event("zoomend",te)),He&&this.fire(new e.Event("rotateend",te)),st&&this.fire(new e.Event("pitchend",te)),this.fire(new e.Event("moveend",te))}},K.prototype.flyTo=function(te,xe){var We=this;if(!te.essential&&e.browser.prefersReducedMotion){var He=e.pick(te,["center","zoom","bearing","pitch","around"]);return this.jumpTo(He,xe)}this.stop(),te=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},te);var st=this.transform,Et=this.getZoom(),Ht=this.getBearing(),yr=this.getPitch(),Ir=this.getPadding(),wr="zoom"in te?e.clamp(+te.zoom,st.minZoom,st.maxZoom):Et,qt="bearing"in te?this._normalizeBearing(te.bearing,Ht):Ht,tr="pitch"in te?+te.pitch:yr,dr="padding"in te?te.padding:st.padding,Pr=st.zoomScale(wr-Et),Vr=e.Point.convert(te.offset),Hr=st.centerPoint.add(Vr),aa=st.pointLocation(Hr),Qr=e.LngLat.convert(te.center||aa);this._normalizeCenter(Qr);var Gr=st.project(aa),ia=st.project(Qr).sub(Gr),Ur=te.curve,wa=Math.max(st.width,st.height),Oa=wa/Pr,ri=ia.mag();if("minZoom"in te){var Pi=e.clamp(Math.min(te.minZoom,Et,wr),st.minZoom,st.maxZoom),mi=wa/st.zoomScale(Pi-Et);Ur=Math.sqrt(mi/ri*2)}var Di=Ur*Ur;function An(qo){var Ls=(Oa*Oa-wa*wa+(qo?-1:1)*Di*Di*ri*ri)/(2*(qo?Oa:wa)*Di*ri);return Math.log(Math.sqrt(Ls*Ls+1)-Ls)}function ln(qo){return(Math.exp(qo)-Math.exp(-qo))/2}function Ii(qo){return(Math.exp(qo)+Math.exp(-qo))/2}function Wi(qo){return ln(qo)/Ii(qo)}var Hi=An(0),yn=function(qo){return Ii(Hi)/Ii(Hi+Ur*qo)},zn=function(qo){return wa*((Ii(Hi)*Wi(Hi+Ur*qo)-ln(Hi))/Di)/ri},ms=(An(1)-Hi)/Ur;if(Math.abs(ri)<1e-6||!isFinite(ms)){if(Math.abs(wa-Oa)<1e-6)return this.easeTo(te,xe);var us=Oa<wa?-1:1;ms=Math.abs(Math.log(Oa/wa))/Ur,zn=function(){return 0},yn=function(qo){return Math.exp(us*Ur*qo)}}if("duration"in te)te.duration=+te.duration;else{var Vs="screenSpeed"in te?+te.screenSpeed/Ur:+te.speed;te.duration=1e3*ms/Vs}return te.maxDuration&&te.duration>te.maxDuration&&(te.duration=0),this._zooming=!0,this._rotating=Ht!==qt,this._pitching=tr!==yr,this._padding=!st.isPaddingEqual(dr),this._prepareEase(xe,!1),this._ease(function(qo){var Ls=qo*ms,wl=1/yn(Ls);st.zoom=qo===1?wr:Et+st.scaleZoom(wl),We._rotating&&(st.bearing=e.number(Ht,qt,qo)),We._pitching&&(st.pitch=e.number(yr,tr,qo)),We._padding&&(st.interpolatePadding(Ir,dr,qo),Hr=st.centerPoint.add(Vr));var Ru=qo===1?Qr:st.unproject(Gr.add(ia.mult(zn(Ls))).mult(wl));st.setLocationAtPoint(st.renderWorldCopies?Ru.wrap():Ru,Hr),We._fireMoveEvents(xe)},function(){return We._afterEase(xe)},te),this},K.prototype.isEasing=function(){return!!this._easeFrameId},K.prototype.stop=function(){return this._stop()},K.prototype._stop=function(te,xe){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var We=this._onEaseEnd;delete this._onEaseEnd,We.call(this,xe)}if(!te){var He=this.handlers;He&&He.stop(!1)}return this},K.prototype._ease=function(te,xe,We){We.animate===!1||We.duration===0?(te(1),xe()):(this._easeStart=e.browser.now(),this._easeOptions=We,this._onEaseFrame=te,this._onEaseEnd=xe,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},K.prototype._renderFrameCallback=function(){var te=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(te)),te<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},K.prototype._normalizeBearing=function(te,xe){te=e.wrap(te,-180,180);var We=Math.abs(te-xe);return Math.abs(te-360-xe)<We&&(te-=360),Math.abs(te+360-xe)<We&&(te+=360),te},K.prototype._normalizeCenter=function(te){var xe=this.transform;if(!(!xe.renderWorldCopies||xe.lngRange)){var We=te.lng-xe.center.lng;te.lng+=We>180?-360:We<-180?360:0}},K}(e.Evented),nn=function(K){K===void 0&&(K={}),this.options=K,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};nn.prototype.getDefaultPosition=function(){return"bottom-right"},nn.prototype.onAdd=function(K){var ye=this.options&&this.options.compact;return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=r.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),ye&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),ye===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},nn.prototype.onRemove=function(){r.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},nn.prototype._setElementTitle=function(K,ye){var te=this._map._getUIString("AttributionControl."+ye);K.title=te,K.setAttribute("aria-label",te)},nn.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},nn.prototype._updateEditLink=function(){var K=this._editLink;K||(K=this._editLink=this._container.querySelector(".mapbox-improve-map"));var ye=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(K){var te=ye.reduce(function(xe,We,He){return We.value&&(xe+=We.key+"="+We.value+(He<ye.length-1?"&":"")),xe},"?");K.href=e.config.FEEDBACK_URL+"/"+te+(this._map._hash?this._map._hash.getHashString(!0):""),K.rel="noopener nofollow",this._setElementTitle(K,"MapFeedback")}},nn.prototype._updateData=function(K){K&&(K.sourceDataType==="metadata"||K.sourceDataType==="visibility"||K.dataType==="style")&&(this._updateAttributions(),this._updateEditLink())},nn.prototype._updateAttributions=function(){if(this._map.style){var K=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?K=K.concat(this.options.customAttribution.map(function(Et){return typeof Et!="string"?"":Et})):typeof this.options.customAttribution=="string"&&K.push(this.options.customAttribution)),this._map.style.stylesheet){var ye=this._map.style.stylesheet;this.styleOwner=ye.owner,this.styleId=ye.id}var te=this._map.style.sourceCaches;for(var xe in te){var We=te[xe];if(We.used){var He=We.getSource();He.attribution&&K.indexOf(He.attribution)<0&&K.push(He.attribution)}}K.sort(function(Et,Ht){return Et.length-Ht.length}),K=K.filter(function(Et,Ht){for(var yr=Ht+1;yr<K.length;yr++)if(K[yr].indexOf(Et)>=0)return!1;return!0});var st=K.join(" | ");st!==this._attribHTML&&(this._attribHTML=st,K.length?(this._innerContainer.innerHTML=st,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},nn.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var on=function(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};on.prototype.onAdd=function(K){this._map=K,this._container=r.create("div","mapboxgl-ctrl");var ye=r.create("a","mapboxgl-ctrl-logo");return ye.target="_blank",ye.rel="noopener nofollow",ye.href="https://www.mapbox.com/",ye.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ye.setAttribute("rel","noopener nofollow"),this._container.appendChild(ye),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},on.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},on.prototype.getDefaultPosition=function(){return"bottom-left"},on.prototype._updateLogo=function(K){(!K||K.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},on.prototype._logoRequired=function(){if(this._map.style){var K=this._map.style.sourceCaches;for(var ye in K){var te=K[ye].getSource();if(te.mapbox_logo)return!0}return!1}},on.prototype._updateCompact=function(){var K=this._container.children;if(K.length){var ye=K[0];this._map.getCanvasContainer().offsetWidth<250?ye.classList.add("mapboxgl-compact"):ye.classList.remove("mapboxgl-compact")}};var Oi=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Oi.prototype.add=function(K){var ye=++this._id,te=this._queue;return te.push({callback:K,id:ye,cancelled:!1}),ye},Oi.prototype.remove=function(K){for(var ye=this._currentlyRunning,te=ye?this._queue.concat(ye):this._queue,xe=0,We=te;xe<We.length;xe+=1){var He=We[xe];if(He.id===K){He.cancelled=!0;return}}},Oi.prototype.run=function(K){K===void 0&&(K=0);var ye=this._currentlyRunning=this._queue;this._queue=[];for(var te=0,xe=ye;te<xe.length;te+=1){var We=xe[te];if(!We.cancelled&&(We.callback(K),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},Oi.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var ui={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm"},Mi=e.window.HTMLImageElement,tn=e.window.HTMLElement,pn=e.window.ImageBitmap,qi=-2,Dn=22,bn=0,_o=60,Zi={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:qi,maxZoom:Dn,minPitch:bn,maxPitch:_o,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0},Ui=function(ve){function K(te){var xe=this;if(te=e.extend({},Zi,te),te.minZoom!=null&&te.maxZoom!=null&&te.minZoom>te.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(te.minPitch!=null&&te.maxPitch!=null&&te.minPitch>te.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(te.minPitch!=null&&te.minPitch<bn)throw new Error("minPitch must be greater than or equal to "+bn);if(te.maxPitch!=null&&te.maxPitch>_o)throw new Error("maxPitch must be less than or equal to "+_o);var We=new Zo(te.minZoom,te.maxZoom,te.minPitch,te.maxPitch,te.renderWorldCopies);if(ve.call(this,We,te),this._interactive=te.interactive,this._maxTileCacheSize=te.maxTileCacheSize,this._failIfMajorPerformanceCaveat=te.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=te.preserveDrawingBuffer,this._antialias=te.antialias,this._trackResize=te.trackResize,this._bearingSnap=te.bearingSnap,this._refreshExpiredTiles=te.refreshExpiredTiles,this._fadeDuration=te.fadeDuration,this._crossSourceCollisions=te.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=te.collectResourceTiming,this._renderTaskQueue=new Oi,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},ui,te.locale),this._clickTolerance=te.clickTolerance,this._requestManager=new e.RequestManager(te.transformRequest,te.accessToken),typeof te.container=="string"){if(this._container=e.window.document.getElementById(te.container),!this._container)throw new Error("Container '"+te.container+"' not found.")}else if(te.container instanceof tn)this._container=te.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(te.maxBounds&&this.setMaxBounds(te.maxBounds),e.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return xe._update(!1)}),this.on("moveend",function(){return xe._update(!1)}),this.on("zoom",function(){return xe._update(!0)}),typeof e.window<"u"&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Gi(this,te);var He=typeof te.hash=="string"&&te.hash||void 0;this._hash=te.hash&&new Xl(He).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:te.center,zoom:te.zoom,bearing:te.bearing,pitch:te.pitch}),te.bounds&&(this.resize(),this.fitBounds(te.bounds,e.extend({},te.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=te.localIdeographFontFamily,te.style&&this.setStyle(te.style,{localIdeographFontFamily:te.localIdeographFontFamily}),te.attributionControl&&this.addControl(new nn({customAttribution:te.customAttribution})),this.addControl(new on,te.logoPosition),this.on("style.load",function(){xe.transform.unmodified&&xe.jumpTo(xe.style.stylesheet)}),this.on("data",function(st){xe._update(st.dataType==="style"),xe.fire(new e.Event(st.dataType+"data",st))}),this.on("dataloading",function(st){xe.fire(new e.Event(st.dataType+"dataloading",st))})}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return K.prototype._getMapId=function(){return this._mapId},K.prototype.addControl=function(xe,We){if(We===void 0&&(xe.getDefaultPosition?We=xe.getDefaultPosition():We="top-right"),!xe||!xe.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var He=xe.onAdd(this);this._controls.push(xe);var st=this._controlPositions[We];return We.indexOf("bottom")!==-1?st.insertBefore(He,st.firstChild):st.appendChild(He),this},K.prototype.removeControl=function(xe){if(!xe||!xe.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var We=this._controls.indexOf(xe);return We>-1&&this._controls.splice(We,1),xe.onRemove(this),this},K.prototype.hasControl=function(xe){return this._controls.indexOf(xe)>-1},K.prototype.resize=function(xe){var We=this._containerDimensions(),He=We[0],st=We[1];this._resizeCanvas(He,st),this.transform.resize(He,st),this.painter.resize(He,st);var Et=!this._moving;return Et&&(this.stop(),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe))),this.fire(new e.Event("resize",xe)),Et&&this.fire(new e.Event("moveend",xe)),this},K.prototype.getBounds=function(){return this.transform.getBounds()},K.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},K.prototype.setMaxBounds=function(xe){return this.transform.setMaxBounds(e.LngLatBounds.convert(xe)),this._update()},K.prototype.setMinZoom=function(xe){if(xe=xe??qi,xe>=qi&&xe<=this.transform.maxZoom)return this.transform.minZoom=xe,this._update(),this.getZoom()<xe&&this.setZoom(xe),this;throw new Error("minZoom must be between "+qi+" and the current maxZoom, inclusive")},K.prototype.getMinZoom=function(){return this.transform.minZoom},K.prototype.setMaxZoom=function(xe){if(xe=xe??Dn,xe>=this.transform.minZoom)return this.transform.maxZoom=xe,this._update(),this.getZoom()>xe&&this.setZoom(xe),this;throw new Error("maxZoom must be greater than the current minZoom")},K.prototype.getMaxZoom=function(){return this.transform.maxZoom},K.prototype.setMinPitch=function(xe){if(xe=xe??bn,xe<bn)throw new Error("minPitch must be greater than or equal to "+bn);if(xe>=bn&&xe<=this.transform.maxPitch)return this.transform.minPitch=xe,this._update(),this.getPitch()<xe&&this.setPitch(xe),this;throw new Error("minPitch must be between "+bn+" and the current maxPitch, inclusive")},K.prototype.getMinPitch=function(){return this.transform.minPitch},K.prototype.setMaxPitch=function(xe){if(xe=xe??_o,xe>_o)throw new Error("maxPitch must be less than or equal to "+_o);if(xe>=this.transform.minPitch)return this.transform.maxPitch=xe,this._update(),this.getPitch()>xe&&this.setPitch(xe),this;throw new Error("maxPitch must be greater than the current minPitch")},K.prototype.getMaxPitch=function(){return this.transform.maxPitch},K.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},K.prototype.setRenderWorldCopies=function(xe){return this.transform.renderWorldCopies=xe,this._update()},K.prototype.project=function(xe){return this.transform.locationPoint(e.LngLat.convert(xe))},K.prototype.unproject=function(xe){return this.transform.pointLocation(e.Point.convert(xe))},K.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},K.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},K.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},K.prototype._createDelegatedListener=function(xe,We,He){var st=this,Et;if(xe==="mouseenter"||xe==="mouseover"){var Ht=!1,yr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?Ht||(Ht=!0,He.call(st,new Re(xe,st,Pr.originalEvent,{features:Vr}))):Ht=!1},Ir=function(){Ht=!1};return{layer:We,listener:He,delegates:{mousemove:yr,mouseout:Ir}}}else if(xe==="mouseleave"||xe==="mouseout"){var wr=!1,qt=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?wr=!0:wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))},tr=function(Pr){wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))};return{layer:We,listener:He,delegates:{mousemove:qt,mouseout:tr}}}else{var dr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length&&(Pr.features=Vr,He.call(st,Pr),delete Pr.features)};return{layer:We,listener:He,delegates:(Et={},Et[xe]=dr,Et)}}},K.prototype.on=function(xe,We,He){if(He===void 0)return ve.prototype.on.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[xe]=this._delegatedListeners[xe]||[],this._delegatedListeners[xe].push(st);for(var Et in st.delegates)this.on(Et,st.delegates[Et]);return this},K.prototype.once=function(xe,We,He){if(He===void 0)return ve.prototype.once.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);for(var Et in st.delegates)this.once(Et,st.delegates[Et]);return this},K.prototype.off=function(xe,We,He){var st=this;if(He===void 0)return ve.prototype.off.call(this,xe,We);var Et=function(Ht){for(var yr=Ht[xe],Ir=0;Ir<yr.length;Ir++){var wr=yr[Ir];if(wr.layer===We&&wr.listener===He){for(var qt in wr.delegates)st.off(qt,wr.delegates[qt]);return yr.splice(Ir,1),st}}};return this._delegatedListeners&&this._delegatedListeners[xe]&&Et(this._delegatedListeners),this},K.prototype.queryRenderedFeatures=function(xe,We){if(!this.style)return[];We===void 0&&xe!==void 0&&!(xe instanceof e.Point)&&!Array.isArray(xe)&&(We=xe,xe=void 0),We=We||{},xe=xe||[[0,0],[this.transform.width,this.transform.height]];var He;if(xe instanceof e.Point||typeof xe[0]=="number")He=[e.Point.convert(xe)];else{var st=e.Point.convert(xe[0]),Et=e.Point.convert(xe[1]);He=[st,new e.Point(Et.x,st.y),Et,new e.Point(st.x,Et.y),st]}return this.style.queryRenderedFeatures(He,We,this.transform)},K.prototype.querySourceFeatures=function(xe,We){return this.style.querySourceFeatures(xe,We)},K.prototype.setStyle=function(xe,We){return We=e.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},We),We.diff!==!1&&We.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&xe?(this._diffStyle(xe,We),this):(this._localIdeographFontFamily=We.localIdeographFontFamily,this._updateStyle(xe,We))},K.prototype._getUIString=function(xe){var We=this._locale[xe];if(We==null)throw new Error("Missing UI string '"+xe+"'");return We},K.prototype._updateStyle=function(xe,We){if(this.style&&(this.style.setEventedParent(null),this.style._remove()),xe)this.style=new Jl(this,We||{});else return delete this.style,this;return this.style.setEventedParent(this,{style:this.style}),typeof xe=="string"?this.style.loadURL(xe):this.style.loadJSON(xe),this},K.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new Jl(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},K.prototype._diffStyle=function(xe,We){var He=this;if(typeof xe=="string"){var st=this._requestManager.normalizeStyleURL(xe),Et=this._requestManager.transformRequest(st,e.ResourceType.Style);e.getJSON(Et,function(Ht,yr){Ht?He.fire(new e.ErrorEvent(Ht)):yr&&He._updateDiff(yr,We)})}else typeof xe=="object"&&this._updateDiff(xe,We)},K.prototype._updateDiff=function(xe,We){try{this.style.setState(xe)&&this._update(!0)}catch(He){e.warnOnce("Unable to perform style diff: "+(He.message||He.error||He)+".  Rebuilding the style from scratch."),this._updateStyle(xe,We)}},K.prototype.getStyle=function(){if(this.style)return this.style.serialize()},K.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():e.warnOnce("There is no style added to the map.")},K.prototype.addSource=function(xe,We){return this._lazyInitEmptyStyle(),this.style.addSource(xe,We),this._update(!0)},K.prototype.isSourceLoaded=function(xe){var We=this.style&&this.style.sourceCaches[xe];if(We===void 0){this.fire(new e.ErrorEvent(new Error("There is no source with ID '"+xe+"'")));return}return We.loaded()},K.prototype.areTilesLoaded=function(){var xe=this.style&&this.style.sourceCaches;for(var We in xe){var He=xe[We],st=He._tiles;for(var Et in st){var Ht=st[Et];if(!(Ht.state==="loaded"||Ht.state==="errored"))return!1}}return!0},K.prototype.addSourceType=function(xe,We,He){return this._lazyInitEmptyStyle(),this.style.addSourceType(xe,We,He)},K.prototype.removeSource=function(xe){return this.style.removeSource(xe),this._update(!0)},K.prototype.getSource=function(xe){return this.style.getSource(xe)},K.prototype.addImage=function(xe,We,He){He===void 0&&(He={});var st=He.pixelRatio;st===void 0&&(st=1);var Et=He.sdf;Et===void 0&&(Et=!1);var Ht=He.stretchX,yr=He.stretchY,Ir=He.content;this._lazyInitEmptyStyle();var wr=0;if(We instanceof Mi||pn&&We instanceof pn){var qt=e.browser.getImageData(We),tr=qt.width,dr=qt.height,Pr=qt.data;this.style.addImage(xe,{data:new e.RGBAImage({width:tr,height:dr},Pr),pixelRatio:st,stretchX:Ht,stretchY:yr,content:Ir,sdf:Et,version:wr})}else{if(We.width===void 0||We.height===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var Vr=We.width,Hr=We.height,aa=We.data,Qr=We;this.style.addImage(xe,{data:new e.RGBAImage({width:Vr,height:Hr},new Uint8Array(aa)),pixelRatio:st,stretchX:Ht,stretchY:yr,content:Ir,sdf:Et,version:wr,userImage:Qr}),Qr.onAdd&&Qr.onAdd(this,xe)}},K.prototype.updateImage=function(xe,We){var He=this.style.getImage(xe);if(!He)return this.fire(new e.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));var st=We instanceof Mi||pn&&We instanceof pn?e.browser.getImageData(We):We,Et=st.width,Ht=st.height,yr=st.data;if(Et===void 0||Ht===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Et!==He.data.width||Ht!==He.data.height)return this.fire(new e.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));var Ir=!(We instanceof Mi||pn&&We instanceof pn);He.data.replace(yr,Ir),this.style.updateImage(xe,He)},K.prototype.hasImage=function(xe){return xe?!!this.style.getImage(xe):(this.fire(new e.ErrorEvent(new Error("Missing required image id"))),!1)},K.prototype.removeImage=function(xe){this.style.removeImage(xe)},K.prototype.loadImage=function(xe,We){e.getImage(this._requestManager.transformRequest(xe,e.ResourceType.Image),We)},K.prototype.listImages=function(){return this.style.listImages()},K.prototype.addLayer=function(xe,We){return this._lazyInitEmptyStyle(),this.style.addLayer(xe,We),this._update(!0)},K.prototype.moveLayer=function(xe,We){return this.style.moveLayer(xe,We),this._update(!0)},K.prototype.removeLayer=function(xe){return this.style.removeLayer(xe),this._update(!0)},K.prototype.getLayer=function(xe){return this.style.getLayer(xe)},K.prototype.setLayerZoomRange=function(xe,We,He){return this.style.setLayerZoomRange(xe,We,He),this._update(!0)},K.prototype.setFilter=function(xe,We,He){return He===void 0&&(He={}),this.style.setFilter(xe,We,He),this._update(!0)},K.prototype.getFilter=function(xe){return this.style.getFilter(xe)},K.prototype.setPaintProperty=function(xe,We,He,st){return st===void 0&&(st={}),this.style.setPaintProperty(xe,We,He,st),this._update(!0)},K.prototype.getPaintProperty=function(xe,We){return this.style.getPaintProperty(xe,We)},K.prototype.setLayoutProperty=function(xe,We,He,st){return st===void 0&&(st={}),this.style.setLayoutProperty(xe,We,He,st),this._update(!0)},K.prototype.getLayoutProperty=function(xe,We){return this.style.getLayoutProperty(xe,We)},K.prototype.setLight=function(xe,We){return We===void 0&&(We={}),this._lazyInitEmptyStyle(),this.style.setLight(xe,We),this._update(!0)},K.prototype.getLight=function(){return this.style.getLight()},K.prototype.setFeatureState=function(xe,We){return this.style.setFeatureState(xe,We),this._update()},K.prototype.removeFeatureState=function(xe,We){return this.style.removeFeatureState(xe,We),this._update()},K.prototype.getFeatureState=function(xe){return this.style.getFeatureState(xe)},K.prototype.getContainer=function(){return this._container},K.prototype.getCanvasContainer=function(){return this._canvasContainer},K.prototype.getCanvas=function(){return this._canvas},K.prototype._containerDimensions=function(){var xe=0,We=0;return this._container&&(xe=this._container.clientWidth||400,We=this._container.clientHeight||300),[xe,We]},K.prototype._detectMissingCSS=function(){var xe=e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color");xe!=="rgb(250, 128, 114)"&&e.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")},K.prototype._setupContainer=function(){var xe=this._container;xe.classList.add("mapboxgl-map");var We=this._missingCSSCanary=r.create("div","mapboxgl-canary",xe);We.style.visibility="hidden",this._detectMissingCSS();var He=this._canvasContainer=r.create("div","mapboxgl-canvas-container",xe);this._interactive&&He.classList.add("mapboxgl-interactive"),this._canvas=r.create("canvas","mapboxgl-canvas",He),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label","Map"),this._canvas.setAttribute("role","region");var st=this._containerDimensions();this._resizeCanvas(st[0],st[1]);var Et=this._controlContainer=r.create("div","mapboxgl-control-container",xe),Ht=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(yr){Ht[yr]=r.create("div","mapboxgl-ctrl-"+yr,Et)}),this._container.addEventListener("scroll",this._onMapScroll,!1)},K.prototype._resizeCanvas=function(xe,We){var He=e.browser.devicePixelRatio||1;this._canvas.width=He*xe,this._canvas.height=He*We,this._canvas.style.width=xe+"px",this._canvas.style.height=We+"px"},K.prototype._setupPainter=function(){var xe=e.extend({},t.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),We=this._canvas.getContext("webgl",xe)||this._canvas.getContext("experimental-webgl",xe);if(!We){this.fire(new e.ErrorEvent(new Error("Failed to initialize WebGL")));return}this.painter=new Vo(We,this.transform),e.webpSupported.testSupport(We)},K.prototype._contextLost=function(xe){xe.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event("webglcontextlost",{originalEvent:xe}))},K.prototype._contextRestored=function(xe){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event("webglcontextrestored",{originalEvent:xe}))},K.prototype._onMapScroll=function(xe){if(xe.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},K.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},K.prototype._update=function(xe){return this.style?(this._styleDirty=this._styleDirty||xe,this._sourcesDirty=!0,this.triggerRepaint(),this):this},K.prototype._requestRenderFrame=function(xe){return this._update(),this._renderTaskQueue.add(xe)},K.prototype._cancelRenderFrame=function(xe){this._renderTaskQueue.remove(xe)},K.prototype._render=function(xe){var We=this,He,st=0,Et=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(He=Et.createQueryEXT(),Et.beginQueryEXT(Et.TIME_ELAPSED_EXT,He),st=e.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(xe),!this._removed){var Ht=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var yr=this.transform.zoom,Ir=e.browser.now();this.style.zoomHistory.update(yr,Ir);var wr=new e.EvaluationParameters(yr,{now:Ir,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),qt=wr.crossFadingFactor();(qt!==1||qt!==this._crossFadingFactor)&&(Ht=!0,this._crossFadingFactor=qt),this.style.update(wr)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer")}),this.fire(new e.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event("load"))),this.style&&(this.style.hasTransitions()||Ht)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var tr=e.browser.now()-st;Et.endQueryEXT(Et.TIME_ELAPSED_EXT,He),setTimeout(function(){var Vr=Et.getQueryObjectEXT(He,Et.QUERY_RESULT_EXT)/1e6;Et.deleteQueryEXT(He),We.fire(new e.Event("gpu-timing-frame",{cpuTime:tr,gpuTime:Vr}))},50)}if(this.listens("gpu-timing-layer")){var dr=this.painter.collectGpuTimers();setTimeout(function(){var Vr=We.painter.queryGpuTimers(dr);We.fire(new e.Event("gpu-timing-layer",{layerTimes:Vr}))},50)}var Pr=this._sourcesDirty||this._styleDirty||this._placementDirty;return Pr||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.Event("idle")),this._loaded&&!this._fullyLoaded&&!Pr&&(this._fullyLoaded=!0),this}},K.prototype.remove=function(){this._hash&&this._hash.remove();for(var xe=0,We=this._controls;xe<We.length;xe+=1){var He=We[xe];He.onRemove(this)}this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof e.window<"u"&&(e.window.removeEventListener("resize",this._onWindowResize,!1),e.window.removeEventListener("orientationchange",this._onWindowResize,!1),e.window.removeEventListener("online",this._onWindowOnline,!1));var st=this.painter.context.gl.getExtension("WEBGL_lose_context");st&&st.loseContext&&st.loseContext(),Zn(this._canvasContainer),Zn(this._controlContainer),Zn(this._missingCSSCanary),this._container.classList.remove("mapboxgl-map"),this._removed=!0,this.fire(new e.Event("remove"))},K.prototype.triggerRepaint=function(){var xe=this;this.style&&!this._frame&&(this._frame=e.browser.frame(function(We){xe._frame=null,xe._render(We)}))},K.prototype._onWindowOnline=function(){this._update()},K.prototype._onWindowResize=function(xe){this._trackResize&&this.resize({originalEvent:xe})._update()},ye.showTileBoundaries.get=function(){return!!this._showTileBoundaries},ye.showTileBoundaries.set=function(te){this._showTileBoundaries!==te&&(this._showTileBoundaries=te,this._update())},ye.showPadding.get=function(){return!!this._showPadding},ye.showPadding.set=function(te){this._showPadding!==te&&(this._showPadding=te,this._update())},ye.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},ye.showCollisionBoxes.set=function(te){this._showCollisionBoxes!==te&&(this._showCollisionBoxes=te,te?this.style._generateCollisionBoxes():this._update())},ye.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},ye.showOverdrawInspector.set=function(te){this._showOverdrawInspector!==te&&(this._showOverdrawInspector=te,this._update())},ye.repaint.get=function(){return!!this._repaint},ye.repaint.set=function(te){this._repaint!==te&&(this._repaint=te,this.triggerRepaint())},ye.vertices.get=function(){return!!this._vertices},ye.vertices.set=function(te){this._vertices=te,this._update()},K.prototype._setCacheLimits=function(xe,We){e.setCacheLimits(xe,We)},ye.version.get=function(){return e.version},Object.defineProperties(K.prototype,ye),K}(Io);function Zn(ve){ve.parentNode&&ve.parentNode.removeChild(ve)}var Rn={showCompass:!0,showZoom:!0,visualizePitch:!1},xn=function(K){var ye=this;this.options=e.extend({},Rn,K),this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(te){return te.preventDefault()}),this.options.showZoom&&(e.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",function(te){return ye._map.zoomIn({},{originalEvent:te})}),r.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",function(te){return ye._map.zoomOut({},{originalEvent:te})}),r.create("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden",!0)),this.options.showCompass&&(e.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",function(te){ye.options.visualizePitch?ye._map.resetNorthPitch({},{originalEvent:te}):ye._map.resetNorth({},{originalEvent:te})}),this._compassIcon=r.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))};xn.prototype._updateZoomButtons=function(){var K=this._map.getZoom(),ye=K===this._map.getMaxZoom(),te=K===this._map.getMinZoom();this._zoomInButton.disabled=ye,this._zoomOutButton.disabled=te,this._zoomInButton.setAttribute("aria-disabled",ye.toString()),this._zoomOutButton.setAttribute("aria-disabled",te.toString())},xn.prototype._rotateCompassArrow=function(){var K=this.options.visualizePitch?"scale("+1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)+") rotateX("+this._map.transform.pitch+"deg) rotateZ("+this._map.transform.angle*(180/Math.PI)+"deg)":"rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassIcon.style.transform=K},xn.prototype.onAdd=function(K){return this._map=K,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new dn(this._map,this._compass,this.options.visualizePitch)),this._container},xn.prototype.onRemove=function(){r.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map},xn.prototype._createButton=function(K,ye){var te=r.create("button",K,this._container);return te.type="button",te.addEventListener("click",ye),te},xn.prototype._setButtonTitle=function(K,ye){var te=this._map._getUIString("NavigationControl."+ye);K.title=te,K.setAttribute("aria-label",te)};var dn=function(K,ye,te){te===void 0&&(te=!1),this._clickTolerance=10,this.element=ye,this.mouseRotate=new zi({clickTolerance:K.dragRotate._mouseRotate._clickTolerance}),this.map=K,te&&(this.mousePitch=new Ni({clickTolerance:K.dragRotate._mousePitch._clickTolerance})),e.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),r.addEventListener(ye,"mousedown",this.mousedown),r.addEventListener(ye,"touchstart",this.touchstart,{passive:!1}),r.addEventListener(ye,"touchmove",this.touchmove),r.addEventListener(ye,"touchend",this.touchend),r.addEventListener(ye,"touchcancel",this.reset)};dn.prototype.down=function(K,ye){this.mouseRotate.mousedown(K,ye),this.mousePitch&&this.mousePitch.mousedown(K,ye),r.disableDrag()},dn.prototype.move=function(K,ye){var te=this.map,xe=this.mouseRotate.mousemoveWindow(K,ye);if(xe&&xe.bearingDelta&&te.setBearing(te.getBearing()+xe.bearingDelta),this.mousePitch){var We=this.mousePitch.mousemoveWindow(K,ye);We&&We.pitchDelta&&te.setPitch(te.getPitch()+We.pitchDelta)}},dn.prototype.off=function(){var K=this.element;r.removeEventListener(K,"mousedown",this.mousedown),r.removeEventListener(K,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(K,"touchmove",this.touchmove),r.removeEventListener(K,"touchend",this.touchend),r.removeEventListener(K,"touchcancel",this.reset),this.offTemp()},dn.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(e.window,"mousemove",this.mousemove),r.removeEventListener(e.window,"mouseup",this.mouseup)},dn.prototype.mousedown=function(K){this.down(e.extend({},K,{ctrlKey:!0,preventDefault:function(){return K.preventDefault()}}),r.mousePos(this.element,K)),r.addEventListener(e.window,"mousemove",this.mousemove),r.addEventListener(e.window,"mouseup",this.mouseup)},dn.prototype.mousemove=function(K){this.move(K,r.mousePos(this.element,K))},dn.prototype.mouseup=function(K){this.mouseRotate.mouseupWindow(K),this.mousePitch&&this.mousePitch.mouseupWindow(K),this.offTemp()},dn.prototype.touchstart=function(K){K.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,K.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return K.preventDefault()}},this._startPos))},dn.prototype.touchmove=function(K){K.targetTouches.length!==1?this.reset():(this._lastPos=r.touchPos(this.element,K.targetTouches)[0],this.move({preventDefault:function(){return K.preventDefault()}},this._lastPos))},dn.prototype.touchend=function(K){K.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},dn.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};function jn(ve,K,ye){if(ve=new e.LngLat(ve.lng,ve.lat),K){var te=new e.LngLat(ve.lng-360,ve.lat),xe=new e.LngLat(ve.lng+360,ve.lat),We=ye.locationPoint(ve).distSqr(K);ye.locationPoint(te).distSqr(K)<We?ve=te:ye.locationPoint(xe).distSqr(K)<We&&(ve=xe)}for(;Math.abs(ve.lng-ye.center.lng)>180;){var He=ye.locationPoint(ve);if(He.x>=0&&He.y>=0&&He.x<=ye.width&&He.y<=ye.height)break;ve.lng>ye.center.lng?ve.lng-=360:ve.lng+=360}return ve}var Ro={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function rs(ve,K,ye){var te=ve.classList;for(var xe in Ro)te.remove("mapboxgl-"+ye+"-anchor-"+xe);te.add("mapboxgl-"+ye+"-anchor-"+K)}var wn=function(ve){function K(ye,te){if(ve.call(this),(ye instanceof e.window.HTMLElement||te)&&(ye=e.extend({element:ye},te)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=ye&&ye.anchor||"center",this._color=ye&&ye.color||"#3FB1CE",this._scale=ye&&ye.scale||1,this._draggable=ye&&ye.draggable||!1,this._clickTolerance=ye&&ye.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=ye&&ye.rotation||0,this._rotationAlignment=ye&&ye.rotationAlignment||"auto",this._pitchAlignment=ye&&ye.pitchAlignment&&ye.pitchAlignment!=="auto"?ye.pitchAlignment:this._rotationAlignment,!ye||!ye.element){this._defaultMarker=!0,this._element=r.create("div"),this._element.setAttribute("aria-label","Map marker");var xe=r.createNS("http://www.w3.org/2000/svg","svg"),We=41,He=27;xe.setAttributeNS(null,"display","block"),xe.setAttributeNS(null,"height",We+"px"),xe.setAttributeNS(null,"width",He+"px"),xe.setAttributeNS(null,"viewBox","0 0 "+He+" "+We);var st=r.createNS("http://www.w3.org/2000/svg","g");st.setAttributeNS(null,"stroke","none"),st.setAttributeNS(null,"stroke-width","1"),st.setAttributeNS(null,"fill","none"),st.setAttributeNS(null,"fill-rule","evenodd");var Et=r.createNS("http://www.w3.org/2000/svg","g");Et.setAttributeNS(null,"fill-rule","nonzero");var Ht=r.createNS("http://www.w3.org/2000/svg","g");Ht.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Ht.setAttributeNS(null,"fill","#000000");for(var yr=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Ir=0,wr=yr;Ir<wr.length;Ir+=1){var qt=wr[Ir],tr=r.createNS("http://www.w3.org/2000/svg","ellipse");tr.setAttributeNS(null,"opacity","0.04"),tr.setAttributeNS(null,"cx","10.5"),tr.setAttributeNS(null,"cy","5.80029008"),tr.setAttributeNS(null,"rx",qt.rx),tr.setAttributeNS(null,"ry",qt.ry),Ht.appendChild(tr)}var dr=r.createNS("http://www.w3.org/2000/svg","g");dr.setAttributeNS(null,"fill",this._color);var Pr=r.createNS("http://www.w3.org/2000/svg","path");Pr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),dr.appendChild(Pr);var Vr=r.createNS("http://www.w3.org/2000/svg","g");Vr.setAttributeNS(null,"opacity","0.25"),Vr.setAttributeNS(null,"fill","#000000");var Hr=r.createNS("http://www.w3.org/2000/svg","path");Hr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Vr.appendChild(Hr);var aa=r.createNS("http://www.w3.org/2000/svg","g");aa.setAttributeNS(null,"transform","translate(6.0, 7.0)"),aa.setAttributeNS(null,"fill","#FFFFFF");var Qr=r.createNS("http://www.w3.org/2000/svg","g");Qr.setAttributeNS(null,"transform","translate(8.0, 8.0)");var Gr=r.createNS("http://www.w3.org/2000/svg","circle");Gr.setAttributeNS(null,"fill","#000000"),Gr.setAttributeNS(null,"opacity","0.25"),Gr.setAttributeNS(null,"cx","5.5"),Gr.setAttributeNS(null,"cy","5.5"),Gr.setAttributeNS(null,"r","5.4999962");var ia=r.createNS("http://www.w3.org/2000/svg","circle");ia.setAttributeNS(null,"fill","#FFFFFF"),ia.setAttributeNS(null,"cx","5.5"),ia.setAttributeNS(null,"cy","5.5"),ia.setAttributeNS(null,"r","5.4999962"),Qr.appendChild(Gr),Qr.appendChild(ia),Et.appendChild(Ht),Et.appendChild(dr),Et.appendChild(Vr),Et.appendChild(aa),Et.appendChild(Qr),xe.appendChild(Et),xe.setAttributeNS(null,"height",We*this._scale+"px"),xe.setAttributeNS(null,"width",He*this._scale+"px"),this._element.appendChild(xe),this._offset=e.Point.convert(ye&&ye.offset||[0,-14])}else this._element=ye.element,this._offset=e.Point.convert(ye&&ye.offset||[0,0]);this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",function(Ur){Ur.preventDefault()}),this._element.addEventListener("mousedown",function(Ur){Ur.preventDefault()}),rs(this._element,this._anchor,"marker"),this._popup=null}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this.remove(),this._map=te,te.getCanvasContainer().appendChild(this._element),te.on("move",this._update),te.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},K.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),r.remove(this._element),this._popup&&this._popup.remove(),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},K.prototype.getElement=function(){return this._element},K.prototype.setPopup=function(te){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),te){if(!("offset"in te.options)){var xe=38.1,We=13.5,He=Math.sqrt(Math.pow(We,2)/2);te.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-xe],"bottom-left":[He,(xe-We+He)*-1],"bottom-right":[-He,(xe-We+He)*-1],left:[We,(xe-We)*-1],right:[-We,(xe-We)*-1]}:this._offset}this._popup=te,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this},K.prototype._onKeyPress=function(te){var xe=te.code,We=te.charCode||te.keyCode;(xe==="Space"||xe==="Enter"||We===32||We===13)&&this.togglePopup()},K.prototype._onMapClick=function(te){var xe=te.originalEvent.target,We=this._element;this._popup&&(xe===We||We.contains(xe))&&this.togglePopup()},K.prototype.getPopup=function(){return this._popup},K.prototype.togglePopup=function(){var te=this._popup;if(te)te.isOpen()?te.remove():te.addTo(this._map);else return this;return this},K.prototype._update=function(te){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=jn(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var xe="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?xe="rotateZ("+this._rotation+"deg)":this._rotationAlignment==="map"&&(xe="rotateZ("+(this._rotation-this._map.getBearing())+"deg)");var We="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?We="rotateX(0deg)":this._pitchAlignment==="map"&&(We="rotateX("+this._map.getPitch()+"deg)"),(!te||te.type==="moveend")&&(this._pos=this._pos.round()),r.setTransform(this._element,Ro[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px) "+We+" "+xe)}},K.prototype.getOffset=function(){return this._offset},K.prototype.setOffset=function(te){return this._offset=e.Point.convert(te),this._update(),this},K.prototype._onMove=function(te){if(!this._isDragging){var xe=this._clickTolerance||this._map._clickTolerance;this._isDragging=te.point.dist(this._pointerdownPos)>=xe}this._isDragging&&(this._pos=te.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new e.Event("dragstart"))),this.fire(new e.Event("drag")))},K.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new e.Event("dragend")),this._state="inactive"},K.prototype._addDragHandler=function(te){this._element.contains(te.originalEvent.target)&&(te.preventDefault(),this._positionDelta=te.point.sub(this._pos).add(this._offset),this._pointerdownPos=te.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},K.prototype.setDraggable=function(te){return this._draggable=!!te,this._map&&(te?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},K.prototype.isDraggable=function(){return this._draggable},K.prototype.setRotation=function(te){return this._rotation=te||0,this._update(),this},K.prototype.getRotation=function(){return this._rotation},K.prototype.setRotationAlignment=function(te){return this._rotationAlignment=te||"auto",this._update(),this},K.prototype.getRotationAlignment=function(){return this._rotationAlignment},K.prototype.setPitchAlignment=function(te){return this._pitchAlignment=te&&te!=="auto"?te:this._rotationAlignment,this._update(),this},K.prototype.getPitchAlignment=function(){return this._pitchAlignment},K}(e.Evented),oo={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Xo;function os(ve){Xo!==void 0?ve(Xo):e.window.navigator.permissions!==void 0?e.window.navigator.permissions.query({name:"geolocation"}).then(function(K){Xo=K.state!=="denied",ve(Xo)}):(Xo=!!e.window.navigator.geolocation,ve(Xo))}var As=0,$l=!1,Uc=function(ve){function K(ye){ve.call(this),this.options=e.extend({},oo,ye),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){return this._map=te,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),os(this._setupUI),this._container},K.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,As=0,$l=!1},K.prototype._isOutOfMapMaxBounds=function(te){var xe=this._map.getMaxBounds(),We=te.coords;return xe&&(We.longitude<xe.getWest()||We.longitude>xe.getEast()||We.latitude<xe.getSouth()||We.latitude>xe.getNorth())},K.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},K.prototype._onSuccess=function(te){if(this._map){if(this._isOutOfMapMaxBounds(te)){this._setErrorState(),this.fire(new e.Event("outofmaxbounds",te)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=te,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(te),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(te),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",te)),this._finish()}},K.prototype._updateCamera=function(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude),We=te.coords.accuracy,He=this._map.getBearing(),st=e.extend({bearing:He},this.options.fitBoundsOptions);this._map.fitBounds(xe.toBounds(We),st,{geolocateSource:!0})},K.prototype._updateMarker=function(te){if(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude);this._accuracyCircleMarker.setLngLat(xe).addTo(this._map),this._userLocationDotMarker.setLngLat(xe).addTo(this._map),this._accuracy=te.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},K.prototype._updateCircleRadius=function(){var te=this._map._container.clientHeight/2,xe=this._map.unproject([0,te]),We=this._map.unproject([1,te]),He=xe.distanceTo(We),st=Math.ceil(2*this._accuracy/He);this._circleElement.style.width=st+"px",this._circleElement.style.height=st+"px"},K.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},K.prototype._onError=function(te){if(this._map){if(this.options.trackUserLocation)if(te.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var xe=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=xe,this._geolocateButton.setAttribute("aria-label",xe),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(te.code===3&&$l)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",te)),this._finish()}},K.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},K.prototype._setupUI=function(te){var xe=this;if(this._container.addEventListener("contextmenu",function(st){return st.preventDefault()}),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",te===!1){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var We=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=We,this._geolocateButton.setAttribute("aria-label",We)}else{var He=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=He,this._geolocateButton.setAttribute("aria-label",He)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new wn(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new wn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(st){var Et=st.originalEvent&&st.originalEvent.type==="resize";!st.geolocateSource&&xe._watchState==="ACTIVE_LOCK"&&!Et&&(xe._watchState="BACKGROUND",xe._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),xe._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),xe.fire(new e.Event("trackuserlocationend")))})},K.prototype.trigger=function(){if(!this._setup)return e.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":As--,$l=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new e.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),As++;var te;As>1?(te={maximumAge:6e5,timeout:0},$l=!0):(te=this.options.positionOptions,$l=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,te)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},K.prototype._clearWatch=function(){e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},K}(e.Evented),Ws={maxWidth:100,unit:"metric"},jc=function(K){this.options=e.extend({},Ws,K),e.bindAll(["_onMove","setUnit"],this)};jc.prototype.getDefaultPosition=function(){return"bottom-left"},jc.prototype._onMove=function(){Ol(this._map,this._container,this.options)},jc.prototype.onAdd=function(K){return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",K.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},jc.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},jc.prototype.setUnit=function(K){this.options.unit=K,Ol(this._map,this._container,this.options)};function Ol(ve,K,ye){var te=ye&&ye.maxWidth||100,xe=ve._container.clientHeight/2,We=ve.unproject([0,xe]),He=ve.unproject([te,xe]),st=We.distanceTo(He);if(ye&&ye.unit==="imperial"){var Et=3.2808*st;if(Et>5280){var Ht=Et/5280;vc(K,te,Ht,ve._getUIString("ScaleControl.Miles"))}else vc(K,te,Et,ve._getUIString("ScaleControl.Feet"))}else if(ye&&ye.unit==="nautical"){var yr=st/1852;vc(K,te,yr,ve._getUIString("ScaleControl.NauticalMiles"))}else st>=1e3?vc(K,te,st/1e3,ve._getUIString("ScaleControl.Kilometers")):vc(K,te,st,ve._getUIString("ScaleControl.Meters"))}function vc(ve,K,ye,te){var xe=rf(ye),We=xe/ye;ve.style.width=K*We+"px",ve.innerHTML=xe+"&nbsp;"+te}function mc(ve){var K=Math.pow(10,Math.ceil(-Math.log(ve)/Math.LN10));return Math.round(ve*K)/K}function rf(ve){var K=Math.pow(10,(""+Math.floor(ve)).length-1),ye=ve/K;return ye=ye>=10?10:ye>=5?5:ye>=3?3:ye>=2?2:ye>=1?1:mc(ye),K*ye}var Yl=function(K){this._fullscreen=!1,K&&K.container&&(K.container instanceof e.window.HTMLElement?this._container=K.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};Yl.prototype.onAdd=function(K){return this._map=K,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Yl.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},Yl.prototype._setupUI=function(){var K=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",K).setAttribute("aria-hidden",!0),K.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._updateTitle=function(){var K=this._getTitle();this._fullscreenButton.setAttribute("aria-label",K),this._fullscreenButton.title=K},Yl.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Yl.prototype._isFullscreen=function(){return this._fullscreen},Yl.prototype._changeIcon=function(){var K=e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.window.document.msFullscreenElement;K===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Yl.prototype._onClickFullscreen=function(){this._isFullscreen()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Mc={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Ds=function(ve){function K(ye){ve.call(this),this.options=e.extend(Object.create(Mc),ye),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this._map&&this.remove(),this._map=te,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new e.Event("open")),this},K.prototype.isOpen=function(){return!!this._map},K.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new e.Event("close")),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},K.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},K.prototype.getElement=function(){return this._container},K.prototype.setText=function(te){return this.setDOMContent(e.window.document.createTextNode(te))},K.prototype.setHTML=function(te){var xe=e.window.document.createDocumentFragment(),We=e.window.document.createElement("body"),He;for(We.innerHTML=te;He=We.firstChild,!!He;)xe.appendChild(He);return this.setDOMContent(xe)},K.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},K.prototype.setMaxWidth=function(te){return this.options.maxWidth=te,this._update(),this},K.prototype.setDOMContent=function(te){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(te),this._createCloseButton(),this._update(),this._focusFirstElement(),this},K.prototype.addClassName=function(te){this._container&&this._container.classList.add(te)},K.prototype.removeClassName=function(te){this._container&&this._container.classList.remove(te)},K.prototype.setOffset=function(te){return this.options.offset=te,this._update(),this},K.prototype.toggleClassName=function(te){if(this._container)return this._container.classList.toggle(te)},K.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=r.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))},K.prototype._onMouseUp=function(te){this._update(te.point)},K.prototype._onMouseMove=function(te){this._update(te.point)},K.prototype._onDrag=function(te){this._update(te.point)},K.prototype._update=function(te){var xe=this,We=this._lngLat||this._trackPointer;if(!(!this._map||!We||!this._content)&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(qt){return xe._container.classList.add(qt)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=jn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!te))){var He=this._pos=this._trackPointer&&te?te:this._map.project(this._lngLat),st=this.options.anchor,Et=af(this.options.offset);if(!st){var Ht=this._container.offsetWidth,yr=this._container.offsetHeight,Ir;He.y+Et.bottom.y<yr?Ir=["top"]:He.y>this._map.transform.height-yr?Ir=["bottom"]:Ir=[],He.x<Ht/2?Ir.push("left"):He.x>this._map.transform.width-Ht/2&&Ir.push("right"),Ir.length===0?st="bottom":st=Ir.join("-")}var wr=He.add(Et[st]).round();r.setTransform(this._container,Ro[st]+" translate("+wr.x+"px,"+wr.y+"px)"),rs(this._container,st,"popup")}},K.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var te=this._container.querySelector(Vc);te&&te.focus()}},K.prototype._onClose=function(){this.remove()},K}(e.Evented);function af(ve){if(ve)if(typeof ve=="number"){var K=Math.round(Math.sqrt(.5*Math.pow(ve,2)));return{center:new e.Point(0,0),top:new e.Point(0,ve),"top-left":new e.Point(K,K),"top-right":new e.Point(-K,K),bottom:new e.Point(0,-ve),"bottom-left":new e.Point(K,-K),"bottom-right":new e.Point(-K,-K),left:new e.Point(ve,0),right:new e.Point(-ve,0)}}else if(ve instanceof e.Point||Array.isArray(ve)){var ye=e.Point.convert(ve);return{center:ye,top:ye,"top-left":ye,"top-right":ye,bottom:ye,"bottom-left":ye,"bottom-right":ye,left:ye,right:ye}}else return{center:e.Point.convert(ve.center||[0,0]),top:e.Point.convert(ve.top||[0,0]),"top-left":e.Point.convert(ve["top-left"]||[0,0]),"top-right":e.Point.convert(ve["top-right"]||[0,0]),bottom:e.Point.convert(ve.bottom||[0,0]),"bottom-left":e.Point.convert(ve["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(ve["bottom-right"]||[0,0]),left:e.Point.convert(ve.left||[0,0]),right:e.Point.convert(ve.right||[0,0])};else return af(new e.Point(0,0))}var Cs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:Ui,NavigationControl:xn,GeolocateControl:Uc,AttributionControl:nn,ScaleControl:jc,FullscreenControl:Yl,Popup:Ds,Marker:wn,Style:Jl,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:Er,clearPrewarmedResources:kr,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(ve){e.config.ACCESS_TOKEN=ve},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(ve){e.config.API_URL=ve},get workerCount(){return ya.workerCount},set workerCount(ve){ya.workerCount=ve},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(ve){e.config.MAX_PARALLEL_IMAGE_REQUESTS=ve},clearStorage:function(K){e.clearTileCache(K)},workerUrl:""};return Cs}),A})}}),$V=Ye({"src/plots/mapbox/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=wk(),M=am();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapboxLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapboxLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s<n.length;s++){var c=n[s].id;if(typeof c=="string"&&c.indexOf(M.traceLayerPrefix)===0){i=c;break}}return i},t.updateLayer=function(i){var n=this.subplot,s=o(i),c=this.lookupBelow(),h=this.findFollowingMapboxLayerId(c);this.removeLayer(),r(i)&&n.addLayer({id:this.idLayer,source:this.idSource,"source-layer":i.sourcelayer||"",type:i.type,minzoom:i.minzoom,maxzoom:i.maxzoom,layout:s.layout,paint:s.paint},h),this.layerType=i.type,this.below=c},t.updateStyle=function(i){if(r(i)){var n=o(i);this.subplot.setOptions(this.idLayer,"setLayoutProperty",n.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",n.paint)}},t.removeLayer=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer)},t.dispose=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer),i.getSource(this.idSource)&&i.removeSource(this.idSource)};function r(i){if(!i.visible)return!1;var n=i.source;if(Array.isArray(n)&&n.length>0){for(var s=0;s<n.length;s++)if(typeof n[s]!="string"||n[s].length===0)return!1;return!0}return g.isPlainObject(n)||typeof n=="string"&&n.length>0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),QV=Ye({"src/plots/mapbox/mapbox.js"(X,H){"use strict";var g=Tk(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=am(),p=$V();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y=b[u.id];u.map&&y.accesstoken!==u.accessToken&&(u.map.remove(),u.map=null,u.styleObj=null,u.traceHash={},u.layerList=[]);var f;u.map?f=new Promise(function(P,L){u.updateMap(m,b,P,L)}):f=new Promise(function(P,L){u.createMap(m,b,P,L)}),d.push(f)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style,b);y.accessToken=f.accesstoken;var L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0}));F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var B=[];B.push(new Promise(function(O){F.once("load",O)})),B=B.concat(A.fetchTraceGeoData(m)),Promise.all(B).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style,b);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y<m.length;y++){var z=m[y][0].trace,F=z._module;typeof z.below=="string"?f=z.below:F.getBelow&&(f=F.getBelow(z,this)),f===""&&(L=!0),P["trace-"+z.uid]=f||""}for(y=0;y<u.length;y++){var B=u[y];typeof B.below=="string"?f=B.below:L?f="traces":f="",P["layout-"+y]=f}var O={},I,N;for(I in P)f=P[I],O[f]?O[f].push(I):O[f]=[I];for(f in O){var U=O[f];if(U.length>1)for(y=0;y<U.length;y++)I=U[y],I.indexOf("trace-")===0?(N=I.split("trace-")[1],this.traceHash[N]&&(this.traceHash[N].below=null)):I.indexOf("layout-")===0&&(N=I.split("layout-")[1],this.layerList[N]&&(this.layerList[N].below=null))}};var _={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};l.updateData=function(m){var b=this.traceHash,d,u,y,f,P=m.slice().sort(function(O,I){return _[O[0].trace.type]-_[I[0].trace.type]});for(y=0;y<P.length;y++){var L=P[y];u=L[0].trace,d=b[u.uid];var z=!1;d&&(d.type===u.type?(d.update(L),z=!0):d.dispose()),!z&&u._module&&(b[u.uid]=u._module.plot(this,L))}var F=Object.keys(b);e:for(y=0;y<F.length;y++){var B=F[y];for(f=0;f<m.length;f++)if(u=m[f][0].trace,B===u.uid)continue e;d=b[B],d.dispose(),delete b[B]}},l.updateLayout=function(m){var b=this.map,d=m[this.id];!this.dragging&&!this.wheeling&&(b.setCenter(E(d.center)),b.setZoom(d.zoom),b.setBearing(d.bearing),b.setPitch(d.pitch)),this.updateLayers(m),this.updateFramework(m),this.updateFx(m),this.map.resize(),this.gd._context._scrollZoom.mapbox?b.scrollZoom.enable():b.scrollZoom.disable()},l.resolveOnRender=function(m){var b=this.map;b.on("render",function d(){b.loaded()&&(b.off("render",d),setTimeout(m,10))})},l.rejectOnError=function(m){var b=this.map;function d(){m(new Error(v.mapOnErrorMsg))}b.once("error",d),b.once("style.error",d),b.once("source.error",d),b.once("tile.error",d),b.once("layer.error",d)},l.createFramework=function(m){var b=this,d=b.div=document.createElement("div");d.id=b.uid,d.style.position="absolute",b.container.appendChild(d),b.xaxis={_id:"x",c2p:function(u){return b.project(u).x}},b.yaxis={_id:"y",c2p:function(u){return b.project(u).y}},b.updateFramework(m),b.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},e.setConvert(b.mockAxis,m)},l.initFx=function(m,b){var d=this,u=d.gd,y=d.map;y.on("moveend",function(L){if(d.map){var z=u._fullLayout;if(L.originalEvent||d.wheeling){var F=z[d.id];M.call("_storeDirectGUIEdit",u.layout,z._preGUI,d.getViewEdits(F));var B=d.getView();F._input.center=F.center=B.center,F._input.zoom=F.zoom=B.zoom,F._input.bearing=F.bearing=B.bearing,F._input.pitch=F.pitch=B.pitch,u.emit("plotly_relayout",d.getViewEditsWithDerived(B))}L.originalEvent&&L.originalEvent.type==="mouseup"?d.dragging=!1:d.wheeling&&(d.wheeling=!1),z._rehover&&z._rehover()}}),y.on("wheel",function(){d.wheeling=!0}),y.on("mousemove",function(L){var z=d.div.getBoundingClientRect(),F=[L.originalEvent.offsetX,L.originalEvent.offsetY];L.target.getBoundingClientRect=function(){return z},d.xaxis.p2c=function(){return y.unproject(F).lng},d.yaxis.p2c=function(){return y.unproject(F).lat},u._fullLayout._rehover=function(){u._fullLayout._hoversubplot===d.id&&u._fullLayout[d.id]&&r.hover(u,L,d.id)},r.hover(u,L,d.id),u._fullLayout._hoversubplot=d.id});function f(){r.loneUnhover(b._hoverlayer)}y.on("dragstart",function(){d.dragging=!0,f()}),y.on("zoomstart",f),y.on("mouseout",function(){u._fullLayout._hoversubplot=null});function P(){var L=d.getView();u.emit("plotly_relayouting",d.getViewEditsWithDerived(L))}y.on("drag",P),y.on("zoom",P),y.on("dblclick",function(){var L=u._fullLayout[d.id];M.call("_storeDirectGUIEdit",u.layout,u._fullLayout._preGUI,d.getViewEdits(L));var z=d.viewInitial;y.setCenter(E(z.center)),y.setZoom(z.zoom),y.setBearing(z.bearing),y.setPitch(z.pitch);var F=d.getView();L._input.center=L.center=F.center,L._input.zoom=L.zoom=F.zoom,L._input.bearing=L.bearing=F.bearing,L._input.pitch=L.pitch=F.pitch,u.emit("plotly_doubleclick",null),u.emit("plotly_relayout",d.getViewEditsWithDerived(F))}),d.clearOutline=function(){c(d.dragOptions),s(d.dragOptions.gd)},d.onClickInPanFn=function(L){return function(z){var F=u._fullLayout.clickmode;F.indexOf("select")>-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;y<u.length;y++)u[y].dispose();for(u=this.layerList=[],y=0;y<d.length;y++)u.push(p(this,y,d[y]))}else for(y=0;y<d.length;y++)u[y].update(d[y])},l.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},l.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},l.setOptions=function(m,b,d){for(var u in d)this.map[b](m,u,d[u])},l.getMapLayers=function(){return this.map.getStyle().layers},l.addLayer=function(m,b){var d=this.map;if(typeof b=="string"){if(b===""){d.addLayer(m,b);return}for(var u=this.getMapLayers(),y=0;y<u.length;y++)if(b===u[y].id){d.addLayer(m,b);return}x.warn(["Trying to add layer with *below* value",b,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}d.addLayer(m)},l.project=function(m){return this.map.project(new g.LngLat(m[0],m[1]))},l.getView=function(){var m=this.map,b=m.getCenter(),d=b.lng,u=b.lat,y={lon:d,lat:u},f=m.getCanvas(),P=parseInt(f.style.width),L=parseInt(f.style.height);return{center:y,zoom:m.getZoom(),bearing:m.getBearing(),pitch:m.getPitch(),_derived:{coordinates:[m.unproject([0,0]).toArray(),m.unproject([P,0]).toArray(),m.unproject([P,L]).toArray(),m.unproject([0,L]).toArray()]}}},l.getViewEdits=function(m){for(var b=this.id,d=["center","zoom","bearing","pitch"],u={},y=0;y<d.length;y++){var f=d[y];u[b+"."+f]=m[f]}return u},l.getViewEditsWithDerived=function(m){var b=this.id,d=this.getViewEdits(m);return d[b+"._derived"]=m._derived,d};function w(m,b){var d={};if(x.isPlainObject(m))d.id=m.id,d.style=m;else if(typeof m=="string")if(d.id=m,v.styleValuesMapbox.indexOf(m)!==-1)d.style=S(m);else if(v.stylesNonMapbox[m]){d.style=v.stylesNonMapbox[m];var u=d.style.sources["plotly-"+m],y=u?u.tiles:void 0;y&&y[0]&&y[0].slice(-9)==="?api_key="&&(y[0]+=b._mapboxAccessToken)}else d.style=m;else d.id=v.styleValueDflt,d.style=S(v.styleValueDflt);return d.transition={duration:0,delay:0},d}function S(m){return v.styleUrlPrefix+m+"-"+v.styleUrlSuffix}function E(m){return[m.lon,m.lat]}H.exports=T}}),eq=Ye({"src/plots/mapbox/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=up(),M=Sx();H.exports=function(o,a,i){x(o,a,i,{type:"mapbox",attributes:M,handleDefaults:e,partition:"y",accessToken:a._mapboxAccessToken})};function e(r,o,a,i){a("accesstoken",i.accessToken),a("style"),a("center.lon"),a("center.lat"),a("zoom"),a("bearing"),a("pitch");var n=a("bounds.west"),s=a("bounds.east"),c=a("bounds.south"),h=a("bounds.north");(n===void 0||s===void 0||c===void 0||h===void 0)&&delete o.bounds,A(r,o,{name:"layers",handleItemDefaults:t}),o._input=r}function t(r,o){function a(v,p){return g.coerce(r,o,M.layers,v,p)}var i=a("visible");if(i){var n=a("sourcetype"),s=n==="raster"||n==="image";a("source"),a("sourceattribution"),n==="vector"&&a("sourcelayer"),n==="image"&&a("coordinates");var c;s&&(c="raster");var h=a("type",c);s&&h!=="raster"&&(h=o.type="raster",g.log("Source types *raster* and *image* must drawn *raster* layer type.")),a("below"),a("color"),a("opacity"),a("minzoom"),a("maxzoom"),h==="circle"&&a("circle.radius"),h==="line"&&(a("line.width"),a("line.dash")),h==="fill"&&a("fill.outlinecolor"),h==="symbol"&&(a("symbol.icon"),a("symbol.iconsize"),a("symbol.text"),g.coerceFont(a,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),a("symbol.textposition"),a("symbol.placement"))}}}}),ST=Ye({"src/plots/mapbox/index.js"(X){"use strict";var H=Tk(),g=ta(),x=g.strTranslate,A=g.strScale,M=jh().getSubplotCalcData,e=vd(),t=_n(),r=Bo(),o=jl(),a=QV(),i="mapbox",n=X.constants=am();X.name=i,X.attr="subplot",X.idRoot=i,X.idRegex=X.attrRegex=g.counterRegex(i);var s=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");X.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},X.layoutAttributes=Sx(),X.supplyLayoutDefaults=eq();var c=!0;X.plot=function(T){c&&(c=!1,g.warn(s));var l=T._fullLayout,_=T.calcdata,w=l._subplots[i];if(H.version!==n.requiredVersion)throw new Error(n.wrongVersionErrorMsg);var S=h(T,w);H.accessToken=S;for(var E=0;E<w.length;E++){var m=w[E],b=M(_,i,m),d=l[m],u=d._subplot;u||(u=new a(T,m),l[m]._subplot=u),u.viewInitial||(u.viewInitial={center:g.extendFlat({},d.center),zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),u.plot(b,l,T._promises)}},X.clean=function(p,T,l,_){for(var w=_._subplots[i]||[],S=0;S<w.length;S++){var E=w[S];!T[E]&&_[E]._subplot&&_[E]._subplot.destroy()}},X.toSVG=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=T._size,w=0;w<l.length;w++){var S=T[l[w]],E=S.domain,m=S._subplot,b=m.toImage("png"),d=T._glimages.append("svg:image");d.attr({xmlns:e.svg,"xlink:href":b,x:_.l+_.w*E.x[0],y:_.t+_.h*(1-E.y[1]),width:_.w*(E.x[1]-E.x[0]),height:_.h*(E.y[1]-E.y[0]),preserveAspectRatio:"none"});var u=t.select(S._subplot.div),y=u.select(".mapboxgl-ctrl-logo").node().offsetParent===null;if(!y){var f=T._glimages.append("g");f.attr("transform",x(_.l+_.w*E.x[0]+10,_.t+_.h*(1-E.y[0])-31)),f.append("path").attr("d",n.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),f.append("path").attr("d",n.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),f.append("path").attr("d",n.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),f.append("polygon").attr("points",n.mapboxLogo.polygon).style({opacity:.9,fill:"#ffffff","enable-background":"new"})}var P=u.select(".mapboxgl-ctrl-attrib").text().replace("Improve this map",""),L=T._glimages.append("g"),z=L.append("text");z.text(P).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":P});var F=r.bBox(z.node()),B=_.w*(E.x[1]-E.x[0]);if(F.width>B/2){var O=P.split("|").join("<br>");z.text(O).attr("data-unformatted",O).call(o.convertToTspans,p),F=r.bBox(z.node())}z.attr("transform",x(-3,-F.height+8)),L.insert("rect",".static-attribution").attr({x:-F.width-6,y:-F.height-3,width:F.width+6,height:F.height+3,fill:"rgba(255, 255, 255, 0.75)"});var I=1;F.width+6>B&&(I=B/(F.width+6));var N=[_.l+_.w*E.x[1],_.t+_.h*(1-E.y[0])];L.attr("transform",x(N[0],N[1])+A(I))}};function h(p,T){var l=p._fullLayout,_=p._context;if(_.mapboxAccessToken==="")return"";for(var w=[],S=[],E=!1,m=!1,b=0;b<T.length;b++){var d=l[T[b]],u=d.accesstoken;v(d.style)&&(u?g.pushUnique(w,u):(v(d._input.style)&&(g.error("Uses Mapbox map style, but did not set an access token."),E=!0),m=!0)),u&&g.pushUnique(S,u)}if(m){var y=E?n.noAccessTokenErrorMsg:n.missingStyleErrorMsg;throw g.error(y),new Error(y)}return w.length?(w.length>1&&g.warn(n.multipleTokensErrorMsg),w[0]):(S.length&&g.log(["Listed mapbox access token(s)",S.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function v(p){return typeof p=="string"&&(n.styleValuesMapbox.indexOf(p)!==-1||p.indexOf("mapbox://")===0||p.indexOf("stamen")===0)}X.updateFx=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=0;_<l.length;_++){var w=T[l[_]]._subplot;w.updateFx(T)}}}}),tq=Ye({"src/traces/scattermapbox/index.js"(X,H){"use strict";var g=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:TT(),supplyDefaults:ZV(),colorbar:cp(),formatLabels:bk(),calc:aT(),plot:YV(),hoverPoints:AT().hoverPoints,eventData:KV(),selectPoints:JV(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.update(A)}},moduleType:"trace",name:"scattermapbox",basePlotModule:ST(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}}}),rq=Ye({"lib/scattermapbox.js"(X,H){"use strict";H.exports=tq()}}),Ak=Ye({"src/traces/choroplethmapbox/attributes.js"(X,H){"use strict";var g=M1(),x=tu(),A=xs().hovertemplateAttrs,M=Pl(),e=Oo().extendFlat;H.exports=e({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:e({},g.featureidkey,{}),below:{valType:"string",editType:"plot"},text:g.text,hovertext:g.hovertext,marker:{line:{color:e({},g.marker.line.color,{editType:"plot"}),width:e({},g.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:e({},g.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:e({},g.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:e({},g.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:g.hoverinfo,hovertemplate:A({},{keys:["properties"]}),showlegend:e({},M.showlegend,{dflt:!1})},x("",{cLetter:"z",editTypeOverride:"calc"}))}}),aq=Ye({"src/traces/choroplethmapbox/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Ak();H.exports=function(e,t,r,o){function a(h,v){return g.coerce(e,t,A,h,v)}var i=a("locations"),n=a("z"),s=a("geojson");if(!g.isArrayOrTypedArray(i)||!i.length||!g.isArrayOrTypedArray(n)||!n.length||!(typeof s=="string"&&s!==""||g.isPlainObject(s))){t.visible=!1;return}a("featureidkey"),t._length=Math.min(i.length,n.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),Sk=Ye({"src/traces/choroplethmapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Su(),M=Bo(),e=dg().makeBlank,t=vg();function r(a){var i=a[0].trace,n=i.visible===!0&&i._length!==0,s={layout:{visibility:"none"},paint:{}},c={layout:{visibility:"none"},paint:{}},h=i._opts={fill:s,line:c,geojson:e()};if(!n)return h;var v=t.extractTraceFeature(a);if(!v)return h;var p=A.makeColorScaleFuncFromTrace(i),T=i.marker,l=T.line||{},_;x.isArrayOrTypedArray(T.opacity)&&(_=function(y){var f=y.mo;return g(f)?+x.constrain(f,0,1):0});var w;x.isArrayOrTypedArray(l.color)&&(w=function(y){return y.mlc});var S;x.isArrayOrTypedArray(l.width)&&(S=function(y){return y.mlw});for(var E=0;E<a.length;E++){var m=a[E],b=m.fOut;if(b){var d=b.properties;d.fc=p(m.z),_&&(d.mo=_(m)),w&&(d.mlc=w(m)),S&&(d.mlw=S(m)),m.ct=d.ct,m._polygons=t.feature2polygons(b)}}var u=_?{type:"identity",property:"mo"}:T.opacity;return x.extendFlat(s.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":u}),x.extendFlat(c.paint,{"line-color":w?{type:"identity",property:"mlc"}:l.color,"line-width":S?{type:"identity",property:"mlw"}:l.width,"line-opacity":u}),s.layout.visibility="visible",c.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:v},o(a),h}function o(a){var i=a[0].trace,n=i._opts,s;if(i.selectedpoints){for(var c=M.makeSelectedPointStyleFns(i),h=0;h<a.length;h++){var v=a[h];v.fOut&&(v.fOut.properties.mo2=c.selectedOpacityFn(v))}s={type:"identity",property:"mo2"}}else s=x.isArrayOrTypedArray(i.marker.opacity)?{type:"identity",property:"mo"}:i.marker.opacity;return x.extendFlat(n.fill.paint,{"fill-opacity":s}),x.extendFlat(n.line.paint,{"line-opacity":s}),n}H.exports={convert:r,convertOnSelect:o}}}),iq=Ye({"src/traces/choroplethmapbox/plot.js"(X,H){"use strict";var g=Sk().convert,x=Sk().convertOnSelect,A=am().traceLayerPrefix;function M(t,r){this.type="choroplethmapbox",this.subplot=t,this.uid=r,this.sourceId="source-"+r,this.layerList=[["fill",A+r+"-fill"],["line",A+r+"-line"]],this.below=null}var e=M.prototype;e.update=function(t){this._update(g(t)),t[0].trace._glTrace=this},e.updateOnSelect=function(t){this._update(x(t))},e._update=function(t){var r=this.subplot,o=this.layerList,a=r.belowLookup["trace-"+this.uid];r.map.getSource(this.sourceId).setData(t.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(t,a),this.below=a);for(var i=0;i<o.length;i++){var n=o[i],s=n[0],c=n[1],h=t[s];r.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&r.setOptions(c,"setPaintProperty",h.paint)}},e._addLayers=function(t,r){for(var o=this.subplot,a=this.layerList,i=this.sourceId,n=0;n<a.length;n++){var s=a[n],c=s[0],h=t[c];o.addLayer({type:c,id:s[1],source:i,layout:h.layout,paint:h.paint},r)}},e._removeLayers=function(){for(var t=this.subplot.map,r=this.layerList,o=r.length-1;o>=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),nq=Ye({"src/traces/choroplethmapbox/index.js"(X,H){"use strict";var g=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Ak(),supplyDefaults:aq(),colorbar:ag(),calc:sT(),plot:iq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.updateOnSelect(A)}},getBelow:function(x,A){for(var M=A.getMapLayers(),e=M.length-2;e>=0;e--){var t=M[e].id;if(typeof t=="string"&&t.indexOf("water")===0){for(var r=e+1;r<M.length;r++)if(t=M[r].id,typeof t=="string"&&t.indexOf("plotly-")===-1)return t}}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:ST(),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}}}),oq=Ye({"lib/choroplethmapbox.js"(X,H){"use strict";H.exports=nq()}}),Mk=Ye({"src/traces/densitymapbox/attributes.js"(X,H){"use strict";var g=tu(),x=xs().hovertemplateAttrs,A=Pl(),M=TT(),e=Oo().extendFlat;H.exports=e({lon:M.lon,lat:M.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:M.text,hovertext:M.hovertext,hoverinfo:e({},A.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:x(),showlegend:e({},A.showlegend,{dflt:!1})},g("",{cLetter:"z",editTypeOverride:"calc"}))}}),sq=Ye({"src/traces/densitymapbox/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Mk();H.exports=function(e,t,r,o){function a(c,h){return g.coerce(e,t,A,c,h)}var i=a("lon")||[],n=a("lat")||[],s=Math.min(i.length,n.length);if(!s){t.visible=!1;return}t._length=s,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),x(e,t,o,a,{prefix:"",cLetter:"z"})}}}),lq=Ye({"src/traces/densitymapbox/calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=jp(),e=ta()._;H.exports=function(r,o){for(var a=o._length,i=new Array(a),n=o.z,s=x(n)&&n.length,c=0;c<a;c++){var h=i[c]={},v=o.lon[c],p=o.lat[c];if(h.lonlat=g(v)&&g(p)?[+v,+p]:[A,A],s){var T=n[c];h.z=g(T)?T:A}}return M(r,o,{vals:s?n:[0,1],containerStr:"",cLetter:"z"}),a&&(i[0].t={labels:{lat:e(r,"lat:")+" ",lon:e(r,"lon:")+" "}}),i}}}),uq=Ye({"src/traces/densitymapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Su(),e=ks().BADNUM,t=dg().makeBlank;H.exports=function(o){var a=o[0].trace,i=a.visible===!0&&a._length!==0,n={layout:{visibility:"none"},paint:{}},s=a._opts={heatmap:n,geojson:t()};if(!i)return s;var c=[],h,v=a.z,p=a.radius,T=x.isArrayOrTypedArray(v)&&v.length,l=x.isArrayOrTypedArray(p);for(h=0;h<o.length;h++){var _=o[h],w=_.lonlat;if(w[0]!==e){var S={};if(T){var E=_.z;S.z=E!==e?E:0}l&&(S.r=g(p[h])&&p[h]>0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h<b.length;h++)y.push(b[h][0],b[h][1]);var f=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return x.extendFlat(s.heatmap.paint,{"heatmap-weight":T?f:1/(m.max-m.min),"heatmap-color":y,"heatmap-radius":l?{type:"identity",property:"r"}:a.radius,"heatmap-opacity":a.opacity}),s.geojson={type:"FeatureCollection",features:c},s.heatmap.layout.visibility="visible",s}}}),cq=Ye({"src/traces/densitymapbox/plot.js"(X,H){"use strict";var g=uq(),x=am().traceLayerPrefix;function A(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",x+t+"-heatmap"]],this.below=null}var M=A.prototype;M.update=function(e){var t=this.subplot,r=this.layerList,o=g(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(o.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(o,a),this.below=a);for(var i=0;i<r.length;i++){var n=r[i],s=n[0],c=n[1],h=o[s];t.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&t.setOptions(c,"setPaintProperty",h.paint)}},M._addLayers=function(e,t){for(var r=this.subplot,o=this.layerList,a=this.sourceId,i=0;i<o.length;i++){var n=o[i],s=n[0],c=e[s];r.addLayer({type:s,id:n[1],source:a,layout:c.layout,paint:c.paint},t)}},M._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),fq=Ye({"src/traces/densitymapbox/hover.js"(X,H){"use strict";var g=Co(),x=AT().hoverPoints,A=AT().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),hq=Ye({"src/traces/densitymapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),pq=Ye({"src/traces/densitymapbox/index.js"(X,H){"use strict";var g=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Mk(),supplyDefaults:sq(),colorbar:ag(),formatLabels:bk(),calc:lq(),plot:cq(),hoverPoints:fq(),eventData:hq(),getBelow:function(x,A){for(var M=A.getMapLayers(),e=0;e<M.length;e++){var t=M[e],r=t.id;if(t.type==="symbol"&&typeof r=="string"&&r.indexOf("plotly-")===-1)return r}},moduleType:"trace",name:"densitymapbox",basePlotModule:ST(),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}}}),dq=Ye({"lib/densitymapbox.js"(X,H){"use strict";H.exports=pq()}}),vq=Ye({"src/plots/map/styles/arcgis-sat-hybrid.js"(X,H){H.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin}
{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}}}),mq=Ye({"src/plots/map/styles/arcgis-sat.js"(X,H){H.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}}}),_g=Ye({"src/plots/map/constants.js"(X,H){"use strict";var g=Km(),x=vq(),A=mq(),M='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',e="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",t="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",r="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",o="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",a="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",i="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",n={basic:r,streets:r,outdoors:r,light:e,dark:t,satellite:A,"satellite-streets":x,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:M,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":e,"carto-darkmatter":t,"carto-voyager":r,"carto-positron-nolabels":o,"carto-darkmatter-nolabels":a,"carto-voyager-nolabels":i},s=g(n);H.exports={styleValueDflt:"basic",stylesMap:n,styleValuesMap:s,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",s.join(", "),"or use a tile service."].join(`
`),mapOnErrorMsg:"Map error."}}}),Mx=Ye({"src/plots/map/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=_g(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("map",".layers",!0)],domain:A({name:"map"}),style:{valType:"any",values:o.styleValuesMap,dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),MT=Ye({"src/traces/scattermap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Mx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Mx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),Ek=Ye({"src/traces/scattermap/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),gq=Ye({"src/traces/scattermap/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=MT(),o=Ek().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),kk=Ye({"src/traces/scattermap/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),Ck=Ye({"src/plots/map/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),yq=Ye({"src/traces/scattermap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=Ek().isSupportedFont,i=Ck(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P<E.length;P++){var N=E[P],U=N.lonlat;if(!_(U)){var W={};F&&(W.mcc=N.mcc=F(N.mc)),B&&(W.mrc=N.mrc=B(N.ms)),O&&(W.mo=O(N.mo)),d&&(W.selected=N.selected||0),I.push({type:"Feature",id:P+1,geometry:{type:"Point",coordinates:U},properties:W})}}var Q;if(d)for(Q=t.makeSelectedPointStyleFns(m),P=0;P<I.length;P++){var ue=I[P].properties;Q.selectedOpacityFn&&(ue.mo=L(Q.selectedOpacityFn(ue))),Q.selectedColorFn&&(ue.mcc=Q.selectedColorFn(ue)),Q.selectedSizeFn&&(ue.mrc=Q.selectedSizeFn(ue))}return{geojson:{type:"FeatureCollection",features:I},mcc:u||Q&&Q.selectedColorFn?{type:"identity",property:"mcc"}:b.color,mrc:y||Q&&Q.selectedSizeFn?{type:"identity",property:"mrc"}:z(b.size),mo:f||Q&&Q.selectedOpacityFn?{type:"identity",property:"mo"}:L(b.opacity)}}function p(E,m){for(var b=m._fullLayout,d=E[0].trace,u=d.marker||{},y=u.symbol,f=u.angle,P=y!=="circle"?T(y):l,L=f!=="auto"?T(f,!0):l,z=o.hasText(d)?T(d.text):l,F=[],B=0;B<E.length;B++){var O=E[B];if(!_(O.lonlat)){var I=d.texttemplate,N;if(I){var U=Array.isArray(I)?I[B]||"":I,W=d._module.formatLabels(O,d,b),Q={};n(Q,d,O.i);var ue=d._meta||{};N=x.texttemplateString(U,W,b._d3locale,Q,O,ue)}else N=z(B);N&&(N=N.replace(s,"").replace(c,`
`)),F.push({type:"Feature",geometry:{type:"Point",coordinates:O.lonlat},properties:{symbol:P(B),angle:L(B),text:N}})}}return{type:"FeatureCollection",features:F}}function T(E,m){return x.isArrayOrTypedArray(E)?m?function(b){return g(E[b])?+E[b]:0}:function(b){return E[b]}:E?function(){return E}:l}function l(){return""}function _(E){return E[0]===A}function w(E,m){var b;if(x.isArrayOrTypedArray(E)&&x.isArrayOrTypedArray(m)){b=["step",["get","point_count"],E[0]];for(var d=1;d<E.length;d++)b.push(m[d-1],E[d])}else b=E;return b}function S(E){var m=E.textfont,b=m.family,d=m.style,u=m.weight,y=b.split(" "),f=y[y.length-1]==="Italic";f&&y.pop(),f=f||d==="italic";var P=y.join(" ");u==="bold"&&y.indexOf("Bold")===-1?P+=" Bold":u<=1e3&&(y[0]==="Metropolis"?(P="Metropolis",u>850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),_q=Ye({"src/traces/scattermap/plot.js"(X,H){"use strict";var g=ta(),x=yq(),A=_g().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermap",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h<c.length;h++)if(c[h].id===n){s=!0;break}s?(this.subplot.setOptions(n,"setLayoutProperty",i.layout),i.layout.visibility==="visible"&&this.subplot.setOptions(n,"setPaintProperty",i.paint)):this.subplot.addLayer(i,a)},t.update=function(o){var a=o[0].trace,i=this.subplot,n=i.map,s=x(i.gd,o),c=i.belowLookup["trace-"+this.uid],h=!!(a.cluster&&a.cluster.enabled),v=!!this.clusterEnabled,p=this;function T(u){u||p.addSource("circle",s.circle,a.cluster);for(var y=M.cluster,f=0;f<y.length;f++){var P=y[f],L=s[P];p.addLayer(P,L,c)}}function l(u){for(var y=M.cluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f<y.length;f++){var P=y[f],L=s[P];u||p.addSource(P,L),p.addLayer(P,L,c)}}function w(u){for(var y=M.nonCluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y<u.length;y++){var f=u[y],P=s[f];P&&(i.setOptions(p.layerIds[f],"setLayoutProperty",P.layout),P.layout.visibility==="visible"&&(f!=="cluster"&&p.setSourceData(f,P),i.setOptions(p.layerIds[f],"setPaintProperty",P.paint)))}}var b=this.isHidden,d=a.visible!==!0;d?b||S():b?d||E():v!==h?(S(),E()):(this.below!==c&&(S(!0),E(!0)),m()),this.clusterEnabled=h,this.isHidden=d,this.below=c,o[0].trace._glTrace=this},t.dispose=function(){for(var o=this.subplot.map,a=this.clusterEnabled?M.cluster:M.nonCluster,i=a.length-1;i>=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p<M.cluster.length;p++)T=M.cluster[p],l=h[T],c.addLayer(T,l,v);else for(p=0;p<M.nonCluster.length;p++)T=M.nonCluster[p],l=h[T],c.addSource(T,l,i.cluster),c.addLayer(T,l,v);return a[0].trace._glTrace=c,c}}}),ET=Ye({"src/traces/scattermap/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=s1(),M=x.fillText,e=ks().BADNUM,t=_g().traceLayerPrefix;function r(a,i,n){var s=a.cd,c=s[0].trace,h=a.xa,v=a.ya,p=a.subplot,T=[],l=t+c.uid+"-circle",_=c.cluster&&c.cluster.enabled;if(_){var w=p.map.queryRenderedFeatures(null,{layers:[l]});T=w.map(function(B){return B.id})}var S=i>=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("<br>")}H.exports={hoverPoints:r,getExtraText:o}}}),xq=Ye({"src/traces/scattermap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),bq=Ye({"src/traces/scattermap/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s<r.length;s++)r[s].selected=0;else for(s=0;s<r.length;s++){var c=r[s],h=c.lonlat;if(h[0]!==A){var v=[g.modHalf(h[0],360),h[1]],p=[o.c2p(v),a.c2p(v)];t.contains(p,null,s,e)?(i.push({pointNumber:s,lon:h[0],lat:h[1]}),c.selected=1):c.selected=0}}return i}}}),wq=Ye({"node_modules/maplibre-gl/dist/maplibre-gl.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():(g=typeof globalThis<"u"?globalThis:g||self,g.maplibregl=x())})(X,function(){"use strict";var g={},x={};function A(e,t,r){if(x[e]=r,e==="index"){var o="var sharedModule = {}; ("+x.shared+")(sharedModule); ("+x.worker+")(sharedModule);",a={};return x.shared(a),x.index(g,a),typeof window<"u"&&g.setWorkerUrl(window.URL.createObjectURL(new Blob([o],{type:"text/javascript"}))),g}}A("shared",["exports"],function(e){"use strict";function t(q,D,Y,pe){return new(Y||(Y=Promise))(function(Ce,Ue){function Ge(Ft){try{Tt(pe.next(Ft))}catch($t){Ue($t)}}function ut(Ft){try{Tt(pe.throw(Ft))}catch($t){Ue($t)}}function Tt(Ft){var $t;Ft.done?Ce(Ft.value):($t=Ft.value,$t instanceof Y?$t:new Y(function(lr){lr($t)})).then(Ge,ut)}Tt((pe=pe.apply(q,D||[])).next())})}function r(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}typeof SuppressedError=="function"&&SuppressedError;var o=a;function a(q,D){this.x=q,this.y=D}a.prototype={clone:function(){return new a(this.x,this.y)},add:function(q){return this.clone()._add(q)},sub:function(q){return this.clone()._sub(q)},multByPoint:function(q){return this.clone()._multByPoint(q)},divByPoint:function(q){return this.clone()._divByPoint(q)},mult:function(q){return this.clone()._mult(q)},div:function(q){return this.clone()._div(q)},rotate:function(q){return this.clone()._rotate(q)},rotateAround:function(q,D){return this.clone()._rotateAround(q,D)},matMult:function(q){return this.clone()._matMult(q)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(q){return this.x===q.x&&this.y===q.y},dist:function(q){return Math.sqrt(this.distSqr(q))},distSqr:function(q){var D=q.x-this.x,Y=q.y-this.y;return D*D+Y*Y},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(q){return Math.atan2(this.y-q.y,this.x-q.x)},angleWith:function(q){return this.angleWithSep(q.x,q.y)},angleWithSep:function(q,D){return Math.atan2(this.x*D-this.y*q,this.x*q+this.y*D)},_matMult:function(q){var D=q[2]*this.x+q[3]*this.y;return this.x=q[0]*this.x+q[1]*this.y,this.y=D,this},_add:function(q){return this.x+=q.x,this.y+=q.y,this},_sub:function(q){return this.x-=q.x,this.y-=q.y,this},_mult:function(q){return this.x*=q,this.y*=q,this},_div:function(q){return this.x/=q,this.y/=q,this},_multByPoint:function(q){return this.x*=q.x,this.y*=q.y,this},_divByPoint:function(q){return this.x/=q.x,this.y/=q.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var q=this.y;return this.y=this.x,this.x=-q,this},_rotate:function(q){var D=Math.cos(q),Y=Math.sin(q),pe=Y*this.x+D*this.y;return this.x=D*this.x-Y*this.y,this.y=pe,this},_rotateAround:function(q,D){var Y=Math.cos(q),pe=Math.sin(q),Ce=D.y+pe*(this.x-D.x)+Y*(this.y-D.y);return this.x=D.x+Y*(this.x-D.x)-pe*(this.y-D.y),this.y=Ce,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},a.convert=function(q){return q instanceof a?q:Array.isArray(q)?new a(q[0],q[1]):q};var i=r(o),n=s;function s(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}s.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)<D)return Y;var Ue=this.sampleCurveDerivativeX(Y);if(Math.abs(Ue)<1e-6)break;Y-=Ce/Ue}var Ge=0,ut=1;for(Y=q,pe=0;pe<20&&(Ce=this.sampleCurveX(Y),!(Math.abs(Ce-q)<D));pe++)q>Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var c=r(n);let h,v;function p(){return h==null&&(h=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),h}function T(){if(v==null&&(v=!1,p())){let D=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(D){for(let pe=0;pe<5*5;pe++){let Ce=4*pe;D.fillStyle=`rgb(${Ce},${Ce+1},${Ce+2})`,D.fillRect(pe%5,Math.floor(pe/5),1,1)}let Y=D.getImageData(0,0,5,5).data;for(let pe=0;pe<5*5*4;pe++)if(pe%4!=3&&Y[pe]!==pe){v=!0;break}}}return v||!1}function l(q,D,Y,pe){let Ce=new c(q,D,Y,pe);return Ue=>Ce.solve(Ue)}let _=l(.25,.1,.25,1);function w(q,D,Y){return Math.min(Y,Math.max(D,q))}function S(q,D,Y){let pe=Y-D,Ce=((q-D)%pe+pe)%pe+D;return Ce===D?Y:Ce}function E(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}let m=1;function b(q,D,Y){let pe={};for(let Ce in q)pe[Ce]=D.call(this,q[Ce],Ce,q);return pe}function d(q,D,Y){let pe={};for(let Ce in q)D.call(this,q[Ce],Ce,q)&&(pe[Ce]=q[Ce]);return pe}function u(q){return Array.isArray(q)?q.map(u):typeof q=="object"&&q?b(q,u):q}let y={};function f(q){y[q]||(typeof console<"u"&&console.warn(q),y[q]=!0)}function P(q,D,Y){return(Y.y-q.y)*(D.x-q.x)>(D.y-q.y)*(Y.x-q.x)}function L(q){return typeof WorkerGlobalScope<"u"&&q!==void 0&&q instanceof WorkerGlobalScope}let z=null;function F(q){return typeof ImageBitmap<"u"&&q instanceof ImageBitmap}let B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function O(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");let Ue=new VideoFrame(q,{timestamp:0});try{let Ge=Ue?.format;if(!Ge||!Ge.startsWith("BGR")&&!Ge.startsWith("RGB"))throw new Error(`Unrecognized format ${Ge}`);let ut=Ge.startsWith("BGR"),Tt=new Uint8ClampedArray(pe*Ce*4);if(yield Ue.copyTo(Tt,function(Ft,$t,lr,Ar,zr){let Kr=4*Math.max(-$t,0),la=(Math.max(0,lr)-lr)*Ar*4+Kr,za=4*Ar,ja=Math.max(0,$t),gi=Math.max(0,lr);return{rect:{x:ja,y:gi,width:Math.min(Ft.width,$t+Ar)-ja,height:Math.min(Ft.height,lr+zr)-gi},layout:[{offset:la,stride:za}]}}(q,D,Y,pe,Ce)),ut)for(let Ft=0;Ft<Tt.length;Ft+=4){let $t=Tt[Ft];Tt[Ft]=Tt[Ft+2],Tt[Ft+2]=$t}return Tt}finally{Ue.close()}})}let I,N,U="AbortError";function W(){return new Error(U)}let Q={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:""};function ue(q){return Q.REGISTERED_PROTOCOLS[q.substring(0,q.indexOf("://"))]}let se="global-dispatcher";class he extends Error{constructor(D,Y,pe,Ce){super(`AJAXError: ${Y} (${D}): ${pe}`),this.status=D,this.statusText=Y,this.url=pe,this.body=Ce}}let G=()=>L(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,$=function(q,D){if(/:\/\//.test(q.url)&&!/^https?:|^file:/.test(q.url)){let pe=ue(q.url);if(pe)return pe(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,targetMapId:se},D)}if(!(/^file:/.test(Y=q.url)||/^file:/.test(G())&&!/^\w+:/.test(Y))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(pe,Ce){return t(this,void 0,void 0,function*(){let Ue=new Request(pe.url,{method:pe.method||"GET",body:pe.body,credentials:pe.credentials,headers:pe.headers,cache:pe.cache,referrer:G(),signal:Ce.signal});pe.type!=="json"||Ue.headers.has("Accept")||Ue.headers.set("Accept","application/json");let Ge=yield fetch(Ue);if(!Ge.ok){let Ft=yield Ge.blob();throw new he(Ge.status,Ge.statusText,pe.url,Ft)}let ut;ut=pe.type==="arrayBuffer"||pe.type==="image"?Ge.arrayBuffer():pe.type==="json"?Ge.json():Ge.text();let Tt=yield ut;if(Ce.signal.aborted)throw W();return{data:Tt,cacheControl:Ge.headers.get("Cache-Control"),expires:Ge.headers.get("Expires")}})}(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,mustQueue:!0,targetMapId:se},D)}var Y;return function(pe,Ce){return new Promise((Ue,Ge)=>{var ut;let Tt=new XMLHttpRequest;Tt.open(pe.method||"GET",pe.url,!0),pe.type!=="arrayBuffer"&&pe.type!=="image"||(Tt.responseType="arraybuffer");for(let Ft in pe.headers)Tt.setRequestHeader(Ft,pe.headers[Ft]);pe.type==="json"&&(Tt.responseType="text",!((ut=pe.headers)===null||ut===void 0)&&ut.Accept||Tt.setRequestHeader("Accept","application/json")),Tt.withCredentials=pe.credentials==="include",Tt.onerror=()=>{Ge(new Error(Tt.statusText))},Tt.onload=()=>{if(!Ce.signal.aborted)if((Tt.status>=200&&Tt.status<300||Tt.status===0)&&Tt.response!==null){let Ft=Tt.response;if(pe.type==="json")try{Ft=JSON.parse(Tt.response)}catch($t){return void Ge($t)}Ue({data:Ft,cacheControl:Tt.getResponseHeader("Cache-Control"),expires:Tt.getResponseHeader("Expires")})}else{let Ft=new Blob([Tt.response],{type:Tt.getResponseHeader("Content-Type")});Ge(new he(Tt.status,Tt.statusText,pe.url,Ft))}},Ce.signal.addEventListener("abort",()=>{Tt.abort(),Ge(W())}),Tt.send(pe.body)})}(q,D)};function J(q){if(!q||q.indexOf("://")<=0||q.indexOf("data:image/")===0||q.indexOf("blob:")===0)return!0;let D=new URL(q),Y=window.location;return D.protocol===Y.protocol&&D.host===Y.host}function Z(q,D,Y){Y[q]&&Y[q].indexOf(D)!==-1||(Y[q]=Y[q]||[],Y[q].push(D))}function re(q,D,Y){if(Y&&Y[q]){let pe=Y[q].indexOf(D);pe!==-1&&Y[q].splice(pe,1)}}class ne{constructor(D,Y={}){E(this,Y),this.type=D}}class j extends ne{constructor(D,Y={}){super("error",E({error:D},Y))}}class ee{on(D,Y){return this._listeners=this._listeners||{},Z(D,Y,this._listeners),this}off(D,Y){return re(D,Y,this._listeners),re(D,Y,this._oneTimeListeners),this}once(D,Y){return Y?(this._oneTimeListeners=this._oneTimeListeners||{},Z(D,Y,this._oneTimeListeners),this):new Promise(pe=>this.once(D,pe))}fire(D,Y){typeof D=="string"&&(D=new ne(D,Y||{}));let pe=D.type;if(this.listens(pe)){D.target=this;let Ce=this._listeners&&this._listeners[pe]?this._listeners[pe].slice():[];for(let ut of Ce)ut.call(this,D);let Ue=this._oneTimeListeners&&this._oneTimeListeners[pe]?this._oneTimeListeners[pe].slice():[];for(let ut of Ue)re(pe,ut,this._oneTimeListeners),ut.call(this,D);let Ge=this._eventedParent;Ge&&(E(D,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Ge.fire(D))}else D instanceof j&&console.error(D.error);return this}listens(D){return this._listeners&&this._listeners[D]&&this._listeners[D].length>0||this._oneTimeListeners&&this._oneTimeListeners[D]&&this._oneTimeListeners[D].length>0||this._eventedParent&&this._eventedParent.listens(D)}setEventedParent(D,Y){return this._eventedParent=D,this._eventedParentData=Y,this}}var ie={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let fe=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function be(q,D){let Y={};for(let pe in q)pe!=="ref"&&(Y[pe]=q[pe]);return fe.forEach(pe=>{pe in D&&(Y[pe]=D[pe])}),Y}function Ae(q,D){if(Array.isArray(q)){if(!Array.isArray(D)||q.length!==D.length)return!1;for(let Y=0;Y<q.length;Y++)if(!Ae(q[Y],D[Y]))return!1;return!0}if(typeof q=="object"&&q!==null&&D!==null){if(typeof D!="object"||Object.keys(q).length!==Object.keys(D).length)return!1;for(let Y in q)if(!Ae(q[Y],D[Y]))return!1;return!0}return q===D}function Be(q,D){q.push(D)}function Ie(q,D,Y){Be(Y,{command:"addSource",args:[q,D[q]]})}function Ze(q,D,Y){Be(D,{command:"removeSource",args:[q]}),Y[q]=!0}function at(q,D,Y,pe){Ze(q,Y,pe),Ie(q,D,Y)}function it(q,D,Y){let pe;for(pe in q[Y])if(Object.prototype.hasOwnProperty.call(q[Y],pe)&&pe!=="data"&&!Ae(q[Y][pe],D[Y][pe]))return!1;for(pe in D[Y])if(Object.prototype.hasOwnProperty.call(D[Y],pe)&&pe!=="data"&&!Ae(q[Y][pe],D[Y][pe]))return!1;return!0}function et(q,D,Y,pe,Ce,Ue){q=q||{},D=D||{};for(let Ge in q)Object.prototype.hasOwnProperty.call(q,Ge)&&(Ae(q[Ge],D[Ge])||Y.push({command:Ue,args:[pe,Ge,D[Ge],Ce]}));for(let Ge in D)Object.prototype.hasOwnProperty.call(D,Ge)&&!Object.prototype.hasOwnProperty.call(q,Ge)&&(Ae(q[Ge],D[Ge])||Y.push({command:Ue,args:[pe,Ge,D[Ge],Ce]}))}function lt(q){return q.id}function Me(q,D){return q[D.id]=D,q}class ge{constructor(D,Y,pe,Ce){this.message=(D?`${D}: `:"")+pe,Ce&&(this.identifier=Ce),Y!=null&&Y.__line__&&(this.line=Y.__line__)}}function ce(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}class ze extends Error{constructor(D,Y){super(Y),this.message=Y,this.key=D}}class tt{constructor(D,Y=[]){this.parent=D,this.bindings={};for(let[pe,Ce]of Y)this.bindings[pe]=Ce}concat(D){return new tt(this,D)}get(D){if(this.bindings[D])return this.bindings[D];if(this.parent)return this.parent.get(D);throw new Error(`${D} not found in scope.`)}has(D){return!!this.bindings[D]||!!this.parent&&this.parent.has(D)}}let nt={kind:"null"},Qe={kind:"number"},Ct={kind:"string"},St={kind:"boolean"},Ot={kind:"color"},jt={kind:"object"},ur={kind:"value"},ar={kind:"collator"},Cr={kind:"formatted"},vr={kind:"padding"},_r={kind:"resolvedImage"},yt={kind:"variableAnchorOffsetCollection"};function Fe(q,D){return{kind:"array",itemType:q,N:D}}function Ke(q){if(q.kind==="array"){let D=Ke(q.itemType);return typeof q.N=="number"?`array<${D}, ${q.N}>`:q.itemType.kind==="value"?"array":`array<${D}>`}return q.kind}let Ne=[nt,Qe,Ct,St,Ot,Cr,jt,Fe(ur),vr,_r,yt];function Ee(q,D){if(D.kind==="error")return null;if(q.kind==="array"){if(D.kind==="array"&&(D.N===0&&D.itemType.kind==="value"||!Ee(q.itemType,D.itemType))&&(typeof q.N!="number"||q.N===D.N))return null}else{if(q.kind===D.kind)return null;if(q.kind==="value"){for(let Y of Ne)if(!Ee(Y,D))return null}}return`Expected ${Ke(q)} but found ${Ke(D)} instead.`}function Ve(q,D){return D.some(Y=>Y.kind===q.kind)}function ke(q,D){return D.some(Y=>Y==="null"?q===null:Y==="array"?Array.isArray(q):Y==="object"?q&&!Array.isArray(q)&&typeof q=="object":Y===typeof q)}function Te(q,D){return q.kind==="array"&&D.kind==="array"?q.itemType.kind===D.itemType.kind&&typeof q.N=="number":q.kind===D.kind}let Le=.96422,rt=.82521,dt=4/29,xt=6/29,It=3*xt*xt,Bt=xt*xt*xt,Gt=Math.PI/180,Kt=180/Math.PI;function sr(q){return(q%=360)<0&&(q+=360),q}function sa([q,D,Y,pe]){let Ce,Ue,Ge=La((.2225045*(q=Aa(q))+.7168786*(D=Aa(D))+.0606169*(Y=Aa(Y)))/1);q===D&&D===Y?Ce=Ue=Ge:(Ce=La((.4360747*q+.3850649*D+.1430804*Y)/Le),Ue=La((.0139322*q+.0971045*D+.7141733*Y)/rt));let ut=116*Ge-16;return[ut<0?0:ut,500*(Ce-Ge),200*(Ge-Ue),pe]}function Aa(q){return q<=.04045?q/12.92:Math.pow((q+.055)/1.055,2.4)}function La(q){return q>Bt?Math.pow(q,1/3):q/It+dt}function ka([q,D,Y,pe]){let Ce=(q+16)/116,Ue=isNaN(D)?Ce:Ce+D/500,Ge=isNaN(Y)?Ce:Ce-Y/200;return Ce=1*Ma(Ce),Ue=Le*Ma(Ue),Ge=rt*Ma(Ge),[Ga(3.1338561*Ue-1.6168667*Ce-.4906146*Ge),Ga(-.9787684*Ue+1.9161415*Ce+.033454*Ge),Ga(.0719453*Ue-.2289914*Ce+1.4052427*Ge),pe]}function Ga(q){return(q=q<=.00304?12.92*q:1.055*Math.pow(q,1/2.4)-.055)<0?0:q>1?1:q}function Ma(q){return q>xt?q*q*q:It*(q-dt)}function Ua(q){return parseInt(q.padEnd(2,q),16)/255}function ni(q,D){return Wt(D?q/100:q,0,1)}function Wt(q,D,Y){return Math.min(Math.max(D,q),Y)}function zt(q){return!q.some(Number.isNaN)}let Vt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Ut{constructor(D,Y,pe,Ce=1,Ue=!0){this.r=D,this.g=Y,this.b=pe,this.a=Ce,Ue||(this.r*=Ce,this.g*=Ce,this.b*=Ce,Ce||this.overwriteGetter("rgb",[D,Y,pe,Ce]))}static parse(D){if(D instanceof Ut)return D;if(typeof D!="string")return;let Y=function(pe){if((pe=pe.toLowerCase().trim())==="transparent")return[0,0,0,0];let Ce=Vt[pe];if(Ce){let[Ge,ut,Tt]=Ce;return[Ge/255,ut/255,Tt/255,1]}if(pe.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(pe)){let Ge=pe.length<6?1:2,ut=1;return[Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+Ge)||"ff")]}if(pe.startsWith("rgb")){let Ge=pe.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ge){let[ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi]=Ge,ei=[$t||" ",zr||" ",za].join("");if(ei==="  "||ei==="  /"||ei===",,"||ei===",,,"){let hi=[Ft,Ar,la].join(""),Ei=hi==="%%%"?100:hi===""?255:0;if(Ei){let En=[Wt(+Tt/Ei,0,1),Wt(+lr/Ei,0,1),Wt(+Kr/Ei,0,1),ja?ni(+ja,gi):1];if(zt(En))return En}}return}}let Ue=pe.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ue){let[Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr]=Ue,la=[Tt||" ",$t||" ",Ar].join("");if(la==="  "||la==="  /"||la===",,"||la===",,,"){let za=[+ut,Wt(+Ft,0,100),Wt(+lr,0,100),zr?ni(+zr,Kr):1];if(zt(za))return function([ja,gi,ei,hi]){function Ei(En){let fo=(En+ja/30)%12,ss=gi*Math.min(ei,1-ei);return ei-ss*Math.max(-1,Math.min(fo-3,9-fo,1))}return ja=sr(ja),gi/=100,ei/=100,[Ei(0),Ei(8),Ei(4),hi]}(za)}}}(D);return Y?new Ut(...Y,!1):void 0}get rgb(){let{r:D,g:Y,b:pe,a:Ce}=this,Ue=Ce||1/0;return this.overwriteGetter("rgb",[D/Ue,Y/Ue,pe/Ue,Ce])}get hcl(){return this.overwriteGetter("hcl",function(D){let[Y,pe,Ce,Ue]=sa(D),Ge=Math.sqrt(pe*pe+Ce*Ce);return[Math.round(1e4*Ge)?sr(Math.atan2(Ce,pe)*Kt):NaN,Ge,Y,Ue]}(this.rgb))}get lab(){return this.overwriteGetter("lab",sa(this.rgb))}overwriteGetter(D,Y){return Object.defineProperty(this,D,{value:Y}),Y}toString(){let[D,Y,pe,Ce]=this.rgb;return`rgba(${[D,Y,pe].map(Ue=>Math.round(255*Ue)).join(",")},${Ce})`}}Ut.black=new Ut(0,0,0,1),Ut.white=new Ut(1,1,1,1),Ut.transparent=new Ut(0,0,0,0),Ut.red=new Ut(1,0,0,1);class xr{constructor(D,Y,pe){this.sensitivity=D?Y?"variant":"case":Y?"accent":"base",this.locale=pe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(D,Y){return this.collator.compare(D,Y)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Zr{constructor(D,Y,pe,Ce,Ue){this.text=D,this.image=Y,this.scale=pe,this.fontStack=Ce,this.textColor=Ue}}class pa{constructor(D){this.sections=D}static fromString(D){return new pa([new Zr(D,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(D=>D.text.length!==0||D.image&&D.image.name.length!==0)}static factory(D){return D instanceof pa?D:pa.fromString(D)}toString(){return this.sections.length===0?"":this.sections.map(D=>D.text).join("")}}class Xr{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Xr)return D;if(typeof D=="number")return new Xr([D,D,D,D]);if(Array.isArray(D)&&!(D.length<1||D.length>4)){for(let Y of D)if(typeof Y!="number")return;switch(D.length){case 1:D=[D[0],D[0],D[0],D[0]];break;case 2:D=[D[0],D[1],D[0],D[1]];break;case 3:D=[D[0],D[1],D[2],D[1]]}return new Xr(D)}}toString(){return JSON.stringify(this.values)}}let Ea=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Fa{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Fa)return D;if(Array.isArray(D)&&!(D.length<1)&&D.length%2==0){for(let Y=0;Y<D.length;Y+=2){let pe=D[Y],Ce=D[Y+1];if(typeof pe!="string"||!Ea.has(pe)||!Array.isArray(Ce)||Ce.length!==2||typeof Ce[0]!="number"||typeof Ce[1]!="number")return}return new Fa(D)}}toString(){return JSON.stringify(this.values)}}class qa{constructor(D){this.name=D.name,this.available=D.available}toString(){return this.name}static fromString(D){return D?new qa({name:D,available:!1}):null}}function ya(q,D,Y,pe){return typeof q=="number"&&q>=0&&q<=255&&typeof D=="number"&&D>=0&&D<=255&&typeof Y=="number"&&Y>=0&&Y<=255?pe===void 0||typeof pe=="number"&&pe>=0&&pe<=1?null:`Invalid rgba value [${[q,D,Y,pe].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof pe=="number"?[q,D,Y,pe]:[q,D,Y]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function $a(q){if(q===null||typeof q=="string"||typeof q=="boolean"||typeof q=="number"||q instanceof Ut||q instanceof xr||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa)return!0;if(Array.isArray(q)){for(let D of q)if(!$a(D))return!1;return!0}if(typeof q=="object"){for(let D in q)if(!$a(q[D]))return!1;return!0}return!1}function mt(q){if(q===null)return nt;if(typeof q=="string")return Ct;if(typeof q=="boolean")return St;if(typeof q=="number")return Qe;if(q instanceof Ut)return Ot;if(q instanceof xr)return ar;if(q instanceof pa)return Cr;if(q instanceof Xr)return vr;if(q instanceof Fa)return yt;if(q instanceof qa)return _r;if(Array.isArray(q)){let D=q.length,Y;for(let pe of q){let Ce=mt(pe);if(Y){if(Y===Ce)continue;Y=ur;break}Y=Ce}return Fe(Y||ur,D)}return jt}function gt(q){let D=typeof q;return q===null?"":D==="string"||D==="number"||D==="boolean"?String(q):q instanceof Ut||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa?q.toString():JSON.stringify(q)}class Er{constructor(D,Y){this.type=D,this.value=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'literal' expression requires exactly one argument, but found ${D.length-1} instead.`);if(!$a(D[1]))return Y.error("invalid value");let pe=D[1],Ce=mt(pe),Ue=Y.expectedType;return Ce.kind!=="array"||Ce.N!==0||!Ue||Ue.kind!=="array"||typeof Ue.N=="number"&&Ue.N!==0||(Ce=Ue),new Er(Ce,pe)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class kr{constructor(D){this.name="ExpressionEvaluationError",this.message=D}toJSON(){return this.message}}let br={string:Ct,number:Qe,boolean:St,object:jt};class Tr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe,Ce=1,Ue=D[0];if(Ue==="array"){let ut,Tt;if(D.length>2){let Ft=D[1];if(typeof Ft!="string"||!(Ft in br)||Ft==="object")return Y.error('The item type argument of "array" must be one of string, number, boolean',1);ut=br[Ft],Ce++}else ut=ur;if(D.length>3){if(D[2]!==null&&(typeof D[2]!="number"||D[2]<0||D[2]!==Math.floor(D[2])))return Y.error('The length argument to "array" must be a positive integer literal',2);Tt=D[2],Ce++}pe=Fe(ut,Tt)}else{if(!br[Ue])throw new Error(`Types doesn't contain name = ${Ue}`);pe=br[Ue]}let Ge=[];for(;Ce<D.length;Ce++){let ut=Y.parse(D[Ce],Ce,ur);if(!ut)return null;Ge.push(ut)}return new Tr(pe,Ge)}evaluate(D){for(let Y=0;Y<this.args.length;Y++){let pe=this.args[Y].evaluate(D);if(!Ee(this.type,mt(pe)))return pe;if(Y===this.args.length-1)throw new kr(`Expected value to be of type ${Ke(this.type)}, but found ${Ke(mt(pe))} instead.`)}throw new Error}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Mr={"to-boolean":St,"to-color":Ot,"to-number":Qe,"to-string":Ct};class Fr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[0];if(!Mr[pe])throw new Error(`Can't parse ${pe} as it is not part of the known types`);if((pe==="to-boolean"||pe==="to-string")&&D.length!==2)return Y.error("Expected one argument.");let Ce=Mr[pe],Ue=[];for(let Ge=1;Ge<D.length;Ge++){let ut=Y.parse(D[Ge],Ge,ur);if(!ut)return null;Ue.push(ut)}return new Fr(Ce,Ue)}evaluate(D){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(D);case"color":{let Y,pe;for(let Ce of this.args){if(Y=Ce.evaluate(D),pe=null,Y instanceof Ut)return Y;if(typeof Y=="string"){let Ue=D.parseColor(Y);if(Ue)return Ue}else if(Array.isArray(Y)&&(pe=Y.length<3||Y.length>4?`Invalid rbga value ${JSON.stringify(Y)}: expected an array containing either three or four numeric values.`:ya(Y[0],Y[1],Y[2],Y[3]),!pe))return new Ut(Y[0]/255,Y[1]/255,Y[2]/255,Y[3])}throw new kr(pe||`Could not parse color from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"padding":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Xr.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse padding from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"variableAnchorOffsetCollection":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Fa.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse variableAnchorOffsetCollection from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"number":{let Y=null;for(let pe of this.args){if(Y=pe.evaluate(D),Y===null)return 0;let Ce=Number(Y);if(!isNaN(Ce))return Ce}throw new kr(`Could not convert ${JSON.stringify(Y)} to number.`)}case"formatted":return pa.fromString(gt(this.args[0].evaluate(D)));case"resolvedImage":return qa.fromString(gt(this.args[0].evaluate(D)));default:return gt(this.args[0].evaluate(D))}}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Lr=["Unknown","Point","LineString","Polygon"];class Jr{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Lr[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(D){let Y=this._parseColorCache[D];return Y||(Y=this._parseColorCache[D]=Ut.parse(D)),Y}}class oa{constructor(D,Y,pe=[],Ce,Ue=new tt,Ge=[]){this.registry=D,this.path=pe,this.key=pe.map(ut=>`[${ut}]`).join(""),this.scope=Ue,this.errors=Ge,this.expectedType=Ce,this._isConstant=Y}parse(D,Y,pe,Ce,Ue={}){return Y?this.concat(Y,pe,Ce)._parse(D,Ue):this._parse(D,Ue)}_parse(D,Y){function pe(Ce,Ue,Ge){return Ge==="assert"?new Tr(Ue,[Ce]):Ge==="coerce"?new Fr(Ue,[Ce]):Ce}if(D!==null&&typeof D!="string"&&typeof D!="boolean"&&typeof D!="number"||(D=["literal",D]),Array.isArray(D)){if(D.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let Ce=D[0];if(typeof Ce!="string")return this.error(`Expression name must be a string, but found ${typeof Ce} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let Ue=this.registry[Ce];if(Ue){let Ge=Ue.parse(D,this);if(!Ge)return null;if(this.expectedType){let ut=this.expectedType,Tt=Ge.type;if(ut.kind!=="string"&&ut.kind!=="number"&&ut.kind!=="boolean"&&ut.kind!=="object"&&ut.kind!=="array"||Tt.kind!=="value")if(ut.kind!=="color"&&ut.kind!=="formatted"&&ut.kind!=="resolvedImage"||Tt.kind!=="value"&&Tt.kind!=="string")if(ut.kind!=="padding"||Tt.kind!=="value"&&Tt.kind!=="number"&&Tt.kind!=="array")if(ut.kind!=="variableAnchorOffsetCollection"||Tt.kind!=="value"&&Tt.kind!=="array"){if(this.checkSubtype(ut,Tt))return null}else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"assert")}if(!(Ge instanceof Er)&&Ge.type.kind!=="resolvedImage"&&this._isConstant(Ge)){let ut=new Jr;try{Ge=new Er(Ge.type,Ge.evaluate(ut))}catch(Tt){return this.error(Tt.message),null}}return Ge}return this.error(`Unknown expression "${Ce}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(D===void 0?"'undefined' value invalid. Use null instead.":typeof D=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof D} instead.`)}concat(D,Y,pe){let Ce=typeof D=="number"?this.path.concat(D):this.path,Ue=pe?this.scope.concat(pe):this.scope;return new oa(this.registry,this._isConstant,Ce,Y||null,Ue,this.errors)}error(D,...Y){let pe=`${this.key}${Y.map(Ce=>`[${Ce}]`).join("")}`;this.errors.push(new ze(pe,D))}checkSubtype(D,Y){let pe=Ee(D,Y);return pe&&this.error(pe),pe}}class ca{constructor(D,Y){this.type=Y.type,this.bindings=[].concat(D),this.result=Y}evaluate(D){return this.result.evaluate(D)}eachChild(D){for(let Y of this.bindings)D(Y[1]);D(this.result)}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found ${D.length-1} instead.`);let pe=[];for(let Ue=1;Ue<D.length-1;Ue+=2){let Ge=D[Ue];if(typeof Ge!="string")return Y.error(`Expected string, but found ${typeof Ge} instead.`,Ue);if(/[^a-zA-Z0-9_]/.test(Ge))return Y.error("Variable names must contain only alphanumeric characters or '_'.",Ue);let ut=Y.parse(D[Ue+1],Ue+1);if(!ut)return null;pe.push([Ge,ut])}let Ce=Y.parse(D[D.length-1],D.length-1,Y.expectedType,pe);return Ce?new ca(pe,Ce):null}outputDefined(){return this.result.outputDefined()}}class kt{constructor(D,Y){this.type=Y.type,this.name=D,this.boundExpression=Y}static parse(D,Y){if(D.length!==2||typeof D[1]!="string")return Y.error("'var' expression requires exactly one string literal argument.");let pe=D[1];return Y.scope.has(pe)?new kt(pe,Y.scope.get(pe)):Y.error(`Unknown variable "${pe}". Make sure "${pe}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(D){return this.boundExpression.evaluate(D)}eachChild(){}outputDefined(){return!1}}class ir{constructor(D,Y,pe){this.type=D,this.index=Y,this.input=pe}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,Qe),Ce=Y.parse(D[2],2,Fe(Y.expectedType||ur));return pe&&Ce?new ir(Ce.type.itemType,pe,Ce):null}evaluate(D){let Y=this.index.evaluate(D),pe=this.input.evaluate(D);if(Y<0)throw new kr(`Array index out of bounds: ${Y} < 0.`);if(Y>=pe.length)throw new kr(`Array index out of bounds: ${Y} > ${pe.length-1}.`);if(Y!==Math.floor(Y))throw new kr(`Array index must be an integer, but found ${Y} instead.`);return pe[Y]}eachChild(D){D(this.index),D(this.input)}outputDefined(){return!1}}class mr{constructor(D,Y){this.type=St,this.needle=D,this.haystack=Y}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);return pe&&Ce?Ve(pe.type,[St,Ct,Qe,nt,ur])?new mr(pe,Ce):Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`):null}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!pe)return!1;if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);if(!ke(pe,["string","array"]))throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`);return pe.indexOf(Y)>=0}eachChild(D){D(this.needle),D(this.haystack)}outputDefined(){return!0}}class $r{constructor(D,Y,pe){this.type=Qe,this.needle=D,this.haystack=Y,this.fromIndex=pe}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);if(!pe||!Ce)return null;if(!Ve(pe.type,[St,Ct,Qe,nt,ur]))return Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new $r(pe,Ce,Ue):null}return new $r(pe,Ce)}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);let Ce;if(this.fromIndex&&(Ce=this.fromIndex.evaluate(D)),ke(pe,["string"])){let Ue=pe.indexOf(Y,Ce);return Ue===-1?-1:[...pe.slice(0,Ue)].length}if(ke(pe,["array"]))return pe.indexOf(Y,Ce);throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`)}eachChild(D){D(this.needle),D(this.haystack),this.fromIndex&&D(this.fromIndex)}outputDefined(){return!1}}class ma{constructor(D,Y,pe,Ce,Ue,Ge){this.inputType=D,this.type=Y,this.input=pe,this.cases=Ce,this.outputs=Ue,this.otherwise=Ge}static parse(D,Y){if(D.length<5)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if(D.length%2!=1)return Y.error("Expected an even number of arguments.");let pe,Ce;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ce=Y.expectedType);let Ue={},Ge=[];for(let Ft=2;Ft<D.length-1;Ft+=2){let $t=D[Ft],lr=D[Ft+1];Array.isArray($t)||($t=[$t]);let Ar=Y.concat(Ft);if($t.length===0)return Ar.error("Expected at least one branch label.");for(let Kr of $t){if(typeof Kr!="number"&&typeof Kr!="string")return Ar.error("Branch labels must be numbers or strings.");if(typeof Kr=="number"&&Math.abs(Kr)>Number.MAX_SAFE_INTEGER)return Ar.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Kr=="number"&&Math.floor(Kr)!==Kr)return Ar.error("Numeric branch labels must be integer values.");if(pe){if(Ar.checkSubtype(pe,mt(Kr)))return null}else pe=mt(Kr);if(Ue[String(Kr)]!==void 0)return Ar.error("Branch labels must be unique.");Ue[String(Kr)]=Ge.length}let zr=Y.parse(lr,Ft,Ce);if(!zr)return null;Ce=Ce||zr.type,Ge.push(zr)}let ut=Y.parse(D[1],1,ur);if(!ut)return null;let Tt=Y.parse(D[D.length-1],D.length-1,Ce);return Tt?ut.type.kind!=="value"&&Y.concat(1).checkSubtype(pe,ut.type)?null:new ma(pe,Ce,ut,Ue,Ge,Tt):null}evaluate(D){let Y=this.input.evaluate(D);return(mt(Y)===this.inputType&&this.outputs[this.cases[Y]]||this.otherwise).evaluate(D)}eachChild(D){D(this.input),this.outputs.forEach(D),D(this.otherwise)}outputDefined(){return this.outputs.every(D=>D.outputDefined())&&this.otherwise.outputDefined()}}class Ba{constructor(D,Y,pe){this.type=D,this.branches=Y,this.otherwise=pe}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found only ${D.length-1}.`);if(D.length%2!=0)return Y.error("Expected an odd number of arguments.");let pe;Y.expectedType&&Y.expectedType.kind!=="value"&&(pe=Y.expectedType);let Ce=[];for(let Ge=1;Ge<D.length-1;Ge+=2){let ut=Y.parse(D[Ge],Ge,St);if(!ut)return null;let Tt=Y.parse(D[Ge+1],Ge+1,pe);if(!Tt)return null;Ce.push([ut,Tt]),pe=pe||Tt.type}let Ue=Y.parse(D[D.length-1],D.length-1,pe);if(!Ue)return null;if(!pe)throw new Error("Can't infer output type");return new Ba(pe,Ce,Ue)}evaluate(D){for(let[Y,pe]of this.branches)if(Y.evaluate(D))return pe.evaluate(D);return this.otherwise.evaluate(D)}eachChild(D){for(let[Y,pe]of this.branches)D(Y),D(pe);D(this.otherwise)}outputDefined(){return this.branches.every(([D,Y])=>Y.outputDefined())&&this.otherwise.outputDefined()}}class Ca{constructor(D,Y,pe,Ce){this.type=D,this.input=Y,this.beginIndex=pe,this.endIndex=Ce}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,Qe);if(!pe||!Ce)return null;if(!Ve(pe.type,[Fe(ur),Ct,ur]))return Y.error(`Expected first argument to be of type array or string, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new Ca(pe.type,pe,Ce,Ue):null}return new Ca(pe.type,pe,Ce)}evaluate(D){let Y=this.input.evaluate(D),pe=this.beginIndex.evaluate(D),Ce;if(this.endIndex&&(Ce=this.endIndex.evaluate(D)),ke(Y,["string"]))return[...Y].slice(pe,Ce).join("");if(ke(Y,["array"]))return Y.slice(pe,Ce);throw new kr(`Expected first argument to be of type array or string, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input),D(this.beginIndex),this.endIndex&&D(this.endIndex)}outputDefined(){return!1}}function da(q,D){let Y=q.length-1,pe,Ce,Ue=0,Ge=Y,ut=0;for(;Ue<=Ge;)if(ut=Math.floor((Ue+Ge)/2),pe=q[ut],Ce=q[ut+1],pe<=D){if(ut===Y||D<Ce)return ut;Ue=ut+1}else{if(!(pe>D))throw new kr("Input is not a number.");Ge=ut-1}return 0}class Sa{constructor(D,Y,pe){this.type=D,this.input=Y,this.labels=[],this.outputs=[];for(let[Ce,Ue]of pe)this.labels.push(Ce),this.outputs.push(Ue)}static parse(D,Y){if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=[],Ue=null;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ue=Y.expectedType);for(let Ge=1;Ge<D.length;Ge+=2){let ut=Ge===1?-1/0:D[Ge],Tt=D[Ge+1],Ft=Ge,$t=Ge+1;if(typeof ut!="number")return Y.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Ft);if(Ce.length&&Ce[Ce.length-1][0]>=ut)return Y.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Ft);let lr=Y.parse(Tt,$t,Ue);if(!lr)return null;Ue=Ue||lr.type,Ce.push([ut,lr])}return new Sa(Ue,pe,Ce)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;return Ce>=Y[Ue-1]?pe[Ue-1].evaluate(D):pe[da(Y,Ce)].evaluate(D)}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Ti(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}var ai=an;function an(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}an.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)<D)return Y;var Ue=this.sampleCurveDerivativeX(Y);if(Math.abs(Ue)<1e-6)break;Y-=Ce/Ue}var Ge=0,ut=1;for(Y=q,pe=0;pe<20&&(Ce=this.sampleCurveX(Y),!(Math.abs(Ce-q)<D));pe++)q>Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var sn=Ti(ai);function Mn(q,D,Y){return q+Y*(D-q)}function On(q,D,Y){return q.map((pe,Ce)=>Mn(pe,D[Ce],Y))}let $n={number:Mn,color:function(q,D,Y,pe="rgb"){switch(pe){case"rgb":{let[Ce,Ue,Ge,ut]=On(q.rgb,D.rgb,Y);return new Ut(Ce,Ue,Ge,ut,!1)}case"hcl":{let[Ce,Ue,Ge,ut]=q.hcl,[Tt,Ft,$t,lr]=D.hcl,Ar,zr;if(isNaN(Ce)||isNaN(Tt))isNaN(Ce)?isNaN(Tt)?Ar=NaN:(Ar=Tt,Ge!==1&&Ge!==0||(zr=Ft)):(Ar=Ce,$t!==1&&$t!==0||(zr=Ue));else{let gi=Tt-Ce;Tt>Ce&&gi>180?gi-=360:Tt<Ce&&Ce-Tt>180&&(gi+=360),Ar=Ce+Y*gi}let[Kr,la,za,ja]=function([gi,ei,hi,Ei]){return gi=isNaN(gi)?0:gi*Gt,ka([hi,Math.cos(gi)*ei,Math.sin(gi)*ei,Ei])}([Ar,zr??Mn(Ue,Ft,Y),Mn(Ge,$t,Y),Mn(ut,lr,Y)]);return new Ut(Kr,la,za,ja,!1)}case"lab":{let[Ce,Ue,Ge,ut]=ka(On(q.lab,D.lab,Y));return new Ut(Ce,Ue,Ge,ut,!1)}}},array:On,padding:function(q,D,Y){return new Xr(On(q.values,D.values,Y))},variableAnchorOffsetCollection:function(q,D,Y){let pe=q.values,Ce=D.values;if(pe.length!==Ce.length)throw new kr(`Cannot interpolate values of different length. from: ${q.toString()}, to: ${D.toString()}`);let Ue=[];for(let Ge=0;Ge<pe.length;Ge+=2){if(pe[Ge]!==Ce[Ge])throw new kr(`Cannot interpolate values containing mismatched anchors. from[${Ge}]: ${pe[Ge]}, to[${Ge}]: ${Ce[Ge]}`);Ue.push(pe[Ge]);let[ut,Tt]=pe[Ge+1],[Ft,$t]=Ce[Ge+1];Ue.push([Mn(ut,Ft,Y),Mn(Tt,$t,Y)])}return new Fa(Ue)}};class Cn{constructor(D,Y,pe,Ce,Ue){this.type=D,this.operator=Y,this.interpolation=pe,this.input=Ce,this.labels=[],this.outputs=[];for(let[Ge,ut]of Ue)this.labels.push(Ge),this.outputs.push(ut)}static interpolationFactor(D,Y,pe,Ce){let Ue=0;if(D.name==="exponential")Ue=Lo(Y,D.base,pe,Ce);else if(D.name==="linear")Ue=Lo(Y,1,pe,Ce);else if(D.name==="cubic-bezier"){let Ge=D.controlPoints;Ue=new sn(Ge[0],Ge[1],Ge[2],Ge[3]).solve(Lo(Y,1,pe,Ce))}return Ue}static parse(D,Y){let[pe,Ce,Ue,...Ge]=D;if(!Array.isArray(Ce)||Ce.length===0)return Y.error("Expected an interpolation type expression.",1);if(Ce[0]==="linear")Ce={name:"linear"};else if(Ce[0]==="exponential"){let Ft=Ce[1];if(typeof Ft!="number")return Y.error("Exponential interpolation requires a numeric base.",1,1);Ce={name:"exponential",base:Ft}}else{if(Ce[0]!=="cubic-bezier")return Y.error(`Unknown interpolation type ${String(Ce[0])}`,1,0);{let Ft=Ce.slice(1);if(Ft.length!==4||Ft.some($t=>typeof $t!="number"||$t<0||$t>1))return Y.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);Ce={name:"cubic-bezier",controlPoints:Ft}}}if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");if(Ue=Y.parse(Ue,2,Qe),!Ue)return null;let ut=[],Tt=null;pe==="interpolate-hcl"||pe==="interpolate-lab"?Tt=Ot:Y.expectedType&&Y.expectedType.kind!=="value"&&(Tt=Y.expectedType);for(let Ft=0;Ft<Ge.length;Ft+=2){let $t=Ge[Ft],lr=Ge[Ft+1],Ar=Ft+3,zr=Ft+4;if(typeof $t!="number")return Y.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Ar);if(ut.length&&ut[ut.length-1][0]>=$t)return Y.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Ar);let Kr=Y.parse(lr,zr,Tt);if(!Kr)return null;Tt=Tt||Kr.type,ut.push([$t,Kr])}return Te(Tt,Qe)||Te(Tt,Ot)||Te(Tt,vr)||Te(Tt,yt)||Te(Tt,Fe(Qe))?new Cn(Tt,pe,Ce,Ue,ut):Y.error(`Type ${Ke(Tt)} is not interpolatable.`)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;if(Ce>=Y[Ue-1])return pe[Ue-1].evaluate(D);let Ge=da(Y,Ce),ut=Cn.interpolationFactor(this.interpolation,Ce,Y[Ge],Y[Ge+1]),Tt=pe[Ge].evaluate(D),Ft=pe[Ge+1].evaluate(D);switch(this.operator){case"interpolate":return $n[this.type.kind](Tt,Ft,ut);case"interpolate-hcl":return $n.color(Tt,Ft,ut,"hcl");case"interpolate-lab":return $n.color(Tt,Ft,ut,"lab")}}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Lo(q,D,Y,pe){let Ce=pe-Y,Ue=q-Y;return Ce===0?0:D===1?Ue/Ce:(Math.pow(D,Ue)-1)/(Math.pow(D,Ce)-1)}class Xi{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expectected at least one argument.");let pe=null,Ce=Y.expectedType;Ce&&Ce.kind!=="value"&&(pe=Ce);let Ue=[];for(let ut of D.slice(1)){let Tt=Y.parse(ut,1+Ue.length,pe,void 0,{typeAnnotation:"omit"});if(!Tt)return null;pe=pe||Tt.type,Ue.push(Tt)}if(!pe)throw new Error("No output type");let Ge=Ce&&Ue.some(ut=>Ee(Ce,ut.type));return new Xi(Ge?ur:pe,Ue)}evaluate(D){let Y,pe=null,Ce=0;for(let Ue of this.args)if(Ce++,pe=Ue.evaluate(D),pe&&pe instanceof qa&&!pe.available&&(Y||(Y=pe.name),pe=null,Ce===this.args.length&&(pe=Y)),pe!==null)break;return pe}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}function Jo(q,D){return q==="=="||q==="!="?D.kind==="boolean"||D.kind==="string"||D.kind==="number"||D.kind==="null"||D.kind==="value":D.kind==="string"||D.kind==="number"||D.kind==="value"}function zo(q,D,Y,pe){return pe.compare(D,Y)===0}function as(q,D,Y){let pe=q!=="=="&&q!=="!=";return class K8{constructor(Ue,Ge,ut){this.type=St,this.lhs=Ue,this.rhs=Ge,this.collator=ut,this.hasUntypedArgument=Ue.type.kind==="value"||Ge.type.kind==="value"}static parse(Ue,Ge){if(Ue.length!==3&&Ue.length!==4)return Ge.error("Expected two or three arguments.");let ut=Ue[0],Tt=Ge.parse(Ue[1],1,ur);if(!Tt)return null;if(!Jo(ut,Tt.type))return Ge.concat(1).error(`"${ut}" comparisons are not supported for type '${Ke(Tt.type)}'.`);let Ft=Ge.parse(Ue[2],2,ur);if(!Ft)return null;if(!Jo(ut,Ft.type))return Ge.concat(2).error(`"${ut}" comparisons are not supported for type '${Ke(Ft.type)}'.`);if(Tt.type.kind!==Ft.type.kind&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error(`Cannot compare types '${Ke(Tt.type)}' and '${Ke(Ft.type)}'.`);pe&&(Tt.type.kind==="value"&&Ft.type.kind!=="value"?Tt=new Tr(Ft.type,[Tt]):Tt.type.kind!=="value"&&Ft.type.kind==="value"&&(Ft=new Tr(Tt.type,[Ft])));let $t=null;if(Ue.length===4){if(Tt.type.kind!=="string"&&Ft.type.kind!=="string"&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error("Cannot use collator to compare non-string types.");if($t=Ge.parse(Ue[3],3,ar),!$t)return null}return new K8(Tt,Ft,$t)}evaluate(Ue){let Ge=this.lhs.evaluate(Ue),ut=this.rhs.evaluate(Ue);if(pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!==Ft.kind||Tt.kind!=="string"&&Tt.kind!=="number")throw new kr(`Expected arguments for "${q}" to be (string, string) or (number, number), but found (${Tt.kind}, ${Ft.kind}) instead.`)}if(this.collator&&!pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!=="string"||Ft.kind!=="string")return D(Ue,Ge,ut)}return this.collator?Y(Ue,Ge,ut,this.collator.evaluate(Ue)):D(Ue,Ge,ut)}eachChild(Ue){Ue(this.lhs),Ue(this.rhs),this.collator&&Ue(this.collator)}outputDefined(){return!0}}}let Pn=as("==",function(q,D,Y){return D===Y},zo),go=as("!=",function(q,D,Y){return D!==Y},function(q,D,Y,pe){return!zo(0,D,Y,pe)}),In=as("<",function(q,D,Y){return D<Y},function(q,D,Y,pe){return pe.compare(D,Y)<0}),Do=as(">",function(q,D,Y){return D>Y},function(q,D,Y,pe){return pe.compare(D,Y)>0}),Ho=as("<=",function(q,D,Y){return D<=Y},function(q,D,Y,pe){return pe.compare(D,Y)<=0}),Qo=as(">=",function(q,D,Y){return D>=Y},function(q,D,Y,pe){return pe.compare(D,Y)>=0});class Xn{constructor(D,Y,pe){this.type=ar,this.locale=pe,this.caseSensitive=D,this.diacriticSensitive=Y}static parse(D,Y){if(D.length!==2)return Y.error("Expected one argument.");let pe=D[1];if(typeof pe!="object"||Array.isArray(pe))return Y.error("Collator options argument must be an object.");let Ce=Y.parse(pe["case-sensitive"]!==void 0&&pe["case-sensitive"],1,St);if(!Ce)return null;let Ue=Y.parse(pe["diacritic-sensitive"]!==void 0&&pe["diacritic-sensitive"],1,St);if(!Ue)return null;let Ge=null;return pe.locale&&(Ge=Y.parse(pe.locale,1,Ct),!Ge)?null:new Xn(Ce,Ue,Ge)}evaluate(D){return new xr(this.caseSensitive.evaluate(D),this.diacriticSensitive.evaluate(D),this.locale?this.locale.evaluate(D):null)}eachChild(D){D(this.caseSensitive),D(this.diacriticSensitive),this.locale&&D(this.locale)}outputDefined(){return!1}}class po{constructor(D,Y,pe,Ce,Ue){this.type=Ct,this.number=D,this.locale=Y,this.currency=pe,this.minFractionDigits=Ce,this.maxFractionDigits=Ue}static parse(D,Y){if(D.length!==3)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=D[2];if(typeof Ce!="object"||Array.isArray(Ce))return Y.error("NumberFormat options argument must be an object.");let Ue=null;if(Ce.locale&&(Ue=Y.parse(Ce.locale,1,Ct),!Ue))return null;let Ge=null;if(Ce.currency&&(Ge=Y.parse(Ce.currency,1,Ct),!Ge))return null;let ut=null;if(Ce["min-fraction-digits"]&&(ut=Y.parse(Ce["min-fraction-digits"],1,Qe),!ut))return null;let Tt=null;return Ce["max-fraction-digits"]&&(Tt=Y.parse(Ce["max-fraction-digits"],1,Qe),!Tt)?null:new po(pe,Ue,Ge,ut,Tt)}evaluate(D){return new Intl.NumberFormat(this.locale?this.locale.evaluate(D):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(D):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(D):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(D):void 0}).format(this.number.evaluate(D))}eachChild(D){D(this.number),this.locale&&D(this.locale),this.currency&&D(this.currency),this.minFractionDigits&&D(this.minFractionDigits),this.maxFractionDigits&&D(this.maxFractionDigits)}outputDefined(){return!1}}class ys{constructor(D){this.type=Cr,this.sections=D}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[1];if(!Array.isArray(pe)&&typeof pe=="object")return Y.error("First argument must be an image or text section.");let Ce=[],Ue=!1;for(let Ge=1;Ge<=D.length-1;++Ge){let ut=D[Ge];if(Ue&&typeof ut=="object"&&!Array.isArray(ut)){Ue=!1;let Tt=null;if(ut["font-scale"]&&(Tt=Y.parse(ut["font-scale"],1,Qe),!Tt))return null;let Ft=null;if(ut["text-font"]&&(Ft=Y.parse(ut["text-font"],1,Fe(Ct)),!Ft))return null;let $t=null;if(ut["text-color"]&&($t=Y.parse(ut["text-color"],1,Ot),!$t))return null;let lr=Ce[Ce.length-1];lr.scale=Tt,lr.font=Ft,lr.textColor=$t}else{let Tt=Y.parse(D[Ge],1,ur);if(!Tt)return null;let Ft=Tt.type.kind;if(Ft!=="string"&&Ft!=="value"&&Ft!=="null"&&Ft!=="resolvedImage")return Y.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Ue=!0,Ce.push({content:Tt,scale:null,font:null,textColor:null})}}return new ys(Ce)}evaluate(D){return new pa(this.sections.map(Y=>{let pe=Y.content.evaluate(D);return mt(pe)===_r?new Zr("",pe,null,null,null):new Zr(gt(pe),null,Y.scale?Y.scale.evaluate(D):null,Y.font?Y.font.evaluate(D).join(","):null,Y.textColor?Y.textColor.evaluate(D):null)}))}eachChild(D){for(let Y of this.sections)D(Y.content),Y.scale&&D(Y.scale),Y.font&&D(Y.font),Y.textColor&&D(Y.textColor)}outputDefined(){return!1}}class Is{constructor(D){this.type=_r,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Ct);return pe?new Is(pe):Y.error("No image name provided.")}evaluate(D){let Y=this.input.evaluate(D),pe=qa.fromString(Y);return pe&&D.availableImages&&(pe.available=D.availableImages.indexOf(Y)>-1),pe}eachChild(D){D(this.input)}outputDefined(){return!1}}class Fs{constructor(D){this.type=Qe,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error(`Expected 1 argument, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1);return pe?pe.type.kind!=="array"&&pe.type.kind!=="string"&&pe.type.kind!=="value"?Y.error(`Expected argument of type string or array, but found ${Ke(pe.type)} instead.`):new Fs(pe):null}evaluate(D){let Y=this.input.evaluate(D);if(typeof Y=="string")return[...Y].length;if(Array.isArray(Y))return Y.length;throw new kr(`Expected value to be of type string or array, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input)}outputDefined(){return!1}}let $o=8192;function fi(q,D){let Y=(180+q[0])/360,pe=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q[1]*Math.PI/360)))/360,Ce=Math.pow(2,D.z);return[Math.round(Y*Ce*$o),Math.round(pe*Ce*$o)]}function mn(q,D){let Y=Math.pow(2,D.z);return[(Ce=(q[0]/$o+D.x)/Y,360*Ce-180),(pe=(q[1]/$o+D.y)/Y,360/Math.PI*Math.atan(Math.exp((180-360*pe)*Math.PI/180))-90)];var pe,Ce}function ol(q,D){q[0]=Math.min(q[0],D[0]),q[1]=Math.min(q[1],D[1]),q[2]=Math.max(q[2],D[0]),q[3]=Math.max(q[3],D[1])}function Os(q,D){return!(q[0]<=D[0]||q[2]>=D[2]||q[1]<=D[1]||q[3]>=D[3])}function so(q,D,Y){let pe=q[0]-D[0],Ce=q[1]-D[1],Ue=q[0]-Y[0],Ge=q[1]-Y[1];return pe*Ge-Ue*Ce==0&&pe*Ue<=0&&Ce*Ge<=0}function Ns(q,D,Y,pe){return(Ce=[pe[0]-Y[0],pe[1]-Y[1]])[0]*(Ue=[D[0]-q[0],D[1]-q[1]])[1]-Ce[1]*Ue[0]!=0&&!(!Yn(q,D,Y,pe)||!Yn(Y,pe,q,D));var Ce,Ue}function fs(q,D,Y){for(let pe of Y)for(let Ce=0;Ce<pe.length-1;++Ce)if(Ns(q,D,pe[Ce],pe[Ce+1]))return!0;return!1}function al(q,D,Y=!1){let pe=!1;for(let ut of D)for(let Tt=0;Tt<ut.length-1;Tt++){if(so(q,ut[Tt],ut[Tt+1]))return Y;(Ue=ut[Tt])[1]>(Ce=q)[1]!=(Ge=ut[Tt+1])[1]>Ce[1]&&Ce[0]<(Ge[0]-Ue[0])*(Ce[1]-Ue[1])/(Ge[1]-Ue[1])+Ue[0]&&(pe=!pe)}var Ce,Ue,Ge;return pe}function vl(q,D){for(let Y of D)if(al(q,Y))return!0;return!1}function ji(q,D){for(let Y of q)if(!al(Y,D))return!1;for(let Y=0;Y<q.length-1;++Y)if(fs(q[Y],q[Y+1],D))return!1;return!0}function To(q,D){for(let Y of D)if(ji(q,Y))return!0;return!1}function Yn(q,D,Y,pe){let Ce=pe[0]-Y[0],Ue=pe[1]-Y[1],Ge=(q[0]-Y[0])*Ue-Ce*(q[1]-Y[1]),ut=(D[0]-Y[0])*Ue-Ce*(D[1]-Y[1]);return Ge>0&&ut<0||Ge<0&&ut>0}function _s(q,D,Y){let pe=[];for(let Ce=0;Ce<q.length;Ce++){let Ue=[];for(let Ge=0;Ge<q[Ce].length;Ge++){let ut=fi(q[Ce][Ge],Y);ol(D,ut),Ue.push(ut)}pe.push(Ue)}return pe}function Yo(q,D,Y){let pe=[];for(let Ce=0;Ce<q.length;Ce++){let Ue=_s(q[Ce],D,Y);pe.push(Ue)}return pe}function Nn(q,D,Y,pe){if(q[0]<Y[0]||q[0]>Y[2]){let Ce=.5*pe,Ue=q[0]-Y[0]>Ce?-pe:Y[0]-q[0]>Ce?pe:0;Ue===0&&(Ue=q[0]-Y[2]>Ce?-pe:Y[2]-q[0]>Ce?pe:0),q[0]+=Ue}ol(D,q)}function Wl(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let ut of q)for(let Tt of ut){let Ft=[Tt.x+Ue[0],Tt.y+Ue[1]];Nn(Ft,D,Y,Ce),Ge.push(Ft)}return Ge}function Zu(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let Tt of q){let Ft=[];for(let $t of Tt){let lr=[$t.x+Ue[0],$t.y+Ue[1]];ol(D,lr),Ft.push(lr)}Ge.push(Ft)}if(D[2]-D[0]<=Ce/2){(ut=D)[0]=ut[1]=1/0,ut[2]=ut[3]=-1/0;for(let Tt of Ge)for(let Ft of Tt)Nn(Ft,D,Y,Ce)}var ut;return Ge}class ml{constructor(D,Y){this.type=St,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'within' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection"){let Ce=[];for(let Ue of pe.features){let{type:Ge,coordinates:ut}=Ue.geometry;Ge==="Polygon"&&Ce.push(ut),Ge==="MultiPolygon"&&Ce.push(...ut)}if(Ce.length)return new ml(pe,{type:"MultiPolygon",coordinates:Ce})}else if(pe.type==="Feature"){let Ce=pe.geometry.type;if(Ce==="Polygon"||Ce==="MultiPolygon")return new ml(pe,pe.geometry)}else if(pe.type==="Polygon"||pe.type==="MultiPolygon")return new ml(pe,pe)}return Y.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!al(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!vl(Ft,ut))return!1}return!0}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!ji(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!To(Ft,ut))return!1}return!0}(D,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Bu=class{constructor(q=[],D=(Y,pe)=>Y<pe?-1:Y>pe?1:0){if(this.data=q,this.length=this.data.length,this.compare=D,this.length>0)for(let Y=(this.length>>1)-1;Y>=0;Y--)this._down(Y)}push(q){this.data.push(q),this._up(this.length++)}pop(){if(this.length===0)return;let q=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),q}peek(){return this.data[0]}_up(q){let{data:D,compare:Y}=this,pe=D[q];for(;q>0;){let Ce=q-1>>1,Ue=D[Ce];if(Y(pe,Ue)>=0)break;D[q]=Ue,q=Ce}D[q]=pe}_down(q){let{data:D,compare:Y}=this,pe=this.length>>1,Ce=D[q];for(;q<pe;){let Ue=1+(q<<1),Ge=Ue+1;if(Ge<this.length&&Y(D[Ge],D[Ue])<0&&(Ue=Ge),Y(D[Ue],Ce)>=0)break;D[q]=D[Ue],q=Ue}D[q]=Ce}};function El(q,D,Y,pe,Ce){qs(q,D,Y,pe||q.length-1,Ce||Nu)}function qs(q,D,Y,pe,Ce){for(;pe>Y;){if(pe-Y>600){var Ue=pe-Y+1,Ge=D-Y+1,ut=Math.log(Ue),Tt=.5*Math.exp(2*ut/3),Ft=.5*Math.sqrt(ut*Tt*(Ue-Tt)/Ue)*(Ge-Ue/2<0?-1:1);qs(q,D,Math.max(Y,Math.floor(D-Ge*Tt/Ue+Ft)),Math.min(pe,Math.floor(D+(Ue-Ge)*Tt/Ue+Ft)),Ce)}var $t=q[D],lr=Y,Ar=pe;for(Jl(q,Y,D),Ce(q[pe],$t)>0&&Jl(q,Y,pe);lr<Ar;){for(Jl(q,lr,Ar),lr++,Ar--;Ce(q[lr],$t)<0;)lr++;for(;Ce(q[Ar],$t)>0;)Ar--}Ce(q[Y],$t)===0?Jl(q,Y,Ar):Jl(q,++Ar,pe),Ar<=D&&(Y=Ar+1),D<=Ar&&(pe=Ar-1)}}function Jl(q,D,Y){var pe=q[D];q[D]=q[Y],q[Y]=pe}function Nu(q,D){return q<D?-1:q>D?1:0}function Ic(q,D){if(q.length<=1)return[q];let Y=[],pe,Ce;for(let Ue of q){let Ge=Th(Ue);Ge!==0&&(Ue.area=Math.abs(Ge),Ce===void 0&&(Ce=Ge<0),Ce===Ge<0?(pe&&Y.push(pe),pe=[Ue]):pe.push(Ue))}if(pe&&Y.push(pe),D>1)for(let Ue=0;Ue<Y.length;Ue++)Y[Ue].length<=D||(El(Y[Ue],D,1,Y[Ue].length-1,Xu),Y[Ue]=Y[Ue].slice(0,D));return Y}function Xu(q,D){return D.area-q.area}function Th(q){let D=0;for(let Y,pe,Ce=0,Ue=q.length,Ge=Ue-1;Ce<Ue;Ge=Ce++)Y=q[Ce],pe=q[Ge],D+=(pe.x-Y.x)*(Y.y+pe.y);return D}let bf=1/298.257223563,Rs=bf*(2-bf),Yc=Math.PI/180;class If{constructor(D){let Y=6378.137*Yc*1e3,pe=Math.cos(D*Yc),Ce=1/(1-Rs*(1-pe*pe)),Ue=Math.sqrt(Ce);this.kx=Y*Ue*pe,this.ky=Y*Ue*Ce*(1-Rs)}distance(D,Y){let pe=this.wrap(D[0]-Y[0])*this.kx,Ce=(D[1]-Y[1])*this.ky;return Math.sqrt(pe*pe+Ce*Ce)}pointOnLine(D,Y){let pe,Ce,Ue,Ge,ut=1/0;for(let Tt=0;Tt<D.length-1;Tt++){let Ft=D[Tt][0],$t=D[Tt][1],lr=this.wrap(D[Tt+1][0]-Ft)*this.kx,Ar=(D[Tt+1][1]-$t)*this.ky,zr=0;lr===0&&Ar===0||(zr=(this.wrap(Y[0]-Ft)*this.kx*lr+(Y[1]-$t)*this.ky*Ar)/(lr*lr+Ar*Ar),zr>1?(Ft=D[Tt+1][0],$t=D[Tt+1][1]):zr>0&&(Ft+=lr/this.kx*zr,$t+=Ar/this.ky*zr)),lr=this.wrap(Y[0]-Ft)*this.kx,Ar=(Y[1]-$t)*this.ky;let Kr=lr*lr+Ar*Ar;Kr<ut&&(ut=Kr,pe=Ft,Ce=$t,Ue=Tt,Ge=zr)}return{point:[pe,Ce],index:Ue,t:Math.max(0,Math.min(1,Ge))}}wrap(D){for(;D<-180;)D+=360;for(;D>180;)D-=360;return D}}function Zl(q,D){return D[0]-q[0]}function yl(q){return q[1]-q[0]+1}function oc(q,D){return q[1]>=q[0]&&q[1]<D}function _c(q,D){if(q[0]>q[1])return[null,null];let Y=yl(q);if(D){if(Y===2)return[q,null];let Ce=Math.floor(Y/2);return[[q[0],q[0]+Ce],[q[0]+Ce,q[1]]]}if(Y===1)return[q,null];let pe=Math.floor(Y/2)-1;return[[q[0],q[0]+pe],[q[0]+pe+1,q[1]]]}function Zs(q,D){if(!oc(D,q.length))return[1/0,1/0,-1/0,-1/0];let Y=[1/0,1/0,-1/0,-1/0];for(let pe=D[0];pe<=D[1];++pe)ol(Y,q[pe]);return Y}function _l(q){let D=[1/0,1/0,-1/0,-1/0];for(let Y of q)for(let pe of Y)ol(D,pe);return D}function Bs(q){return q[0]!==-1/0&&q[1]!==-1/0&&q[2]!==1/0&&q[3]!==1/0}function $s(q,D,Y){if(!Bs(q)||!Bs(D))return NaN;let pe=0,Ce=0;return q[2]<D[0]&&(pe=D[0]-q[2]),q[0]>D[2]&&(pe=q[0]-D[2]),q[1]>D[3]&&(Ce=q[1]-D[3]),q[3]<D[1]&&(Ce=D[1]-q[3]),Y.distance([0,0],[pe,Ce])}function sc(q,D,Y){let pe=Y.pointOnLine(D,q);return Y.distance(q,pe.point)}function zl(q,D,Y,pe,Ce){let Ue=Math.min(sc(q,[Y,pe],Ce),sc(D,[Y,pe],Ce)),Ge=Math.min(sc(Y,[q,D],Ce),sc(pe,[q,D],Ce));return Math.min(Ue,Ge)}function Yu(q,D,Y,pe,Ce){if(!oc(D,q.length)||!oc(pe,Y.length))return 1/0;let Ue=1/0;for(let Ge=D[0];Ge<D[1];++Ge){let ut=q[Ge],Tt=q[Ge+1];for(let Ft=pe[0];Ft<pe[1];++Ft){let $t=Y[Ft],lr=Y[Ft+1];if(Ns(ut,Tt,$t,lr))return 0;Ue=Math.min(Ue,zl(ut,Tt,$t,lr,Ce))}}return Ue}function Qs(q,D,Y,pe,Ce){if(!oc(D,q.length)||!oc(pe,Y.length))return NaN;let Ue=1/0;for(let Ge=D[0];Ge<=D[1];++Ge)for(let ut=pe[0];ut<=pe[1];++ut)if(Ue=Math.min(Ue,Ce.distance(q[Ge],Y[ut])),Ue===0)return Ue;return Ue}function fp(q,D,Y){if(al(q,D,!0))return 0;let pe=1/0;for(let Ce of D){let Ue=Ce[0],Ge=Ce[Ce.length-1];if(Ue!==Ge&&(pe=Math.min(pe,sc(q,[Ge,Ue],Y)),pe===0))return pe;let ut=Y.pointOnLine(Ce,q);if(pe=Math.min(pe,Y.distance(q,ut.point)),pe===0)return pe}return pe}function es(q,D,Y,pe){if(!oc(D,q.length))return NaN;for(let Ue=D[0];Ue<=D[1];++Ue)if(al(q[Ue],Y,!0))return 0;let Ce=1/0;for(let Ue=D[0];Ue<D[1];++Ue){let Ge=q[Ue],ut=q[Ue+1];for(let Tt of Y)for(let Ft=0,$t=Tt.length,lr=$t-1;Ft<$t;lr=Ft++){let Ar=Tt[lr],zr=Tt[Ft];if(Ns(Ge,ut,Ar,zr))return 0;Ce=Math.min(Ce,zl(Ge,ut,Ar,zr,pe))}}return Ce}function Wh(q,D){for(let Y of q)for(let pe of Y)if(al(pe,D,!0))return!0;return!1}function Ss(q,D,Y,pe=1/0){let Ce=_l(q),Ue=_l(D);if(pe!==1/0&&$s(Ce,Ue,Y)>=pe)return pe;if(Os(Ce,Ue)){if(Wh(q,D))return 0}else if(Wh(D,q))return 0;let Ge=1/0;for(let ut of q)for(let Tt=0,Ft=ut.length,$t=Ft-1;Tt<Ft;$t=Tt++){let lr=ut[$t],Ar=ut[Tt];for(let zr of D)for(let Kr=0,la=zr.length,za=la-1;Kr<la;za=Kr++){let ja=zr[za],gi=zr[Kr];if(Ns(lr,Ar,ja,gi))return 0;Ge=Math.min(Ge,zl(lr,Ar,ja,gi,Y))}}return Ge}function So(q,D,Y,pe,Ce,Ue){if(!Ue)return;let Ge=$s(Zs(pe,Ue),Ce,Y);Ge<D&&q.push([Ge,Ue,[0,0]])}function hf(q,D,Y,pe,Ce,Ue,Ge){if(!Ue||!Ge)return;let ut=$s(Zs(pe,Ue),Zs(Ce,Ge),Y);ut<D&&q.push([ut,Ue,Ge])}function Ku(q,D,Y,pe,Ce=1/0){let Ue=Math.min(pe.distance(q[0],Y[0][0]),Ce);if(Ue===0)return Ue;let Ge=new Bu([[0,[0,q.length-1],[0,0]]],Zl),ut=_l(Y);for(;Ge.length>0;){let Tt=Ge.pop();if(Tt[0]>=Ue)continue;let Ft=Tt[1],$t=D?50:100;if(yl(Ft)<=$t){if(!oc(Ft,q.length))return NaN;if(D){let lr=es(q,Ft,Y,pe);if(isNaN(lr)||lr===0)return lr;Ue=Math.min(Ue,lr)}else for(let lr=Ft[0];lr<=Ft[1];++lr){let Ar=fp(q[lr],Y,pe);if(Ue=Math.min(Ue,Ar),Ue===0)return 0}}else{let lr=_c(Ft,D);So(Ge,Ue,pe,q,ut,lr[0]),So(Ge,Ue,pe,q,ut,lr[1])}}return Ue}function cu(q,D,Y,pe,Ce,Ue=1/0){let Ge=Math.min(Ue,Ce.distance(q[0],Y[0]));if(Ge===0)return Ge;let ut=new Bu([[0,[0,q.length-1],[0,Y.length-1]]],Zl);for(;ut.length>0;){let Tt=ut.pop();if(Tt[0]>=Ge)continue;let Ft=Tt[1],$t=Tt[2],lr=D?50:100,Ar=pe?50:100;if(yl(Ft)<=lr&&yl($t)<=Ar){if(!oc(Ft,q.length)&&oc($t,Y.length))return NaN;let zr;if(D&&pe)zr=Yu(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr);else if(D&&!pe){let Kr=q.slice(Ft[0],Ft[1]+1);for(let la=$t[0];la<=$t[1];++la)if(zr=sc(Y[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else if(!D&&pe){let Kr=Y.slice($t[0],$t[1]+1);for(let la=Ft[0];la<=Ft[1];++la)if(zr=sc(q[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else zr=Qs(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr)}else{let zr=_c(Ft,D),Kr=_c($t,pe);hf(ut,Ge,Ce,q,Y,zr[0],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[0],Kr[1]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[1])}}return Ge}function Zf(q){return q.type==="MultiPolygon"?q.coordinates.map(D=>({type:"Polygon",coordinates:D})):q.type==="MultiLineString"?q.coordinates.map(D=>({type:"LineString",coordinates:D})):q.type==="MultiPoint"?q.coordinates.map(D=>({type:"Point",coordinates:D})):[q]}class Rc{constructor(D,Y){this.type=Qe,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'distance' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection")return new Rc(pe,pe.features.map(Ce=>Zf(Ce.geometry)).flat());if(pe.type==="Feature")return new Rc(pe,Zf(pe.geometry));if("type"in pe&&"coordinates"in pe)return new Rc(pe,Zf(pe))}return Y.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!1,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!1,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!1,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!0,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!0,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!0,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="Polygon")return function(Y,pe){let Ce=Y.geometry();if(Ce.length===0||Ce[0].length===0)return NaN;let Ue=Ic(Ce,0).map(Tt=>Tt.map(Ft=>Ft.map($t=>mn([$t.x,$t.y],Y.canonical)))),Ge=new If(Ue[0][0][0][1]),ut=1/0;for(let Tt of pe)for(let Ft of Ue){switch(Tt.type){case"Point":ut=Math.min(ut,Ku([Tt.coordinates],!1,Ft,Ge,ut));break;case"LineString":ut=Math.min(ut,Ku(Tt.coordinates,!0,Ft,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ss(Ft,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let pf={"==":Pn,"!=":go,">":Do,"<":In,">=":Qo,"<=":Ho,array:Tr,at:ir,boolean:Tr,case:Ba,coalesce:Xi,collator:Xn,format:ys,image:Is,in:mr,"index-of":$r,interpolate:Cn,"interpolate-hcl":Cn,"interpolate-lab":Cn,length:Fs,let:ca,literal:Er,match:ma,number:Tr,"number-format":po,object:Tr,slice:Ca,step:Sa,string:Tr,"to-boolean":Fr,"to-color":Fr,"to-number":Fr,"to-string":Fr,var:kt,within:ml,distance:Rc};class Fl{constructor(D,Y,pe,Ce){this.name=D,this.type=Y,this._evaluate=pe,this.args=Ce}evaluate(D){return this._evaluate(D,this.args)}eachChild(D){this.args.forEach(D)}outputDefined(){return!1}static parse(D,Y){let pe=D[0],Ce=Fl.definitions[pe];if(!Ce)return Y.error(`Unknown expression "${pe}". If you wanted a literal array, use ["literal", [...]].`,0);let Ue=Array.isArray(Ce)?Ce[0]:Ce.type,Ge=Array.isArray(Ce)?[[Ce[1],Ce[2]]]:Ce.overloads,ut=Ge.filter(([Ft])=>!Array.isArray(Ft)||Ft.length===D.length-1),Tt=null;for(let[Ft,$t]of ut){Tt=new oa(Y.registry,Yf,Y.path,null,Y.scope);let lr=[],Ar=!1;for(let zr=1;zr<D.length;zr++){let Kr=D[zr],la=Array.isArray(Ft)?Ft[zr-1]:Ft.type,za=Tt.parse(Kr,1+lr.length,la);if(!za){Ar=!0;break}lr.push(za)}if(!Ar)if(Array.isArray(Ft)&&Ft.length!==lr.length)Tt.error(`Expected ${Ft.length} arguments, but found ${lr.length} instead.`);else{for(let zr=0;zr<lr.length;zr++){let Kr=Array.isArray(Ft)?Ft[zr]:Ft.type,la=lr[zr];Tt.concat(zr+1).checkSubtype(Kr,la.type)}if(Tt.errors.length===0)return new Fl(pe,Ue,$t,lr)}}if(ut.length===1)Y.errors.push(...Tt.errors);else{let Ft=(ut.length?ut:Ge).map(([lr])=>{return Ar=lr,Array.isArray(Ar)?`(${Ar.map(Ke).join(", ")})`:`(${Ke(Ar.type)}...)`;var Ar}).join(" | "),$t=[];for(let lr=1;lr<D.length;lr++){let Ar=Y.parse(D[lr],1+$t.length);if(!Ar)return null;$t.push(Ke(Ar.type))}Y.error(`Expected arguments of type ${Ft}, but found (${$t.join(", ")}) instead.`)}return null}static register(D,Y){Fl.definitions=Y;for(let pe in Y)D[pe]=Fl}}function lh(q,[D,Y,pe,Ce]){D=D.evaluate(q),Y=Y.evaluate(q),pe=pe.evaluate(q);let Ue=Ce?Ce.evaluate(q):1,Ge=ya(D,Y,pe,Ue);if(Ge)throw new kr(Ge);return new Ut(D/255,Y/255,pe/255,Ue,!1)}function Xf(q,D){return q in D}function Rf(q,D){let Y=D[q];return Y===void 0?null:Y}function Kc(q){return{type:q}}function Yf(q){if(q instanceof kt)return Yf(q.boundExpression);if(q instanceof Fl&&q.name==="error"||q instanceof Xn||q instanceof ml||q instanceof Rc)return!1;let D=q instanceof Fr||q instanceof Tr,Y=!0;return q.eachChild(pe=>{Y=D?Y&&Yf(pe):Y&&pe instanceof Er}),!!Y&&uh(q)&&Df(q,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function uh(q){if(q instanceof Fl&&(q.name==="get"&&q.args.length===1||q.name==="feature-state"||q.name==="has"&&q.args.length===1||q.name==="properties"||q.name==="geometry-type"||q.name==="id"||/^filter-/.test(q.name))||q instanceof ml||q instanceof Rc)return!1;let D=!0;return q.eachChild(Y=>{D&&!uh(Y)&&(D=!1)}),D}function Ju(q){if(q instanceof Fl&&q.name==="feature-state")return!1;let D=!0;return q.eachChild(Y=>{D&&!Ju(Y)&&(D=!1)}),D}function Df(q,D){if(q instanceof Fl&&D.indexOf(q.name)>=0)return!1;let Y=!0;return q.eachChild(pe=>{Y&&!Df(pe,D)&&(Y=!1)}),Y}function Dc(q){return{result:"success",value:q}}function Jc(q){return{result:"error",value:q}}function Eu(q){return q["property-type"]==="data-driven"||q["property-type"]==="cross-faded-data-driven"}function wf(q){return!!q.expression&&q.expression.parameters.indexOf("zoom")>-1}function zc(q){return!!q.expression&&q.expression.interpolated}function Us(q){return q instanceof Number?"number":q instanceof String?"string":q instanceof Boolean?"boolean":Array.isArray(q)?"array":q===null?"null":typeof q}function Kf(q){return typeof q=="object"&&q!==null&&!Array.isArray(q)}function Zh(q){return q}function ch(q,D){let Y=D.type==="color",pe=q.stops&&typeof q.stops[0][0]=="object",Ce=pe||!(pe||q.property!==void 0),Ue=q.type||(zc(D)?"exponential":"interval");if(Y||D.type==="padding"){let $t=Y?Ut.parse:Xr.parse;(q=ce({},q)).stops&&(q.stops=q.stops.map(lr=>[lr[0],$t(lr[1])])),q.default=$t(q.default?q.default:D.default)}if(q.colorSpace&&(Ge=q.colorSpace)!=="rgb"&&Ge!=="hcl"&&Ge!=="lab")throw new Error(`Unknown color space: "${q.colorSpace}"`);var Ge;let ut,Tt,Ft;if(Ue==="exponential")ut=fh;else if(Ue==="interval")ut=ku;else if(Ue==="categorical"){ut=Ah,Tt=Object.create(null);for(let $t of q.stops)Tt[$t[0]]=$t[1];Ft=typeof q.stops[0][0]}else{if(Ue!=="identity")throw new Error(`Unknown function type "${Ue}"`);ut=ru}if(pe){let $t={},lr=[];for(let Kr=0;Kr<q.stops.length;Kr++){let la=q.stops[Kr],za=la[0].zoom;$t[za]===void 0&&($t[za]={zoom:za,type:q.type,property:q.property,default:q.default,stops:[]},lr.push(za)),$t[za].stops.push([la[0].value,la[1]])}let Ar=[];for(let Kr of lr)Ar.push([$t[Kr].zoom,ch($t[Kr],D)]);let zr={name:"linear"};return{kind:"composite",interpolationType:zr,interpolationFactor:Cn.interpolationFactor.bind(void 0,zr),zoomStops:Ar.map(Kr=>Kr[0]),evaluate:({zoom:Kr},la)=>fh({stops:Ar,base:q.base},D,Kr).evaluate(Kr,la)}}if(Ce){let $t=Ue==="exponential"?{name:"exponential",base:q.base!==void 0?q.base:1}:null;return{kind:"camera",interpolationType:$t,interpolationFactor:Cn.interpolationFactor.bind(void 0,$t),zoomStops:q.stops.map(lr=>lr[0]),evaluate:({zoom:lr})=>ut(q,D,lr,Tt,Ft)}}return{kind:"source",evaluate($t,lr){let Ar=lr&&lr.properties?lr.properties[q.property]:void 0;return Ar===void 0?df(q.default,D.default):ut(q,D,Ar,Tt,Ft)}}}function df(q,D,Y){return q!==void 0?q:D!==void 0?D:Y!==void 0?Y:void 0}function Ah(q,D,Y,pe,Ce){return df(typeof Y===Ce?pe[Y]:void 0,q.default,D.default)}function ku(q,D,Y){if(Us(Y)!=="number")return df(q.default,D.default);let pe=q.stops.length;if(pe===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[pe-1][0])return q.stops[pe-1][1];let Ce=da(q.stops.map(Ue=>Ue[0]),Y);return q.stops[Ce][1]}function fh(q,D,Y){let pe=q.base!==void 0?q.base:1;if(Us(Y)!=="number")return df(q.default,D.default);let Ce=q.stops.length;if(Ce===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[Ce-1][0])return q.stops[Ce-1][1];let Ue=da(q.stops.map($t=>$t[0]),Y),Ge=function($t,lr,Ar,zr){let Kr=zr-Ar,la=$t-Ar;return Kr===0?0:lr===1?la/Kr:(Math.pow(lr,la)-1)/(Math.pow(lr,Kr)-1)}(Y,pe,q.stops[Ue][0],q.stops[Ue+1][0]),ut=q.stops[Ue][1],Tt=q.stops[Ue+1][1],Ft=$n[D.type]||Zh;return typeof ut.evaluate=="function"?{evaluate(...$t){let lr=ut.evaluate.apply(void 0,$t),Ar=Tt.evaluate.apply(void 0,$t);if(lr!==void 0&&Ar!==void 0)return Ft(lr,Ar,Ge,q.colorSpace)}}:Ft(ut,Tt,Ge,q.colorSpace)}function ru(q,D,Y){switch(D.type){case"color":Y=Ut.parse(Y);break;case"formatted":Y=pa.fromString(Y.toString());break;case"resolvedImage":Y=qa.fromString(Y.toString());break;case"padding":Y=Xr.parse(Y);break;default:Us(Y)===D.type||D.type==="enum"&&D.values[Y]||(Y=void 0)}return df(Y,q.default,D.default)}Fl.register(pf,{error:[{kind:"error"},[Ct],(q,[D])=>{throw new kr(D.evaluate(q))}],typeof:[Ct,[ur],(q,[D])=>Ke(mt(D.evaluate(q)))],"to-rgba":[Fe(Qe,4),[Ot],(q,[D])=>{let[Y,pe,Ce,Ue]=D.evaluate(q).rgb;return[255*Y,255*pe,255*Ce,Ue]}],rgb:[Ot,[Qe,Qe,Qe],lh],rgba:[Ot,[Qe,Qe,Qe,Qe],lh],has:{type:St,overloads:[[[Ct],(q,[D])=>Xf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Xf(D.evaluate(q),Y.evaluate(q))]]},get:{type:ur,overloads:[[[Ct],(q,[D])=>Rf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Rf(D.evaluate(q),Y.evaluate(q))]]},"feature-state":[ur,[Ct],(q,[D])=>Rf(D.evaluate(q),q.featureState||{})],properties:[jt,[],q=>q.properties()],"geometry-type":[Ct,[],q=>q.geometryType()],id:[ur,[],q=>q.id()],zoom:[Qe,[],q=>q.globals.zoom],"heatmap-density":[Qe,[],q=>q.globals.heatmapDensity||0],"line-progress":[Qe,[],q=>q.globals.lineProgress||0],accumulated:[ur,[],q=>q.globals.accumulated===void 0?null:q.globals.accumulated],"+":[Qe,Kc(Qe),(q,D)=>{let Y=0;for(let pe of D)Y+=pe.evaluate(q);return Y}],"*":[Qe,Kc(Qe),(q,D)=>{let Y=1;for(let pe of D)Y*=pe.evaluate(q);return Y}],"-":{type:Qe,overloads:[[[Qe,Qe],(q,[D,Y])=>D.evaluate(q)-Y.evaluate(q)],[[Qe],(q,[D])=>-D.evaluate(q)]]},"/":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)/Y.evaluate(q)],"%":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)%Y.evaluate(q)],ln2:[Qe,[],()=>Math.LN2],pi:[Qe,[],()=>Math.PI],e:[Qe,[],()=>Math.E],"^":[Qe,[Qe,Qe],(q,[D,Y])=>Math.pow(D.evaluate(q),Y.evaluate(q))],sqrt:[Qe,[Qe],(q,[D])=>Math.sqrt(D.evaluate(q))],log10:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN10],ln:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))],log2:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN2],sin:[Qe,[Qe],(q,[D])=>Math.sin(D.evaluate(q))],cos:[Qe,[Qe],(q,[D])=>Math.cos(D.evaluate(q))],tan:[Qe,[Qe],(q,[D])=>Math.tan(D.evaluate(q))],asin:[Qe,[Qe],(q,[D])=>Math.asin(D.evaluate(q))],acos:[Qe,[Qe],(q,[D])=>Math.acos(D.evaluate(q))],atan:[Qe,[Qe],(q,[D])=>Math.atan(D.evaluate(q))],min:[Qe,Kc(Qe),(q,D)=>Math.min(...D.map(Y=>Y.evaluate(q)))],max:[Qe,Kc(Qe),(q,D)=>Math.max(...D.map(Y=>Y.evaluate(q)))],abs:[Qe,[Qe],(q,[D])=>Math.abs(D.evaluate(q))],round:[Qe,[Qe],(q,[D])=>{let Y=D.evaluate(q);return Y<0?-Math.round(-Y):Math.round(Y)}],floor:[Qe,[Qe],(q,[D])=>Math.floor(D.evaluate(q))],ceil:[Qe,[Qe],(q,[D])=>Math.ceil(D.evaluate(q))],"filter-==":[St,[Ct,ur],(q,[D,Y])=>q.properties()[D.value]===Y.value],"filter-id-==":[St,[ur],(q,[D])=>q.id()===D.value],"filter-type-==":[St,[Ct],(q,[D])=>q.geometryType()===D.value],"filter-<":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<Ce}],"filter-id-<":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<pe}],"filter->":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>Ce}],"filter-id->":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>pe}],"filter-<=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<=Ce}],"filter-id-<=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<=pe}],"filter->=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>=Ce}],"filter-id->=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>=pe}],"filter-has":[St,[ur],(q,[D])=>D.value in q.properties()],"filter-has-id":[St,[],q=>q.id()!==null&&q.id()!==void 0],"filter-type-in":[St,[Fe(Ct)],(q,[D])=>D.value.indexOf(q.geometryType())>=0],"filter-id-in":[St,[Fe(ur)],(q,[D])=>D.value.indexOf(q.id())>=0],"filter-in-small":[St,[Ct,Fe(ur)],(q,[D,Y])=>Y.value.indexOf(q.properties()[D.value])>=0],"filter-in-large":[St,[Ct,Fe(ur)],(q,[D,Y])=>function(pe,Ce,Ue,Ge){for(;Ue<=Ge;){let ut=Ue+Ge>>1;if(Ce[ut]===pe)return!0;Ce[ut]>pe?Ge=ut-1:Ue=ut+1}return!1}(q.properties()[D.value],Y.value,0,Y.value.length-1)],all:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)&&Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(!Y.evaluate(q))return!1;return!0}]]},any:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)||Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(Y.evaluate(q))return!0;return!1}]]},"!":[St,[St],(q,[D])=>!D.evaluate(q)],"is-supported-script":[St,[Ct],(q,[D])=>{let Y=q.globals&&q.globals.isSupportedScript;return!Y||Y(D.evaluate(q))}],upcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toUpperCase()],downcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toLowerCase()],concat:[Ct,Kc(ur),(q,D)=>D.map(Y=>gt(Y.evaluate(q))).join("")],"resolved-locale":[Ct,[ar],(q,[D])=>D.evaluate(q).resolvedLocale()]});class Cu{constructor(D,Y){var pe;this.expression=D,this._warningHistory={},this._evaluator=new Jr,this._defaultValue=Y?(pe=Y).type==="color"&&Kf(pe.default)?new Ut(0,0,0,0):pe.type==="color"?Ut.parse(pe.default)||null:pe.type==="padding"?Xr.parse(pe.default)||null:pe.type==="variableAnchorOffsetCollection"?Fa.parse(pe.default)||null:pe.default===void 0?null:pe.default:null,this._enumValues=Y&&Y.type==="enum"?Y.values:null}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._evaluator.globals=D,this._evaluator.feature=Y,this._evaluator.featureState=pe,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge,this.expression.evaluate(this._evaluator)}evaluate(D,Y,pe,Ce,Ue,Ge){this._evaluator.globals=D,this._evaluator.feature=Y||null,this._evaluator.featureState=pe||null,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge||null;try{let ut=this.expression.evaluate(this._evaluator);if(ut==null||typeof ut=="number"&&ut!=ut)return this._defaultValue;if(this._enumValues&&!(ut in this._enumValues))throw new kr(`Expected value to be one of ${Object.keys(this._enumValues).map(Tt=>JSON.stringify(Tt)).join(", ")}, but found ${JSON.stringify(ut)} instead.`);return ut}catch(ut){return this._warningHistory[ut.message]||(this._warningHistory[ut.message]=!0,typeof console<"u"&&console.warn(ut.message)),this._defaultValue}}}function xc(q){return Array.isArray(q)&&q.length>0&&typeof q[0]=="string"&&q[0]in pf}function kl(q,D){let Y=new oa(pf,Yf,[],D?function(Ce){let Ue={color:Ot,string:Ct,number:Qe,enum:Ct,boolean:St,formatted:Cr,padding:vr,resolvedImage:_r,variableAnchorOffsetCollection:yt};return Ce.type==="array"?Fe(Ue[Ce.value]||ur,Ce.length):Ue[Ce.type]}(D):void 0),pe=Y.parse(q,void 0,void 0,void 0,D&&D.type==="string"?{typeAnnotation:"coerce"}:void 0);return pe?Dc(new Cu(pe,D)):Jc(Y.errors)}class Fc{constructor(D,Y){this.kind=D,this._styleExpression=Y,this.isStateDependent=D!=="constant"&&!Ju(Y.expression)}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}}class $u{constructor(D,Y,pe,Ce){this.kind=D,this.zoomStops=pe,this._styleExpression=Y,this.isStateDependent=D!=="camera"&&!Ju(Y.expression),this.interpolationType=Ce}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}interpolationFactor(D,Y,pe){return this.interpolationType?Cn.interpolationFactor(this.interpolationType,D,Y,pe):0}}function vu(q,D){let Y=kl(q,D);if(Y.result==="error")return Y;let pe=Y.value.expression,Ce=uh(pe);if(!Ce&&!Eu(D))return Jc([new ze("","data expressions not supported")]);let Ue=Df(pe,["zoom"]);if(!Ue&&!wf(D))return Jc([new ze("","zoom expressions not supported")]);let Ge=hh(pe);return Ge||Ue?Ge instanceof ze?Jc([Ge]):Ge instanceof Cn&&!zc(D)?Jc([new ze("",'"interpolate" expressions cannot be used with this property')]):Dc(Ge?new $u(Ce?"camera":"composite",Y.value,Ge.labels,Ge instanceof Cn?Ge.interpolation:void 0):new Fc(Ce?"constant":"source",Y.value)):Jc([new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class xl{constructor(D,Y){this._parameters=D,this._specification=Y,ce(this,ch(this._parameters,this._specification))}static deserialize(D){return new xl(D._parameters,D._specification)}static serialize(D){return{_parameters:D._parameters,_specification:D._specification}}}function hh(q){let D=null;if(q instanceof ca)D=hh(q.result);else if(q instanceof Xi){for(let Y of q.args)if(D=hh(Y),D)break}else(q instanceof Sa||q instanceof Cn)&&q.input instanceof Fl&&q.input.name==="zoom"&&(D=q);return D instanceof ze||q.eachChild(Y=>{let pe=hh(Y);pe instanceof ze?D=pe:!D&&pe?D=new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):D&&pe&&D!==pe&&(D=new ze("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),D}function Sh(q){if(q===!0||q===!1)return!0;if(!Array.isArray(q)||q.length===0)return!1;switch(q[0]){case"has":return q.length>=2&&q[1]!=="$id"&&q[1]!=="$type";case"in":return q.length>=3&&(typeof q[1]!="string"||Array.isArray(q[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return q.length!==3||Array.isArray(q[1])||Array.isArray(q[2]);case"any":case"all":for(let D of q.slice(1))if(!Sh(D)&&typeof D!="boolean")return!1;return!0;default:return!0}}let Uu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function bc(q){if(q==null)return{filter:()=>!0,needGeometry:!1};Sh(q)||(q=vf(q));let D=kl(q,Uu);if(D.result==="error")throw new Error(D.value.map(Y=>`${Y.key}: ${Y.message}`).join(", "));return{filter:(Y,pe,Ce)=>D.value.evaluate(Y,pe,{},Ce),needGeometry:hp(q)}}function lc(q,D){return q<D?-1:q>D?1:0}function hp(q){if(!Array.isArray(q))return!1;if(q[0]==="within"||q[0]==="distance")return!0;for(let D=1;D<q.length;D++)if(hp(q[D]))return!0;return!1}function vf(q){if(!q)return!0;let D=q[0];return q.length<=1?D!=="any":D==="=="?Tf(q[1],q[2],"=="):D==="!="?au(Tf(q[1],q[2],"==")):D==="<"||D===">"||D==="<="||D===">="?Tf(q[1],q[2],D):D==="any"?(Y=q.slice(1),["any"].concat(Y.map(vf))):D==="all"?["all"].concat(q.slice(1).map(vf)):D==="none"?["all"].concat(q.slice(1).map(vf).map(au)):D==="in"?Lu(q[1],q.slice(2)):D==="!in"?au(Lu(q[1],q.slice(2))):D==="has"?zf(q[1]):D!=="!has"||au(zf(q[1]));var Y}function Tf(q,D,Y){switch(q){case"$type":return[`filter-type-${Y}`,D];case"$id":return[`filter-id-${Y}`,D];default:return[`filter-${Y}`,q,D]}}function Lu(q,D){if(D.length===0)return!1;switch(q){case"$type":return["filter-type-in",["literal",D]];case"$id":return["filter-id-in",["literal",D]];default:return D.length>200&&!D.some(Y=>typeof Y!=typeof D[0])?["filter-in-large",q,["literal",D.sort(lc)]]:["filter-in-small",q,["literal",D]]}}function zf(q){switch(q){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",q]}}function au(q){return["!",q]}function $c(q){let D=typeof q;if(D==="number"||D==="boolean"||D==="string"||q==null)return JSON.stringify(q);if(Array.isArray(q)){let Ce="[";for(let Ue of q)Ce+=`${$c(Ue)},`;return`${Ce}]`}let Y=Object.keys(q).sort(),pe="{";for(let Ce=0;Ce<Y.length;Ce++)pe+=`${JSON.stringify(Y[Ce])}:${$c(q[Y[Ce]])},`;return`${pe}}`}function Mh(q){let D="";for(let Y of fe)D+=`/${$c(q[Y])}`;return D}function Ff(q){let D=q.value;return D?[new ge(q.key,D,"constants have been deprecated as of v8")]:[]}function il(q){return q instanceof Number||q instanceof String||q instanceof Boolean?q.valueOf():q}function mu(q){if(Array.isArray(q))return q.map(mu);if(q instanceof Object&&!(q instanceof Number||q instanceof String||q instanceof Boolean)){let D={};for(let Y in q)D[Y]=mu(q[Y]);return D}return il(q)}function gu(q){let D=q.key,Y=q.value,pe=q.valueSpec||{},Ce=q.objectElementValidators||{},Ue=q.style,Ge=q.styleSpec,ut=q.validateSpec,Tt=[],Ft=Us(Y);if(Ft!=="object")return[new ge(D,Y,`object expected, ${Ft} found`)];for(let $t in Y){let lr=$t.split(".")[0],Ar=pe[lr]||pe["*"],zr;if(Ce[lr])zr=Ce[lr];else if(pe[lr])zr=ut;else if(Ce["*"])zr=Ce["*"];else{if(!pe["*"]){Tt.push(new ge(D,Y[$t],`unknown property "${$t}"`));continue}zr=ut}Tt=Tt.concat(zr({key:(D&&`${D}.`)+$t,value:Y[$t],valueSpec:Ar,style:Ue,styleSpec:Ge,object:Y,objectKey:$t,validateSpec:ut},Y))}for(let $t in pe)Ce[$t]||pe[$t].required&&pe[$t].default===void 0&&Y[$t]===void 0&&Tt.push(new ge(D,Y,`missing required property "${$t}"`));return Tt}function Jf(q){let D=q.value,Y=q.valueSpec,pe=q.style,Ce=q.styleSpec,Ue=q.key,Ge=q.arrayElementValidator||q.validateSpec;if(Us(D)!=="array")return[new ge(Ue,D,`array expected, ${Us(D)} found`)];if(Y.length&&D.length!==Y.length)return[new ge(Ue,D,`array length ${Y.length} expected, length ${D.length} found`)];if(Y["min-length"]&&D.length<Y["min-length"])return[new ge(Ue,D,`array length at least ${Y["min-length"]} expected, length ${D.length} found`)];let ut={type:Y.value,values:Y.values};Ce.$version<7&&(ut.function=Y.function),Us(Y.value)==="object"&&(ut=Y.value);let Tt=[];for(let Ft=0;Ft<D.length;Ft++)Tt=Tt.concat(Ge({array:D,arrayIndex:Ft,value:D[Ft],valueSpec:ut,validateSpec:q.validateSpec,style:pe,styleSpec:Ce,key:`${Ue}[${Ft}]`}));return Tt}function el(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=Us(Y);return Ce==="number"&&Y!=Y&&(Ce="NaN"),Ce!=="number"?[new ge(D,Y,`number expected, ${Ce} found`)]:"minimum"in pe&&Y<pe.minimum?[new ge(D,Y,`${Y} is less than the minimum value ${pe.minimum}`)]:"maximum"in pe&&Y>pe.maximum?[new ge(D,Y,`${Y} is greater than the maximum value ${pe.maximum}`)]:[]}function mf(q){let D=q.valueSpec,Y=il(q.value.type),pe,Ce,Ue,Ge={},ut=Y!=="categorical"&&q.value.property===void 0,Tt=!ut,Ft=Us(q.value.stops)==="array"&&Us(q.value.stops[0])==="array"&&Us(q.value.stops[0][0])==="object",$t=gu({key:q.key,value:q.value,valueSpec:q.styleSpec.function,validateSpec:q.validateSpec,style:q.style,styleSpec:q.styleSpec,objectElementValidators:{stops:function(zr){if(Y==="identity")return[new ge(zr.key,zr.value,'identity function may not have a "stops" property')];let Kr=[],la=zr.value;return Kr=Kr.concat(Jf({key:zr.key,value:la,valueSpec:zr.valueSpec,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,arrayElementValidator:lr})),Us(la)==="array"&&la.length===0&&Kr.push(new ge(zr.key,la,"array must have at least one stop")),Kr},default:function(zr){return zr.validateSpec({key:zr.key,value:zr.value,valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec})}}});return Y==="identity"&&ut&&$t.push(new ge(q.key,q.value,'missing required property "property"')),Y==="identity"||q.value.stops||$t.push(new ge(q.key,q.value,'missing required property "stops"')),Y==="exponential"&&q.valueSpec.expression&&!zc(q.valueSpec)&&$t.push(new ge(q.key,q.value,"exponential functions not supported")),q.styleSpec.$version>=8&&(Tt&&!Eu(q.valueSpec)?$t.push(new ge(q.key,q.value,"property functions not supported")):ut&&!wf(q.valueSpec)&&$t.push(new ge(q.key,q.value,"zoom functions not supported"))),Y!=="categorical"&&!Ft||q.value.property!==void 0||$t.push(new ge(q.key,q.value,'"property" property is required')),$t;function lr(zr){let Kr=[],la=zr.value,za=zr.key;if(Us(la)!=="array")return[new ge(za,la,`array expected, ${Us(la)} found`)];if(la.length!==2)return[new ge(za,la,`array length 2 expected, length ${la.length} found`)];if(Ft){if(Us(la[0])!=="object")return[new ge(za,la,`object expected, ${Us(la[0])} found`)];if(la[0].zoom===void 0)return[new ge(za,la,"object stop key must have zoom")];if(la[0].value===void 0)return[new ge(za,la,"object stop key must have value")];if(Ue&&Ue>il(la[0].zoom))return[new ge(za,la[0].zoom,"stop zoom values must appear in ascending order")];il(la[0].zoom)!==Ue&&(Ue=il(la[0].zoom),Ce=void 0,Ge={}),Kr=Kr.concat(gu({key:`${za}[0]`,value:la[0],valueSpec:{zoom:{}},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,objectElementValidators:{zoom:el,value:Ar}}))}else Kr=Kr.concat(Ar({key:`${za}[0]`,value:la[0],valueSpec:{},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec},la));return xc(mu(la[1]))?Kr.concat([new ge(`${za}[1]`,la[1],"expressions are not allowed in function stops.")]):Kr.concat(zr.validateSpec({key:`${za}[1]`,value:la[1],valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec}))}function Ar(zr,Kr){let la=Us(zr.value),za=il(zr.value),ja=zr.value!==null?zr.value:Kr;if(pe){if(la!==pe)return[new ge(zr.key,ja,`${la} stop domain type must match previous stop domain type ${pe}`)]}else pe=la;if(la!=="number"&&la!=="string"&&la!=="boolean")return[new ge(zr.key,ja,"stop domain value must be a number, string, or boolean")];if(la!=="number"&&Y!=="categorical"){let gi=`number expected, ${la} found`;return Eu(D)&&Y===void 0&&(gi+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ge(zr.key,ja,gi)]}return Y!=="categorical"||la!=="number"||isFinite(za)&&Math.floor(za)===za?Y!=="categorical"&&la==="number"&&Ce!==void 0&&za<Ce?[new ge(zr.key,ja,"stop domain values must appear in ascending order")]:(Ce=za,Y==="categorical"&&za in Ge?[new ge(zr.key,ja,"stop domain values must be unique")]:(Ge[za]=!0,[])):[new ge(zr.key,ja,`integer expected, found ${za}`)]}}function wc(q){let D=(q.expressionContext==="property"?vu:kl)(mu(q.value),q.valueSpec);if(D.result==="error")return D.value.map(pe=>new ge(`${q.key}${pe.key}`,q.value,pe.message));let Y=D.value.expression||D.value._styleExpression.expression;if(q.expressionContext==="property"&&q.propertyKey==="text-font"&&!Y.outputDefined())return[new ge(q.key,q.value,`Invalid data expression for "${q.propertyKey}". Output values must be contained as literals within the expression.`)];if(q.expressionContext==="property"&&q.propertyType==="layout"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with layout properties.')];if(q.expressionContext==="filter"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with filters.')];if(q.expressionContext&&q.expressionContext.indexOf("cluster")===0){if(!Df(Y,["zoom","feature-state"]))return[new ge(q.key,q.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(q.expressionContext==="cluster-initial"&&!uh(Y))return[new ge(q.key,q.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function ju(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=[];return Array.isArray(pe.values)?pe.values.indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${pe.values.join(", ")}], ${JSON.stringify(Y)} found`)):Object.keys(pe.values).indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${Object.keys(pe.values).join(", ")}], ${JSON.stringify(Y)} found`)),Ce}function Af(q){return Sh(mu(q.value))?wc(ce({},q,{expressionContext:"filter",valueSpec:{value:"boolean"}})):uc(q)}function uc(q){let D=q.value,Y=q.key;if(Us(D)!=="array")return[new ge(Y,D,`array expected, ${Us(D)} found`)];let pe=q.styleSpec,Ce,Ue=[];if(D.length<1)return[new ge(Y,D,"filter array must have at least 1 element")];switch(Ue=Ue.concat(ju({key:`${Y}[0]`,value:D[0],valueSpec:pe.filter_operator,style:q.style,styleSpec:q.styleSpec})),il(D[0])){case"<":case"<=":case">":case">=":D.length>=2&&il(D[1])==="$type"&&Ue.push(new ge(Y,D,`"$type" cannot be use with operator "${D[0]}"`));case"==":case"!=":D.length!==3&&Ue.push(new ge(Y,D,`filter array for operator "${D[0]}" must have 3 elements`));case"in":case"!in":D.length>=2&&(Ce=Us(D[1]),Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`)));for(let Ge=2;Ge<D.length;Ge++)Ce=Us(D[Ge]),il(D[1])==="$type"?Ue=Ue.concat(ju({key:`${Y}[${Ge}]`,value:D[Ge],valueSpec:pe.geometry_type,style:q.style,styleSpec:q.styleSpec})):Ce!=="string"&&Ce!=="number"&&Ce!=="boolean"&&Ue.push(new ge(`${Y}[${Ge}]`,D[Ge],`string, number, or boolean expected, ${Ce} found`));break;case"any":case"all":case"none":for(let Ge=1;Ge<D.length;Ge++)Ue=Ue.concat(uc({key:`${Y}[${Ge}]`,value:D[Ge],style:q.style,styleSpec:q.styleSpec}));break;case"has":case"!has":Ce=Us(D[1]),D.length!==2?Ue.push(new ge(Y,D,`filter array for "${D[0]}" operator must have 2 elements`)):Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`))}return Ue}function Qc(q,D){let Y=q.key,pe=q.validateSpec,Ce=q.style,Ue=q.styleSpec,Ge=q.value,ut=q.objectKey,Tt=Ue[`${D}_${q.layerType}`];if(!Tt)return[];let Ft=ut.match(/^(.*)-transition$/);if(D==="paint"&&Ft&&Tt[Ft[1]]&&Tt[Ft[1]].transition)return pe({key:Y,value:Ge,valueSpec:Ue.transition,style:Ce,styleSpec:Ue});let $t=q.valueSpec||Tt[ut];if(!$t)return[new ge(Y,Ge,`unknown property "${ut}"`)];let lr;if(Us(Ge)==="string"&&Eu($t)&&!$t.tokens&&(lr=/^{([^}]+)}$/.exec(Ge)))return[new ge(Y,Ge,`"${ut}" does not support interpolation syntax
Use an identity property function instead: \`{ "type": "identity", "property": ${JSON.stringify(lr[1])} }\`.`)];let Ar=[];return q.layerType==="symbol"&&(ut==="text-field"&&Ce&&!Ce.glyphs&&Ar.push(new ge(Y,Ge,'use of "text-field" requires a style "glyphs" property')),ut==="text-font"&&Kf(mu(Ge))&&il(Ge.type)==="identity"&&Ar.push(new ge(Y,Ge,'"text-font" does not support identity functions'))),Ar.concat(pe({key:q.key,value:Ge,valueSpec:$t,style:Ce,styleSpec:Ue,expressionContext:"property",propertyType:D,propertyKey:ut}))}function $f(q){return Qc(q,"paint")}function Vl(q){return Qc(q,"layout")}function Qf(q){let D=[],Y=q.value,pe=q.key,Ce=q.style,Ue=q.styleSpec;Y.type||Y.ref||D.push(new ge(pe,Y,'either "type" or "ref" is required'));let Ge=il(Y.type),ut=il(Y.ref);if(Y.id){let Tt=il(Y.id);for(let Ft=0;Ft<q.arrayIndex;Ft++){let $t=Ce.layers[Ft];il($t.id)===Tt&&D.push(new ge(pe,Y.id,`duplicate layer id "${Y.id}", previously used at line ${$t.id.__line__}`))}}if("ref"in Y){let Tt;["type","source","source-layer","filter","layout"].forEach(Ft=>{Ft in Y&&D.push(new ge(pe,Y[Ft],`"${Ft}" is prohibited for ref layers`))}),Ce.layers.forEach(Ft=>{il(Ft.id)===ut&&(Tt=Ft)}),Tt?Tt.ref?D.push(new ge(pe,Y.ref,"ref cannot reference another ref layer")):Ge=il(Tt.type):D.push(new ge(pe,Y.ref,`ref layer "${ut}" not found`))}else if(Ge!=="background")if(Y.source){let Tt=Ce.sources&&Ce.sources[Y.source],Ft=Tt&&il(Tt.type);Tt?Ft==="vector"&&Ge==="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster source`)):Ft!=="raster-dem"&&Ge==="hillshade"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster-dem source`)):Ft==="raster"&&Ge!=="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a vector source`)):Ft!=="vector"||Y["source-layer"]?Ft==="raster-dem"&&Ge!=="hillshade"?D.push(new ge(pe,Y.source,"raster-dem source can only be used with layer type 'hillshade'.")):Ge!=="line"||!Y.paint||!Y.paint["line-gradient"]||Ft==="geojson"&&Tt.lineMetrics||D.push(new ge(pe,Y,`layer "${Y.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):D.push(new ge(pe,Y,`layer "${Y.id}" must specify a "source-layer"`)):D.push(new ge(pe,Y.source,`source "${Y.source}" not found`))}else D.push(new ge(pe,Y,'missing required property "source"'));return D=D.concat(gu({key:pe,value:Y,valueSpec:Ue.layer,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,objectElementValidators:{"*":()=>[],type:()=>q.validateSpec({key:`${pe}.type`,value:Y.type,valueSpec:Ue.layer.type,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,object:Y,objectKey:"type"}),filter:Af,layout:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>Vl(ce({layerType:Ge},Ft))}}),paint:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>$f(ce({layerType:Ge},Ft))}})}})),D}function Vu(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="string"?[new ge(Y,D,`string expected, ${pe} found`)]:[]}let Tc={promoteId:function({key:q,value:D}){if(Us(D)==="string")return Vu({key:q,value:D});{let Y=[];for(let pe in D)Y.push(...Vu({key:`${q}.${pe}`,value:D[pe]}));return Y}}};function cc(q){let D=q.value,Y=q.key,pe=q.styleSpec,Ce=q.style,Ue=q.validateSpec;if(!D.type)return[new ge(Y,D,'"type" is required')];let Ge=il(D.type),ut;switch(Ge){case"vector":case"raster":return ut=gu({key:Y,value:D,valueSpec:pe[`source_${Ge.replace("-","_")}`],style:q.style,styleSpec:pe,objectElementValidators:Tc,validateSpec:Ue}),ut;case"raster-dem":return ut=function(Tt){var Ft;let $t=(Ft=Tt.sourceName)!==null&&Ft!==void 0?Ft:"",lr=Tt.value,Ar=Tt.styleSpec,zr=Ar.source_raster_dem,Kr=Tt.style,la=[],za=Us(lr);if(lr===void 0)return la;if(za!=="object")return la.push(new ge("source_raster_dem",lr,`object expected, ${za} found`)),la;let ja=il(lr.encoding)==="custom",gi=["redFactor","greenFactor","blueFactor","baseShift"],ei=Tt.value.encoding?`"${Tt.value.encoding}"`:"Default";for(let hi in lr)!ja&&gi.includes(hi)?la.push(new ge(hi,lr[hi],`In "${$t}": "${hi}" is only valid when "encoding" is set to "custom". ${ei} encoding found`)):zr[hi]?la=la.concat(Tt.validateSpec({key:hi,value:lr[hi],valueSpec:zr[hi],validateSpec:Tt.validateSpec,style:Kr,styleSpec:Ar})):la.push(new ge(hi,lr[hi],`unknown property "${hi}"`));return la}({sourceName:Y,value:D,style:q.style,styleSpec:pe,validateSpec:Ue}),ut;case"geojson":if(ut=gu({key:Y,value:D,valueSpec:pe.source_geojson,style:Ce,styleSpec:pe,validateSpec:Ue,objectElementValidators:Tc}),D.cluster)for(let Tt in D.clusterProperties){let[Ft,$t]=D.clusterProperties[Tt],lr=typeof Ft=="string"?[Ft,["accumulated"],["get",Tt]]:Ft;ut.push(...wc({key:`${Y}.${Tt}.map`,value:$t,validateSpec:Ue,expressionContext:"cluster-map"})),ut.push(...wc({key:`${Y}.${Tt}.reduce`,value:lr,validateSpec:Ue,expressionContext:"cluster-reduce"}))}return ut;case"video":return gu({key:Y,value:D,valueSpec:pe.source_video,style:Ce,validateSpec:Ue,styleSpec:pe});case"image":return gu({key:Y,value:D,valueSpec:pe.source_image,style:Ce,validateSpec:Ue,styleSpec:pe});case"canvas":return[new ge(Y,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return ju({key:`${Y}.type`,value:D.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:Ce,validateSpec:Ue,styleSpec:pe})}}function Cl(q){let D=q.value,Y=q.styleSpec,pe=Y.light,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("light",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D){let Tt=ut.match(/^(.*)-transition$/);Ue=Ue.concat(Tt&&pe[Tt[1]]&&pe[Tt[1]].transition?q.validateSpec({key:ut,value:D[ut],valueSpec:Y.transition,validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)])}return Ue}function iu(q){let D=q.value,Y=q.styleSpec,pe=Y.sky,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("sky",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge}function fc(q){let D=q.value,Y=q.styleSpec,pe=Y.terrain,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("terrain",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D)Ue=Ue.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ue}function Oc(q){let D=[],Y=q.value,pe=q.key;if(Array.isArray(Y)){let Ce=[],Ue=[];for(let Ge in Y)Y[Ge].id&&Ce.includes(Y[Ge].id)&&D.push(new ge(pe,Y,`all the sprites' ids must be unique, but ${Y[Ge].id} is duplicated`)),Ce.push(Y[Ge].id),Y[Ge].url&&Ue.includes(Y[Ge].url)&&D.push(new ge(pe,Y,`all the sprites' URLs must be unique, but ${Y[Ge].url} is duplicated`)),Ue.push(Y[Ge].url),D=D.concat(gu({key:`${pe}[${Ge}]`,value:Y[Ge],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:q.validateSpec}));return D}return Vu({key:pe,value:Y})}let Qu={"*":()=>[],array:Jf,boolean:function(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="boolean"?[new ge(Y,D,`boolean expected, ${pe} found`)]:[]},number:el,color:function(q){let D=q.key,Y=q.value,pe=Us(Y);return pe!=="string"?[new ge(D,Y,`color expected, ${pe} found`)]:Ut.parse(String(Y))?[]:[new ge(D,Y,`color expected, "${Y}" found`)]},constants:Ff,enum:ju,filter:Af,function:mf,layer:Qf,object:gu,source:cc,light:Cl,sky:iu,terrain:fc,projection:function(q){let D=q.value,Y=q.styleSpec,pe=Y.projection,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("projection",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge},string:Vu,formatted:function(q){return Vu(q).length===0?[]:wc(q)},resolvedImage:function(q){return Vu(q).length===0?[]:wc(q)},padding:function(q){let D=q.key,Y=q.value;if(Us(Y)==="array"){if(Y.length<1||Y.length>4)return[new ge(D,Y,`padding requires 1 to 4 values; ${Y.length} values found`)];let pe={type:"number"},Ce=[];for(let Ue=0;Ue<Y.length;Ue++)Ce=Ce.concat(q.validateSpec({key:`${D}[${Ue}]`,value:Y[Ue],validateSpec:q.validateSpec,valueSpec:pe}));return Ce}return el({key:D,value:Y,valueSpec:{}})},variableAnchorOffsetCollection:function(q){let D=q.key,Y=q.value,pe=Us(Y),Ce=q.styleSpec;if(pe!=="array"||Y.length<1||Y.length%2!=0)return[new ge(D,Y,"variableAnchorOffsetCollection requires a non-empty array of even length")];let Ue=[];for(let Ge=0;Ge<Y.length;Ge+=2)Ue=Ue.concat(ju({key:`${D}[${Ge}]`,value:Y[Ge],valueSpec:Ce.layout_symbol["text-anchor"]})),Ue=Ue.concat(Jf({key:`${D}[${Ge+1}]`,value:Y[Ge+1],valueSpec:{length:2,value:"number"},validateSpec:q.validateSpec,style:q.style,styleSpec:Ce}));return Ue},sprite:Oc};function ef(q){let D=q.value,Y=q.valueSpec,pe=q.styleSpec;return q.validateSpec=ef,Y.expression&&Kf(il(D))?mf(q):Y.expression&&xc(mu(D))?wc(q):Y.type&&Qu[Y.type]?Qu[Y.type](q):gu(ce({},q,{valueSpec:Y.type?pe[Y.type]:Y}))}function Zt(q){let D=q.value,Y=q.key,pe=Vu(q);return pe.length||(D.indexOf("{fontstack}")===-1&&pe.push(new ge(Y,D,'"glyphs" url must include a "{fontstack}" token')),D.indexOf("{range}")===-1&&pe.push(new ge(Y,D,'"glyphs" url must include a "{range}" token'))),pe}function fr(q,D=ie){let Y=[];return Y=Y.concat(ef({key:"",value:q,valueSpec:D.$root,styleSpec:D,style:q,validateSpec:ef,objectElementValidators:{glyphs:Zt,"*":()=>[]}})),q.constants&&(Y=Y.concat(Ff({key:"constants",value:q.constants,style:q,styleSpec:D,validateSpec:ef}))),qr(Y)}function Yr(q){return function(D){return q(ps(wo({},D),{validateSpec:ef}))}}function qr(q){return[].concat(q).sort((D,Y)=>D.line-Y.line)}function ba(q){return function(...D){return qr(q.apply(this,D))}}fr.source=ba(Yr(cc)),fr.sprite=ba(Yr(Oc)),fr.glyphs=ba(Yr(Zt)),fr.light=ba(Yr(Cl)),fr.sky=ba(Yr(iu)),fr.terrain=ba(Yr(fc)),fr.layer=ba(Yr(Qf)),fr.filter=ba(Yr(Af)),fr.paintProperty=ba(Yr($f)),fr.layoutProperty=ba(Yr(Vl));let Ka=fr,oi=Ka.light,yi=Ka.sky,ki=Ka.paintProperty,Bi=Ka.layoutProperty;function li(q,D){let Y=!1;if(D&&D.length)for(let pe of D)q.fire(new j(new Error(pe.message))),Y=!0;return Y}class _i{constructor(D,Y,pe){let Ce=this.cells=[];if(D instanceof ArrayBuffer){this.arrayBuffer=D;let Ge=new Int32Array(this.arrayBuffer);D=Ge[0],this.d=(Y=Ge[1])+2*(pe=Ge[2]);for(let Tt=0;Tt<this.d*this.d;Tt++){let Ft=Ge[3+Tt],$t=Ge[3+Tt+1];Ce.push(Ft===$t?null:Ge.subarray(Ft,$t))}let ut=Ge[3+Ce.length+1];this.keys=Ge.subarray(Ge[3+Ce.length],ut),this.bboxes=Ge.subarray(ut),this.insert=this._insertReadonly}else{this.d=Y+2*pe;for(let Ge=0;Ge<this.d*this.d;Ge++)Ce.push([]);this.keys=[],this.bboxes=[]}this.n=Y,this.extent=D,this.padding=pe,this.scale=Y/D,this.uid=0;let Ue=pe/Y*D;this.min=-Ue,this.max=D+Ue}insert(D,Y,pe,Ce,Ue){this._forEachCell(Y,pe,Ce,Ue,this._insertCell,this.uid++,void 0,void 0),this.keys.push(D),this.bboxes.push(Y),this.bboxes.push(pe),this.bboxes.push(Ce),this.bboxes.push(Ue)}_insertReadonly(){throw new Error("Cannot insert into a GridIndex created from an ArrayBuffer.")}_insertCell(D,Y,pe,Ce,Ue,Ge){this.cells[Ue].push(Ge)}query(D,Y,pe,Ce,Ue){let Ge=this.min,ut=this.max;if(D<=Ge&&Y<=Ge&&ut<=pe&&ut<=Ce&&!Ue)return Array.prototype.slice.call(this.keys);{let Tt=[];return this._forEachCell(D,Y,pe,Ce,this._queryCell,Tt,{},Ue),Tt}}_queryCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this.cells[Ue];if(Ft!==null){let $t=this.keys,lr=this.bboxes;for(let Ar=0;Ar<Ft.length;Ar++){let zr=Ft[Ar];if(ut[zr]===void 0){let Kr=4*zr;(Tt?Tt(lr[Kr+0],lr[Kr+1],lr[Kr+2],lr[Kr+3]):D<=lr[Kr+2]&&Y<=lr[Kr+3]&&pe>=lr[Kr+0]&&Ce>=lr[Kr+1])?(ut[zr]=!0,Ge.push($t[zr])):ut[zr]=!1}}}}_forEachCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this._convertToCellCoord(D),$t=this._convertToCellCoord(Y),lr=this._convertToCellCoord(pe),Ar=this._convertToCellCoord(Ce);for(let zr=Ft;zr<=lr;zr++)for(let Kr=$t;Kr<=Ar;Kr++){let la=this.d*Kr+zr;if((!Tt||Tt(this._convertFromCellCoord(zr),this._convertFromCellCoord(Kr),this._convertFromCellCoord(zr+1),this._convertFromCellCoord(Kr+1)))&&Ue.call(this,D,Y,pe,Ce,la,Ge,ut,Tt))return}}_convertFromCellCoord(D){return(D-this.padding)/this.scale}_convertToCellCoord(D){return Math.max(0,Math.min(this.d-1,Math.floor(D*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let D=this.cells,Y=3+this.cells.length+1+1,pe=0;for(let Ge=0;Ge<this.cells.length;Ge++)pe+=this.cells[Ge].length;let Ce=new Int32Array(Y+pe+this.keys.length+this.bboxes.length);Ce[0]=this.extent,Ce[1]=this.n,Ce[2]=this.padding;let Ue=Y;for(let Ge=0;Ge<D.length;Ge++){let ut=D[Ge];Ce[3+Ge]=Ue,Ce.set(ut,Ue),Ue+=ut.length}return Ce[3+D.length]=Ue,Ce.set(this.keys,Ue),Ue+=this.keys.length,Ce[3+D.length+1]=Ue,Ce.set(this.bboxes,Ue),Ue+=this.bboxes.length,Ce.buffer}static serialize(D,Y){let pe=D.toArrayBuffer();return Y&&Y.push(pe),{buffer:pe}}static deserialize(D){return new _i(D.buffer)}}let vi={};function ti(q,D,Y={}){if(vi[q])throw new Error(`${q} is already registered.`);Object.defineProperty(D,"_classRegistryKey",{value:q,writeable:!1}),vi[q]={klass:D,omit:Y.omit||[],shallow:Y.shallow||[]}}ti("Object",Object),ti("TransferableGridIndex",_i),ti("Color",Ut),ti("Error",Error),ti("AJAXError",he),ti("ResolvedImage",qa),ti("StylePropertyFunction",xl),ti("StyleExpression",Cu,{omit:["_evaluator"]}),ti("ZoomDependentExpression",$u),ti("ZoomConstantExpression",Fc),ti("CompoundExpression",Fl,{omit:["_evaluate"]});for(let q in pf)pf[q]._classRegistryKey||ti(`Expression_${q}`,pf[q]);function rn(q){return q&&typeof ArrayBuffer<"u"&&(q instanceof ArrayBuffer||q.constructor&&q.constructor.name==="ArrayBuffer")}function Kn(q){return q.$name||q.constructor._classRegistryKey}function Wn(q){return!function(D){if(D===null||typeof D!="object")return!1;let Y=Kn(D);return!(!Y||Y==="Object")}(q)&&(q==null||typeof q=="boolean"||typeof q=="number"||typeof q=="string"||q instanceof Boolean||q instanceof Number||q instanceof String||q instanceof Date||q instanceof RegExp||q instanceof Blob||q instanceof Error||rn(q)||F(q)||ArrayBuffer.isView(q)||q instanceof ImageData)}function Jn(q,D){if(Wn(q))return(rn(q)||F(q))&&D&&D.push(q),ArrayBuffer.isView(q)&&D&&D.push(q.buffer),q instanceof ImageData&&D&&D.push(q.data.buffer),q;if(Array.isArray(q)){let Ue=[];for(let Ge of q)Ue.push(Jn(Ge,D));return Ue}if(typeof q!="object")throw new Error("can't serialize object of type "+typeof q);let Y=Kn(q);if(!Y)throw new Error(`can't serialize object of unregistered class ${q.constructor.name}`);if(!vi[Y])throw new Error(`${Y} is not registered.`);let{klass:pe}=vi[Y],Ce=pe.serialize?pe.serialize(q,D):{};if(pe.serialize){if(D&&Ce===D[D.length-1])throw new Error("statically serialized object won't survive transfer of $name property")}else{for(let Ue in q){if(!q.hasOwnProperty(Ue)||vi[Y].omit.indexOf(Ue)>=0)continue;let Ge=q[Ue];Ce[Ue]=vi[Y].shallow.indexOf(Ue)>=0?Ge:Jn(Ge,D)}q instanceof Error&&(Ce.message=q.message)}if(Ce.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(Ce.$name=Y),Ce}function no(q){if(Wn(q))return q;if(Array.isArray(q))return q.map(no);if(typeof q!="object")throw new Error("can't deserialize object of type "+typeof q);let D=Kn(q)||"Object";if(!vi[D])throw new Error(`can't deserialize unregistered class ${D}`);let{klass:Y}=vi[D];if(!Y)throw new Error(`can't deserialize unregistered class ${D}`);if(Y.deserialize)return Y.deserialize(q);let pe=Object.create(Y.prototype);for(let Ce of Object.keys(q)){if(Ce==="$name")continue;let Ue=q[Ce];pe[Ce]=vi[D].shallow.indexOf(Ce)>=0?Ue:no(Ue)}return pe}class en{constructor(){this.first=!0}update(D,Y){let pe=Math.floor(D);return this.first?(this.first=!1,this.lastIntegerZoom=pe,this.lastIntegerZoomTime=0,this.lastZoom=D,this.lastFloorZoom=pe,!0):(this.lastFloorZoom>pe?(this.lastIntegerZoom=pe+1,this.lastIntegerZoomTime=Y):this.lastFloorZoom<pe&&(this.lastIntegerZoom=pe,this.lastIntegerZoomTime=Y),D!==this.lastZoom&&(this.lastZoom=D,this.lastFloorZoom=pe,!0))}}let Ri={"Latin-1 Supplement":q=>q>=128&&q<=255,"Hangul Jamo":q=>q>=4352&&q<=4607,Khmer:q=>q>=6016&&q<=6143,"General Punctuation":q=>q>=8192&&q<=8303,"Letterlike Symbols":q=>q>=8448&&q<=8527,"Number Forms":q=>q>=8528&&q<=8591,"Miscellaneous Technical":q=>q>=8960&&q<=9215,"Control Pictures":q=>q>=9216&&q<=9279,"Optical Character Recognition":q=>q>=9280&&q<=9311,"Enclosed Alphanumerics":q=>q>=9312&&q<=9471,"Geometric Shapes":q=>q>=9632&&q<=9727,"Miscellaneous Symbols":q=>q>=9728&&q<=9983,"Miscellaneous Symbols and Arrows":q=>q>=11008&&q<=11263,"Ideographic Description Characters":q=>q>=12272&&q<=12287,"CJK Symbols and Punctuation":q=>q>=12288&&q<=12351,Katakana:q=>q>=12448&&q<=12543,Kanbun:q=>q>=12688&&q<=12703,"CJK Strokes":q=>q>=12736&&q<=12783,"Enclosed CJK Letters and Months":q=>q>=12800&&q<=13055,"CJK Compatibility":q=>q>=13056&&q<=13311,"Yijing Hexagram Symbols":q=>q>=19904&&q<=19967,"Private Use Area":q=>q>=57344&&q<=63743,"Vertical Forms":q=>q>=65040&&q<=65055,"CJK Compatibility Forms":q=>q>=65072&&q<=65103,"Small Form Variants":q=>q>=65104&&q<=65135,"Halfwidth and Fullwidth Forms":q=>q>=65280&&q<=65519};function co(q){for(let D of q)if(vs(D.charCodeAt(0)))return!0;return!1}function Wo(q){for(let D of q)if(!Ms(D.charCodeAt(0)))return!1;return!0}function bs(q){let D=q.map(Y=>{try{return new RegExp(`\\p{sc=${Y}}`,"u").source}catch{return null}}).filter(Y=>Y);return new RegExp(D.join("|"),"u")}let Xs=bs(["Arab","Dupl","Mong","Ougr","Syrc"]);function Ms(q){return!Xs.test(String.fromCodePoint(q))}let Hs=bs(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function vs(q){return!(q!==746&&q!==747&&(q<4352||!(Ri["CJK Compatibility Forms"](q)&&!(q>=65097&&q<=65103)||Ri["CJK Compatibility"](q)||Ri["CJK Strokes"](q)||!(!Ri["CJK Symbols and Punctuation"](q)||q>=12296&&q<=12305||q>=12308&&q<=12319||q===12336)||Ri["Enclosed CJK Letters and Months"](q)||Ri["Ideographic Description Characters"](q)||Ri.Kanbun(q)||Ri.Katakana(q)&&q!==12540||!(!Ri["Halfwidth and Fullwidth Forms"](q)||q===65288||q===65289||q===65293||q>=65306&&q<=65310||q===65339||q===65341||q===65343||q>=65371&&q<=65503||q===65507||q>=65512&&q<=65519)||!(!Ri["Small Form Variants"](q)||q>=65112&&q<=65118||q>=65123&&q<=65126)||Ri["Vertical Forms"](q)||Ri["Yijing Hexagram Symbols"](q)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(q))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(q))||Hs.test(String.fromCodePoint(q)))))}function Il(q){return!(vs(q)||function(D){return!!(Ri["Latin-1 Supplement"](D)&&(D===167||D===169||D===174||D===177||D===188||D===189||D===190||D===215||D===247)||Ri["General Punctuation"](D)&&(D===8214||D===8224||D===8225||D===8240||D===8241||D===8251||D===8252||D===8258||D===8263||D===8264||D===8265||D===8273)||Ri["Letterlike Symbols"](D)||Ri["Number Forms"](D)||Ri["Miscellaneous Technical"](D)&&(D>=8960&&D<=8967||D>=8972&&D<=8991||D>=8996&&D<=9e3||D===9003||D>=9085&&D<=9114||D>=9150&&D<=9165||D===9167||D>=9169&&D<=9179||D>=9186&&D<=9215)||Ri["Control Pictures"](D)&&D!==9251||Ri["Optical Character Recognition"](D)||Ri["Enclosed Alphanumerics"](D)||Ri["Geometric Shapes"](D)||Ri["Miscellaneous Symbols"](D)&&!(D>=9754&&D<=9759)||Ri["Miscellaneous Symbols and Arrows"](D)&&(D>=11026&&D<=11055||D>=11088&&D<=11097||D>=11192&&D<=11243)||Ri["CJK Symbols and Punctuation"](D)||Ri.Katakana(D)||Ri["Private Use Area"](D)||Ri["CJK Compatibility Forms"](D)||Ri["Small Form Variants"](D)||Ri["Halfwidth and Fullwidth Forms"](D)||D===8734||D===8756||D===8757||D>=9984&&D<=10087||D>=10102&&D<=10131||D===65532||D===65533)}(q))}let fl=bs(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function tl(q){return fl.test(String.fromCodePoint(q))}function Ln(q,D){return!(!D&&tl(q)||q>=2304&&q<=3583||q>=3840&&q<=4255||Ri.Khmer(q))}function Ao(q){for(let D of q)if(tl(D.charCodeAt(0)))return!0;return!1}let js=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(q){this.pluginStatus=q.pluginStatus,this.pluginURL=q.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(q){this.applyArabicShaping=q.applyArabicShaping,this.processBidirectionalText=q.processBidirectionalText,this.processStyledBidirectionalText=q.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Ts{constructor(D,Y){this.zoom=D,Y?(this.now=Y.now,this.fadeDuration=Y.fadeDuration,this.zoomHistory=Y.zoomHistory,this.transition=Y.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new en,this.transition={})}isSupportedScript(D){return function(Y,pe){for(let Ce of Y)if(!Ln(Ce.charCodeAt(0),pe))return!1;return!0}(D,js.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let D=this.zoom,Y=D-Math.floor(D),pe=this.crossFadingFactor();return D>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:Y+(1-Y)*pe}:{fromScale:.5,toScale:1,t:1-(1-pe)*Y}}}class nu{constructor(D,Y){this.property=D,this.value=Y,this.expression=function(pe,Ce){if(Kf(pe))return new xl(pe,Ce);if(xc(pe)){let Ue=vu(pe,Ce);if(Ue.result==="error")throw new Error(Ue.value.map(Ge=>`${Ge.key}: ${Ge.message}`).join(", "));return Ue.value}{let Ue=pe;return Ce.type==="color"&&typeof pe=="string"?Ue=Ut.parse(pe):Ce.type!=="padding"||typeof pe!="number"&&!Array.isArray(pe)?Ce.type==="variableAnchorOffsetCollection"&&Array.isArray(pe)&&(Ue=Fa.parse(pe)):Ue=Xr.parse(pe),{kind:"constant",evaluate:()=>Ue}}}(Y===void 0?D.specification.default:Y,D.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(D,Y,pe){return this.property.possiblyEvaluate(this,D,Y,pe)}}class Pu{constructor(D){this.property=D,this.value=new nu(D,void 0)}transitioned(D,Y){return new tf(this.property,this.value,Y,E({},D.transition,this.transition),D.now)}untransitioned(){return new tf(this.property,this.value,null,{},0)}}class ec{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitionablePropertyValues)}getValue(D){return u(this._values[D].value.value)}setValue(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].value=new nu(this._values[D].property,Y===null?void 0:u(Y))}getTransition(D){return u(this._values[D].transition)}setTransition(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].transition=u(Y)||void 0}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe);let Ce=this.getTransition(Y);Ce!==void 0&&(D[`${Y}-transition`]=Ce)}return D}transitioned(D,Y){let pe=new yu(this._properties);for(let Ce of Object.keys(this._values))pe._values[Ce]=this._values[Ce].transitioned(D,Y._values[Ce]);return pe}untransitioned(){let D=new yu(this._properties);for(let Y of Object.keys(this._values))D._values[Y]=this._values[Y].untransitioned();return D}}class tf{constructor(D,Y,pe,Ce,Ue){this.property=D,this.value=Y,this.begin=Ue+Ce.delay||0,this.end=this.begin+Ce.duration||0,D.specification.transition&&(Ce.delay||Ce.duration)&&(this.prior=pe)}possiblyEvaluate(D,Y,pe){let Ce=D.now||0,Ue=this.value.possiblyEvaluate(D,Y,pe),Ge=this.prior;if(Ge){if(Ce>this.end)return this.prior=null,Ue;if(this.value.isDataDriven())return this.prior=null,Ue;if(Ce<this.begin)return Ge.possiblyEvaluate(D,Y,pe);{let ut=(Ce-this.begin)/(this.end-this.begin);return this.property.interpolate(Ge.possiblyEvaluate(D,Y,pe),Ue,function(Tt){if(Tt<=0)return 0;if(Tt>=1)return 1;let Ft=Tt*Tt,$t=Ft*Tt;return 4*(Tt<.5?$t:3*(Tt-Ft)+$t-.75)}(ut))}}return Ue}}class yu{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitioningPropertyValues)}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}hasTransition(){for(let D of Object.keys(this._values))if(this._values[D].prior)return!0;return!1}}class Bc{constructor(D){this._properties=D,this._values=Object.create(D.defaultPropertyValues)}hasValue(D){return this._values[D].value!==void 0}getValue(D){return u(this._values[D].value)}setValue(D,Y){this._values[D]=new nu(this._values[D].property,Y===null?void 0:u(Y))}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe)}return D}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}}class Iu{constructor(D,Y,pe){this.property=D,this.value=Y,this.parameters=pe}isConstant(){return this.value.kind==="constant"}constantOr(D){return this.value.kind==="constant"?this.value.value:D}evaluate(D,Y,pe,Ce){return this.property.evaluate(this.value,this.parameters,D,Y,pe,Ce)}}class Ac{constructor(D){this._properties=D,this._values=Object.create(D.defaultPossiblyEvaluatedValues)}get(D){return this._values[D]}}class ro{constructor(D){this.specification=D}possiblyEvaluate(D,Y){if(D.isDataDriven())throw new Error("Value should not be data driven");return D.expression.evaluate(Y)}interpolate(D,Y,pe){let Ce=$n[this.specification.type];return Ce?Ce(D,Y,pe):D}}class Po{constructor(D,Y){this.specification=D,this.overrides=Y}possiblyEvaluate(D,Y,pe,Ce){return new Iu(this,D.expression.kind==="constant"||D.expression.kind==="camera"?{kind:"constant",value:D.expression.evaluate(Y,null,{},pe,Ce)}:D.expression,Y)}interpolate(D,Y,pe){if(D.value.kind!=="constant"||Y.value.kind!=="constant")return D;if(D.value.value===void 0||Y.value.value===void 0)return new Iu(this,{kind:"constant",value:void 0},D.parameters);let Ce=$n[this.specification.type];if(Ce){let Ue=Ce(D.value.value,Y.value.value,pe);return new Iu(this,{kind:"constant",value:Ue},D.parameters)}return D}evaluate(D,Y,pe,Ce,Ue,Ge){return D.kind==="constant"?D.value:D.evaluate(Y,pe,Ce,Ue,Ge)}}class Nc extends Po{possiblyEvaluate(D,Y,pe,Ce){if(D.value===void 0)return new Iu(this,{kind:"constant",value:void 0},Y);if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce),Ge=D.property.specification.type==="resolvedImage"&&typeof Ue!="string"?Ue.name:Ue,ut=this._calculate(Ge,Ge,Ge,Y);return new Iu(this,{kind:"constant",value:ut},Y)}if(D.expression.kind==="camera"){let Ue=this._calculate(D.expression.evaluate({zoom:Y.zoom-1}),D.expression.evaluate({zoom:Y.zoom}),D.expression.evaluate({zoom:Y.zoom+1}),Y);return new Iu(this,{kind:"constant",value:Ue},Y)}return new Iu(this,D.expression,Y)}evaluate(D,Y,pe,Ce,Ue,Ge){if(D.kind==="source"){let ut=D.evaluate(Y,pe,Ce,Ue,Ge);return this._calculate(ut,ut,ut,Y)}return D.kind==="composite"?this._calculate(D.evaluate({zoom:Math.floor(Y.zoom)-1},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)+1},pe,Ce),Y):D.value}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class hc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){if(D.value!==void 0){if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce);return this._calculate(Ue,Ue,Ue,Y)}return this._calculate(D.expression.evaluate(new Ts(Math.floor(Y.zoom-1),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom+1),Y)),Y)}}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class pc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){return!!D.expression.evaluate(Y,null,{},pe,Ce)}interpolate(){return!1}}class Oe{constructor(D){this.properties=D,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let Y in D){let pe=D[Y];pe.specification.overridable&&this.overridableProperties.push(Y);let Ce=this.defaultPropertyValues[Y]=new nu(pe,void 0),Ue=this.defaultTransitionablePropertyValues[Y]=new Pu(pe);this.defaultTransitioningPropertyValues[Y]=Ue.untransitioned(),this.defaultPossiblyEvaluatedValues[Y]=Ce.possiblyEvaluate({})}}}ti("DataDrivenProperty",Po),ti("DataConstantProperty",ro),ti("CrossFadedDataDrivenProperty",Nc),ti("CrossFadedProperty",hc),ti("ColorRampProperty",pc);let R="-transition";class ae extends ee{constructor(D,Y){if(super(),this.id=D.id,this.type=D.type,this._featureFilter={filter:()=>!0,needGeometry:!1},D.type!=="custom"&&(this.metadata=D.metadata,this.minzoom=D.minzoom,this.maxzoom=D.maxzoom,D.type!=="background"&&(this.source=D.source,this.sourceLayer=D["source-layer"],this.filter=D.filter),Y.layout&&(this._unevaluatedLayout=new Bc(Y.layout)),Y.paint)){this._transitionablePaint=new ec(Y.paint);for(let pe in D.paint)this.setPaintProperty(pe,D.paint[pe],{validate:!1});for(let pe in D.layout)this.setLayoutProperty(pe,D.layout[pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(Y.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(D){return D==="visibility"?this.visibility:this._unevaluatedLayout.getValue(D)}setLayoutProperty(D,Y,pe={}){Y!=null&&this._validate(Bi,`layers.${this.id}.layout.${D}`,D,Y,pe)||(D!=="visibility"?this._unevaluatedLayout.setValue(D,Y):this.visibility=Y)}getPaintProperty(D){return D.endsWith(R)?this._transitionablePaint.getTransition(D.slice(0,-11)):this._transitionablePaint.getValue(D)}setPaintProperty(D,Y,pe={}){if(Y!=null&&this._validate(ki,`layers.${this.id}.paint.${D}`,D,Y,pe))return!1;if(D.endsWith(R))return this._transitionablePaint.setTransition(D.slice(0,-11),Y||void 0),!1;{let Ce=this._transitionablePaint._values[D],Ue=Ce.property.specification["property-type"]==="cross-faded-data-driven",Ge=Ce.value.isDataDriven(),ut=Ce.value;this._transitionablePaint.setValue(D,Y),this._handleSpecialPaintPropertyUpdate(D);let Tt=this._transitionablePaint._values[D].value;return Tt.isDataDriven()||Ge||Ue||this._handleOverridablePaintPropertyUpdate(D,ut,Tt)}}_handleSpecialPaintPropertyUpdate(D){}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!1}isHidden(D){return!!(this.minzoom&&D<this.minzoom)||!!(this.maxzoom&&D>=this.maxzoom)||this.visibility==="none"}updateTransitions(D){this._transitioningPaint=this._transitionablePaint.transitioned(D,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(D,Y){D.getCrossfadeParameters&&(this._crossfadeParameters=D.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(D,void 0,Y)),this.paint=this._transitioningPaint.possiblyEvaluate(D,void 0,Y)}serialize(){let D={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(D.layout=D.layout||{},D.layout.visibility=this.visibility),d(D,(Y,pe)=>!(Y===void 0||pe==="layout"&&!Object.keys(Y).length||pe==="paint"&&!Object.keys(Y).length))}_validate(D,Y,pe,Ce,Ue={}){return(!Ue||Ue.validate!==!1)&&li(this,D.call(Ka,{key:Y,layerType:this.type,objectKey:pe,value:Ce,styleSpec:ie,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let D in this.paint._values){let Y=this.paint.get(D);if(Y instanceof Iu&&Eu(Y.property.specification)&&(Y.value.kind==="source"||Y.value.kind==="composite")&&Y.value.isStateDependent)return!0}return!1}}let we={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Se{constructor(D,Y){this._structArray=D,this._pos1=Y*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class De{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(D,Y){return D._trim(),Y&&(D.isTransferred=!0,Y.push(D.arrayBuffer)),{length:D.length,arrayBuffer:D.arrayBuffer}}static deserialize(D){let Y=Object.create(this.prototype);return Y.arrayBuffer=D.arrayBuffer,Y.length=D.length,Y.capacity=D.arrayBuffer.byteLength/Y.bytesPerElement,Y._refreshViews(),Y}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(D){this.reserve(D),this.length=D}reserve(D){if(D>this.capacity){this.capacity=Math.max(D,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let Y=this.uint8;this._refreshViews(),Y&&this.uint8.set(Y)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function ft(q,D=1){let Y=0,pe=0;return{members:q.map(Ce=>{let Ue=we[Ce.type].BYTES_PER_ELEMENT,Ge=Y=bt(Y,Math.max(D,Ue)),ut=Ce.components||1;return pe=Math.max(pe,Ue),Y+=Ue*ut,{name:Ce.name,type:Ce.type,components:ut,offset:Ge}}),size:bt(Y,Math.max(pe,D)),alignment:D}}function bt(q,D){return Math.ceil(q/D)*D}class Dt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.int16[Ce+0]=Y,this.int16[Ce+1]=pe,D}}Dt.prototype.bytesPerElement=4,ti("StructArrayLayout2i4",Dt);class Yt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.int16[Ue+0]=Y,this.int16[Ue+1]=pe,this.int16[Ue+2]=Ce,D}}Yt.prototype.bytesPerElement=6,ti("StructArrayLayout3i6",Yt);class cr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.int16[Ge+0]=Y,this.int16[Ge+1]=pe,this.int16[Ge+2]=Ce,this.int16[Ge+3]=Ue,D}}cr.prototype.bytesPerElement=8,ti("StructArrayLayout4i8",cr);class hr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}hr.prototype.bytesPerElement=12,ti("StructArrayLayout2i4i12",hr);class jr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=4*D,Ft=8*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.uint8[Ft+4]=Ce,this.uint8[Ft+5]=Ue,this.uint8[Ft+6]=Ge,this.uint8[Ft+7]=ut,D}}jr.prototype.bytesPerElement=8,ti("StructArrayLayout2i4ub8",jr);class ea extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.float32[Ce+0]=Y,this.float32[Ce+1]=pe,D}}ea.prototype.bytesPerElement=8,ti("StructArrayLayout2f8",ea);class qe extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=this.length;return this.resize(lr+1),this.emplace(lr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=10*D;return this.uint16[Ar+0]=Y,this.uint16[Ar+1]=pe,this.uint16[Ar+2]=Ce,this.uint16[Ar+3]=Ue,this.uint16[Ar+4]=Ge,this.uint16[Ar+5]=ut,this.uint16[Ar+6]=Tt,this.uint16[Ar+7]=Ft,this.uint16[Ar+8]=$t,this.uint16[Ar+9]=lr,D}}qe.prototype.bytesPerElement=20,ti("StructArrayLayout10ui20",qe);class Je extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=this.length;return this.resize(zr+1),this.emplace(zr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr){let Kr=12*D;return this.int16[Kr+0]=Y,this.int16[Kr+1]=pe,this.int16[Kr+2]=Ce,this.int16[Kr+3]=Ue,this.uint16[Kr+4]=Ge,this.uint16[Kr+5]=ut,this.uint16[Kr+6]=Tt,this.uint16[Kr+7]=Ft,this.int16[Kr+8]=$t,this.int16[Kr+9]=lr,this.int16[Kr+10]=Ar,this.int16[Kr+11]=zr,D}}Je.prototype.bytesPerElement=24,ti("StructArrayLayout4i4ui4i24",Je);class ot extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.float32[Ue+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ot.prototype.bytesPerElement=12,ti("StructArrayLayout3f12",ot);class ht extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint32[1*D+0]=Y,D}}ht.prototype.bytesPerElement=4,ti("StructArrayLayout1ul4",ht);class At extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t=this.length;return this.resize($t+1),this.emplace($t,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=10*D,Ar=5*D;return this.int16[lr+0]=Y,this.int16[lr+1]=pe,this.int16[lr+2]=Ce,this.int16[lr+3]=Ue,this.int16[lr+4]=Ge,this.int16[lr+5]=ut,this.uint32[Ar+3]=Tt,this.uint16[lr+8]=Ft,this.uint16[lr+9]=$t,D}}At.prototype.bytesPerElement=20,ti("StructArrayLayout6i1ul2ui20",At);class _t extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}_t.prototype.bytesPerElement=12,ti("StructArrayLayout2i2i2i12",_t);class Pt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue){let Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,D,Y,pe,Ce,Ue)}emplace(D,Y,pe,Ce,Ue,Ge){let ut=4*D,Tt=8*D;return this.float32[ut+0]=Y,this.float32[ut+1]=pe,this.float32[ut+2]=Ce,this.int16[Tt+6]=Ue,this.int16[Tt+7]=Ge,D}}Pt.prototype.bytesPerElement=16,ti("StructArrayLayout2f1f2i16",Pt);class er extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=16*D,Ft=4*D,$t=8*D;return this.uint8[Tt+0]=Y,this.uint8[Tt+1]=pe,this.float32[Ft+1]=Ce,this.float32[Ft+2]=Ue,this.int16[$t+6]=Ge,this.int16[$t+7]=ut,D}}er.prototype.bytesPerElement=16,ti("StructArrayLayout2ub2f2i16",er);class nr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[Ue+0]=Y,this.uint16[Ue+1]=pe,this.uint16[Ue+2]=Ce,D}}nr.prototype.bytesPerElement=6,ti("StructArrayLayout3ui6",nr);class pr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja){let gi=this.length;return this.resize(gi+1),this.emplace(gi,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi){let ei=24*D,hi=12*D,Ei=48*D;return this.int16[ei+0]=Y,this.int16[ei+1]=pe,this.uint16[ei+2]=Ce,this.uint16[ei+3]=Ue,this.uint32[hi+2]=Ge,this.uint32[hi+3]=ut,this.uint32[hi+4]=Tt,this.uint16[ei+10]=Ft,this.uint16[ei+11]=$t,this.uint16[ei+12]=lr,this.float32[hi+7]=Ar,this.float32[hi+8]=zr,this.uint8[Ei+36]=Kr,this.uint8[Ei+37]=la,this.uint8[Ei+38]=za,this.uint32[hi+10]=ja,this.int16[ei+22]=gi,D}}pr.prototype.bytesPerElement=48,ti("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",pr);class Sr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo){let xo=this.length;return this.resize(xo+1),this.emplace(xo,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo,xo){let Yi=32*D,Ko=16*D;return this.int16[Yi+0]=Y,this.int16[Yi+1]=pe,this.int16[Yi+2]=Ce,this.int16[Yi+3]=Ue,this.int16[Yi+4]=Ge,this.int16[Yi+5]=ut,this.int16[Yi+6]=Tt,this.int16[Yi+7]=Ft,this.uint16[Yi+8]=$t,this.uint16[Yi+9]=lr,this.uint16[Yi+10]=Ar,this.uint16[Yi+11]=zr,this.uint16[Yi+12]=Kr,this.uint16[Yi+13]=la,this.uint16[Yi+14]=za,this.uint16[Yi+15]=ja,this.uint16[Yi+16]=gi,this.uint16[Yi+17]=ei,this.uint16[Yi+18]=hi,this.uint16[Yi+19]=Ei,this.uint16[Yi+20]=En,this.uint16[Yi+21]=fo,this.uint16[Yi+22]=ss,this.uint32[Ko+12]=eo,this.float32[Ko+13]=vn,this.float32[Ko+14]=Uo,this.uint16[Yi+30]=Mo,this.uint16[Yi+31]=xo,D}}Sr.prototype.bytesPerElement=64,ti("StructArrayLayout8i15ui1ul2f2ui64",Sr);class Wr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.float32[1*D+0]=Y,D}}Wr.prototype.bytesPerElement=4,ti("StructArrayLayout1f4",Wr);class ha extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[6*D+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ha.prototype.bytesPerElement=12,ti("StructArrayLayout1ui2f12",ha);class ga extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=4*D;return this.uint32[2*D+0]=Y,this.uint16[Ue+2]=pe,this.uint16[Ue+3]=Ce,D}}ga.prototype.bytesPerElement=8,ti("StructArrayLayout1ul2ui8",ga);class Pa extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.uint16[Ce+0]=Y,this.uint16[Ce+1]=pe,D}}Pa.prototype.bytesPerElement=4,ti("StructArrayLayout2ui4",Pa);class Ja extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint16[1*D+0]=Y,D}}Ja.prototype.bytesPerElement=2,ti("StructArrayLayout1ui2",Ja);class di extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.float32[Ge+0]=Y,this.float32[Ge+1]=pe,this.float32[Ge+2]=Ce,this.float32[Ge+3]=Ue,D}}di.prototype.bytesPerElement=16,ti("StructArrayLayout4f16",di);class pi extends Se{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new i(this.anchorPointX,this.anchorPointY)}}pi.prototype.size=20;class Ci extends At{get(D){return new pi(this,D)}}ti("CollisionBoxArray",Ci);class $i extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(D){this._structArray.uint8[this._pos1+37]=D}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(D){this._structArray.uint8[this._pos1+38]=D}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(D){this._structArray.uint32[this._pos4+10]=D}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}$i.prototype.size=48;class Bn extends pr{get(D){return new $i(this,D)}}ti("PlacedSymbolArray",Bn);class Sn extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(D){this._structArray.uint32[this._pos4+12]=D}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Sn.prototype.size=64;class ho extends Sr{get(D){return new Sn(this,D)}}ti("SymbolInstanceArray",ho);class ts extends Wr{getoffsetX(D){return this.float32[1*D+0]}}ti("GlyphOffsetArray",ts);class yo extends Yt{getx(D){return this.int16[3*D+0]}gety(D){return this.int16[3*D+1]}gettileUnitDistanceFromAnchor(D){return this.int16[3*D+2]}}ti("SymbolLineVertexArray",yo);class Vo extends Se{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Vo.prototype.size=12;class ls extends ha{get(D){return new Vo(this,D)}}ti("TextAnchorOffsetArray",ls);class rl extends Se{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}rl.prototype.size=8;class Ys extends ga{get(D){return new rl(this,D)}}ti("FeatureIndexArray",Ys);class Zo extends Dt{}class Go extends Dt{}class Rl extends Dt{}class Xl extends hr{}class qu extends jr{}class fu extends ea{}class bl extends qe{}class ou extends Je{}class Sc extends ot{}class ql extends ht{}class Hl extends _t{}class de extends er{}class Re extends nr{}class $e extends Pa{}let pt=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:vt}=pt;class wt{constructor(D=[]){this.segments=D}prepareSegment(D,Y,pe,Ce){let Ue=this.segments[this.segments.length-1];return D>wt.MAX_VERTEX_ARRAY_LENGTH&&f(`Max vertices per segment is ${wt.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${D}`),(!Ue||Ue.vertexLength+D>wt.MAX_VERTEX_ARRAY_LENGTH||Ue.sortKey!==Ce)&&(Ue={vertexOffset:Y.length,primitiveOffset:pe.length,vertexLength:0,primitiveLength:0},Ce!==void 0&&(Ue.sortKey=Ce),this.segments.push(Ue)),Ue}get(){return this.segments}destroy(){for(let D of this.segments)for(let Y in D.vaos)D.vaos[Y].destroy()}static simpleSegment(D,Y,pe,Ce){return new wt([{vertexOffset:D,primitiveOffset:Y,vertexLength:pe,primitiveLength:Ce,vaos:{},sortKey:0}])}}function Jt(q,D){return 256*(q=w(Math.floor(q),0,255))+w(Math.floor(D),0,255)}wt.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,ti("SegmentVector",wt);let Rt=ft([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var or={exports:{}},Dr={exports:{}};Dr.exports=function(q,D){var Y,pe,Ce,Ue,Ge,ut,Tt,Ft;for(pe=q.length-(Y=3&q.length),Ce=D,Ge=3432918353,ut=461845907,Ft=0;Ft<pe;)Tt=255&q.charCodeAt(Ft)|(255&q.charCodeAt(++Ft))<<8|(255&q.charCodeAt(++Ft))<<16|(255&q.charCodeAt(++Ft))<<24,++Ft,Ce=27492+(65535&(Ue=5*(65535&(Ce=(Ce^=Tt=(65535&(Tt=(Tt=(65535&Tt)*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295)<<13|Ce>>>19))+((5*(Ce>>>16)&65535)<<16)&4294967295))+((58964+(Ue>>>16)&65535)<<16);switch(Tt=0,Y){case 3:Tt^=(255&q.charCodeAt(Ft+2))<<16;case 2:Tt^=(255&q.charCodeAt(Ft+1))<<8;case 1:Ce^=Tt=(65535&(Tt=(Tt=(65535&(Tt^=255&q.charCodeAt(Ft)))*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295}return Ce^=q.length,Ce=2246822507*(65535&(Ce^=Ce>>>16))+((2246822507*(Ce>>>16)&65535)<<16)&4294967295,Ce=3266489909*(65535&(Ce^=Ce>>>13))+((3266489909*(Ce>>>16)&65535)<<16)&4294967295,(Ce^=Ce>>>16)>>>0};var Or=Dr.exports,va={exports:{}};va.exports=function(q,D){for(var Y,pe=q.length,Ce=D^pe,Ue=0;pe>=4;)Y=1540483477*(65535&(Y=255&q.charCodeAt(Ue)|(255&q.charCodeAt(++Ue))<<8|(255&q.charCodeAt(++Ue))<<16|(255&q.charCodeAt(++Ue))<<24))+((1540483477*(Y>>>16)&65535)<<16),Ce=1540483477*(65535&Ce)+((1540483477*(Ce>>>16)&65535)<<16)^(Y=1540483477*(65535&(Y^=Y>>>24))+((1540483477*(Y>>>16)&65535)<<16)),pe-=4,++Ue;switch(pe){case 3:Ce^=(255&q.charCodeAt(Ue+2))<<16;case 2:Ce^=(255&q.charCodeAt(Ue+1))<<8;case 1:Ce=1540483477*(65535&(Ce^=255&q.charCodeAt(Ue)))+((1540483477*(Ce>>>16)&65535)<<16)}return Ce=1540483477*(65535&(Ce^=Ce>>>13))+((1540483477*(Ce>>>16)&65535)<<16),(Ce^=Ce>>>15)>>>0};var fa=Or,Va=va.exports;or.exports=fa,or.exports.murmur3=fa,or.exports.murmur2=Va;var Xa=r(or.exports);class _a{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(D,Y,pe,Ce){this.ids.push(Ra(D)),this.positions.push(Y,pe,Ce)}getPositions(D){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let Y=Ra(D),pe=0,Ce=this.ids.length-1;for(;pe<Ce;){let Ge=pe+Ce>>1;this.ids[Ge]>=Y?Ce=Ge:pe=Ge+1}let Ue=[];for(;this.ids[pe]===Y;)Ue.push({index:this.positions[3*pe],start:this.positions[3*pe+1],end:this.positions[3*pe+2]}),pe++;return Ue}static serialize(D,Y){let pe=new Float64Array(D.ids),Ce=new Uint32Array(D.positions);return Na(pe,Ce,0,pe.length-1),Y&&Y.push(pe.buffer,Ce.buffer),{ids:pe,positions:Ce}}static deserialize(D){let Y=new _a;return Y.ids=D.ids,Y.positions=D.positions,Y.indexed=!0,Y}}function Ra(q){let D=+q;return!isNaN(D)&&D<=Number.MAX_SAFE_INTEGER?D:Xa(String(q))}function Na(q,D,Y,pe){for(;Y<pe;){let Ce=q[Y+pe>>1],Ue=Y-1,Ge=pe+1;for(;;){do Ue++;while(q[Ue]<Ce);do Ge--;while(q[Ge]>Ce);if(Ue>=Ge)break;Qa(q,Ue,Ge),Qa(D,3*Ue,3*Ge),Qa(D,3*Ue+1,3*Ge+1),Qa(D,3*Ue+2,3*Ge+2)}Ge-Y<pe-Ge?(Na(q,D,Y,Ge),Y=Ge+1):(Na(q,D,Ge+1,pe),pe=Ge)}}function Qa(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}ti("FeaturePositionMap",_a);class Ya{constructor(D,Y){this.gl=D.gl,this.location=Y}}class Da extends Ya{constructor(D,Y){super(D,Y),this.current=0}set(D){this.current!==D&&(this.current=D,this.gl.uniform1f(this.location,D))}}class zi extends Ya{constructor(D,Y){super(D,Y),this.current=[0,0,0,0]}set(D){D[0]===this.current[0]&&D[1]===this.current[1]&&D[2]===this.current[2]&&D[3]===this.current[3]||(this.current=D,this.gl.uniform4f(this.location,D[0],D[1],D[2],D[3]))}}class Ni extends Ya{constructor(D,Y){super(D,Y),this.current=Ut.transparent}set(D){D.r===this.current.r&&D.g===this.current.g&&D.b===this.current.b&&D.a===this.current.a||(this.current=D,this.gl.uniform4f(this.location,D.r,D.g,D.b,D.a))}}let Qi=new Float32Array(16);function hn(q){return[Jt(255*q.r,255*q.g),Jt(255*q.b,255*q.a)]}class Un{constructor(D,Y,pe){this.value=D,this.uniformNames=Y.map(Ce=>`u_${Ce}`),this.type=pe}setUniform(D,Y,pe){D.set(pe.constantOr(this.value))}getBinding(D,Y,pe){return this.type==="color"?new Ni(D,Y):new Da(D,Y)}}class Vn{constructor(D,Y){this.uniformNames=Y.map(pe=>`u_${pe}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(D,Y){this.pixelRatioFrom=Y.pixelRatio,this.pixelRatioTo=D.pixelRatio,this.patternFrom=Y.tlbr,this.patternTo=D.tlbr}setUniform(D,Y,pe,Ce){let Ue=Ce==="u_pattern_to"?this.patternTo:Ce==="u_pattern_from"?this.patternFrom:Ce==="u_pixel_ratio_to"?this.pixelRatioTo:Ce==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Ue&&D.set(Ue)}getBinding(D,Y,pe){return pe.substr(0,9)==="u_pattern"?new zi(D,Y):new Da(D,Y)}}class No{constructor(D,Y,pe,Ce){this.expression=D,this.type=pe,this.maxValue=0,this.paintVertexAttributes=Y.map(Ue=>({name:`a_${Ue}`,type:"Float32",components:pe==="color"?2:1,offset:0})),this.paintVertexArray=new Ce}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.paintVertexArray.length,ut=this.expression.evaluate(new Ts(0),Y,{},Ce,[],Ue);this.paintVertexArray.resize(D),this._setPaintValue(Ge,D,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:0},pe,Ce);this._setPaintValue(D,Y,Ue)}_setPaintValue(D,Y,pe){if(this.type==="color"){let Ce=hn(pe);for(let Ue=D;Ue<Y;Ue++)this.paintVertexArray.emplace(Ue,Ce[0],Ce[1])}else{for(let Ce=D;Ce<Y;Ce++)this.paintVertexArray.emplace(Ce,pe);this.maxValue=Math.max(this.maxValue,Math.abs(pe))}}upload(D){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=D.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}}class Gn{constructor(D,Y,pe,Ce,Ue,Ge){this.expression=D,this.uniformNames=Y.map(ut=>`u_${ut}_t`),this.type=pe,this.useIntegerZoom=Ce,this.zoom=Ue,this.maxValue=0,this.paintVertexAttributes=Y.map(ut=>({name:`a_${ut}`,type:"Float32",components:pe==="color"?4:2,offset:0})),this.paintVertexArray=new Ge}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.expression.evaluate(new Ts(this.zoom),Y,{},Ce,[],Ue),ut=this.expression.evaluate(new Ts(this.zoom+1),Y,{},Ce,[],Ue),Tt=this.paintVertexArray.length;this.paintVertexArray.resize(D),this._setPaintValue(Tt,D,Ge,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:this.zoom},pe,Ce),Ge=this.expression.evaluate({zoom:this.zoom+1},pe,Ce);this._setPaintValue(D,Y,Ue,Ge)}_setPaintValue(D,Y,pe,Ce){if(this.type==="color"){let Ue=hn(pe),Ge=hn(Ce);for(let ut=D;ut<Y;ut++)this.paintVertexArray.emplace(ut,Ue[0],Ue[1],Ge[0],Ge[1])}else{for(let Ue=D;Ue<Y;Ue++)this.paintVertexArray.emplace(Ue,pe,Ce);this.maxValue=Math.max(this.maxValue,Math.abs(pe),Math.abs(Ce))}}upload(D){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=D.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}setUniform(D,Y){let pe=this.useIntegerZoom?Math.floor(Y.zoom):Y.zoom,Ce=w(this.expression.interpolationFactor(pe,this.zoom,this.zoom+1),0,1);D.set(Ce)}getBinding(D,Y,pe){return new Da(D,Y)}}class Fo{constructor(D,Y,pe,Ce,Ue,Ge){this.expression=D,this.type=Y,this.useIntegerZoom=pe,this.zoom=Ce,this.layerId=Ge,this.zoomInPaintVertexArray=new Ue,this.zoomOutPaintVertexArray=new Ue}populatePaintArray(D,Y,pe){let Ce=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(D),this.zoomOutPaintVertexArray.resize(D),this._setPaintValues(Ce,D,Y.patterns&&Y.patterns[this.layerId],pe)}updatePaintArray(D,Y,pe,Ce,Ue){this._setPaintValues(D,Y,pe.patterns&&pe.patterns[this.layerId],Ue)}_setPaintValues(D,Y,pe,Ce){if(!Ce||!pe)return;let{min:Ue,mid:Ge,max:ut}=pe,Tt=Ce[Ue],Ft=Ce[Ge],$t=Ce[ut];if(Tt&&Ft&&$t)for(let lr=D;lr<Y;lr++)this.zoomInPaintVertexArray.emplace(lr,Ft.tl[0],Ft.tl[1],Ft.br[0],Ft.br[1],Tt.tl[0],Tt.tl[1],Tt.br[0],Tt.br[1],Ft.pixelRatio,Tt.pixelRatio),this.zoomOutPaintVertexArray.emplace(lr,Ft.tl[0],Ft.tl[1],Ft.br[0],Ft.br[1],$t.tl[0],$t.tl[1],$t.br[0],$t.br[1],Ft.pixelRatio,$t.pixelRatio)}upload(D){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=D.createVertexBuffer(this.zoomInPaintVertexArray,Rt.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=D.createVertexBuffer(this.zoomOutPaintVertexArray,Rt.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Ks{constructor(D,Y,pe){this.binders={},this._buffers=[];let Ce=[];for(let Ue in D.paint._values){if(!pe(Ue))continue;let Ge=D.paint.get(Ue);if(!(Ge instanceof Iu&&Eu(Ge.property.specification)))continue;let ut=sl(Ue,D.type),Tt=Ge.value,Ft=Ge.property.specification.type,$t=Ge.property.useIntegerZoom,lr=Ge.property.specification["property-type"],Ar=lr==="cross-faded"||lr==="cross-faded-data-driven";if(Tt.kind==="constant")this.binders[Ue]=Ar?new Vn(Tt.value,ut):new Un(Tt.value,ut,Ft),Ce.push(`/u_${Ue}`);else if(Tt.kind==="source"||Ar){let zr=Vi(Ue,Ft,"source");this.binders[Ue]=Ar?new Fo(Tt,Ft,$t,Y,zr,D.id):new No(Tt,ut,Ft,zr),Ce.push(`/a_${Ue}`)}else{let zr=Vi(Ue,Ft,"composite");this.binders[Ue]=new Gn(Tt,ut,Ft,$t,Y,zr),Ce.push(`/z_${Ue}`)}}this.cacheKey=Ce.sort().join("")}getMaxValue(D){let Y=this.binders[D];return Y instanceof No||Y instanceof Gn?Y.maxValue:0}populatePaintArrays(D,Y,pe,Ce,Ue){for(let Ge in this.binders){let ut=this.binders[Ge];(ut instanceof No||ut instanceof Gn||ut instanceof Fo)&&ut.populatePaintArray(D,Y,pe,Ce,Ue)}}setConstantPatternPositions(D,Y){for(let pe in this.binders){let Ce=this.binders[pe];Ce instanceof Vn&&Ce.setConstantPatternPositions(D,Y)}}updatePaintArrays(D,Y,pe,Ce,Ue){let Ge=!1;for(let ut in D){let Tt=Y.getPositions(ut);for(let Ft of Tt){let $t=pe.feature(Ft.index);for(let lr in this.binders){let Ar=this.binders[lr];if((Ar instanceof No||Ar instanceof Gn||Ar instanceof Fo)&&Ar.expression.isStateDependent===!0){let zr=Ce.paint.get(lr);Ar.expression=zr.value,Ar.updatePaintArray(Ft.start,Ft.end,$t,D[ut],Ue),Ge=!0}}}}return Ge}defines(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];(pe instanceof Un||pe instanceof Vn)&&D.push(...pe.uniformNames.map(Ce=>`#define HAS_UNIFORM_${Ce}`))}return D}getBinderAttributes(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof No||pe instanceof Gn)for(let Ce=0;Ce<pe.paintVertexAttributes.length;Ce++)D.push(pe.paintVertexAttributes[Ce].name);else if(pe instanceof Fo)for(let Ce=0;Ce<Rt.members.length;Ce++)D.push(Rt.members[Ce].name)}return D}getBinderUniforms(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof Un||pe instanceof Vn||pe instanceof Gn)for(let Ce of pe.uniformNames)D.push(Ce)}return D}getPaintVertexBuffers(){return this._buffers}getUniforms(D,Y){let pe=[];for(let Ce in this.binders){let Ue=this.binders[Ce];if(Ue instanceof Un||Ue instanceof Vn||Ue instanceof Gn){for(let Ge of Ue.uniformNames)if(Y[Ge]){let ut=Ue.getBinding(D,Y[Ge],Ge);pe.push({name:Ge,property:Ce,binding:ut})}}}return pe}setUniforms(D,Y,pe,Ce){for(let{name:Ue,property:Ge,binding:ut}of Y)this.binders[Ge].setUniform(ut,Ce,pe.get(Ge),Ue)}updatePaintBuffers(D){this._buffers=[];for(let Y in this.binders){let pe=this.binders[Y];if(D&&pe instanceof Fo){let Ce=D.fromScale===2?pe.zoomInPaintVertexBuffer:pe.zoomOutPaintVertexBuffer;Ce&&this._buffers.push(Ce)}else(pe instanceof No||pe instanceof Gn)&&pe.paintVertexBuffer&&this._buffers.push(pe.paintVertexBuffer)}}upload(D){for(let Y in this.binders){let pe=this.binders[Y];(pe instanceof No||pe instanceof Gn||pe instanceof Fo)&&pe.upload(D)}this.updatePaintBuffers()}destroy(){for(let D in this.binders){let Y=this.binders[D];(Y instanceof No||Y instanceof Gn||Y instanceof Fo)&&Y.destroy()}}}class Gs{constructor(D,Y,pe=()=>!0){this.programConfigurations={};for(let Ce of D)this.programConfigurations[Ce.id]=new Ks(Ce,Y,pe);this.needsUpload=!1,this._featureMap=new _a,this._bufferOffset=0}populatePaintArrays(D,Y,pe,Ce,Ue,Ge){for(let ut in this.programConfigurations)this.programConfigurations[ut].populatePaintArrays(D,Y,Ce,Ue,Ge);Y.id!==void 0&&this._featureMap.add(Y.id,pe,this._bufferOffset,D),this._bufferOffset=D,this.needsUpload=!0}updatePaintArrays(D,Y,pe,Ce){for(let Ue of pe)this.needsUpload=this.programConfigurations[Ue.id].updatePaintArrays(D,this._featureMap,Y,Ue,Ce)||this.needsUpload}get(D){return this.programConfigurations[D]}upload(D){if(this.needsUpload){for(let Y in this.programConfigurations)this.programConfigurations[Y].upload(D);this.needsUpload=!1}}destroy(){for(let D in this.programConfigurations)this.programConfigurations[D].destroy()}}function sl(q,D){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[q]||[q.replace(`${D}-`,"").replace(/-/g,"_")]}function Vi(q,D,Y){let pe={color:{source:ea,composite:di},number:{source:Wr,composite:ea}},Ce=function(Ue){return{"line-pattern":{source:bl,composite:bl},"fill-pattern":{source:bl,composite:bl},"fill-extrusion-pattern":{source:bl,composite:bl}}[Ue]}(q);return Ce&&Ce[Y]||pe[D][Y]}ti("ConstantBinder",Un),ti("CrossFadedConstantBinder",Vn),ti("SourceExpressionBinder",No),ti("CrossFadedCompositeBinder",Fo),ti("CompositeExpressionBinder",Gn),ti("ProgramConfiguration",Ks,{omit:["_buffers"]}),ti("ProgramConfigurationSet",Gs);let ao=8192,ns=Math.pow(2,14)-1,hs=-ns-1;function hl(q){let D=ao/q.extent,Y=q.loadGeometry();for(let pe=0;pe<Y.length;pe++){let Ce=Y[pe];for(let Ue=0;Ue<Ce.length;Ue++){let Ge=Ce[Ue],ut=Math.round(Ge.x*D),Tt=Math.round(Ge.y*D);Ge.x=w(ut,hs,ns),Ge.y=w(Tt,hs,ns),(ut<Ge.x||ut>Ge.x+1||Tt<Ge.y||Tt>Ge.y+1)&&f("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return Y}function Dl(q,D){return{type:q.type,id:q.id,properties:q.properties,geometry:D?hl(q):[]}}function hu(q,D,Y,pe,Ce){q.emplaceBack(2*D+(pe+1)/2,2*Y+(Ce+1)/2)}class Ll{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Go,this.indexArray=new Re,this.segments=new wt,this.programConfigurations=new Gs(D.layers,D.zoom),this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){let Ce=this.layers[0],Ue=[],Ge=null,ut=!1;Ce.type==="circle"&&(Ge=Ce.layout.get("circle-sort-key"),ut=!Ge.isConstant());for(let{feature:Tt,id:Ft,index:$t,sourceLayerIndex:lr}of D){let Ar=this.layers[0]._featureFilter.needGeometry,zr=Dl(Tt,Ar);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),zr,pe))continue;let Kr=ut?Ge.evaluate(zr,{},pe):void 0,la={id:Ft,properties:Tt.properties,type:Tt.type,sourceLayerIndex:lr,index:$t,geometry:Ar?zr.geometry:hl(Tt),patterns:{},sortKey:Kr};Ue.push(la)}ut&&Ue.sort((Tt,Ft)=>Tt.sortKey-Ft.sortKey);for(let Tt of Ue){let{geometry:Ft,index:$t,sourceLayerIndex:lr}=Tt,Ar=D[$t].feature;this.addFeature(Tt,Ft,$t,pe),Y.featureIndex.insert(Ar,Ft,$t,lr,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,vt),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(D,Y,pe,Ce){for(let Ue of Y)for(let Ge of Ue){let ut=Ge.x,Tt=Ge.y;if(ut<0||ut>=ao||Tt<0||Tt>=ao)continue;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,D.sortKey),$t=Ft.vertexLength;hu(this.layoutVertexArray,ut,Tt,-1,-1),hu(this.layoutVertexArray,ut,Tt,1,-1),hu(this.layoutVertexArray,ut,Tt,1,1),hu(this.layoutVertexArray,ut,Tt,-1,1),this.indexArray.emplaceBack($t,$t+1,$t+2),this.indexArray.emplaceBack($t,$t+3,$t+2),Ft.vertexLength+=4,Ft.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,{},Ce)}}function dc(q,D){for(let Y=0;Y<q.length;Y++)if(cn(D,q[Y]))return!0;for(let Y=0;Y<D.length;Y++)if(cn(q,D[Y]))return!0;return!!si(q,D)}function Qt(q,D,Y){return!!cn(q,D)||!!xi(D,q,Y)}function ra(q,D){if(q.length===1)return Fi(D,q[0]);for(let Y=0;Y<D.length;Y++){let pe=D[Y];for(let Ce=0;Ce<pe.length;Ce++)if(cn(q,pe[Ce]))return!0}for(let Y=0;Y<q.length;Y++)if(Fi(D,q[Y]))return!0;for(let Y=0;Y<D.length;Y++)if(si(q,D[Y]))return!0;return!1}function Ta(q,D,Y){if(q.length>1){if(si(q,D))return!0;for(let pe=0;pe<D.length;pe++)if(xi(D[pe],q,Y))return!0}for(let pe=0;pe<q.length;pe++)if(xi(q[pe],D,Y))return!0;return!1}function si(q,D){if(q.length===0||D.length===0)return!1;for(let Y=0;Y<q.length-1;Y++){let pe=q[Y],Ce=q[Y+1];for(let Ue=0;Ue<D.length-1;Ue++)if(wi(pe,Ce,D[Ue],D[Ue+1]))return!0}return!1}function wi(q,D,Y,pe){return P(q,Y,pe)!==P(D,Y,pe)&&P(q,D,Y)!==P(q,D,pe)}function xi(q,D,Y){let pe=Y*Y;if(D.length===1)return q.distSqr(D[0])<pe;for(let Ce=1;Ce<D.length;Ce++)if(bi(q,D[Ce-1],D[Ce])<pe)return!0;return!1}function bi(q,D,Y){let pe=D.distSqr(Y);if(pe===0)return q.distSqr(D);let Ce=((q.x-D.x)*(Y.x-D.x)+(q.y-D.y)*(Y.y-D.y))/pe;return q.distSqr(Ce<0?D:Ce>1?Y:Y.sub(D)._mult(Ce)._add(D))}function Fi(q,D){let Y,pe,Ce,Ue=!1;for(let Ge=0;Ge<q.length;Ge++){Y=q[Ge];for(let ut=0,Tt=Y.length-1;ut<Y.length;Tt=ut++)pe=Y[ut],Ce=Y[Tt],pe.y>D.y!=Ce.y>D.y&&D.x<(Ce.x-pe.x)*(D.y-pe.y)/(Ce.y-pe.y)+pe.x&&(Ue=!Ue)}return Ue}function cn(q,D){let Y=!1;for(let pe=0,Ce=q.length-1;pe<q.length;Ce=pe++){let Ue=q[pe],Ge=q[Ce];Ue.y>D.y!=Ge.y>D.y&&D.x<(Ge.x-Ue.x)*(D.y-Ue.y)/(Ge.y-Ue.y)+Ue.x&&(Y=!Y)}return Y}function fn(q,D,Y){let pe=Y[0],Ce=Y[2];if(q.x<pe.x&&D.x<pe.x||q.x>Ce.x&&D.x>Ce.x||q.y<pe.y&&D.y<pe.y||q.y>Ce.y&&D.y>Ce.y)return!1;let Ue=P(q,D,Y[0]);return Ue!==P(q,D,Y[1])||Ue!==P(q,D,Y[2])||Ue!==P(q,D,Y[3])}function Gi(q,D,Y){let pe=D.paint.get(q).value;return pe.kind==="constant"?pe.value:Y.programConfigurations.get(D.id).getMaxValue(q)}function Io(q){return Math.sqrt(q[0]*q[0]+q[1]*q[1])}function nn(q,D,Y,pe,Ce){if(!D[0]&&!D[1])return q;let Ue=i.convert(D)._mult(Ce);Y==="viewport"&&Ue._rotate(-pe);let Ge=[];for(let ut=0;ut<q.length;ut++)Ge.push(q[ut].sub(Ue));return Ge}let on,Oi;ti("CircleBucket",Ll,{omit:["layers"]});var ui={get paint(){return Oi=Oi||new Oe({"circle-radius":new Po(ie.paint_circle["circle-radius"]),"circle-color":new Po(ie.paint_circle["circle-color"]),"circle-blur":new Po(ie.paint_circle["circle-blur"]),"circle-opacity":new Po(ie.paint_circle["circle-opacity"]),"circle-translate":new ro(ie.paint_circle["circle-translate"]),"circle-translate-anchor":new ro(ie.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new ro(ie.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new ro(ie.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new Po(ie.paint_circle["circle-stroke-width"]),"circle-stroke-color":new Po(ie.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new Po(ie.paint_circle["circle-stroke-opacity"])})},get layout(){return on=on||new Oe({"circle-sort-key":new Po(ie.layout_circle["circle-sort-key"])})}},Mi=1e-6,tn=typeof Float32Array<"u"?Float32Array:Array;function pn(q){return q[0]=1,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=1,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=1,q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q}function qi(q,D,Y){var pe=D[0],Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],la=D[12],za=D[13],ja=D[14],gi=D[15],ei=Y[0],hi=Y[1],Ei=Y[2],En=Y[3];return q[0]=ei*pe+hi*ut+Ei*lr+En*la,q[1]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[2]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[3]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[4]=(ei=Y[4])*pe+(hi=Y[5])*ut+(Ei=Y[6])*lr+(En=Y[7])*la,q[5]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[6]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[7]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[8]=(ei=Y[8])*pe+(hi=Y[9])*ut+(Ei=Y[10])*lr+(En=Y[11])*la,q[9]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[10]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[11]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[12]=(ei=Y[12])*pe+(hi=Y[13])*ut+(Ei=Y[14])*lr+(En=Y[15])*la,q[13]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[14]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[15]=ei*Ge+hi*$t+Ei*Kr+En*gi,q}Math.hypot||(Math.hypot=function(){for(var q=0,D=arguments.length;D--;)q+=arguments[D]*arguments[D];return Math.sqrt(q)});var Dn,bn=qi;function _o(q,D,Y){var pe=D[0],Ce=D[1],Ue=D[2],Ge=D[3];return q[0]=Y[0]*pe+Y[4]*Ce+Y[8]*Ue+Y[12]*Ge,q[1]=Y[1]*pe+Y[5]*Ce+Y[9]*Ue+Y[13]*Ge,q[2]=Y[2]*pe+Y[6]*Ce+Y[10]*Ue+Y[14]*Ge,q[3]=Y[3]*pe+Y[7]*Ce+Y[11]*Ue+Y[15]*Ge,q}Dn=new tn(4),tn!=Float32Array&&(Dn[0]=0,Dn[1]=0,Dn[2]=0,Dn[3]=0);class Zi extends ae{constructor(D){super(D,ui)}createBucket(D){return new Ll(D)}queryRadius(D){let Y=D;return Gi("circle-radius",this,Y)+Gi("circle-stroke-width",this,Y)+Io(this.paint.get("circle-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Ge.angle,ut),$t=this.paint.get("circle-radius").evaluate(Y,pe)+this.paint.get("circle-stroke-width").evaluate(Y,pe),lr=this.paint.get("circle-pitch-alignment")==="map",Ar=lr?Ft:function(Kr,la){return Kr.map(za=>Ui(za,la))}(Ft,Tt),zr=lr?$t*ut:$t;for(let Kr of Ce)for(let la of Kr){let za=lr?la:Ui(la,Tt),ja=zr,gi=_o([],[la.x,la.y,0,1],Tt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?ja*=gi[3]/Ge.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(ja*=Ge.cameraToCenterDistance/gi[3]),Qt(Ar,za,ja))return!0}return!1}}function Ui(q,D){let Y=_o([],[q.x,q.y,0,1],D);return new i(Y[0]/Y[3],Y[1]/Y[3])}class Zn extends Ll{}let Rn;ti("HeatmapBucket",Zn,{omit:["layers"]});var xn={get paint(){return Rn=Rn||new Oe({"heatmap-radius":new Po(ie.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Po(ie.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new ro(ie.paint_heatmap["heatmap-intensity"]),"heatmap-color":new pc(ie.paint_heatmap["heatmap-color"]),"heatmap-opacity":new ro(ie.paint_heatmap["heatmap-opacity"])})}};function dn(q,{width:D,height:Y},pe,Ce){if(Ce){if(Ce instanceof Uint8ClampedArray)Ce=new Uint8Array(Ce.buffer);else if(Ce.length!==D*Y*pe)throw new RangeError(`mismatched image size. expected: ${Ce.length} but got: ${D*Y*pe}`)}else Ce=new Uint8Array(D*Y*pe);return q.width=D,q.height=Y,q.data=Ce,q}function jn(q,{width:D,height:Y},pe){if(D===q.width&&Y===q.height)return;let Ce=dn({},{width:D,height:Y},pe);Ro(q,Ce,{x:0,y:0},{x:0,y:0},{width:Math.min(q.width,D),height:Math.min(q.height,Y)},pe),q.width=D,q.height=Y,q.data=Ce.data}function Ro(q,D,Y,pe,Ce,Ue){if(Ce.width===0||Ce.height===0)return D;if(Ce.width>q.width||Ce.height>q.height||Y.x>q.width-Ce.width||Y.y>q.height-Ce.height)throw new RangeError("out of range source coordinates for image copy");if(Ce.width>D.width||Ce.height>D.height||pe.x>D.width-Ce.width||pe.y>D.height-Ce.height)throw new RangeError("out of range destination coordinates for image copy");let Ge=q.data,ut=D.data;if(Ge===ut)throw new Error("srcData equals dstData, so image is already copied");for(let Tt=0;Tt<Ce.height;Tt++){let Ft=((Y.y+Tt)*q.width+Y.x)*Ue,$t=((pe.y+Tt)*D.width+pe.x)*Ue;for(let lr=0;lr<Ce.width*Ue;lr++)ut[$t+lr]=Ge[Ft+lr]}return D}class rs{constructor(D,Y){dn(this,D,1,Y)}resize(D){jn(this,D,1)}clone(){return new rs({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(D,Y,pe,Ce,Ue){Ro(D,Y,pe,Ce,Ue,1)}}class wn{constructor(D,Y){dn(this,D,4,Y)}resize(D){jn(this,D,4)}replace(D,Y){Y?this.data.set(D):this.data=D instanceof Uint8ClampedArray?new Uint8Array(D.buffer):D}clone(){return new wn({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(D,Y,pe,Ce,Ue){Ro(D,Y,pe,Ce,Ue,4)}}function oo(q){let D={},Y=q.resolution||256,pe=q.clips?q.clips.length:1,Ce=q.image||new wn({width:Y,height:pe});if(Math.log(Y)/Math.LN2%1!=0)throw new Error(`width is not a power of 2 - ${Y}`);let Ue=(Ge,ut,Tt)=>{D[q.evaluationKey]=Tt;let Ft=q.expression.evaluate(D);Ce.data[Ge+ut+0]=Math.floor(255*Ft.r/Ft.a),Ce.data[Ge+ut+1]=Math.floor(255*Ft.g/Ft.a),Ce.data[Ge+ut+2]=Math.floor(255*Ft.b/Ft.a),Ce.data[Ge+ut+3]=Math.floor(255*Ft.a)};if(q.clips)for(let Ge=0,ut=0;Ge<pe;++Ge,ut+=4*Y)for(let Tt=0,Ft=0;Tt<Y;Tt++,Ft+=4){let $t=Tt/(Y-1),{start:lr,end:Ar}=q.clips[Ge];Ue(ut,Ft,lr*(1-$t)+Ar*$t)}else for(let Ge=0,ut=0;Ge<Y;Ge++,ut+=4)Ue(0,ut,Ge/(Y-1));return Ce}ti("AlphaImage",rs),ti("RGBAImage",wn);let Xo="big-fb";class os extends ae{createBucket(D){return new Zn(D)}constructor(D){super(D,xn),this.heatmapFbos=new Map,this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(D){D==="heatmap-color"&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=oo({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbos.has(Xo)&&this.heatmapFbos.delete(Xo)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"}}let As;var $l={get paint(){return As=As||new Oe({"hillshade-illumination-direction":new ro(ie.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new ro(ie.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new ro(ie.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new ro(ie.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new ro(ie.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new ro(ie.paint_hillshade["hillshade-accent-color"])})}};class Uc extends ae{constructor(D){super(D,$l)}hasOffscreenPass(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"}}let Ws=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:jc}=Ws;function Ol(q,D,Y=2){let pe=D&&D.length,Ce=pe?D[0]*Y:q.length,Ue=vc(q,0,Ce,Y,!0),Ge=[];if(!Ue||Ue.next===Ue.prev)return Ge;let ut,Tt,Ft;if(pe&&(Ue=function($t,lr,Ar,zr){let Kr=[];for(let la=0,za=lr.length;la<za;la++){let ja=vc($t,lr[la]*zr,la<za-1?lr[la+1]*zr:$t.length,zr,!1);ja===ja.next&&(ja.steiner=!0),Kr.push(ye(ja))}Kr.sort(af);for(let la=0;la<Kr.length;la++)Ar=Cs(Kr[la],Ar);return Ar}(q,D,Ue,Y)),q.length>80*Y){ut=1/0,Tt=1/0;let $t=-1/0,lr=-1/0;for(let Ar=Y;Ar<Ce;Ar+=Y){let zr=q[Ar],Kr=q[Ar+1];zr<ut&&(ut=zr),Kr<Tt&&(Tt=Kr),zr>$t&&($t=zr),Kr>lr&&(lr=Kr)}Ft=Math.max($t-ut,lr-Tt),Ft=Ft!==0?32767/Ft:0}return rf(Ue,Ge,Y,ut,Tt,Ft,0),Ge}function vc(q,D,Y,pe,Ce){let Ue;if(Ce===function(Ge,ut,Tt,Ft){let $t=0;for(let lr=ut,Ar=Tt-Ft;lr<Tt;lr+=Ft)$t+=(Ge[Ar]-Ge[lr])*(Ge[lr+1]+Ge[Ar+1]),Ar=lr;return $t}(q,D,Y,pe)>0)for(let Ge=D;Ge<Y;Ge+=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);else for(let Ge=Y-pe;Ge>=D;Ge-=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);return Ue&&He(Ue,Ue.next)&&(qt(Ue),Ue=Ue.next),Ue}function mc(q,D){if(!q)return q;D||(D=q);let Y,pe=q;do if(Y=!1,pe.steiner||!He(pe,pe.next)&&We(pe.prev,pe,pe.next)!==0)pe=pe.next;else{if(qt(pe),pe=D=pe.prev,pe===pe.next)break;Y=!0}while(Y||pe!==D);return D}function rf(q,D,Y,pe,Ce,Ue,Ge){if(!q)return;!Ge&&Ue&&function(Tt,Ft,$t,lr){let Ar=Tt;do Ar.z===0&&(Ar.z=K(Ar.x,Ar.y,Ft,$t,lr)),Ar.prevZ=Ar.prev,Ar.nextZ=Ar.next,Ar=Ar.next;while(Ar!==Tt);Ar.prevZ.nextZ=null,Ar.prevZ=null,function(zr){let Kr,la=1;do{let za,ja=zr;zr=null;let gi=null;for(Kr=0;ja;){Kr++;let ei=ja,hi=0;for(let En=0;En<la&&(hi++,ei=ei.nextZ,ei);En++);let Ei=la;for(;hi>0||Ei>0&&ei;)hi!==0&&(Ei===0||!ei||ja.z<=ei.z)?(za=ja,ja=ja.nextZ,hi--):(za=ei,ei=ei.nextZ,Ei--),gi?gi.nextZ=za:zr=za,za.prevZ=gi,gi=za;ja=ei}gi.nextZ=null,la*=2}while(Kr>1)}(Ar)}(q,pe,Ce,Ue);let ut=q;for(;q.prev!==q.next;){let Tt=q.prev,Ft=q.next;if(Ue?Mc(q,pe,Ce,Ue):Yl(q))D.push(Tt.i,q.i,Ft.i),qt(q),q=Ft.next,ut=Ft.next;else if((q=Ft)===ut){Ge?Ge===1?rf(q=Vc(mc(q),D),D,Y,pe,Ce,Ue,2):Ge===2&&Ds(q,D,Y,pe,Ce,Ue):rf(mc(q),D,Y,pe,Ce,Ue,1);break}}}function Yl(q){let D=q.prev,Y=q,pe=q.next;if(We(D,Y,pe)>=0)return!1;let Ce=D.x,Ue=Y.x,Ge=pe.x,ut=D.y,Tt=Y.y,Ft=pe.y,$t=Ce<Ue?Ce<Ge?Ce:Ge:Ue<Ge?Ue:Ge,lr=ut<Tt?ut<Ft?ut:Ft:Tt<Ft?Tt:Ft,Ar=Ce>Ue?Ce>Ge?Ce:Ge:Ue>Ge?Ue:Ge,zr=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,Kr=pe.next;for(;Kr!==D;){if(Kr.x>=$t&&Kr.x<=Ar&&Kr.y>=lr&&Kr.y<=zr&&te(Ce,ut,Ue,Tt,Ge,Ft,Kr.x,Kr.y)&&We(Kr.prev,Kr,Kr.next)>=0)return!1;Kr=Kr.next}return!0}function Mc(q,D,Y,pe){let Ce=q.prev,Ue=q,Ge=q.next;if(We(Ce,Ue,Ge)>=0)return!1;let ut=Ce.x,Tt=Ue.x,Ft=Ge.x,$t=Ce.y,lr=Ue.y,Ar=Ge.y,zr=ut<Tt?ut<Ft?ut:Ft:Tt<Ft?Tt:Ft,Kr=$t<lr?$t<Ar?$t:Ar:lr<Ar?lr:Ar,la=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,za=$t>lr?$t>Ar?$t:Ar:lr>Ar?lr:Ar,ja=K(zr,Kr,D,Y,pe),gi=K(la,za,D,Y,pe),ei=q.prevZ,hi=q.nextZ;for(;ei&&ei.z>=ja&&hi&&hi.z<=gi;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0||(ei=ei.prevZ,hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0))return!1;hi=hi.nextZ}for(;ei&&ei.z>=ja;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0)return!1;ei=ei.prevZ}for(;hi&&hi.z<=gi;){if(hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0)return!1;hi=hi.nextZ}return!0}function Vc(q,D){let Y=q;do{let pe=Y.prev,Ce=Y.next.next;!He(pe,Ce)&&st(pe,Y,Y.next,Ce)&&yr(pe,Ce)&&yr(Ce,pe)&&(D.push(pe.i,Y.i,Ce.i),qt(Y),qt(Y.next),Y=q=Ce),Y=Y.next}while(Y!==q);return mc(Y)}function Ds(q,D,Y,pe,Ce,Ue){let Ge=q;do{let ut=Ge.next.next;for(;ut!==Ge.prev;){if(Ge.i!==ut.i&&xe(Ge,ut)){let Tt=Ir(Ge,ut);return Ge=mc(Ge,Ge.next),Tt=mc(Tt,Tt.next),rf(Ge,D,Y,pe,Ce,Ue,0),void rf(Tt,D,Y,pe,Ce,Ue,0)}ut=ut.next}Ge=Ge.next}while(Ge!==q)}function af(q,D){return q.x-D.x}function Cs(q,D){let Y=function(Ce,Ue){let Ge=Ue,ut=Ce.x,Tt=Ce.y,Ft,$t=-1/0;do{if(Tt<=Ge.y&&Tt>=Ge.next.y&&Ge.next.y!==Ge.y){let la=Ge.x+(Tt-Ge.y)*(Ge.next.x-Ge.x)/(Ge.next.y-Ge.y);if(la<=ut&&la>$t&&($t=la,Ft=Ge.x<Ge.next.x?Ge:Ge.next,la===ut))return Ft}Ge=Ge.next}while(Ge!==Ue);if(!Ft)return null;let lr=Ft,Ar=Ft.x,zr=Ft.y,Kr=1/0;Ge=Ft;do{if(ut>=Ge.x&&Ge.x>=Ar&&ut!==Ge.x&&te(Tt<zr?ut:$t,Tt,Ar,zr,Tt<zr?$t:ut,Tt,Ge.x,Ge.y)){let la=Math.abs(Tt-Ge.y)/(ut-Ge.x);yr(Ge,Ce)&&(la<Kr||la===Kr&&(Ge.x>Ft.x||Ge.x===Ft.x&&ve(Ft,Ge)))&&(Ft=Ge,Kr=la)}Ge=Ge.next}while(Ge!==lr);return Ft}(q,D);if(!Y)return D;let pe=Ir(Y,q);return mc(pe,pe.next),mc(Y,Y.next)}function ve(q,D){return We(q.prev,q,D.prev)<0&&We(D.next,q,q.next)<0}function K(q,D,Y,pe,Ce){return(q=1431655765&((q=858993459&((q=252645135&((q=16711935&((q=(q-Y)*Ce|0)|q<<8))|q<<4))|q<<2))|q<<1))|(D=1431655765&((D=858993459&((D=252645135&((D=16711935&((D=(D-pe)*Ce|0)|D<<8))|D<<4))|D<<2))|D<<1))<<1}function ye(q){let D=q,Y=q;do(D.x<Y.x||D.x===Y.x&&D.y<Y.y)&&(Y=D),D=D.next;while(D!==q);return Y}function te(q,D,Y,pe,Ce,Ue,Ge,ut){return(Ce-Ge)*(D-ut)>=(q-Ge)*(Ue-ut)&&(q-Ge)*(pe-ut)>=(Y-Ge)*(D-ut)&&(Y-Ge)*(Ue-ut)>=(Ce-Ge)*(pe-ut)}function xe(q,D){return q.next.i!==D.i&&q.prev.i!==D.i&&!function(Y,pe){let Ce=Y;do{if(Ce.i!==Y.i&&Ce.next.i!==Y.i&&Ce.i!==pe.i&&Ce.next.i!==pe.i&&st(Ce,Ce.next,Y,pe))return!0;Ce=Ce.next}while(Ce!==Y);return!1}(q,D)&&(yr(q,D)&&yr(D,q)&&function(Y,pe){let Ce=Y,Ue=!1,Ge=(Y.x+pe.x)/2,ut=(Y.y+pe.y)/2;do Ce.y>ut!=Ce.next.y>ut&&Ce.next.y!==Ce.y&&Ge<(Ce.next.x-Ce.x)*(ut-Ce.y)/(Ce.next.y-Ce.y)+Ce.x&&(Ue=!Ue),Ce=Ce.next;while(Ce!==Y);return Ue}(q,D)&&(We(q.prev,q,D.prev)||We(q,D.prev,D))||He(q,D)&&We(q.prev,q,q.next)>0&&We(D.prev,D,D.next)>0)}function We(q,D,Y){return(D.y-q.y)*(Y.x-D.x)-(D.x-q.x)*(Y.y-D.y)}function He(q,D){return q.x===D.x&&q.y===D.y}function st(q,D,Y,pe){let Ce=Ht(We(q,D,Y)),Ue=Ht(We(q,D,pe)),Ge=Ht(We(Y,pe,q)),ut=Ht(We(Y,pe,D));return Ce!==Ue&&Ge!==ut||!(Ce!==0||!Et(q,Y,D))||!(Ue!==0||!Et(q,pe,D))||!(Ge!==0||!Et(Y,q,pe))||!(ut!==0||!Et(Y,D,pe))}function Et(q,D,Y){return D.x<=Math.max(q.x,Y.x)&&D.x>=Math.min(q.x,Y.x)&&D.y<=Math.max(q.y,Y.y)&&D.y>=Math.min(q.y,Y.y)}function Ht(q){return q>0?1:q<0?-1:0}function yr(q,D){return We(q.prev,q,q.next)<0?We(q,D,q.next)>=0&&We(q,q.prev,D)>=0:We(q,D,q.prev)<0||We(q,q.next,D)<0}function Ir(q,D){let Y=tr(q.i,q.x,q.y),pe=tr(D.i,D.x,D.y),Ce=q.next,Ue=D.prev;return q.next=D,D.prev=q,Y.next=Ce,Ce.prev=Y,pe.next=Y,Y.prev=pe,Ue.next=pe,pe.prev=Ue,pe}function wr(q,D,Y,pe){let Ce=tr(q,D,Y);return pe?(Ce.next=pe.next,Ce.prev=pe,pe.next.prev=Ce,pe.next=Ce):(Ce.prev=Ce,Ce.next=Ce),Ce}function qt(q){q.next.prev=q.prev,q.prev.next=q.next,q.prevZ&&(q.prevZ.nextZ=q.nextZ),q.nextZ&&(q.nextZ.prevZ=q.prevZ)}function tr(q,D,Y){return{i:q,x:D,y:Y,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function dr(q,D,Y){let pe=Y.patternDependencies,Ce=!1;for(let Ue of D){let Ge=Ue.paint.get(`${q}-pattern`);Ge.isConstant()||(Ce=!0);let ut=Ge.constantOr(null);ut&&(Ce=!0,pe[ut.to]=!0,pe[ut.from]=!0)}return Ce}function Pr(q,D,Y,pe,Ce){let Ue=Ce.patternDependencies;for(let Ge of D){let ut=Ge.paint.get(`${q}-pattern`).value;if(ut.kind!=="constant"){let Tt=ut.evaluate({zoom:pe-1},Y,{},Ce.availableImages),Ft=ut.evaluate({zoom:pe},Y,{},Ce.availableImages),$t=ut.evaluate({zoom:pe+1},Y,{},Ce.availableImages);Tt=Tt&&Tt.name?Tt.name:Tt,Ft=Ft&&Ft.name?Ft.name:Ft,$t=$t&&$t.name?$t.name:$t,Ue[Tt]=!0,Ue[Ft]=!0,Ue[$t]=!0,Y.patterns[Ge.id]={min:Tt,mid:Ft,max:$t}}}return Y}class Vr{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Rl,this.indexArray=new Re,this.indexArray2=new $e,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.segments2=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("fill",this.layers,Y);let Ce=this.layers[0].layout.get("fill-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe,Y.availableImages):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("fill",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,jc),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.indexBuffer2=D.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut=0;for(let zr of Ge)ut+=zr.length;let Tt=this.segments.prepareSegment(ut,this.layoutVertexArray,this.indexArray),Ft=Tt.vertexLength,$t=[],lr=[];for(let zr of Ge){if(zr.length===0)continue;zr!==Ge[0]&&lr.push($t.length/2);let Kr=this.segments2.prepareSegment(zr.length,this.layoutVertexArray,this.indexArray2),la=Kr.vertexLength;this.layoutVertexArray.emplaceBack(zr[0].x,zr[0].y),this.indexArray2.emplaceBack(la+zr.length-1,la),$t.push(zr[0].x),$t.push(zr[0].y);for(let za=1;za<zr.length;za++)this.layoutVertexArray.emplaceBack(zr[za].x,zr[za].y),this.indexArray2.emplaceBack(la+za-1,la+za),$t.push(zr[za].x),$t.push(zr[za].y);Kr.vertexLength+=zr.length,Kr.primitiveLength+=zr.length}let Ar=Ol($t,lr);for(let zr=0;zr<Ar.length;zr+=3)this.indexArray.emplaceBack(Ft+Ar[zr],Ft+Ar[zr+1],Ft+Ar[zr+2]);Tt.vertexLength+=ut,Tt.primitiveLength+=Ar.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}}let Hr,aa;ti("FillBucket",Vr,{omit:["layers","patternFeatures"]});var Qr={get paint(){return aa=aa||new Oe({"fill-antialias":new ro(ie.paint_fill["fill-antialias"]),"fill-opacity":new Po(ie.paint_fill["fill-opacity"]),"fill-color":new Po(ie.paint_fill["fill-color"]),"fill-outline-color":new Po(ie.paint_fill["fill-outline-color"]),"fill-translate":new ro(ie.paint_fill["fill-translate"]),"fill-translate-anchor":new ro(ie.paint_fill["fill-translate-anchor"]),"fill-pattern":new Nc(ie.paint_fill["fill-pattern"])})},get layout(){return Hr=Hr||new Oe({"fill-sort-key":new Po(ie.layout_fill["fill-sort-key"])})}};class Gr extends ae{constructor(D){super(D,Qr)}recalculate(D,Y){super.recalculate(D,Y);let pe=this.paint._values["fill-outline-color"];pe.value.kind==="constant"&&pe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(D){return new Vr(D)}queryRadius(){return Io(this.paint.get("fill-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){return ra(nn(D,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Ge.angle,ut),Ce)}isTileClipped(){return!0}}let ia=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),Ur=ft([{name:"a_centroid",components:2,type:"Int16"}],4),{members:wa}=ia;var Oa={},ri=o,Pi=mi;function mi(q,D,Y,pe,Ce){this.properties={},this.extent=Y,this.type=0,this._pbf=q,this._geometry=-1,this._keys=pe,this._values=Ce,q.readFields(Di,this,D)}function Di(q,D,Y){q==1?D.id=Y.readVarint():q==2?function(pe,Ce){for(var Ue=pe.readVarint()+pe.pos;pe.pos<Ue;){var Ge=Ce._keys[pe.readVarint()],ut=Ce._values[pe.readVarint()];Ce.properties[Ge]=ut}}(Y,D):q==3?D.type=Y.readVarint():q==4&&(D._geometry=Y.pos)}function An(q){for(var D,Y,pe=0,Ce=0,Ue=q.length,Ge=Ue-1;Ce<Ue;Ge=Ce++)pe+=((Y=q[Ge]).x-(D=q[Ce]).x)*(D.y+Y.y);return pe}mi.types=["Unknown","Point","LineString","Polygon"],mi.prototype.loadGeometry=function(){var q=this._pbf;q.pos=this._geometry;for(var D,Y=q.readVarint()+q.pos,pe=1,Ce=0,Ue=0,Ge=0,ut=[];q.pos<Y;){if(Ce<=0){var Tt=q.readVarint();pe=7&Tt,Ce=Tt>>3}if(Ce--,pe===1||pe===2)Ue+=q.readSVarint(),Ge+=q.readSVarint(),pe===1&&(D&&ut.push(D),D=[]),D.push(new ri(Ue,Ge));else{if(pe!==7)throw new Error("unknown command "+pe);D&&D.push(D[0].clone())}}return D&&ut.push(D),ut},mi.prototype.bbox=function(){var q=this._pbf;q.pos=this._geometry;for(var D=q.readVarint()+q.pos,Y=1,pe=0,Ce=0,Ue=0,Ge=1/0,ut=-1/0,Tt=1/0,Ft=-1/0;q.pos<D;){if(pe<=0){var $t=q.readVarint();Y=7&$t,pe=$t>>3}if(pe--,Y===1||Y===2)(Ce+=q.readSVarint())<Ge&&(Ge=Ce),Ce>ut&&(ut=Ce),(Ue+=q.readSVarint())<Tt&&(Tt=Ue),Ue>Ft&&(Ft=Ue);else if(Y!==7)throw new Error("unknown command "+Y)}return[Ge,Tt,ut,Ft]},mi.prototype.toGeoJSON=function(q,D,Y){var pe,Ce,Ue=this.extent*Math.pow(2,Y),Ge=this.extent*q,ut=this.extent*D,Tt=this.loadGeometry(),Ft=mi.types[this.type];function $t(zr){for(var Kr=0;Kr<zr.length;Kr++){var la=zr[Kr];zr[Kr]=[360*(la.x+Ge)/Ue-180,360/Math.PI*Math.atan(Math.exp((180-360*(la.y+ut)/Ue)*Math.PI/180))-90]}}switch(this.type){case 1:var lr=[];for(pe=0;pe<Tt.length;pe++)lr[pe]=Tt[pe][0];$t(Tt=lr);break;case 2:for(pe=0;pe<Tt.length;pe++)$t(Tt[pe]);break;case 3:for(Tt=function(zr){var Kr=zr.length;if(Kr<=1)return[zr];for(var la,za,ja=[],gi=0;gi<Kr;gi++){var ei=An(zr[gi]);ei!==0&&(za===void 0&&(za=ei<0),za===ei<0?(la&&ja.push(la),la=[zr[gi]]):la.push(zr[gi]))}return la&&ja.push(la),ja}(Tt),pe=0;pe<Tt.length;pe++)for(Ce=0;Ce<Tt[pe].length;Ce++)$t(Tt[pe][Ce])}Tt.length===1?Tt=Tt[0]:Ft="Multi"+Ft;var Ar={type:"Feature",geometry:{type:Ft,coordinates:Tt},properties:this.properties};return"id"in this&&(Ar.id=this.id),Ar};var ln=Pi,Ii=Wi;function Wi(q,D){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=q,this._keys=[],this._values=[],this._features=[],q.readFields(Hi,this,D),this.length=this._features.length}function Hi(q,D,Y){q===15?D.version=Y.readVarint():q===1?D.name=Y.readString():q===5?D.extent=Y.readVarint():q===2?D._features.push(Y.pos):q===3?D._keys.push(Y.readString()):q===4&&D._values.push(function(pe){for(var Ce=null,Ue=pe.readVarint()+pe.pos;pe.pos<Ue;){var Ge=pe.readVarint()>>3;Ce=Ge===1?pe.readString():Ge===2?pe.readFloat():Ge===3?pe.readDouble():Ge===4?pe.readVarint64():Ge===5?pe.readVarint():Ge===6?pe.readSVarint():Ge===7?pe.readBoolean():null}return Ce}(Y))}Wi.prototype.feature=function(q){if(q<0||q>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[q];var D=this._pbf.readVarint()+this._pbf.pos;return new ln(this._pbf,D,this.extent,this._keys,this._values)};var yn=Ii;function zn(q,D,Y){if(q===3){var pe=new yn(Y,Y.readVarint()+Y.pos);pe.length&&(D[pe.name]=pe)}}Oa.VectorTile=function(q,D){this.layers=q.readFields(zn,{},D)},Oa.VectorTileFeature=Pi,Oa.VectorTileLayer=Ii;let ms=Oa.VectorTileFeature.types,us=Math.pow(2,13);function Vs(q,D,Y,pe,Ce,Ue,Ge,ut){q.emplaceBack(D,Y,2*Math.floor(pe*us)+Ge,Ce*us*2,Ue*us*2,Math.round(ut))}class qo{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Xl,this.centroidVertexArray=new Zo,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.features=[],this.hasPattern=dr("fill-extrusion",this.layers,Y);for(let{feature:Ce,id:Ue,index:Ge,sourceLayerIndex:ut}of D){let Tt=this.layers[0]._featureFilter.needGeometry,Ft=Dl(Ce,Tt);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ft,pe))continue;let $t={id:Ue,sourceLayerIndex:ut,index:Ge,geometry:Tt?Ft.geometry:hl(Ce),properties:Ce.properties,type:Ce.type,patterns:{}};this.hasPattern?this.features.push(Pr("fill-extrusion",this.layers,$t,this.zoom,Y)):this.addFeature($t,$t.geometry,Ge,pe,{}),Y.featureIndex.insert(Ce,$t.geometry,Ge,ut,this.index,!0)}}addFeatures(D,Y,pe){for(let Ce of this.features){let{geometry:Ue}=Ce;this.addFeature(Ce,Ue,Ce.index,Y,pe)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,wa),this.centroidVertexBuffer=D.createVertexBuffer(this.centroidVertexArray,Ur.members,!0),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut={x:0,y:0,vertexCount:0},Tt=0;for(let Kr of Ge)Tt+=Kr.length;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Kr of Ge){if(Kr.length===0||wl(Kr))continue;let la=0;for(let za=0;za<Kr.length;za++){let ja=Kr[za];if(za>=1){let gi=Kr[za-1];if(!Ls(ja,gi)){Ft.vertexLength+4>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let ei=ja.sub(gi)._perp()._unit(),hi=gi.dist(ja);la+hi>32768&&(la=0),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,1,la),ut.x+=2*ja.x,ut.y+=2*ja.y,ut.vertexCount+=2,la+=hi,Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,1,la),ut.x+=2*gi.x,ut.y+=2*gi.y,ut.vertexCount+=2;let Ei=Ft.vertexLength;this.indexArray.emplaceBack(Ei,Ei+2,Ei+1),this.indexArray.emplaceBack(Ei+1,Ei+2,Ei+3),Ft.vertexLength+=4,Ft.primitiveLength+=2}}}}if(Ft.vertexLength+Tt>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(Tt,this.layoutVertexArray,this.indexArray)),ms[D.type]!=="Polygon")continue;let $t=[],lr=[],Ar=Ft.vertexLength;for(let Kr of Ge)if(Kr.length!==0){Kr!==Ge[0]&&lr.push($t.length/2);for(let la=0;la<Kr.length;la++){let za=Kr[la];Vs(this.layoutVertexArray,za.x,za.y,0,0,1,1,0),ut.x+=za.x,ut.y+=za.y,ut.vertexCount+=1,$t.push(za.x),$t.push(za.y)}}let zr=Ol($t,lr);for(let Kr=0;Kr<zr.length;Kr+=3)this.indexArray.emplaceBack(Ar+zr[Kr],Ar+zr[Kr+2],Ar+zr[Kr+1]);Ft.primitiveLength+=zr.length/3,Ft.vertexLength+=Tt;for(let Kr=0;Kr<ut.vertexCount;Kr++){let la=Math.floor(ut.x/ut.vertexCount),za=Math.floor(ut.y/ut.vertexCount);this.centroidVertexArray.emplaceBack(la,za)}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}}function Ls(q,D){return q.x===D.x&&(q.x<0||q.x>ao)||q.y===D.y&&(q.y<0||q.y>ao)}function wl(q){return q.every(D=>D.x<0)||q.every(D=>D.x>ao)||q.every(D=>D.y<0)||q.every(D=>D.y>ao)}let Ru;ti("FillExtrusionBucket",qo,{omit:["layers","features"]});var Ap={get paint(){return Ru=Ru||new Oe({"fill-extrusion-opacity":new ro(ie["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Po(ie["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Nc(ie["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Po(ie["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Po(ie["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ro(ie["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Sp extends ae{constructor(D){super(D,Ap)}createBucket(D){return new qo(D)}queryRadius(){return Io(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Ge.angle,ut),$t=this.paint.get("fill-extrusion-height").evaluate(Y,pe),lr=this.paint.get("fill-extrusion-base").evaluate(Y,pe),Ar=function(Kr,la,za,ja){let gi=[];for(let ei of Kr){let hi=[ei.x,ei.y,0,1];_o(hi,hi,la),gi.push(new i(hi[0]/hi[3],hi[1]/hi[3]))}return gi}(Ft,Tt),zr=function(Kr,la,za,ja){let gi=[],ei=[],hi=ja[8]*la,Ei=ja[9]*la,En=ja[10]*la,fo=ja[11]*la,ss=ja[8]*za,eo=ja[9]*za,vn=ja[10]*za,Uo=ja[11]*za;for(let Mo of Kr){let xo=[],Yi=[];for(let Ko of Mo){let bo=Ko.x,gs=Ko.y,_u=ja[0]*bo+ja[4]*gs+ja[12],pu=ja[1]*bo+ja[5]*gs+ja[13],Bf=ja[2]*bo+ja[6]*gs+ja[14],Gp=ja[3]*bo+ja[7]*gs+ja[15],dh=Bf+En,Nf=Gp+fo,Yh=_u+ss,Kh=pu+eo,Jh=Bf+vn,Hc=Gp+Uo,Uf=new i((_u+hi)/Nf,(pu+Ei)/Nf);Uf.z=dh/Nf,xo.push(Uf);let Ih=new i(Yh/Hc,Kh/Hc);Ih.z=Jh/Hc,Yi.push(Ih)}gi.push(xo),ei.push(Yi)}return[gi,ei]}(Ce,lr,$t,Tt);return function(Kr,la,za){let ja=1/0;ra(za,la)&&(ja=Vp(za,la[0]));for(let gi=0;gi<la.length;gi++){let ei=la[gi],hi=Kr[gi];for(let Ei=0;Ei<ei.length-1;Ei++){let En=ei[Ei],fo=[En,ei[Ei+1],hi[Ei+1],hi[Ei],En];dc(za,fo)&&(ja=Math.min(ja,Vp(za,fo)))}}return ja!==1/0&&ja}(zr[0],zr[1],Ar)}}function Eh(q,D){return q.x*D.x+q.y*D.y}function Vp(q,D){if(q.length===1){let Y=0,pe=D[Y++],Ce;for(;!Ce||pe.equals(Ce);)if(Ce=D[Y++],!Ce)return 1/0;for(;Y<D.length;Y++){let Ue=D[Y],Ge=q[0],ut=Ce.sub(pe),Tt=Ue.sub(pe),Ft=Ge.sub(pe),$t=Eh(ut,ut),lr=Eh(ut,Tt),Ar=Eh(Tt,Tt),zr=Eh(Ft,ut),Kr=Eh(Ft,Tt),la=$t*Ar-lr*lr,za=(Ar*zr-lr*Kr)/la,ja=($t*Kr-lr*zr)/la,gi=pe.z*(1-za-ja)+Ce.z*za+Ue.z*ja;if(isFinite(gi))return gi}return 1/0}{let Y=1/0;for(let pe of D)Y=Math.min(Y,pe.z);return Y}}let Vd=ft([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),{members:td}=Vd,kh=ft([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),{members:rd}=kh,Xh=Oa.VectorTileFeature.types,Ch=Math.cos(Math.PI/180*37.5),Mp=Math.pow(2,14)/.5;class qp{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(Y=>{this.gradients[Y.id]={}}),this.layoutVertexArray=new qu,this.layoutVertexArray2=new fu,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("line",this.layers,Y);let Ce=this.layers[0].layout.get("line-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("line",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=D.createVertexBuffer(this.layoutVertexArray2,rd)),this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,td),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(D){if(D.properties&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_end"))return{start:+D.properties.mapbox_clip_start,end:+D.properties.mapbox_clip_end}}addFeature(D,Y,pe,Ce,Ue){let Ge=this.layers[0].layout,ut=Ge.get("line-join").evaluate(D,{}),Tt=Ge.get("line-cap"),Ft=Ge.get("line-miter-limit"),$t=Ge.get("line-round-limit");this.lineClips=this.lineFeatureClips(D);for(let lr of Y)this.addLine(lr,D,ut,Tt,Ft,$t);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}addLine(D,Y,pe,Ce,Ue,Ge){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let ja=0;ja<D.length-1;ja++)this.totalDistance+=D[ja].dist(D[ja+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}let ut=Xh[Y.type]==="Polygon",Tt=D.length;for(;Tt>=2&&D[Tt-1].equals(D[Tt-2]);)Tt--;let Ft=0;for(;Ft<Tt-1&&D[Ft].equals(D[Ft+1]);)Ft++;if(Tt<(ut?3:2))return;pe==="bevel"&&(Ue=1.05);let $t=this.overscaling<=16?15*ao/(512*this.overscaling):0,lr=this.segments.prepareSegment(10*Tt,this.layoutVertexArray,this.indexArray),Ar,zr,Kr,la,za;this.e1=this.e2=-1,ut&&(Ar=D[Tt-2],za=D[Ft].sub(Ar)._unit()._perp());for(let ja=Ft;ja<Tt;ja++){if(Kr=ja===Tt-1?ut?D[Ft+1]:void 0:D[ja+1],Kr&&D[ja].equals(Kr))continue;za&&(la=za),Ar&&(zr=Ar),Ar=D[ja],za=Kr?Kr.sub(Ar)._unit()._perp():la,la=la||za;let gi=la.add(za);gi.x===0&&gi.y===0||gi._unit();let ei=la.x*za.x+la.y*za.y,hi=gi.x*za.x+gi.y*za.y,Ei=hi!==0?1/hi:1/0,En=2*Math.sqrt(2-2*hi),fo=hi<Ch&&zr&&Kr,ss=la.x*za.y-la.y*za.x>0;if(fo&&ja>Ft){let Uo=Ar.dist(zr);if(Uo>2*$t){let Mo=Ar.sub(Ar.sub(zr)._mult($t/Uo)._round());this.updateDistance(zr,Mo),this.addCurrentVertex(Mo,la,0,0,lr),zr=Mo}}let eo=zr&&Kr,vn=eo?pe:ut?"butt":Ce;if(eo&&vn==="round"&&(Ei<Ge?vn="miter":Ei<=2&&(vn="fakeround")),vn==="miter"&&Ei>Ue&&(vn="bevel"),vn==="bevel"&&(Ei>2&&(vn="flipbevel"),Ei<Ue&&(vn="miter")),zr&&this.updateDistance(zr,Ar),vn==="miter")gi._mult(Ei),this.addCurrentVertex(Ar,gi,0,0,lr);else if(vn==="flipbevel"){if(Ei>100)gi=za.mult(-1);else{let Uo=Ei*la.add(za).mag()/la.sub(za).mag();gi._perp()._mult(Uo*(ss?-1:1))}this.addCurrentVertex(Ar,gi,0,0,lr),this.addCurrentVertex(Ar,gi.mult(-1),0,0,lr)}else if(vn==="bevel"||vn==="fakeround"){let Uo=-Math.sqrt(Ei*Ei-1),Mo=ss?Uo:0,xo=ss?0:Uo;if(zr&&this.addCurrentVertex(Ar,la,Mo,xo,lr),vn==="fakeround"){let Yi=Math.round(180*En/Math.PI/20);for(let Ko=1;Ko<Yi;Ko++){let bo=Ko/Yi;if(bo!==.5){let _u=bo-.5;bo+=bo*_u*(bo-1)*((1.0904+ei*(ei*(3.55645-1.43519*ei)-3.2452))*_u*_u+(.848013+ei*(.215638*ei-1.06021)))}let gs=za.sub(la)._mult(bo)._add(la)._unit()._mult(ss?-1:1);this.addHalfVertex(Ar,gs.x,gs.y,!1,ss,0,lr)}}Kr&&this.addCurrentVertex(Ar,za,-Mo,-xo,lr)}else if(vn==="butt")this.addCurrentVertex(Ar,gi,0,0,lr);else if(vn==="square"){let Uo=zr?1:-1;this.addCurrentVertex(Ar,gi,Uo,Uo,lr)}else vn==="round"&&(zr&&(this.addCurrentVertex(Ar,la,0,0,lr),this.addCurrentVertex(Ar,la,1,1,lr,!0)),Kr&&(this.addCurrentVertex(Ar,za,-1,-1,lr,!0),this.addCurrentVertex(Ar,za,0,0,lr)));if(fo&&ja<Tt-1){let Uo=Ar.dist(Kr);if(Uo>2*$t){let Mo=Ar.add(Kr.sub(Ar)._mult($t/Uo)._round());this.updateDistance(Ar,Mo),this.addCurrentVertex(Mo,za,0,0,lr),Ar=Mo}}}}addCurrentVertex(D,Y,pe,Ce,Ue,Ge=!1){let ut=Y.y*Ce-Y.x,Tt=-Y.y-Y.x*Ce;this.addHalfVertex(D,Y.x+Y.y*pe,Y.y-Y.x*pe,Ge,!1,pe,Ue),this.addHalfVertex(D,ut,Tt,Ge,!0,-Ce,Ue),this.distance>Mp/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(D,Y,pe,Ce,Ue,Ge))}addHalfVertex({x:D,y:Y},pe,Ce,Ue,Ge,ut,Tt){let Ft=.5*(this.lineClips?this.scaledDistance*(Mp-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((D<<1)+(Ue?1:0),(Y<<1)+(Ge?1:0),Math.round(63*pe)+128,Math.round(63*Ce)+128,1+(ut===0?0:ut<0?-1:1)|(63&Ft)<<2,Ft>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let $t=Tt.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,$t),Tt.primitiveLength++),Ge?this.e2=$t:this.e1=$t}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(D,Y){this.distance+=D.dist(Y),this.updateScaledDistance()}}let Ep,Cv;ti("LineBucket",qp,{omit:["layers","patternFeatures"]});var qd={get paint(){return Cv=Cv||new Oe({"line-opacity":new Po(ie.paint_line["line-opacity"]),"line-color":new Po(ie.paint_line["line-color"]),"line-translate":new ro(ie.paint_line["line-translate"]),"line-translate-anchor":new ro(ie.paint_line["line-translate-anchor"]),"line-width":new Po(ie.paint_line["line-width"]),"line-gap-width":new Po(ie.paint_line["line-gap-width"]),"line-offset":new Po(ie.paint_line["line-offset"]),"line-blur":new Po(ie.paint_line["line-blur"]),"line-dasharray":new hc(ie.paint_line["line-dasharray"]),"line-pattern":new Nc(ie.paint_line["line-pattern"]),"line-gradient":new pc(ie.paint_line["line-gradient"])})},get layout(){return Ep=Ep||new Oe({"line-cap":new ro(ie.layout_line["line-cap"]),"line-join":new Po(ie.layout_line["line-join"]),"line-miter-limit":new ro(ie.layout_line["line-miter-limit"]),"line-round-limit":new ro(ie.layout_line["line-round-limit"]),"line-sort-key":new Po(ie.layout_line["line-sort-key"])})}};class Sf extends Po{possiblyEvaluate(D,Y){return Y=new Ts(Math.floor(Y.zoom),{now:Y.now,fadeDuration:Y.fadeDuration,zoomHistory:Y.zoomHistory,transition:Y.transition}),super.possiblyEvaluate(D,Y)}evaluate(D,Y,pe,Ce){return Y=E({},Y,{zoom:Math.floor(Y.zoom)}),super.evaluate(D,Y,pe,Ce)}}let Hd;class Lv extends ae{constructor(D){super(D,qd),this.gradientVersion=0,Hd||(Hd=new Sf(qd.paint.properties["line-width"].specification),Hd.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(D){if(D==="line-gradient"){let Y=this.gradientExpression();this.stepInterpolant=!!function(pe){return pe._styleExpression!==void 0}(Y)&&Y._styleExpression.expression instanceof Sa,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(D,Y){super.recalculate(D,Y),this.paint._values["line-floorwidth"]=Hd.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,D)}createBucket(D){return new qp(D)}queryRadius(D){let Y=D,pe=eh(Gi("line-width",this,Y),Gi("line-gap-width",this,Y)),Ce=Gi("line-offset",this,Y);return pe/2+Math.abs(Ce)+Io(this.paint.get("line-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){let Tt=nn(D,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Ge.angle,ut),Ft=ut/2*eh(this.paint.get("line-width").evaluate(Y,pe),this.paint.get("line-gap-width").evaluate(Y,pe)),$t=this.paint.get("line-offset").evaluate(Y,pe);return $t&&(Ce=function(lr,Ar){let zr=[];for(let Kr=0;Kr<lr.length;Kr++){let la=lr[Kr],za=[];for(let ja=0;ja<la.length;ja++){let gi=la[ja-1],ei=la[ja],hi=la[ja+1],Ei=ja===0?new i(0,0):ei.sub(gi)._unit()._perp(),En=ja===la.length-1?new i(0,0):hi.sub(ei)._unit()._perp(),fo=Ei._add(En)._unit(),ss=fo.x*En.x+fo.y*En.y;ss!==0&&fo._mult(1/ss),za.push(fo._mult(Ar)._add(ei))}zr.push(za)}return zr}(Ce,$t*ut)),function(lr,Ar,zr){for(let Kr=0;Kr<Ar.length;Kr++){let la=Ar[Kr];if(lr.length>=3){for(let za=0;za<la.length;za++)if(cn(lr,la[za]))return!0}if(Ta(lr,la,zr))return!0}return!1}(Tt,Ce,Ft)}isTileClipped(){return!0}}function eh(q,D){return D>0?D+2*q:q}let iv=ft([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),im=ft([{name:"a_projected_pos",components:3,type:"Float32"}],4);ft([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let nm=ft([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);ft([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let Pv=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),nv=ft([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ov(q,D,Y){return q.sections.forEach(pe=>{pe.text=function(Ce,Ue,Ge){let ut=Ue.layout.get("text-transform").evaluate(Ge,{});return ut==="uppercase"?Ce=Ce.toLocaleUpperCase():ut==="lowercase"&&(Ce=Ce.toLocaleLowerCase()),js.applyArabicShaping&&(Ce=js.applyArabicShaping(Ce)),Ce}(pe.text,D,Y)}),q}ft([{name:"triangle",components:3,type:"Uint16"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),ft([{type:"Float32",name:"offsetX"}]),ft([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),ft([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let Du={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Bl=24,Lh=Ql,Iv=function(q,D,Y,pe,Ce){var Ue,Ge,ut=8*Ce-pe-1,Tt=(1<<ut)-1,Ft=Tt>>1,$t=-7,lr=Y?Ce-1:0,Ar=Y?-1:1,zr=q[D+lr];for(lr+=Ar,Ue=zr&(1<<-$t)-1,zr>>=-$t,$t+=ut;$t>0;Ue=256*Ue+q[D+lr],lr+=Ar,$t-=8);for(Ge=Ue&(1<<-$t)-1,Ue>>=-$t,$t+=pe;$t>0;Ge=256*Ge+q[D+lr],lr+=Ar,$t-=8);if(Ue===0)Ue=1-Ft;else{if(Ue===Tt)return Ge?NaN:1/0*(zr?-1:1);Ge+=Math.pow(2,pe),Ue-=Ft}return(zr?-1:1)*Ge*Math.pow(2,Ue-pe)},om=function(q,D,Y,pe,Ce,Ue){var Ge,ut,Tt,Ft=8*Ue-Ce-1,$t=(1<<Ft)-1,lr=$t>>1,Ar=Ce===23?Math.pow(2,-24)-Math.pow(2,-77):0,zr=pe?0:Ue-1,Kr=pe?1:-1,la=D<0||D===0&&1/D<0?1:0;for(D=Math.abs(D),isNaN(D)||D===1/0?(ut=isNaN(D)?1:0,Ge=$t):(Ge=Math.floor(Math.log(D)/Math.LN2),D*(Tt=Math.pow(2,-Ge))<1&&(Ge--,Tt*=2),(D+=Ge+lr>=1?Ar/Tt:Ar*Math.pow(2,1-lr))*Tt>=2&&(Ge++,Tt/=2),Ge+lr>=$t?(ut=0,Ge=$t):Ge+lr>=1?(ut=(D*Tt-1)*Math.pow(2,Ce),Ge+=lr):(ut=D*Math.pow(2,lr-1)*Math.pow(2,Ce),Ge=0));Ce>=8;q[Y+zr]=255&ut,zr+=Kr,ut/=256,Ce-=8);for(Ge=Ge<<Ce|ut,Ft+=Ce;Ft>0;q[Y+zr]=255&Ge,zr+=Kr,Ge/=256,Ft-=8);q[Y+zr-Kr]|=128*la};function Ql(q){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(q)?q:new Uint8Array(q||0),this.pos=0,this.type=0,this.length=this.buf.length}Ql.Varint=0,Ql.Fixed64=1,Ql.Bytes=2,Ql.Fixed32=5;var xg=4294967296,sv=1/xg,y0=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");function kp(q){return q.type===Ql.Bytes?q.readVarint()+q.pos:q.pos+1}function lv(q,D,Y){return Y?4294967296*D+(q>>>0):4294967296*(D>>>0)+(q>>>0)}function _0(q,D,Y){var pe=D<=16383?1:D<=2097151?2:D<=268435455?3:Math.floor(Math.log(D)/(7*Math.LN2));Y.realloc(pe);for(var Ce=Y.pos-1;Ce>=q;Ce--)Y.buf[Ce+pe]=Y.buf[Ce]}function bg(q,D){for(var Y=0;Y<q.length;Y++)D.writeVarint(q[Y])}function NT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSVarint(q[Y])}function UT(q,D){for(var Y=0;Y<q.length;Y++)D.writeFloat(q[Y])}function jT(q,D){for(var Y=0;Y<q.length;Y++)D.writeDouble(q[Y])}function VT(q,D){for(var Y=0;Y<q.length;Y++)D.writeBoolean(q[Y])}function cC(q,D){for(var Y=0;Y<q.length;Y++)D.writeFixed32(q[Y])}function qT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSFixed32(q[Y])}function HT(q,D){for(var Y=0;Y<q.length;Y++)D.writeFixed64(q[Y])}function GT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSFixed64(q[Y])}function Rv(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+16777216*q[D+3]}function wg(q,D,Y){q[Y]=D,q[Y+1]=D>>>8,q[Y+2]=D>>>16,q[Y+3]=D>>>24}function kx(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+(q[D+3]<<24)}Ql.prototype={destroy:function(){this.buf=null},readFields:function(q,D,Y){for(Y=Y||this.length;this.pos<Y;){var pe=this.readVarint(),Ce=pe>>3,Ue=this.pos;this.type=7&pe,q(Ce,D,this),this.pos===Ue&&this.skip(pe)}return D},readMessage:function(q,D){return this.readFields(q,D,this.readVarint()+this.pos)},readFixed32:function(){var q=Rv(this.buf,this.pos);return this.pos+=4,q},readSFixed32:function(){var q=kx(this.buf,this.pos);return this.pos+=4,q},readFixed64:function(){var q=Rv(this.buf,this.pos)+Rv(this.buf,this.pos+4)*xg;return this.pos+=8,q},readSFixed64:function(){var q=Rv(this.buf,this.pos)+kx(this.buf,this.pos+4)*xg;return this.pos+=8,q},readFloat:function(){var q=Iv(this.buf,this.pos,!0,23,4);return this.pos+=4,q},readDouble:function(){var q=Iv(this.buf,this.pos,!0,52,8);return this.pos+=8,q},readVarint:function(q){var D,Y,pe=this.buf;return D=127&(Y=pe[this.pos++]),Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<7,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<14,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<21,Y<128?D:function(Ce,Ue,Ge){var ut,Tt,Ft=Ge.buf;if(ut=(112&(Tt=Ft[Ge.pos++]))>>4,Tt<128||(ut|=(127&(Tt=Ft[Ge.pos++]))<<3,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<10,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<17,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<24,Tt<128)||(ut|=(1&(Tt=Ft[Ge.pos++]))<<31,Tt<128))return lv(Ce,ut,Ue);throw new Error("Expected varint not more than 10 bytes")}(D|=(15&(Y=pe[this.pos]))<<28,q,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var q=this.readVarint();return q%2==1?(q+1)/-2:q/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var q=this.readVarint()+this.pos,D=this.pos;return this.pos=q,q-D>=12&&y0?function(Y,pe,Ce){return y0.decode(Y.subarray(pe,Ce))}(this.buf,D,q):function(Y,pe,Ce){for(var Ue="",Ge=pe;Ge<Ce;){var ut,Tt,Ft,$t=Y[Ge],lr=null,Ar=$t>239?4:$t>223?3:$t>191?2:1;if(Ge+Ar>Ce)break;Ar===1?$t<128&&(lr=$t):Ar===2?(192&(ut=Y[Ge+1]))==128&&(lr=(31&$t)<<6|63&ut)<=127&&(lr=null):Ar===3?(Tt=Y[Ge+2],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&((lr=(15&$t)<<12|(63&ut)<<6|63&Tt)<=2047||lr>=55296&&lr<=57343)&&(lr=null)):Ar===4&&(Tt=Y[Ge+2],Ft=Y[Ge+3],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&(192&Ft)==128&&((lr=(15&$t)<<18|(63&ut)<<12|(63&Tt)<<6|63&Ft)<=65535||lr>=1114112)&&(lr=null)),lr===null?(lr=65533,Ar=1):lr>65535&&(lr-=65536,Ue+=String.fromCharCode(lr>>>10&1023|55296),lr=56320|1023&lr),Ue+=String.fromCharCode(lr),Ge+=Ar}return Ue}(this.buf,D,q)},readBytes:function(){var q=this.readVarint()+this.pos,D=this.buf.subarray(this.pos,q);return this.pos=q,D},readPackedVarint:function(q,D){if(this.type!==Ql.Bytes)return q.push(this.readVarint(D));var Y=kp(this);for(q=q||[];this.pos<Y;)q.push(this.readVarint(D));return q},readPackedSVarint:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSVarint());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSVarint());return q},readPackedBoolean:function(q){if(this.type!==Ql.Bytes)return q.push(this.readBoolean());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readBoolean());return q},readPackedFloat:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFloat());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFloat());return q},readPackedDouble:function(q){if(this.type!==Ql.Bytes)return q.push(this.readDouble());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readDouble());return q},readPackedFixed32:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFixed32());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFixed32());return q},readPackedSFixed32:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSFixed32());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSFixed32());return q},readPackedFixed64:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFixed64());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFixed64());return q},readPackedSFixed64:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSFixed64());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSFixed64());return q},skip:function(q){var D=7&q;if(D===Ql.Varint)for(;this.buf[this.pos++]>127;);else if(D===Ql.Bytes)this.pos=this.readVarint()+this.pos;else if(D===Ql.Fixed32)this.pos+=4;else{if(D!==Ql.Fixed64)throw new Error("Unimplemented type: "+D);this.pos+=8}},writeTag:function(q,D){this.writeVarint(q<<3|D)},realloc:function(q){for(var D=this.length||16;D<this.pos+q;)D*=2;if(D!==this.length){var Y=new Uint8Array(D);Y.set(this.buf),this.buf=Y,this.length=D}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(q){this.realloc(4),wg(this.buf,q,this.pos),this.pos+=4},writeSFixed32:function(q){this.realloc(4),wg(this.buf,q,this.pos),this.pos+=4},writeFixed64:function(q){this.realloc(8),wg(this.buf,-1&q,this.pos),wg(this.buf,Math.floor(q*sv),this.pos+4),this.pos+=8},writeSFixed64:function(q){this.realloc(8),wg(this.buf,-1&q,this.pos),wg(this.buf,Math.floor(q*sv),this.pos+4),this.pos+=8},writeVarint:function(q){(q=+q||0)>268435455||q<0?function(D,Y){var pe,Ce;if(D>=0?(pe=D%4294967296|0,Ce=D/4294967296|0):(Ce=~(-D/4294967296),4294967295^(pe=~(-D%4294967296))?pe=pe+1|0:(pe=0,Ce=Ce+1|0)),D>=18446744073709552e3||D<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");Y.realloc(10),function(Ue,Ge,ut){ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,ut.buf[ut.pos]=127&(Ue>>>=7)}(pe,0,Y),function(Ue,Ge){var ut=(7&Ue)<<4;Ge.buf[Ge.pos++]|=ut|((Ue>>>=3)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue)))))}(Ce,Y)}(q,this):(this.realloc(4),this.buf[this.pos++]=127&q|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=q>>>7&127))))},writeSVarint:function(q){this.writeVarint(q<0?2*-q-1:2*q)},writeBoolean:function(q){this.writeVarint(!!q)},writeString:function(q){q=String(q),this.realloc(4*q.length),this.pos++;var D=this.pos;this.pos=function(pe,Ce,Ue){for(var Ge,ut,Tt=0;Tt<Ce.length;Tt++){if((Ge=Ce.charCodeAt(Tt))>55295&&Ge<57344){if(!ut){Ge>56319||Tt+1===Ce.length?(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189):ut=Ge;continue}if(Ge<56320){pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=Ge;continue}Ge=ut-55296<<10|Ge-56320|65536,ut=null}else ut&&(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=null);Ge<128?pe[Ue++]=Ge:(Ge<2048?pe[Ue++]=Ge>>6|192:(Ge<65536?pe[Ue++]=Ge>>12|224:(pe[Ue++]=Ge>>18|240,pe[Ue++]=Ge>>12&63|128),pe[Ue++]=Ge>>6&63|128),pe[Ue++]=63&Ge|128)}return Ue}(this.buf,q,this.pos);var Y=this.pos-D;Y>=128&&_0(D,Y,this),this.pos=D-1,this.writeVarint(Y),this.pos+=Y},writeFloat:function(q){this.realloc(4),om(this.buf,q,this.pos,!0,23,4),this.pos+=4},writeDouble:function(q){this.realloc(8),om(this.buf,q,this.pos,!0,52,8),this.pos+=8},writeBytes:function(q){var D=q.length;this.writeVarint(D),this.realloc(D);for(var Y=0;Y<D;Y++)this.buf[this.pos++]=q[Y]},writeRawMessage:function(q,D){this.pos++;var Y=this.pos;q(D,this);var pe=this.pos-Y;pe>=128&&_0(Y,pe,this),this.pos=Y-1,this.writeVarint(pe),this.pos+=pe},writeMessage:function(q,D,Y){this.writeTag(q,Ql.Bytes),this.writeRawMessage(D,Y)},writePackedVarint:function(q,D){D.length&&this.writeMessage(q,bg,D)},writePackedSVarint:function(q,D){D.length&&this.writeMessage(q,NT,D)},writePackedBoolean:function(q,D){D.length&&this.writeMessage(q,VT,D)},writePackedFloat:function(q,D){D.length&&this.writeMessage(q,UT,D)},writePackedDouble:function(q,D){D.length&&this.writeMessage(q,jT,D)},writePackedFixed32:function(q,D){D.length&&this.writeMessage(q,cC,D)},writePackedSFixed32:function(q,D){D.length&&this.writeMessage(q,qT,D)},writePackedFixed64:function(q,D){D.length&&this.writeMessage(q,HT,D)},writePackedSFixed64:function(q,D){D.length&&this.writeMessage(q,GT,D)},writeBytesField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeBytes(D)},writeFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFixed32(D)},writeSFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeSFixed32(D)},writeFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeFixed64(D)},writeSFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeSFixed64(D)},writeVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeVarint(D)},writeSVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeSVarint(D)},writeStringField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeString(D)},writeFloatField:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFloat(D)},writeDoubleField:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeDouble(D)},writeBooleanField:function(q,D){this.writeVarintField(q,!!D)}};var C1=r(Lh);let L1=3;function fC(q,D,Y){q===1&&Y.readMessage(WT,D)}function WT(q,D,Y){if(q===3){let{id:pe,bitmap:Ce,width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}=Y.readMessage(Cx,{});D.push({id:pe,bitmap:new rs({width:Ue+2*L1,height:Ge+2*L1},Ce),metrics:{width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}})}}function Cx(q,D,Y){q===1?D.id=Y.readVarint():q===2?D.bitmap=Y.readBytes():q===3?D.width=Y.readVarint():q===4?D.height=Y.readVarint():q===5?D.left=Y.readSVarint():q===6?D.top=Y.readSVarint():q===7&&(D.advance=Y.readVarint())}let Lx=L1;function P1(q){let D=0,Y=0;for(let Ge of q)D+=Ge.w*Ge.h,Y=Math.max(Y,Ge.w);q.sort((Ge,ut)=>ut.h-Ge.h);let pe=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(D/.95)),Y),h:1/0}],Ce=0,Ue=0;for(let Ge of q)for(let ut=pe.length-1;ut>=0;ut--){let Tt=pe[ut];if(!(Ge.w>Tt.w||Ge.h>Tt.h)){if(Ge.x=Tt.x,Ge.y=Tt.y,Ue=Math.max(Ue,Ge.y+Ge.h),Ce=Math.max(Ce,Ge.x+Ge.w),Ge.w===Tt.w&&Ge.h===Tt.h){let Ft=pe.pop();ut<pe.length&&(pe[ut]=Ft)}else Ge.h===Tt.h?(Tt.x+=Ge.w,Tt.w-=Ge.w):Ge.w===Tt.w?(Tt.y+=Ge.h,Tt.h-=Ge.h):(pe.push({x:Tt.x+Ge.w,y:Tt.y,w:Tt.w-Ge.w,h:Ge.h}),Tt.y+=Ge.h,Tt.h-=Ge.h);break}}return{w:Ce,h:Ue,fill:D/(Ce*Ue)||0}}let Ph=1;class x0{constructor(D,{pixelRatio:Y,version:pe,stretchX:Ce,stretchY:Ue,content:Ge,textFitWidth:ut,textFitHeight:Tt}){this.paddedRect=D,this.pixelRatio=Y,this.stretchX=Ce,this.stretchY=Ue,this.content=Ge,this.version=pe,this.textFitWidth=ut,this.textFitHeight=Tt}get tl(){return[this.paddedRect.x+Ph,this.paddedRect.y+Ph]}get br(){return[this.paddedRect.x+this.paddedRect.w-Ph,this.paddedRect.y+this.paddedRect.h-Ph]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2*Ph)/this.pixelRatio,(this.paddedRect.h-2*Ph)/this.pixelRatio]}}class b0{constructor(D,Y){let pe={},Ce={};this.haveRenderCallbacks=[];let Ue=[];this.addImages(D,pe,Ue),this.addImages(Y,Ce,Ue);let{w:Ge,h:ut}=P1(Ue),Tt=new wn({width:Ge||1,height:ut||1});for(let Ft in D){let $t=D[Ft],lr=pe[Ft].paddedRect;wn.copy($t.data,Tt,{x:0,y:0},{x:lr.x+Ph,y:lr.y+Ph},$t.data)}for(let Ft in Y){let $t=Y[Ft],lr=Ce[Ft].paddedRect,Ar=lr.x+Ph,zr=lr.y+Ph,Kr=$t.data.width,la=$t.data.height;wn.copy($t.data,Tt,{x:0,y:0},{x:Ar,y:zr},$t.data),wn.copy($t.data,Tt,{x:0,y:la-1},{x:Ar,y:zr-1},{width:Kr,height:1}),wn.copy($t.data,Tt,{x:0,y:0},{x:Ar,y:zr+la},{width:Kr,height:1}),wn.copy($t.data,Tt,{x:Kr-1,y:0},{x:Ar-1,y:zr},{width:1,height:la}),wn.copy($t.data,Tt,{x:0,y:0},{x:Ar+Kr,y:zr},{width:1,height:la})}this.image=Tt,this.iconPositions=pe,this.patternPositions=Ce}addImages(D,Y,pe){for(let Ce in D){let Ue=D[Ce],Ge={x:0,y:0,w:Ue.data.width+2*Ph,h:Ue.data.height+2*Ph};pe.push(Ge),Y[Ce]=new x0(Ge,Ue),Ue.hasRenderCallback&&this.haveRenderCallbacks.push(Ce)}}patchUpdatedImages(D,Y){D.dispatchRenderCallbacks(this.haveRenderCallbacks);for(let pe in D.updatedImages)this.patchUpdatedImage(this.iconPositions[pe],D.getImage(pe),Y),this.patchUpdatedImage(this.patternPositions[pe],D.getImage(pe),Y)}patchUpdatedImage(D,Y,pe){if(!D||!Y||D.version===Y.version)return;D.version=Y.version;let[Ce,Ue]=D.tl;pe.update(Y.data,void 0,{x:Ce,y:Ue})}}var Cp;ti("ImagePosition",x0),ti("ImageAtlas",b0),e.ah=void 0,(Cp=e.ah||(e.ah={}))[Cp.none=0]="none",Cp[Cp.horizontal=1]="horizontal",Cp[Cp.vertical=2]="vertical",Cp[Cp.horizontalOnly=3]="horizontalOnly";let Of=-17;class Tg{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(D,Y){let pe=new Tg;return pe.scale=D||1,pe.fontStack=Y,pe}static forImage(D){let Y=new Tg;return Y.imageName=D,Y}}class sm{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(D,Y){let pe=new sm;for(let Ce=0;Ce<D.sections.length;Ce++){let Ue=D.sections[Ce];Ue.image?pe.addImageSection(Ue):pe.addTextSection(Ue,Y)}return pe}length(){return this.text.length}getSection(D){return this.sections[this.sectionIndex[D]]}getSectionIndex(D){return this.sectionIndex[D]}getCharCode(D){return this.text.charCodeAt(D)}verticalizePunctuation(){this.text=function(D){let Y="";for(let pe=0;pe<D.length;pe++){let Ce=D.charCodeAt(pe+1)||null,Ue=D.charCodeAt(pe-1)||null;Y+=Ce&&Il(Ce)&&!Du[D[pe+1]]||Ue&&Il(Ue)&&!Du[D[pe-1]]||!Du[D[pe]]?D[pe]:Du[D[pe]]}return Y}(this.text)}trim(){let D=0;for(let pe=0;pe<this.text.length&&w0[this.text.charCodeAt(pe)];pe++)D++;let Y=this.text.length;for(let pe=this.text.length-1;pe>=0&&pe>=D&&w0[this.text.charCodeAt(pe)];pe--)Y--;this.text=this.text.substring(D,Y),this.sectionIndex=this.sectionIndex.slice(D,Y)}substring(D,Y){let pe=new sm;return pe.text=this.text.substring(D,Y),pe.sectionIndex=this.sectionIndex.slice(D,Y),pe.sections=this.sections,pe}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((D,Y)=>Math.max(D,this.sections[Y].scale),0)}addTextSection(D,Y){this.text+=D.text,this.sections.push(Tg.forText(D.scale,D.fontStack||Y));let pe=this.sections.length-1;for(let Ce=0;Ce<D.text.length;++Ce)this.sectionIndex.push(pe)}addImageSection(D){let Y=D.image?D.image.name:"";if(Y.length===0)return void f("Can't add FormattedSection with an empty image.");let pe=this.getNextImageSectionCharCode();pe?(this.text+=String.fromCharCode(pe),this.sections.push(Tg.forImage(Y)),this.sectionIndex.push(this.sections.length-1)):f("Reached maximum number of images 6401")}getNextImageSectionCharCode(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Ag(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=sm.fromFeature(q,Ce),za;lr===e.ah.vertical&&la.verticalizePunctuation();let{processBidirectionalText:ja,processStyledBidirectionalText:gi}=js;if(ja&&la.sections.length===1){za=[];let Ei=ja(la.toString(),lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En,fo.sections=la.sections;for(let ss=0;ss<En.length;ss++)fo.sectionIndex.push(0);za.push(fo)}}else if(gi){za=[];let Ei=gi(la.text,la.sectionIndex,lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En[0],fo.sectionIndex=En[1],fo.sections=la.sections,za.push(fo)}}else za=function(Ei,En){let fo=[],ss=Ei.text,eo=0;for(let vn of En)fo.push(Ei.substring(eo,vn)),eo=vn;return eo<ss.length&&fo.push(Ei.substring(eo,ss.length)),fo}(la,lm(la,Ft,Ue,D,pe,zr));let ei=[],hi={positionedLines:ei,text:la.toString(),top:$t[1],bottom:$t[1],left:$t[0],right:$t[0],writingMode:lr,iconsInText:!1,verticalizable:!1};return function(Ei,En,fo,ss,eo,vn,Uo,Mo,xo,Yi,Ko,bo){let gs=0,_u=Of,pu=0,Bf=0,Gp=Mo==="right"?1:Mo==="left"?0:.5,dh=0;for(let Hc of eo){Hc.trim();let Uf=Hc.getMaxScale(),Ih=(Uf-1)*Bl,vh={positionedGlyphs:[],lineOffset:0};Ei.positionedLines[dh]=vh;let th=vh.positionedGlyphs,nf=0;if(!Hc.length()){_u+=vn,++dh;continue}for(let pp=0;pp<Hc.length();pp++){let Nl=Hc.getSection(pp),zu=Hc.getSectionIndex(pp),xu=Hc.getCharCode(pp),Pp=0,Ec=null,dm=null,_d=null,hd=Bl,Wp=!(xo===e.ah.horizontal||!Ko&&!vs(xu)||Ko&&(w0[xu]||(Nf=xu,new RegExp("\\p{sc=Arab}","u").test(String.fromCodePoint(Nf)))));if(Nl.imageName){let tc=ss[Nl.imageName];if(!tc)continue;_d=Nl.imageName,Ei.iconsInText=Ei.iconsInText||!0,dm=tc.paddedRect;let gf=tc.displaySize;Nl.scale=Nl.scale*Bl/bo,Ec={width:gf[0],height:gf[1],left:Ph,top:-Lx,advance:Wp?gf[1]:gf[0]},Pp=Ih+(Bl-gf[1]*Nl.scale),hd=Ec.advance;let Zp=Wp?gf[0]*Nl.scale-Bl*Uf:gf[1]*Nl.scale-Bl*Uf;Zp>0&&Zp>nf&&(nf=Zp)}else{let tc=fo[Nl.fontStack],gf=tc&&tc[xu];if(gf&&gf.rect)dm=gf.rect,Ec=gf.metrics;else{let Zp=En[Nl.fontStack],Xd=Zp&&Zp[xu];if(!Xd)continue;Ec=Xd.metrics}Pp=(Uf-Nl.scale)*Bl}Wp?(Ei.verticalizable=!0,th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=hd*Nl.scale+Yi):(th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=Ec.advance*Nl.scale+Yi)}th.length!==0&&(pu=Math.max(gs-Yi,pu),uv(th,0,th.length-1,Gp,nf)),gs=0;let Lp=vn*Uf+nf;vh.lineOffset=Math.max(nf,Ih),_u+=Lp,Bf=Math.max(Lp,Bf),++dh}var Nf;let Yh=_u-Of,{horizontalAlign:Kh,verticalAlign:Jh}=A0(Uo);(function(Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl){let zu=(Uf-Ih)*th,xu=0;xu=nf!==Lp?-pp*vh-Of:(-vh*Nl+.5)*Lp;for(let Pp of Hc)for(let Ec of Pp.positionedGlyphs)Ec.x+=zu,Ec.y+=xu})(Ei.positionedLines,Gp,Kh,Jh,pu,Bf,vn,Yh,eo.length),Ei.top+=-Jh*Yh,Ei.bottom=Ei.top+Yh,Ei.left+=-Kh*pu,Ei.right=Ei.left+pu}(hi,D,Y,pe,za,Ge,ut,Tt,lr,Ft,Ar,Kr),!function(Ei){for(let En of Ei)if(En.positionedGlyphs.length!==0)return!1;return!0}(ei)&&hi}let w0={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},ZT={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},XT={40:!0};function Px(q,D,Y,pe,Ce,Ue){if(D.imageName){let Ge=pe[D.imageName];return Ge?Ge.displaySize[0]*D.scale*Bl/Ue+Ce:0}{let Ge=Y[D.fontStack],ut=Ge&&Ge[q];return ut?ut.metrics.advance*D.scale+Ce:0}}function Ix(q,D,Y,pe){let Ce=Math.pow(q-D,2);return pe?q<D?Ce/2:2*Ce:Ce+Math.abs(Y)*Y}function YT(q,D,Y){let pe=0;return q===10&&(pe-=1e4),Y&&(pe+=150),q!==40&&q!==65288||(pe+=50),D!==41&&D!==65289||(pe+=50),pe}function T0(q,D,Y,pe,Ce,Ue){let Ge=null,ut=Ix(D,Y,Ce,Ue);for(let Tt of pe){let Ft=Ix(D-Tt.x,Y,Ce,Ue)+Tt.badness;Ft<=ut&&(Ge=Tt,ut=Ft)}return{index:q,x:D,priorBreak:Ge,badness:ut}}function Rx(q){return q?Rx(q.priorBreak).concat(q.index):[]}function lm(q,D,Y,pe,Ce,Ue){if(!q)return[];let Ge=[],ut=function(lr,Ar,zr,Kr,la,za){let ja=0;for(let gi=0;gi<lr.length();gi++){let ei=lr.getSection(gi);ja+=Px(lr.getCharCode(gi),ei,Kr,la,Ar,za)}return ja/Math.max(1,Math.ceil(ja/zr))}(q,D,Y,pe,Ce,Ue),Tt=q.text.indexOf("\u200B")>=0,Ft=0;for(let lr=0;lr<q.length();lr++){let Ar=q.getSection(lr),zr=q.getCharCode(lr);if(w0[zr]||(Ft+=Px(zr,Ar,pe,Ce,D,Ue)),lr<q.length()-1){let Kr=!(($t=zr)<11904)&&(!!Ri["CJK Compatibility Forms"]($t)||!!Ri["CJK Compatibility"]($t)||!!Ri["CJK Strokes"]($t)||!!Ri["CJK Symbols and Punctuation"]($t)||!!Ri["Enclosed CJK Letters and Months"]($t)||!!Ri["Halfwidth and Fullwidth Forms"]($t)||!!Ri["Ideographic Description Characters"]($t)||!!Ri["Vertical Forms"]($t)||Hs.test(String.fromCodePoint($t)));(ZT[zr]||Kr||Ar.imageName||lr!==q.length()-2&&XT[q.getCharCode(lr+1)])&&Ge.push(T0(lr+1,Ft,ut,Ge,YT(zr,q.getCharCode(lr+1),Kr&&Tt),!1))}}var $t;return Rx(T0(q.length(),Ft,ut,Ge,0,!0))}function A0(q){let D=.5,Y=.5;switch(q){case"right":case"top-right":case"bottom-right":D=1;break;case"left":case"top-left":case"bottom-left":D=0}switch(q){case"bottom":case"bottom-right":case"bottom-left":Y=1;break;case"top":case"top-right":case"top-left":Y=0}return{horizontalAlign:D,verticalAlign:Y}}function uv(q,D,Y,pe,Ce){if(!pe&&!Ce)return;let Ue=q[Y],Ge=(q[Y].x+Ue.metrics.advance*Ue.scale)*pe;for(let ut=D;ut<=Y;ut++)q[ut].x-=Ge,q[ut].y+=Ce}function Sg(q,D,Y){let{horizontalAlign:pe,verticalAlign:Ce}=A0(Y),Ue=D[0]-q.displaySize[0]*pe,Ge=D[1]-q.displaySize[1]*Ce;return{image:q,top:Ge,bottom:Ge+q.displaySize[1],left:Ue,right:Ue+q.displaySize[0]}}function Dx(q){var D,Y;let pe=q.left,Ce=q.top,Ue=q.right-pe,Ge=q.bottom-Ce,ut=(D=q.image.textFitWidth)!==null&&D!==void 0?D:"stretchOrShrink",Tt=(Y=q.image.textFitHeight)!==null&&Y!==void 0?Y:"stretchOrShrink",Ft=(q.image.content[2]-q.image.content[0])/(q.image.content[3]-q.image.content[1]);if(Tt==="proportional"){if(ut==="stretchOnly"&&Ue/Ge<Ft||ut==="proportional"){let $t=Math.ceil(Ge*Ft);pe*=$t/Ue,Ue=$t}}else if(ut==="proportional"&&Tt==="stretchOnly"&&Ft!==0&&Ue/Ge>Ft){let $t=Math.ceil(Ue/Ft);Ce*=$t/Ge,Ge=$t}return{x1:pe,y1:Ce,x2:pe+Ue,y2:Ce+Ge}}function zx(q,D,Y,pe,Ce,Ue){let Ge=q.image,ut;if(Ge.content){let za=Ge.content,ja=Ge.pixelRatio||1;ut=[za[0]/ja,za[1]/ja,Ge.displaySize[0]-za[2]/ja,Ge.displaySize[1]-za[3]/ja]}let Tt=D.left*Ue,Ft=D.right*Ue,$t,lr,Ar,zr;Y==="width"||Y==="both"?(zr=Ce[0]+Tt-pe[3],lr=Ce[0]+Ft+pe[1]):(zr=Ce[0]+(Tt+Ft-Ge.displaySize[0])/2,lr=zr+Ge.displaySize[0]);let Kr=D.top*Ue,la=D.bottom*Ue;return Y==="height"||Y==="both"?($t=Ce[1]+Kr-pe[0],Ar=Ce[1]+la+pe[2]):($t=Ce[1]+(Kr+la-Ge.displaySize[1])/2,Ar=$t+Ge.displaySize[1]),{image:Ge,top:$t,right:lr,bottom:Ar,left:zr,collisionPadding:ut}}let Mg=255,yd=128,cv=Mg*yd;function Fx(q,D){let{expression:Y}=D;if(Y.kind==="constant")return{kind:"constant",layoutSize:Y.evaluate(new Ts(q+1))};if(Y.kind==="source")return{kind:"source"};{let{zoomStops:pe,interpolationType:Ce}=Y,Ue=0;for(;Ue<pe.length&&pe[Ue]<=q;)Ue++;Ue=Math.max(0,Ue-1);let Ge=Ue;for(;Ge<pe.length&&pe[Ge]<q+1;)Ge++;Ge=Math.min(pe.length-1,Ge);let ut=pe[Ue],Tt=pe[Ge];return Y.kind==="composite"?{kind:"composite",minZoom:ut,maxZoom:Tt,interpolationType:Ce}:{kind:"camera",minZoom:ut,maxZoom:Tt,minSize:Y.evaluate(new Ts(ut)),maxSize:Y.evaluate(new Ts(Tt)),interpolationType:Ce}}}function I1(q,D,Y){let pe="never",Ce=q.get(D);return Ce?pe=Ce:q.get(Y)&&(pe="always"),pe}let KT=Oa.VectorTileFeature.types,JT=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function S0(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=ut?Math.min(cv,Math.round(ut[0])):0,Kr=ut?Math.min(cv,Math.round(ut[1])):0;q.emplaceBack(D,Y,Math.round(32*pe),Math.round(32*Ce),Ue,Ge,(zr<<1)+(Tt?1:0),Kr,16*Ft,16*$t,256*lr,256*Ar)}function R1(q,D,Y){q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y)}function D1(q){for(let D of q.sections)if(Ao(D.text))return!0;return!1}class z1{constructor(D){this.layoutVertexArray=new ou,this.indexArray=new Re,this.programConfigurations=D,this.segments=new wt,this.dynamicLayoutVertexArray=new Sc,this.opacityVertexArray=new ql,this.hasVisibleVertices=!1,this.placedSymbolArray=new Bn}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0}upload(D,Y,pe,Ce){this.isEmpty()||(pe&&(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,iv.members),this.indexBuffer=D.createIndexBuffer(this.indexArray,Y),this.dynamicLayoutVertexBuffer=D.createVertexBuffer(this.dynamicLayoutVertexArray,im.members,!0),this.opacityVertexBuffer=D.createVertexBuffer(this.opacityVertexArray,JT,!0),this.opacityVertexBuffer.itemSize=1),(pe||Ce)&&this.programConfigurations.upload(D))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())}}ti("SymbolBuffers",z1);class fv{constructor(D,Y,pe){this.layoutVertexArray=new D,this.layoutAttributes=Y,this.indexArray=new pe,this.segments=new wt,this.collisionVertexArray=new de}upload(D){this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=D.createVertexBuffer(this.collisionVertexArray,nm.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())}}ti("CollisionBuffers",fv);class um{constructor(D){this.collisionBoxArray=D.collisionBoxArray,this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Ge=>Ge.id),this.index=D.index,this.pixelRatio=D.pixelRatio,this.sourceLayerIndex=D.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=pn([]),this.placementViewportMatrix=pn([]);let Y=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Fx(this.zoom,Y["text-size"]),this.iconSizeData=Fx(this.zoom,Y["icon-size"]);let pe=this.layers[0].layout,Ce=pe.get("symbol-sort-key"),Ue=pe.get("symbol-z-order");this.canOverlap=I1(pe,"text-overlap","text-allow-overlap")!=="never"||I1(pe,"icon-overlap","icon-allow-overlap")!=="never"||pe.get("text-ignore-placement")||pe.get("icon-ignore-placement"),this.sortFeaturesByKey=Ue!=="viewport-y"&&!Ce.isConstant(),this.sortFeaturesByY=(Ue==="viewport-y"||Ue==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,pe.get("symbol-placement")==="point"&&(this.writingModes=pe.get("text-writing-mode").map(Ge=>e.ah[Ge])),this.stateDependentLayerIds=this.layers.filter(Ge=>Ge.isStateDependent()).map(Ge=>Ge.id),this.sourceID=D.sourceID}createArrays(){this.text=new z1(new Gs(this.layers,this.zoom,D=>/^text/.test(D))),this.icon=new z1(new Gs(this.layers,this.zoom,D=>/^icon/.test(D))),this.glyphOffsetArray=new ts,this.lineVertexArray=new yo,this.symbolInstances=new ho,this.textAnchorOffsets=new ls}calculateGlyphDependencies(D,Y,pe,Ce,Ue){for(let Ge=0;Ge<D.length;Ge++)if(Y[D.charCodeAt(Ge)]=!0,(pe||Ce)&&Ue){let ut=Du[D.charAt(Ge)];ut&&(Y[ut.charCodeAt(0)]=!0)}}populate(D,Y,pe){let Ce=this.layers[0],Ue=Ce.layout,Ge=Ue.get("text-font"),ut=Ue.get("text-field"),Tt=Ue.get("icon-image"),Ft=(ut.value.kind!=="constant"||ut.value.value instanceof pa&&!ut.value.value.isEmpty()||ut.value.value.toString().length>0)&&(Ge.value.kind!=="constant"||Ge.value.value.length>0),$t=Tt.value.kind!=="constant"||!!Tt.value.value||Object.keys(Tt.parameters).length>0,lr=Ue.get("symbol-sort-key");if(this.features=[],!Ft&&!$t)return;let Ar=Y.iconDependencies,zr=Y.glyphDependencies,Kr=Y.availableImages,la=new Ts(this.zoom);for(let{feature:za,id:ja,index:gi,sourceLayerIndex:ei}of D){let hi=Ce._featureFilter.needGeometry,Ei=Dl(za,hi);if(!Ce._featureFilter.filter(la,Ei,pe))continue;let En,fo;if(hi||(Ei.geometry=hl(za)),Ft){let eo=Ce.getValueAndResolveTokens("text-field",Ei,pe,Kr),vn=pa.factory(eo),Uo=this.hasRTLText=this.hasRTLText||D1(vn);(!Uo||js.getRTLTextPluginStatus()==="unavailable"||Uo&&js.isParsed())&&(En=ov(vn,Ce,Ei))}if($t){let eo=Ce.getValueAndResolveTokens("icon-image",Ei,pe,Kr);fo=eo instanceof qa?eo:qa.fromString(eo)}if(!En&&!fo)continue;let ss=this.sortFeaturesByKey?lr.evaluate(Ei,{},pe):void 0;if(this.features.push({id:ja,text:En,icon:fo,index:gi,sourceLayerIndex:ei,geometry:Ei.geometry,properties:za.properties,type:KT[za.type],sortKey:ss}),fo&&(Ar[fo.name]=!0),En){let eo=Ge.evaluate(Ei,{},pe).join(","),vn=Ue.get("text-rotation-alignment")!=="viewport"&&Ue.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(e.ah.vertical)>=0;for(let Uo of En.sections)if(Uo.image)Ar[Uo.image.name]=!0;else{let Mo=co(En.toString()),xo=Uo.fontStack||eo,Yi=zr[xo]=zr[xo]||{};this.calculateGlyphDependencies(Uo.text,Yi,vn,this.allowVerticalPlacement,Mo)}}}Ue.get("symbol-placement")==="line"&&(this.features=function(za){let ja={},gi={},ei=[],hi=0;function Ei(eo){ei.push(za[eo]),hi++}function En(eo,vn,Uo){let Mo=gi[eo];return delete gi[eo],gi[vn]=Mo,ei[Mo].geometry[0].pop(),ei[Mo].geometry[0]=ei[Mo].geometry[0].concat(Uo[0]),Mo}function fo(eo,vn,Uo){let Mo=ja[vn];return delete ja[vn],ja[eo]=Mo,ei[Mo].geometry[0].shift(),ei[Mo].geometry[0]=Uo[0].concat(ei[Mo].geometry[0]),Mo}function ss(eo,vn,Uo){let Mo=Uo?vn[0][vn[0].length-1]:vn[0][0];return`${eo}:${Mo.x}:${Mo.y}`}for(let eo=0;eo<za.length;eo++){let vn=za[eo],Uo=vn.geometry,Mo=vn.text?vn.text.toString():null;if(!Mo){Ei(eo);continue}let xo=ss(Mo,Uo),Yi=ss(Mo,Uo,!0);if(xo in gi&&Yi in ja&&gi[xo]!==ja[Yi]){let Ko=fo(xo,Yi,Uo),bo=En(xo,Yi,ei[Ko].geometry);delete ja[xo],delete gi[Yi],gi[ss(Mo,ei[bo].geometry,!0)]=bo,ei[Ko].geometry=null}else xo in gi?En(xo,Yi,Uo):Yi in ja?fo(xo,Yi,Uo):(Ei(eo),ja[xo]=hi-1,gi[Yi]=hi-1)}return ei.filter(eo=>eo.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((za,ja)=>za.sortKey-ja.sortKey)}update(D,Y,pe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(D,Y,this.layers,pe),this.icon.programConfigurations.updatePaintArrays(D,Y,this.layers,pe))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(D){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(D),this.iconCollisionBox.upload(D)),this.text.upload(D,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(D,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(D,Y){let pe=this.lineVertexArray.length;if(D.segment!==void 0){let Ce=D.dist(Y[D.segment+1]),Ue=D.dist(Y[D.segment]),Ge={};for(let ut=D.segment+1;ut<Y.length;ut++)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ce},ut<Y.length-1&&(Ce+=Y[ut+1].dist(Y[ut]));for(let ut=D.segment||0;ut>=0;ut--)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ue},ut>0&&(Ue+=Y[ut-1].dist(Y[ut]));for(let ut=0;ut<Y.length;ut++){let Tt=Ge[ut];this.lineVertexArray.emplaceBack(Tt.x,Tt.y,Tt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:pe,lineLength:this.lineVertexArray.length-pe}}addSymbols(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=D.indexArray,Kr=D.layoutVertexArray,la=D.segments.prepareSegment(4*Y.length,Kr,zr,this.canOverlap?Ge.sortKey:void 0),za=this.glyphOffsetArray.length,ja=la.vertexLength,gi=this.allowVerticalPlacement&&ut===e.ah.vertical?Math.PI/2:0,ei=Ge.text&&Ge.text.sections;for(let hi=0;hi<Y.length;hi++){let{tl:Ei,tr:En,bl:fo,br:ss,tex:eo,pixelOffsetTL:vn,pixelOffsetBR:Uo,minFontScaleX:Mo,minFontScaleY:xo,glyphOffset:Yi,isSDF:Ko,sectionIndex:bo}=Y[hi],gs=la.vertexLength,_u=Yi[1];S0(Kr,Tt.x,Tt.y,Ei.x,_u+Ei.y,eo.x,eo.y,pe,Ko,vn.x,vn.y,Mo,xo),S0(Kr,Tt.x,Tt.y,En.x,_u+En.y,eo.x+eo.w,eo.y,pe,Ko,Uo.x,vn.y,Mo,xo),S0(Kr,Tt.x,Tt.y,fo.x,_u+fo.y,eo.x,eo.y+eo.h,pe,Ko,vn.x,Uo.y,Mo,xo),S0(Kr,Tt.x,Tt.y,ss.x,_u+ss.y,eo.x+eo.w,eo.y+eo.h,pe,Ko,Uo.x,Uo.y,Mo,xo),R1(D.dynamicLayoutVertexArray,Tt,gi),zr.emplaceBack(gs,gs+1,gs+2),zr.emplaceBack(gs+1,gs+2,gs+3),la.vertexLength+=4,la.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(Yi[0]),hi!==Y.length-1&&bo===Y[hi+1].sectionIndex||D.programConfigurations.populatePaintArrays(Kr.length,Ge,Ge.index,{},Ar,ei&&ei[bo])}D.placedSymbolArray.emplaceBack(Tt.x,Tt.y,za,this.glyphOffsetArray.length-za,ja,Ft,$t,Tt.segment,pe?pe[0]:0,pe?pe[1]:0,Ce[0],Ce[1],ut,0,!1,0,lr)}_addCollisionDebugVertex(D,Y,pe,Ce,Ue,Ge){return Y.emplaceBack(0,0),D.emplaceBack(pe.x,pe.y,Ce,Ue,Math.round(Ge.x),Math.round(Ge.y))}addCollisionDebugVertices(D,Y,pe,Ce,Ue,Ge,ut){let Tt=Ue.segments.prepareSegment(4,Ue.layoutVertexArray,Ue.indexArray),Ft=Tt.vertexLength,$t=Ue.layoutVertexArray,lr=Ue.collisionVertexArray,Ar=ut.anchorX,zr=ut.anchorY;this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(D,Y)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(pe,Y)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(pe,Ce)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(D,Ce)),Tt.vertexLength+=4;let Kr=Ue.indexArray;Kr.emplaceBack(Ft,Ft+1),Kr.emplaceBack(Ft+1,Ft+2),Kr.emplaceBack(Ft+2,Ft+3),Kr.emplaceBack(Ft+3,Ft),Tt.primitiveLength+=4}addDebugCollisionBoxes(D,Y,pe,Ce){for(let Ue=D;Ue<Y;Ue++){let Ge=this.collisionBoxArray.get(Ue);this.addCollisionDebugVertices(Ge.x1,Ge.y1,Ge.x2,Ge.y2,Ce?this.textCollisionBox:this.iconCollisionBox,Ge.anchorPoint,pe)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new fv(Hl,Pv.members,$e),this.iconCollisionBox=new fv(Hl,Pv.members,$e);for(let D=0;D<this.symbolInstances.length;D++){let Y=this.symbolInstances.get(D);this.addDebugCollisionBoxes(Y.textBoxStartIndex,Y.textBoxEndIndex,Y,!0),this.addDebugCollisionBoxes(Y.verticalTextBoxStartIndex,Y.verticalTextBoxEndIndex,Y,!0),this.addDebugCollisionBoxes(Y.iconBoxStartIndex,Y.iconBoxEndIndex,Y,!1),this.addDebugCollisionBoxes(Y.verticalIconBoxStartIndex,Y.verticalIconBoxEndIndex,Y,!1)}}_deserializeCollisionBoxesForSymbol(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t={};for(let lr=Y;lr<pe;lr++){let Ar=D.get(lr);$t.textBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.textFeatureIndex=Ar.featureIndex;break}for(let lr=Ce;lr<Ue;lr++){let Ar=D.get(lr);$t.verticalTextBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.verticalTextFeatureIndex=Ar.featureIndex;break}for(let lr=Ge;lr<ut;lr++){let Ar=D.get(lr);$t.iconBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.iconFeatureIndex=Ar.featureIndex;break}for(let lr=Tt;lr<Ft;lr++){let Ar=D.get(lr);$t.verticalIconBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.verticalIconFeatureIndex=Ar.featureIndex;break}return $t}deserializeCollisionBoxes(D){this.collisionArrays=[];for(let Y=0;Y<this.symbolInstances.length;Y++){let pe=this.symbolInstances.get(Y);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(D,pe.textBoxStartIndex,pe.textBoxEndIndex,pe.verticalTextBoxStartIndex,pe.verticalTextBoxEndIndex,pe.iconBoxStartIndex,pe.iconBoxEndIndex,pe.verticalIconBoxStartIndex,pe.verticalIconBoxEndIndex))}}hasTextData(){return this.text.segments.get().length>0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(D,Y){let pe=D.placedSymbolArray.get(Y),Ce=pe.vertexStartIndex+4*pe.numGlyphs;for(let Ue=pe.vertexStartIndex;Ue<Ce;Ue+=4)D.indexArray.emplaceBack(Ue,Ue+1,Ue+2),D.indexArray.emplaceBack(Ue+1,Ue+2,Ue+3)}getSortedSymbolIndexes(D){if(this.sortedAngle===D&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let Y=Math.sin(D),pe=Math.cos(D),Ce=[],Ue=[],Ge=[];for(let ut=0;ut<this.symbolInstances.length;++ut){Ge.push(ut);let Tt=this.symbolInstances.get(ut);Ce.push(0|Math.round(Y*Tt.anchorX+pe*Tt.anchorY)),Ue.push(Tt.featureIndex)}return Ge.sort((ut,Tt)=>Ce[ut]-Ce[Tt]||Ue[Tt]-Ue[ut]),Ge}addToSortKeyRanges(D,Y){let pe=this.sortKeyRanges[this.sortKeyRanges.length-1];pe&&pe.sortKey===Y?pe.symbolInstanceEnd=D+1:this.sortKeyRanges.push({sortKey:Y,symbolInstanceStart:D,symbolInstanceEnd:D+1})}sortFeatures(D){if(this.sortFeaturesByY&&this.sortedAngle!==D&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(D),this.sortedAngle=D,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let Y of this.symbolInstanceIndexes){let pe=this.symbolInstances.get(Y);this.featureSortOrder.push(pe.featureIndex),[pe.rightJustifiedTextSymbolIndex,pe.centerJustifiedTextSymbolIndex,pe.leftJustifiedTextSymbolIndex].forEach((Ce,Ue,Ge)=>{Ce>=0&&Ge.indexOf(Ce)===Ue&&this.addIndicesForPlacedSymbol(this.text,Ce)}),pe.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,pe.verticalPlacedTextSymbolIndex),pe.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.placedIconSymbolIndex),pe.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let qc,Eg;ti("SymbolBucket",um,{omit:["layers","collisionBoxArray","features","compareText"]}),um.MAX_GLYPHS=65535,um.addDynamicAttributes=R1;var M0={get paint(){return Eg=Eg||new Oe({"icon-opacity":new Po(ie.paint_symbol["icon-opacity"]),"icon-color":new Po(ie.paint_symbol["icon-color"]),"icon-halo-color":new Po(ie.paint_symbol["icon-halo-color"]),"icon-halo-width":new Po(ie.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Po(ie.paint_symbol["icon-halo-blur"]),"icon-translate":new ro(ie.paint_symbol["icon-translate"]),"icon-translate-anchor":new ro(ie.paint_symbol["icon-translate-anchor"]),"text-opacity":new Po(ie.paint_symbol["text-opacity"]),"text-color":new Po(ie.paint_symbol["text-color"],{runtimeType:Ot,getOverride:q=>q.textColor,hasOverride:q=>!!q.textColor}),"text-halo-color":new Po(ie.paint_symbol["text-halo-color"]),"text-halo-width":new Po(ie.paint_symbol["text-halo-width"]),"text-halo-blur":new Po(ie.paint_symbol["text-halo-blur"]),"text-translate":new ro(ie.paint_symbol["text-translate"]),"text-translate-anchor":new ro(ie.paint_symbol["text-translate-anchor"])})},get layout(){return qc=qc||new Oe({"symbol-placement":new ro(ie.layout_symbol["symbol-placement"]),"symbol-spacing":new ro(ie.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ro(ie.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Po(ie.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ro(ie.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ro(ie.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ro(ie.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ro(ie.layout_symbol["icon-ignore-placement"]),"icon-optional":new ro(ie.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ro(ie.layout_symbol["icon-rotation-alignment"]),"icon-size":new Po(ie.layout_symbol["icon-size"]),"icon-text-fit":new ro(ie.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ro(ie.layout_symbol["icon-text-fit-padding"]),"icon-image":new Po(ie.layout_symbol["icon-image"]),"icon-rotate":new Po(ie.layout_symbol["icon-rotate"]),"icon-padding":new Po(ie.layout_symbol["icon-padding"]),"icon-keep-upright":new ro(ie.layout_symbol["icon-keep-upright"]),"icon-offset":new Po(ie.layout_symbol["icon-offset"]),"icon-anchor":new Po(ie.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ro(ie.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ro(ie.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ro(ie.layout_symbol["text-rotation-alignment"]),"text-field":new Po(ie.layout_symbol["text-field"]),"text-font":new Po(ie.layout_symbol["text-font"]),"text-size":new Po(ie.layout_symbol["text-size"]),"text-max-width":new Po(ie.layout_symbol["text-max-width"]),"text-line-height":new ro(ie.layout_symbol["text-line-height"]),"text-letter-spacing":new Po(ie.layout_symbol["text-letter-spacing"]),"text-justify":new Po(ie.layout_symbol["text-justify"]),"text-radial-offset":new Po(ie.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ro(ie.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Po(ie.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Po(ie.layout_symbol["text-anchor"]),"text-max-angle":new ro(ie.layout_symbol["text-max-angle"]),"text-writing-mode":new ro(ie.layout_symbol["text-writing-mode"]),"text-rotate":new Po(ie.layout_symbol["text-rotate"]),"text-padding":new ro(ie.layout_symbol["text-padding"]),"text-keep-upright":new ro(ie.layout_symbol["text-keep-upright"]),"text-transform":new Po(ie.layout_symbol["text-transform"]),"text-offset":new Po(ie.layout_symbol["text-offset"]),"text-allow-overlap":new ro(ie.layout_symbol["text-allow-overlap"]),"text-overlap":new ro(ie.layout_symbol["text-overlap"]),"text-ignore-placement":new ro(ie.layout_symbol["text-ignore-placement"]),"text-optional":new ro(ie.layout_symbol["text-optional"])})}};class kg{constructor(D){if(D.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=D.property.overrides?D.property.overrides.runtimeType:nt,this.defaultValue=D}evaluate(D){if(D.formattedSection){let Y=this.defaultValue.property.overrides;if(Y&&Y.hasOverride(D.formattedSection))return Y.getOverride(D.formattedSection)}return D.feature&&D.featureState?this.defaultValue.evaluate(D.feature,D.featureState):this.defaultValue.property.specification.default}eachChild(D){this.defaultValue.isConstant()||D(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}ti("FormatSectionOverride",kg,{omit:["defaultValue"]});class Dv extends ae{constructor(D){super(D,M0)}recalculate(D,Y){if(super.recalculate(D,Y),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let pe=this.layout.get("text-writing-mode");if(pe){let Ce=[];for(let Ue of pe)Ce.indexOf(Ue)<0&&Ce.push(Ue);this.layout._values["text-writing-mode"]=Ce}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(D,Y,pe,Ce){let Ue=this.layout.get(D).evaluate(Y,{},pe,Ce),Ge=this._unevaluatedLayout._values[D];return Ge.isDataDriven()||xc(Ge.value)||!Ue?Ue:function(ut,Tt){return Tt.replace(/{([^{}]+)}/g,(Ft,$t)=>ut&&$t in ut?String(ut[$t]):"")}(Y.properties,Ue)}createBucket(D){return new um(D)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let D of M0.paint.overridableProperties){if(!Dv.hasPaintOverride(this.layout,D))continue;let Y=this.paint.get(D),pe=new kg(Y),Ce=new Cu(pe,Y.property.specification),Ue=null;Ue=Y.value.kind==="constant"||Y.value.kind==="source"?new Fc("source",Ce):new $u("composite",Ce,Y.value.zoomStops),this.paint._values[D]=new Iu(Y.property,Ue,Y.parameters)}}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!(!this.layout||Y.isDataDriven()||pe.isDataDriven())&&Dv.hasPaintOverride(this.layout,D)}static hasPaintOverride(D,Y){let pe=D.get("text-field"),Ce=M0.paint.properties[Y],Ue=!1,Ge=ut=>{for(let Tt of ut)if(Ce.overrides&&Ce.overrides.hasOverride(Tt))return void(Ue=!0)};if(pe.value.kind==="constant"&&pe.value.value instanceof pa)Ge(pe.value.value.sections);else if(pe.value.kind==="source"){let ut=Ft=>{Ue||(Ft instanceof Er&&mt(Ft.value)===Cr?Ge(Ft.value.sections):Ft instanceof ys?Ge(Ft.sections):Ft.eachChild(ut))},Tt=pe.value;Tt._styleExpression&&ut(Tt._styleExpression.expression)}return Ue}}let Ox;var Cg={get paint(){return Ox=Ox||new Oe({"background-color":new ro(ie.paint_background["background-color"]),"background-pattern":new hc(ie.paint_background["background-pattern"]),"background-opacity":new ro(ie.paint_background["background-opacity"])})}};class $T extends ae{constructor(D){super(D,Cg)}}let F1;var Bx={get paint(){return F1=F1||new Oe({"raster-opacity":new ro(ie.paint_raster["raster-opacity"]),"raster-hue-rotate":new ro(ie.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ro(ie.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ro(ie.paint_raster["raster-brightness-max"]),"raster-saturation":new ro(ie.paint_raster["raster-saturation"]),"raster-contrast":new ro(ie.paint_raster["raster-contrast"]),"raster-resampling":new ro(ie.paint_raster["raster-resampling"]),"raster-fade-duration":new ro(ie.paint_raster["raster-fade-duration"])})}};class Lg extends ae{constructor(D){super(D,Bx)}}class O1 extends ae{constructor(D){super(D,{}),this.onAdd=Y=>{this.implementation.onAdd&&this.implementation.onAdd(Y,Y.painter.context.gl)},this.onRemove=Y=>{this.implementation.onRemove&&this.implementation.onRemove(Y,Y.painter.context.gl)},this.implementation=D}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class B1{constructor(D){this._methodToThrottle=D,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let N1=63710088e-1;class Gd{constructor(D,Y){if(isNaN(D)||isNaN(Y))throw new Error(`Invalid LngLat object: (${D}, ${Y})`);if(this.lng=+D,this.lat=+Y,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Gd(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(D){let Y=Math.PI/180,pe=this.lat*Y,Ce=D.lat*Y,Ue=Math.sin(pe)*Math.sin(Ce)+Math.cos(pe)*Math.cos(Ce)*Math.cos((D.lng-this.lng)*Y);return N1*Math.acos(Math.min(Ue,1))}static convert(D){if(D instanceof Gd)return D;if(Array.isArray(D)&&(D.length===2||D.length===3))return new Gd(Number(D[0]),Number(D[1]));if(!Array.isArray(D)&&typeof D=="object"&&D!==null)return new Gd(Number("lng"in D?D.lng:D.lon),Number(D.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")}}let cm=2*Math.PI*N1;function Nx(q){return cm*Math.cos(q*Math.PI/180)}function E0(q){return(180+q)/360}function Ux(q){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q*Math.PI/360)))/360}function k0(q,D){return q/Nx(D)}function Pg(q){return 360/Math.PI*Math.atan(Math.exp((180-360*q)*Math.PI/180))-90}class Ig{constructor(D,Y,pe=0){this.x=+D,this.y=+Y,this.z=+pe}static fromLngLat(D,Y=0){let pe=Gd.convert(D);return new Ig(E0(pe.lng),Ux(pe.lat),k0(Y,pe.lat))}toLngLat(){return new Gd(360*this.x-180,Pg(this.y))}toAltitude(){return this.z*Nx(Pg(this.y))}meterInMercatorCoordinateUnits(){return 1/cm*(D=Pg(this.y),1/Math.cos(D*Math.PI/180));var D}}function ad(q,D,Y){var pe=2*Math.PI*6378137/256/Math.pow(2,Y);return[q*pe-2*Math.PI*6378137/2,D*pe-2*Math.PI*6378137/2]}class U1{constructor(D,Y,pe){if(!function(Ce,Ue,Ge){return!(Ce<0||Ce>25||Ge<0||Ge>=Math.pow(2,Ce)||Ue<0||Ue>=Math.pow(2,Ce))}(D,Y,pe))throw new Error(`x=${Y}, y=${pe}, z=${D} outside of bounds. 0<=x<${Math.pow(2,D)}, 0<=y<${Math.pow(2,D)} 0<=z<=25 `);this.z=D,this.x=Y,this.y=pe,this.key=Rg(0,D,D,Y,pe)}equals(D){return this.z===D.z&&this.x===D.x&&this.y===D.y}url(D,Y,pe){let Ce=(Ge=this.y,ut=this.z,Tt=ad(256*(Ue=this.x),256*(Ge=Math.pow(2,ut)-Ge-1),ut),Ft=ad(256*(Ue+1),256*(Ge+1),ut),Tt[0]+","+Tt[1]+","+Ft[0]+","+Ft[1]);var Ue,Ge,ut,Tt,Ft;let $t=function(lr,Ar,zr){let Kr,la="";for(let za=lr;za>0;za--)Kr=1<<za-1,la+=(Ar&Kr?1:0)+(zr&Kr?2:0);return la}(this.z,this.x,this.y);return D[(this.x+this.y)%D.length].replace(/{prefix}/g,(this.x%16).toString(16)+(this.y%16).toString(16)).replace(/{z}/g,String(this.z)).replace(/{x}/g,String(this.x)).replace(/{y}/g,String(pe==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace(/{ratio}/g,Y>1?"@2x":"").replace(/{quadkey}/g,$t).replace(/{bbox-epsg-3857}/g,Ce)}isChildOf(D){let Y=this.z-D.z;return Y>0&&D.x===this.x>>Y&&D.y===this.y>>Y}getTilePoint(D){let Y=Math.pow(2,this.z);return new i((D.x*Y-this.x)*ao,(D.y*Y-this.y)*ao)}toString(){return`${this.z}/${this.x}/${this.y}`}}class jx{constructor(D,Y){this.wrap=D,this.canonical=Y,this.key=Rg(D,Y.z,Y.z,Y.x,Y.y)}}class Hp{constructor(D,Y,pe,Ce,Ue){if(D<pe)throw new Error(`overscaledZ should be >= z; overscaledZ = ${D}; z = ${pe}`);this.overscaledZ=D,this.wrap=Y,this.canonical=new U1(pe,+Ce,+Ue),this.key=Rg(Y,D,pe,Ce,Ue)}clone(){return new Hp(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(D){return this.overscaledZ===D.overscaledZ&&this.wrap===D.wrap&&this.canonical.equals(D.canonical)}scaledTo(D){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let Y=this.canonical.z-D;return D>this.canonical.z?new Hp(D,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Hp(D,this.wrap,D,this.canonical.x>>Y,this.canonical.y>>Y)}calculateScaledKey(D,Y){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let pe=this.canonical.z-D;return D>this.canonical.z?Rg(this.wrap*+Y,D,this.canonical.z,this.canonical.x,this.canonical.y):Rg(this.wrap*+Y,D,D,this.canonical.x>>pe,this.canonical.y>>pe)}isChildOf(D){if(D.wrap!==this.wrap)return!1;let Y=this.canonical.z-D.canonical.z;return D.overscaledZ===0||D.overscaledZ<this.overscaledZ&&D.canonical.x===this.canonical.x>>Y&&D.canonical.y===this.canonical.y>>Y}children(D){if(this.overscaledZ>=D)return[new Hp(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let Y=this.canonical.z+1,pe=2*this.canonical.x,Ce=2*this.canonical.y;return[new Hp(Y,this.wrap,Y,pe,Ce),new Hp(Y,this.wrap,Y,pe+1,Ce),new Hp(Y,this.wrap,Y,pe,Ce+1),new Hp(Y,this.wrap,Y,pe+1,Ce+1)]}isLessThan(D){return this.wrap<D.wrap||!(this.wrap>D.wrap)&&(this.overscaledZ<D.overscaledZ||!(this.overscaledZ>D.overscaledZ)&&(this.canonical.x<D.canonical.x||!(this.canonical.x>D.canonical.x)&&this.canonical.y<D.canonical.y))}wrapped(){return new Hp(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)}unwrapTo(D){return new Hp(this.overscaledZ,D,this.canonical.z,this.canonical.x,this.canonical.y)}overscaleFactor(){return Math.pow(2,this.overscaledZ-this.canonical.z)}toUnwrapped(){return new jx(this.wrap,this.canonical)}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`}getTilePoint(D){return this.canonical.getTilePoint(new Ig(D.x-this.wrap,D.y))}}function Rg(q,D,Y,pe,Ce){(q*=2)<0&&(q=-1*q-1);let Ue=1<<Y;return(Ue*Ue*q+Ue*Ce+pe).toString(36)+Y.toString(36)+D.toString(36)}ti("CanonicalTileID",U1),ti("OverscaledTileID",Hp,{omit:["posMatrix"]});class Vx{constructor(D,Y,pe,Ce=1,Ue=1,Ge=1,ut=0){if(this.uid=D,Y.height!==Y.width)throw new RangeError("DEM tiles must be square");if(pe&&!["mapbox","terrarium","custom"].includes(pe))return void f(`"${pe}" is not a valid encoding type. Valid types include "mapbox", "terrarium" and "custom".`);this.stride=Y.height;let Tt=this.dim=Y.height-2;switch(this.data=new Uint32Array(Y.data.buffer),pe){case"terrarium":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case"custom":this.redFactor=Ce,this.greenFactor=Ue,this.blueFactor=Ge,this.baseShift=ut;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4}for(let Ft=0;Ft<Tt;Ft++)this.data[this._idx(-1,Ft)]=this.data[this._idx(0,Ft)],this.data[this._idx(Tt,Ft)]=this.data[this._idx(Tt-1,Ft)],this.data[this._idx(Ft,-1)]=this.data[this._idx(Ft,0)],this.data[this._idx(Ft,Tt)]=this.data[this._idx(Ft,Tt-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(Tt,-1)]=this.data[this._idx(Tt-1,0)],this.data[this._idx(-1,Tt)]=this.data[this._idx(0,Tt-1)],this.data[this._idx(Tt,Tt)]=this.data[this._idx(Tt-1,Tt-1)],this.min=Number.MAX_SAFE_INTEGER,this.max=Number.MIN_SAFE_INTEGER;for(let Ft=0;Ft<Tt;Ft++)for(let $t=0;$t<Tt;$t++){let lr=this.get(Ft,$t);lr>this.max&&(this.max=lr),lr<this.min&&(this.min=lr)}}get(D,Y){let pe=new Uint8Array(this.data.buffer),Ce=4*this._idx(D,Y);return this.unpack(pe[Ce],pe[Ce+1],pe[Ce+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(D,Y){if(D<-1||D>=this.dim+1||Y<-1||Y>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(Y+1)*this.stride+(D+1)}unpack(D,Y,pe){return D*this.redFactor+Y*this.greenFactor+pe*this.blueFactor-this.baseShift}getPixels(){return new wn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(D,Y,pe){if(this.dim!==D.dim)throw new Error("dem dimension mismatch");let Ce=Y*this.dim,Ue=Y*this.dim+this.dim,Ge=pe*this.dim,ut=pe*this.dim+this.dim;switch(Y){case-1:Ce=Ue-1;break;case 1:Ue=Ce+1}switch(pe){case-1:Ge=ut-1;break;case 1:ut=Ge+1}let Tt=-Y*this.dim,Ft=-pe*this.dim;for(let $t=Ge;$t<ut;$t++)for(let lr=Ce;lr<Ue;lr++)this.data[this._idx(lr,$t)]=D.data[this._idx(lr+Tt,$t+Ft)]}}ti("DEMData",Vx);class qx{constructor(D){this._stringToNumber={},this._numberToString=[];for(let Y=0;Y<D.length;Y++){let pe=D[Y];this._stringToNumber[pe]=Y,this._numberToString[Y]=pe}}encode(D){return this._stringToNumber[D]}decode(D){if(D>=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${D} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[D]}}class j1{constructor(D,Y,pe,Ce,Ue){this.type="Feature",this._vectorTileFeature=D,D._z=Y,D._x=pe,D._y=Ce,this.properties=D.properties,this.id=Ue}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(D){this._geometry=D}toJSON(){let D={geometry:this.geometry};for(let Y in this)Y!=="_geometry"&&Y!=="_vectorTileFeature"&&(D[Y]=this[Y]);return D}}class zv{constructor(D,Y){this.tileID=D,this.x=D.canonical.x,this.y=D.canonical.y,this.z=D.canonical.z,this.grid=new _i(ao,16,0),this.grid3D=new _i(ao,16,0),this.featureIndexArray=new Ys,this.promoteId=Y}insert(D,Y,pe,Ce,Ue,Ge){let ut=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(pe,Ce,Ue);let Tt=Ge?this.grid3D:this.grid;for(let Ft=0;Ft<Y.length;Ft++){let $t=Y[Ft],lr=[1/0,1/0,-1/0,-1/0];for(let Ar=0;Ar<$t.length;Ar++){let zr=$t[Ar];lr[0]=Math.min(lr[0],zr.x),lr[1]=Math.min(lr[1],zr.y),lr[2]=Math.max(lr[2],zr.x),lr[3]=Math.max(lr[3],zr.y)}lr[0]<ao&&lr[1]<ao&&lr[2]>=0&&lr[3]>=0&&Tt.insert(ut,lr[0],lr[1],lr[2],lr[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Oa.VectorTile(new C1(this.rawTileData)).layers,this.sourceLayerCoder=new qx(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(D,Y,pe,Ce){this.loadVTLayers();let Ue=D.params||{},Ge=ao/D.tileSize/D.scale,ut=bc(Ue.filter),Tt=D.queryGeometry,Ft=D.queryPadding*Ge,$t=Gx(Tt),lr=this.grid.query($t.minX-Ft,$t.minY-Ft,$t.maxX+Ft,$t.maxY+Ft),Ar=Gx(D.cameraQueryGeometry),zr=this.grid3D.query(Ar.minX-Ft,Ar.minY-Ft,Ar.maxX+Ft,Ar.maxY+Ft,(za,ja,gi,ei)=>function(hi,Ei,En,fo,ss){for(let vn of hi)if(Ei<=vn.x&&En<=vn.y&&fo>=vn.x&&ss>=vn.y)return!0;let eo=[new i(Ei,En),new i(Ei,ss),new i(fo,ss),new i(fo,En)];if(hi.length>2){for(let vn of eo)if(cn(hi,vn))return!0}for(let vn=0;vn<hi.length-1;vn++)if(fn(hi[vn],hi[vn+1],eo))return!0;return!1}(D.cameraQueryGeometry,za-Ft,ja-Ft,gi+Ft,ei+Ft));for(let za of zr)lr.push(za);lr.sort(QT);let Kr={},la;for(let za=0;za<lr.length;za++){let ja=lr[za];if(ja===la)continue;la=ja;let gi=this.featureIndexArray.get(ja),ei=null;this.loadMatchingFeature(Kr,gi.bucketIndex,gi.sourceLayerIndex,gi.featureIndex,ut,Ue.layers,Ue.availableImages,Y,pe,Ce,(hi,Ei,En)=>(ei||(ei=hl(hi)),Ei.queryIntersectsFeature(Tt,hi,En,ei,this.z,D.transform,Ge,D.pixelPosMatrix)))}return Kr}loadMatchingFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=this.bucketLayerIDs[Y];if(Ge&&!function(za,ja){for(let gi=0;gi<za.length;gi++)if(ja.indexOf(za[gi])>=0)return!0;return!1}(Ge,Ar))return;let zr=this.sourceLayerCoder.decode(pe),Kr=this.vtLayers[zr].feature(Ce);if(Ue.needGeometry){let za=Dl(Kr,!0);if(!Ue.filter(new Ts(this.tileID.overscaledZ),za,this.tileID.canonical))return}else if(!Ue.filter(new Ts(this.tileID.overscaledZ),Kr))return;let la=this.getId(Kr,zr);for(let za=0;za<Ar.length;za++){let ja=Ar[za];if(Ge&&Ge.indexOf(ja)<0)continue;let gi=Tt[ja];if(!gi)continue;let ei={};la&&$t&&(ei=$t.getState(gi.sourceLayer||"_geojsonTileLayer",la));let hi=E({},Ft[ja]);hi.paint=Hx(hi.paint,gi.paint,Kr,ei,ut),hi.layout=Hx(hi.layout,gi.layout,Kr,ei,ut);let Ei=!lr||lr(Kr,gi,ei);if(!Ei)continue;let En=new j1(Kr,this.z,this.x,this.y,la);En.layer=hi;let fo=D[ja];fo===void 0&&(fo=D[ja]=[]),fo.push({featureIndex:Ce,feature:En,intersectionZ:Ei})}}lookupSymbolFeatures(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft={};this.loadVTLayers();let $t=bc(Ue);for(let lr of D)this.loadMatchingFeature(Ft,pe,Ce,lr,$t,Ge,ut,Tt,Y);return Ft}hasLayer(D){for(let Y of this.bucketLayerIDs)for(let pe of Y)if(D===pe)return!0;return!1}getId(D,Y){let pe=D.id;return this.promoteId&&(pe=D.properties[typeof this.promoteId=="string"?this.promoteId:this.promoteId[Y]],typeof pe=="boolean"&&(pe=Number(pe))),pe}}function Hx(q,D,Y,pe,Ce){return b(q,(Ue,Ge)=>{let ut=D instanceof Ac?D.get(Ge):null;return ut&&ut.evaluate?ut.evaluate(Y,pe,Ce):ut})}function Gx(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return{minX:D,minY:Y,maxX:pe,maxY:Ce}}function QT(q,D){return D-q}function Wx(q,D,Y,pe,Ce){let Ue=[];for(let Ge=0;Ge<q.length;Ge++){let ut=q[Ge],Tt;for(let Ft=0;Ft<ut.length-1;Ft++){let $t=ut[Ft],lr=ut[Ft+1];$t.x<D&&lr.x<D||($t.x<D?$t=new i(D,$t.y+(D-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x<D&&(lr=new i(D,$t.y+(D-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y<Y&&lr.y<Y||($t.y<Y?$t=new i($t.x+(Y-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Y)._round():lr.y<Y&&(lr=new i($t.x+(Y-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Y)._round()),$t.x>=pe&&lr.x>=pe||($t.x>=pe?$t=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x>=pe&&(lr=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y>=Ce&&lr.y>=Ce||($t.y>=Ce?$t=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round():lr.y>=Ce&&(lr=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round()),Tt&&$t.equals(Tt[Tt.length-1])||(Tt=[$t],Ue.push(Tt)),Tt.push(lr)))))}}return Ue}ti("FeatureIndex",zv,{omit:["rawTileData","sourceLayerCoder"]});class Wd extends i{constructor(D,Y,pe,Ce){super(D,Y),this.angle=pe,Ce!==void 0&&(this.segment=Ce)}clone(){return new Wd(this.x,this.y,this.angle,this.segment)}}function V1(q,D,Y,pe,Ce){if(D.segment===void 0||Y===0)return!0;let Ue=D,Ge=D.segment+1,ut=0;for(;ut>-Y/2;){if(Ge--,Ge<0)return!1;ut-=q[Ge].dist(Ue),Ue=q[Ge]}ut+=q[Ge].dist(q[Ge+1]),Ge++;let Tt=[],Ft=0;for(;ut<Y/2;){let $t=q[Ge],lr=q[Ge+1];if(!lr)return!1;let Ar=q[Ge-1].angleTo($t)-$t.angleTo(lr);for(Ar=Math.abs((Ar+3*Math.PI)%(2*Math.PI)-Math.PI),Tt.push({distance:ut,angleDelta:Ar}),Ft+=Ar;ut-Tt[0].distance>pe;)Ft-=Tt.shift().angleDelta;if(Ft>Ce)return!1;Ge++,ut+=$t.dist(lr)}return!0}function Zx(q){let D=0;for(let Y=0;Y<q.length-1;Y++)D+=q[Y].dist(q[Y+1]);return D}function Xx(q,D,Y){return q?.6*D*Y:0}function Yx(q,D){return Math.max(q?q.right-q.left:0,D?D.right-D.left:0)}function eA(q,D,Y,pe,Ce,Ue){let Ge=Xx(Y,Ce,Ue),ut=Yx(Y,pe)*Ue,Tt=0,Ft=Zx(q)/2;for(let $t=0;$t<q.length-1;$t++){let lr=q[$t],Ar=q[$t+1],zr=lr.dist(Ar);if(Tt+zr>Ft){let Kr=(Ft-Tt)/zr,la=$n.number(lr.x,Ar.x,Kr),za=$n.number(lr.y,Ar.y,Kr),ja=new Wd(la,za,Ar.angleTo(lr),$t);return ja._round(),!Ge||V1(q,ja,ut,Ge,D)?ja:void 0}Tt+=zr}}function tA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Xx(pe,Ue,Ge),$t=Yx(pe,Ce),lr=$t*Ge,Ar=q[0].x===0||q[0].x===Tt||q[0].y===0||q[0].y===Tt;return D-lr<D/4&&(D=lr+D/4),Kx(q,Ar?D/2*ut%D:($t/2+2*Ue)*Ge*ut%D,D,Ft,Y,lr,Ar,!1,Tt)}function Kx(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Ue/2,$t=Zx(q),lr=0,Ar=D-Y,zr=[];for(let Kr=0;Kr<q.length-1;Kr++){let la=q[Kr],za=q[Kr+1],ja=la.dist(za),gi=za.angleTo(la);for(;Ar+Y<lr+ja;){Ar+=Y;let ei=(Ar-lr)/ja,hi=$n.number(la.x,za.x,ei),Ei=$n.number(la.y,za.y,ei);if(hi>=0&&hi<Tt&&Ei>=0&&Ei<Tt&&Ar-Ft>=0&&Ar+Ft<=$t){let En=new Wd(hi,Ei,gi,Kr);En._round(),pe&&!V1(q,En,Ue,pe,Ce)||zr.push(En)}}lr+=ja}return ut||zr.length||Ge||(zr=Kx(q,lr/2,Y,pe,Ce,Ue,Ge,!0,Tt)),zr}ti("Anchor",Wd);let fm=Ph;function Jx(q,D,Y,pe){let Ce=[],Ue=q.image,Ge=Ue.pixelRatio,ut=Ue.paddedRect.w-2*fm,Tt=Ue.paddedRect.h-2*fm,Ft={x1:q.left,y1:q.top,x2:q.right,y2:q.bottom},$t=Ue.stretchX||[[0,ut]],lr=Ue.stretchY||[[0,Tt]],Ar=(Yi,Ko)=>Yi+Ko[1]-Ko[0],zr=$t.reduce(Ar,0),Kr=lr.reduce(Ar,0),la=ut-zr,za=Tt-Kr,ja=0,gi=zr,ei=0,hi=Kr,Ei=0,En=la,fo=0,ss=za;if(Ue.content&&pe){let Yi=Ue.content,Ko=Yi[2]-Yi[0],bo=Yi[3]-Yi[1];(Ue.textFitWidth||Ue.textFitHeight)&&(Ft=Dx(q)),ja=Zd($t,0,Yi[0]),ei=Zd(lr,0,Yi[1]),gi=Zd($t,Yi[0],Yi[2]),hi=Zd(lr,Yi[1],Yi[3]),Ei=Yi[0]-ja,fo=Yi[1]-ei,En=Ko-gi,ss=bo-hi}let eo=Ft.x1,vn=Ft.y1,Uo=Ft.x2-eo,Mo=Ft.y2-vn,xo=(Yi,Ko,bo,gs)=>{let _u=C0(Yi.stretch-ja,gi,Uo,eo),pu=hm(Yi.fixed-Ei,En,Yi.stretch,zr),Bf=C0(Ko.stretch-ei,hi,Mo,vn),Gp=hm(Ko.fixed-fo,ss,Ko.stretch,Kr),dh=C0(bo.stretch-ja,gi,Uo,eo),Nf=hm(bo.fixed-Ei,En,bo.stretch,zr),Yh=C0(gs.stretch-ei,hi,Mo,vn),Kh=hm(gs.fixed-fo,ss,gs.stretch,Kr),Jh=new i(_u,Bf),Hc=new i(dh,Bf),Uf=new i(dh,Yh),Ih=new i(_u,Yh),vh=new i(pu/Ge,Gp/Ge),th=new i(Nf/Ge,Kh/Ge),nf=D*Math.PI/180;if(nf){let Nl=Math.sin(nf),zu=Math.cos(nf),xu=[zu,-Nl,Nl,zu];Jh._matMult(xu),Hc._matMult(xu),Ih._matMult(xu),Uf._matMult(xu)}let Lp=Yi.stretch+Yi.fixed,pp=Ko.stretch+Ko.fixed;return{tl:Jh,tr:Hc,bl:Ih,br:Uf,tex:{x:Ue.paddedRect.x+fm+Lp,y:Ue.paddedRect.y+fm+pp,w:bo.stretch+bo.fixed-Lp,h:gs.stretch+gs.fixed-pp},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:vh,pixelOffsetBR:th,minFontScaleX:En/Ge/Uo,minFontScaleY:ss/Ge/Mo,isSDF:Y}};if(pe&&(Ue.stretchX||Ue.stretchY)){let Yi=$x($t,la,zr),Ko=$x(lr,za,Kr);for(let bo=0;bo<Yi.length-1;bo++){let gs=Yi[bo],_u=Yi[bo+1];for(let pu=0;pu<Ko.length-1;pu++)Ce.push(xo(gs,Ko[pu],_u,Ko[pu+1]))}}else Ce.push(xo({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ut+1},{fixed:0,stretch:Tt+1}));return Ce}function Zd(q,D,Y){let pe=0;for(let Ce of q)pe+=Math.max(D,Math.min(Y,Ce[1]))-Math.max(D,Math.min(Y,Ce[0]));return pe}function $x(q,D,Y){let pe=[{fixed:-fm,stretch:0}];for(let[Ce,Ue]of q){let Ge=pe[pe.length-1];pe.push({fixed:Ce-Ge.stretch,stretch:Ge.stretch}),pe.push({fixed:Ce-Ge.stretch,stretch:Ge.stretch+(Ue-Ce)})}return pe.push({fixed:D+fm,stretch:Y}),pe}function C0(q,D,Y,pe){return q/D*Y+pe}function hm(q,D,Y,pe){return q-D*Y/pe}class hv{constructor(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){var lr;if(this.boxStartIndex=D.length,Ft){let Ar=Ge.top,zr=Ge.bottom,Kr=Ge.collisionPadding;Kr&&(Ar-=Kr[1],zr+=Kr[3]);let la=zr-Ar;la>0&&(la=Math.max(10,la),this.circleDiameter=la)}else{let Ar=!((lr=Ge.image)===null||lr===void 0)&&lr.content&&(Ge.image.textFitWidth||Ge.image.textFitHeight)?Dx(Ge):{x1:Ge.left,y1:Ge.top,x2:Ge.right,y2:Ge.bottom};Ar.y1=Ar.y1*ut-Tt[0],Ar.y2=Ar.y2*ut+Tt[2],Ar.x1=Ar.x1*ut-Tt[3],Ar.x2=Ar.x2*ut+Tt[1];let zr=Ge.collisionPadding;if(zr&&(Ar.x1-=zr[0]*ut,Ar.y1-=zr[1]*ut,Ar.x2+=zr[2]*ut,Ar.y2+=zr[3]*ut),$t){let Kr=new i(Ar.x1,Ar.y1),la=new i(Ar.x2,Ar.y1),za=new i(Ar.x1,Ar.y2),ja=new i(Ar.x2,Ar.y2),gi=$t*Math.PI/180;Kr._rotate(gi),la._rotate(gi),za._rotate(gi),ja._rotate(gi),Ar.x1=Math.min(Kr.x,la.x,za.x,ja.x),Ar.x2=Math.max(Kr.x,la.x,za.x,ja.x),Ar.y1=Math.min(Kr.y,la.y,za.y,ja.y),Ar.y2=Math.max(Kr.y,la.y,za.y,ja.y)}D.emplaceBack(Y.x,Y.y,Ar.x1,Ar.y1,Ar.x2,Ar.y2,pe,Ce,Ue)}this.boxEndIndex=D.length}}class fd{constructor(D=[],Y=(pe,Ce)=>pe<Ce?-1:pe>Ce?1:0){if(this.data=D,this.length=this.data.length,this.compare=Y,this.length>0)for(let pe=(this.length>>1)-1;pe>=0;pe--)this._down(pe)}push(D){this.data.push(D),this._up(this.length++)}pop(){if(this.length===0)return;let D=this.data[0],Y=this.data.pop();return--this.length>0&&(this.data[0]=Y,this._down(0)),D}peek(){return this.data[0]}_up(D){let{data:Y,compare:pe}=this,Ce=Y[D];for(;D>0;){let Ue=D-1>>1,Ge=Y[Ue];if(pe(Ce,Ge)>=0)break;Y[D]=Ge,D=Ue}Y[D]=Ce}_down(D){let{data:Y,compare:pe}=this,Ce=this.length>>1,Ue=Y[D];for(;D<Ce;){let Ge=1+(D<<1),ut=Ge+1;if(ut<this.length&&pe(Y[ut],Y[Ge])<0&&(Ge=ut),pe(Y[Ge],Ue)>=0)break;Y[D]=Y[Ge],D=Ge}Y[D]=Ue}}function rA(q,D=1,Y=!1){let pe=1/0,Ce=1/0,Ue=-1/0,Ge=-1/0,ut=q[0];for(let zr=0;zr<ut.length;zr++){let Kr=ut[zr];(!zr||Kr.x<pe)&&(pe=Kr.x),(!zr||Kr.y<Ce)&&(Ce=Kr.y),(!zr||Kr.x>Ue)&&(Ue=Kr.x),(!zr||Kr.y>Ge)&&(Ge=Kr.y)}let Tt=Math.min(Ue-pe,Ge-Ce),Ft=Tt/2,$t=new fd([],aA);if(Tt===0)return new i(pe,Ce);for(let zr=pe;zr<Ue;zr+=Tt)for(let Kr=Ce;Kr<Ge;Kr+=Tt)$t.push(new pm(zr+Ft,Kr+Ft,Ft,q));let lr=function(zr){let Kr=0,la=0,za=0,ja=zr[0];for(let gi=0,ei=ja.length,hi=ei-1;gi<ei;hi=gi++){let Ei=ja[gi],En=ja[hi],fo=Ei.x*En.y-En.x*Ei.y;la+=(Ei.x+En.x)*fo,za+=(Ei.y+En.y)*fo,Kr+=3*fo}return new pm(la/Kr,za/Kr,0,zr)}(q),Ar=$t.length;for(;$t.length;){let zr=$t.pop();(zr.d>lr.d||!lr.d)&&(lr=zr,Y&&console.log("found best %d after %d probes",Math.round(1e4*zr.d)/1e4,Ar)),zr.max-lr.d<=D||(Ft=zr.h/2,$t.push(new pm(zr.p.x-Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x-Ft,zr.p.y+Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y+Ft,Ft,q)),Ar+=4)}return Y&&(console.log(`num probes: ${Ar}`),console.log(`best distance: ${lr.d}`)),lr.p}function aA(q,D){return D.max-q.max}function pm(q,D,Y,pe){this.p=new i(q,D),this.h=Y,this.d=function(Ce,Ue){let Ge=!1,ut=1/0;for(let Tt=0;Tt<Ue.length;Tt++){let Ft=Ue[Tt];for(let $t=0,lr=Ft.length,Ar=lr-1;$t<lr;Ar=$t++){let zr=Ft[$t],Kr=Ft[Ar];zr.y>Ce.y!=Kr.y>Ce.y&&Ce.x<(Kr.x-zr.x)*(Ce.y-zr.y)/(Kr.y-zr.y)+zr.x&&(Ge=!Ge),ut=Math.min(ut,bi(Ce,zr,Kr))}}return(Ge?1:-1)*Math.sqrt(ut)}(this.p,pe),this.max=this.d+this.h*Math.SQRT2}var ph;e.aq=void 0,(ph=e.aq||(e.aq={}))[ph.center=1]="center",ph[ph.left=2]="left",ph[ph.right=3]="right",ph[ph.top=4]="top",ph[ph.bottom=5]="bottom",ph[ph["top-left"]=6]="top-left",ph[ph["top-right"]=7]="top-right",ph[ph["bottom-left"]=8]="bottom-left",ph[ph["bottom-right"]=9]="bottom-right";let pv=7,Fv=Number.POSITIVE_INFINITY;function q1(q,D){return D[1]!==Fv?function(Y,pe,Ce){let Ue=0,Ge=0;switch(pe=Math.abs(pe),Ce=Math.abs(Ce),Y){case"top-right":case"top-left":case"top":Ge=Ce-pv;break;case"bottom-right":case"bottom-left":case"bottom":Ge=-Ce+pv}switch(Y){case"top-right":case"bottom-right":case"right":Ue=-pe;break;case"top-left":case"bottom-left":case"left":Ue=pe}return[Ue,Ge]}(q,D[0],D[1]):function(Y,pe){let Ce=0,Ue=0;pe<0&&(pe=0);let Ge=pe/Math.SQRT2;switch(Y){case"top-right":case"top-left":Ue=Ge-pv;break;case"bottom-right":case"bottom-left":Ue=-Ge+pv;break;case"bottom":Ue=-pe+pv;break;case"top":Ue=pe-pv}switch(Y){case"top-right":case"bottom-right":Ce=-Ge;break;case"top-left":case"bottom-left":Ce=Ge;break;case"left":Ce=pe;break;case"right":Ce=-pe}return[Ce,Ue]}(q,D[0])}function Qx(q,D,Y){var pe;let Ce=q.layout,Ue=(pe=Ce.get("text-variable-anchor-offset"))===null||pe===void 0?void 0:pe.evaluate(D,{},Y);if(Ue){let ut=Ue.values,Tt=[];for(let Ft=0;Ft<ut.length;Ft+=2){let $t=Tt[Ft]=ut[Ft],lr=ut[Ft+1].map(Ar=>Ar*Bl);$t.startsWith("top")?lr[1]-=pv:$t.startsWith("bottom")&&(lr[1]+=pv),Tt[Ft+1]=lr}return new Fa(Tt)}let Ge=Ce.get("text-variable-anchor");if(Ge){let ut;ut=q._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[Ce.get("text-radial-offset").evaluate(D,{},Y)*Bl,Fv]:Ce.get("text-offset").evaluate(D,{},Y).map(Ft=>Ft*Bl);let Tt=[];for(let Ft of Ge)Tt.push(Ft,q1(Ft,ut));return new Fa(Tt)}return null}function H1(q){switch(q){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function iA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=Ue.textMaxSize.evaluate(D,{});lr===void 0&&(lr=Ge);let Ar=q.layers[0].layout,zr=Ar.get("icon-offset").evaluate(D,{},$t),Kr=tb(Y.horizontal),la=Ge/24,za=q.tilePixelRatio*la,ja=q.tilePixelRatio*lr/24,gi=q.tilePixelRatio*ut,ei=q.tilePixelRatio*Ar.get("symbol-spacing"),hi=Ar.get("text-padding")*q.tilePixelRatio,Ei=function(Yi,Ko,bo,gs=1){let _u=Yi.get("icon-padding").evaluate(Ko,{},bo),pu=_u&&_u.values;return[pu[0]*gs,pu[1]*gs,pu[2]*gs,pu[3]*gs]}(Ar,D,$t,q.tilePixelRatio),En=Ar.get("text-max-angle")/180*Math.PI,fo=Ar.get("text-rotation-alignment")!=="viewport"&&Ar.get("symbol-placement")!=="point",ss=Ar.get("icon-rotation-alignment")==="map"&&Ar.get("symbol-placement")!=="point",eo=Ar.get("symbol-placement"),vn=ei/2,Uo=Ar.get("icon-text-fit"),Mo;pe&&Uo!=="none"&&(q.allowVerticalPlacement&&Y.vertical&&(Mo=zx(pe,Y.vertical,Uo,Ar.get("icon-text-fit-padding"),zr,la)),Kr&&(pe=zx(pe,Kr,Uo,Ar.get("icon-text-fit-padding"),zr,la)));let xo=(Yi,Ko)=>{Ko.x<0||Ko.x>=ao||Ko.y<0||Ko.y>=ao||function(bo,gs,_u,pu,Bf,Gp,dh,Nf,Yh,Kh,Jh,Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl,zu,xu,Pp,Ec,dm){let _d=bo.addToLineVertexArray(gs,_u),hd,Wp,tc,gf,Zp=0,Xd=0,dp=0,vm=0,Y1=-1,R0=-1,xd={},Ov=Xa("");if(bo.allowVerticalPlacement&&pu.vertical){let Rh=Nf.layout.get("text-rotate").evaluate(zu,{},Ec)+90;tc=new hv(Yh,gs,Kh,Jh,Hc,pu.vertical,Uf,Ih,vh,Rh),dh&&(gf=new hv(Yh,gs,Kh,Jh,Hc,dh,nf,Lp,vh,Rh))}if(Bf){let Rh=Nf.layout.get("icon-rotate").evaluate(zu,{}),Xp=Nf.layout.get("icon-text-fit")!=="none",dv=Jx(Bf,Rh,Pp,Xp),$h=dh?Jx(dh,Rh,Pp,Xp):void 0;Wp=new hv(Yh,gs,Kh,Jh,Hc,Bf,nf,Lp,!1,Rh),Zp=4*dv.length;let Dh=bo.iconSizeData,nd=null;Dh.kind==="source"?(nd=[yd*Nf.layout.get("icon-size").evaluate(zu,{})],nd[0]>cv&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)):Dh.kind==="composite"&&(nd=[yd*xu.compositeIconSizes[0].evaluate(zu,{},Ec),yd*xu.compositeIconSizes[1].evaluate(zu,{},Ec)],(nd[0]>cv||nd[1]>cv)&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)),bo.addSymbols(bo.icon,dv,nd,Nl,pp,zu,e.ah.none,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),Y1=bo.icon.placedSymbolArray.length-1,$h&&(Xd=4*$h.length,bo.addSymbols(bo.icon,$h,nd,Nl,pp,zu,e.ah.vertical,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),R0=bo.icon.placedSymbolArray.length-1)}let rh=Object.keys(pu.horizontal);for(let Rh of rh){let Xp=pu.horizontal[Rh];if(!hd){Ov=Xa(Xp.text);let $h=Nf.layout.get("text-rotate").evaluate(zu,{},Ec);hd=new hv(Yh,gs,Kh,Jh,Hc,Xp,Uf,Ih,vh,$h)}let dv=Xp.positionedLines.length===1;if(dp+=eb(bo,gs,Xp,Gp,Nf,vh,zu,th,_d,pu.vertical?e.ah.horizontal:e.ah.horizontalOnly,dv?rh:[Rh],xd,Y1,xu,Ec),dv)break}pu.vertical&&(vm+=eb(bo,gs,pu.vertical,Gp,Nf,vh,zu,th,_d,e.ah.vertical,["vertical"],xd,R0,xu,Ec));let sA=hd?hd.boxStartIndex:bo.collisionBoxArray.length,D0=hd?hd.boxEndIndex:bo.collisionBoxArray.length,bd=tc?tc.boxStartIndex:bo.collisionBoxArray.length,vp=tc?tc.boxEndIndex:bo.collisionBoxArray.length,nb=Wp?Wp.boxStartIndex:bo.collisionBoxArray.length,lA=Wp?Wp.boxEndIndex:bo.collisionBoxArray.length,ob=gf?gf.boxStartIndex:bo.collisionBoxArray.length,uA=gf?gf.boxEndIndex:bo.collisionBoxArray.length,id=-1,Fg=(Rh,Xp)=>Rh&&Rh.circleDiameter?Math.max(Rh.circleDiameter,Xp):Xp;id=Fg(hd,id),id=Fg(tc,id),id=Fg(Wp,id),id=Fg(gf,id);let z0=id>-1?1:0;z0&&(id*=dm/Bl),bo.glyphOffsetArray.length>=um.MAX_GLYPHS&&f("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),zu.sortKey!==void 0&&bo.addToSortKeyRanges(bo.symbolInstances.length,zu.sortKey);let K1=Qx(Nf,zu,Ec),[cA,fA]=function(Rh,Xp){let dv=Rh.length,$h=Xp?.values;if($h?.length>0)for(let Dh=0;Dh<$h.length;Dh+=2){let nd=$h[Dh+1];Rh.emplaceBack(e.aq[$h[Dh]],nd[0],nd[1])}return[dv,Rh.length]}(bo.textAnchorOffsets,K1);bo.symbolInstances.emplaceBack(gs.x,gs.y,xd.right>=0?xd.right:-1,xd.center>=0?xd.center:-1,xd.left>=0?xd.left:-1,xd.vertical||-1,Y1,R0,Ov,sA,D0,bd,vp,nb,lA,ob,uA,Kh,dp,vm,Zp,Xd,z0,0,Uf,id,cA,fA)}(q,Ko,Yi,Y,pe,Ce,Mo,q.layers[0],q.collisionBoxArray,D.index,D.sourceLayerIndex,q.index,za,[hi,hi,hi,hi],fo,Tt,gi,Ei,ss,zr,D,Ue,Ft,$t,Ge)};if(eo==="line")for(let Yi of Wx(D.geometry,0,0,ao,ao)){let Ko=tA(Yi,ei,En,Y.vertical||Kr,pe,24,ja,q.overscaling,ao);for(let bo of Ko)Kr&&nA(q,Kr.text,vn,bo)||xo(Yi,bo)}else if(eo==="line-center"){for(let Yi of D.geometry)if(Yi.length>1){let Ko=eA(Yi,En,Y.vertical||Kr,pe,24,ja);Ko&&xo(Yi,Ko)}}else if(D.type==="Polygon")for(let Yi of Ic(D.geometry,0)){let Ko=rA(Yi,16);xo(Yi[0],new Wd(Ko.x,Ko.y,0))}else if(D.type==="LineString")for(let Yi of D.geometry)xo(Yi,new Wd(Yi[0].x,Yi[0].y,0));else if(D.type==="Point")for(let Yi of D.geometry)for(let Ko of Yi)xo([Ko],new Wd(Ko.x,Ko.y,0))}function eb(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=function(gi,ei,hi,Ei,En,fo,ss,eo){let vn=Ei.layout.get("text-rotate").evaluate(fo,{})*Math.PI/180,Uo=[];for(let Mo of ei.positionedLines)for(let xo of Mo.positionedGlyphs){if(!xo.rect)continue;let Yi=xo.rect||{},Ko=Lx+1,bo=!0,gs=1,_u=0,pu=(En||eo)&&xo.vertical,Bf=xo.metrics.advance*xo.scale/2;if(eo&&ei.verticalizable&&(_u=Mo.lineOffset/2-(xo.imageName?-(Bl-xo.metrics.width*xo.scale)/2:(xo.scale-1)*Bl)),xo.imageName){let Nl=ss[xo.imageName];bo=Nl.sdf,gs=Nl.pixelRatio,Ko=Ph/gs}let Gp=En?[xo.x+Bf,xo.y]:[0,0],dh=En?[0,0]:[xo.x+Bf+hi[0],xo.y+hi[1]-_u],Nf=[0,0];pu&&(Nf=dh,dh=[0,0]);let Yh=xo.metrics.isDoubleResolution?2:1,Kh=(xo.metrics.left-Ko)*xo.scale-Bf+dh[0],Jh=(-xo.metrics.top-Ko)*xo.scale+dh[1],Hc=Kh+Yi.w/Yh*xo.scale/gs,Uf=Jh+Yi.h/Yh*xo.scale/gs,Ih=new i(Kh,Jh),vh=new i(Hc,Jh),th=new i(Kh,Uf),nf=new i(Hc,Uf);if(pu){let Nl=new i(-Bf,Bf-Of),zu=-Math.PI/2,xu=Bl/2-Bf,Pp=new i(5-Of-xu,-(xo.imageName?xu:0)),Ec=new i(...Nf);Ih._rotateAround(zu,Nl)._add(Pp)._add(Ec),vh._rotateAround(zu,Nl)._add(Pp)._add(Ec),th._rotateAround(zu,Nl)._add(Pp)._add(Ec),nf._rotateAround(zu,Nl)._add(Pp)._add(Ec)}if(vn){let Nl=Math.sin(vn),zu=Math.cos(vn),xu=[zu,-Nl,Nl,zu];Ih._matMult(xu),vh._matMult(xu),th._matMult(xu),nf._matMult(xu)}let Lp=new i(0,0),pp=new i(0,0);Uo.push({tl:Ih,tr:vh,bl:th,br:nf,tex:Yi,writingMode:ei.writingMode,glyphOffset:Gp,sectionIndex:xo.sectionIndex,isSDF:bo,pixelOffsetTL:Lp,pixelOffsetBR:pp,minFontScaleX:0,minFontScaleY:0})}return Uo}(0,Y,ut,Ce,Ue,Ge,pe,q.allowVerticalPlacement),za=q.textSizeData,ja=null;za.kind==="source"?(ja=[yd*Ce.layout.get("text-size").evaluate(Ge,{})],ja[0]>cv&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)):za.kind==="composite"&&(ja=[yd*zr.compositeTextSizes[0].evaluate(Ge,{},Kr),yd*zr.compositeTextSizes[1].evaluate(Ge,{},Kr)],(ja[0]>cv||ja[1]>cv)&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)),q.addSymbols(q.text,la,ja,ut,Ue,Ge,Ft,D,Tt.lineStartIndex,Tt.lineLength,Ar,Kr);for(let gi of $t)lr[gi]=q.text.placedSymbolArray.length-1;return 4*la.length}function tb(q){for(let D in q)return q[D];return null}function nA(q,D,Y,pe){let Ce=q.compareText;if(D in Ce){let Ue=Ce[D];for(let Ge=Ue.length-1;Ge>=0;Ge--)if(pe.dist(Ue[Ge])<Y)return!0}else Ce[D]=[];return Ce[D].push(pe),!1}let rb=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class G1{static from(D){if(!(D instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[Y,pe]=new Uint8Array(D,0,2);if(Y!==219)throw new Error("Data does not appear to be in a KDBush format.");let Ce=pe>>4;if(Ce!==1)throw new Error(`Got v${Ce} data when expected v1.`);let Ue=rb[15&pe];if(!Ue)throw new Error("Unrecognized array type.");let[Ge]=new Uint16Array(D,2,1),[ut]=new Uint32Array(D,4,1);return new G1(ut,Ge,Ue,D)}constructor(D,Y=64,pe=Float64Array,Ce){if(isNaN(D)||D<0)throw new Error(`Unpexpected numItems value: ${D}.`);this.numItems=+D,this.nodeSize=Math.min(Math.max(+Y,2),65535),this.ArrayType=pe,this.IndexArrayType=D<65536?Uint16Array:Uint32Array;let Ue=rb.indexOf(this.ArrayType),Ge=2*D*this.ArrayType.BYTES_PER_ELEMENT,ut=D*this.IndexArrayType.BYTES_PER_ELEMENT,Tt=(8-ut%8)%8;if(Ue<0)throw new Error(`Unexpected typed array class: ${pe}.`);Ce&&Ce instanceof ArrayBuffer?(this.data=Ce,this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=2*D,this._finished=!0):(this.data=new ArrayBuffer(8+Ge+ut+Tt),this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+Ue]),new Uint16Array(this.data,2,1)[0]=Y,new Uint32Array(this.data,4,1)[0]=D)}add(D,Y){let pe=this._pos>>1;return this.ids[pe]=pe,this.coords[this._pos++]=D,this.coords[this._pos++]=Y,pe}finish(){let D=this._pos>>1;if(D!==this.numItems)throw new Error(`Added ${D} items when expected ${this.numItems}.`);return L0(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(D,Y,pe,Ce){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ue,coords:Ge,nodeSize:ut}=this,Tt=[0,Ue.length-1,0],Ft=[];for(;Tt.length;){let $t=Tt.pop()||0,lr=Tt.pop()||0,Ar=Tt.pop()||0;if(lr-Ar<=ut){for(let za=Ar;za<=lr;za++){let ja=Ge[2*za],gi=Ge[2*za+1];ja>=D&&ja<=pe&&gi>=Y&&gi<=Ce&&Ft.push(Ue[za])}continue}let zr=Ar+lr>>1,Kr=Ge[2*zr],la=Ge[2*zr+1];Kr>=D&&Kr<=pe&&la>=Y&&la<=Ce&&Ft.push(Ue[zr]),($t===0?D<=Kr:Y<=la)&&(Tt.push(Ar),Tt.push(zr-1),Tt.push(1-$t)),($t===0?pe>=Kr:Ce>=la)&&(Tt.push(zr+1),Tt.push(lr),Tt.push(1-$t))}return Ft}within(D,Y,pe){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ce,coords:Ue,nodeSize:Ge}=this,ut=[0,Ce.length-1,0],Tt=[],Ft=pe*pe;for(;ut.length;){let $t=ut.pop()||0,lr=ut.pop()||0,Ar=ut.pop()||0;if(lr-Ar<=Ge){for(let za=Ar;za<=lr;za++)ib(Ue[2*za],Ue[2*za+1],D,Y)<=Ft&&Tt.push(Ce[za]);continue}let zr=Ar+lr>>1,Kr=Ue[2*zr],la=Ue[2*zr+1];ib(Kr,la,D,Y)<=Ft&&Tt.push(Ce[zr]),($t===0?D-pe<=Kr:Y-pe<=la)&&(ut.push(Ar),ut.push(zr-1),ut.push(1-$t)),($t===0?D+pe>=Kr:Y+pe>=la)&&(ut.push(zr+1),ut.push(lr),ut.push(1-$t))}return Tt}}function L0(q,D,Y,pe,Ce,Ue){if(Ce-pe<=Y)return;let Ge=pe+Ce>>1;ab(q,D,Ge,pe,Ce,Ue),L0(q,D,Y,pe,Ge-1,1-Ue),L0(q,D,Y,Ge+1,Ce,1-Ue)}function ab(q,D,Y,pe,Ce,Ue){for(;Ce>pe;){if(Ce-pe>600){let Ft=Ce-pe+1,$t=Y-pe+1,lr=Math.log(Ft),Ar=.5*Math.exp(2*lr/3),zr=.5*Math.sqrt(lr*Ar*(Ft-Ar)/Ft)*($t-Ft/2<0?-1:1);ab(q,D,Y,Math.max(pe,Math.floor(Y-$t*Ar/Ft+zr)),Math.min(Ce,Math.floor(Y+(Ft-$t)*Ar/Ft+zr)),Ue)}let Ge=D[2*Y+Ue],ut=pe,Tt=Ce;for(Dg(q,D,pe,Y),D[2*Ce+Ue]>Ge&&Dg(q,D,pe,Ce);ut<Tt;){for(Dg(q,D,ut,Tt),ut++,Tt--;D[2*ut+Ue]<Ge;)ut++;for(;D[2*Tt+Ue]>Ge;)Tt--}D[2*pe+Ue]===Ge?Dg(q,D,pe,Tt):(Tt++,Dg(q,D,Tt,Ce)),Tt<=Y&&(pe=Tt+1),Y<=Tt&&(Ce=Tt-1)}}function Dg(q,D,Y,pe){W1(q,Y,pe),W1(D,2*Y,2*pe),W1(D,2*Y+1,2*pe+1)}function W1(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}function ib(q,D,Y,pe){let Ce=q-Y,Ue=D-pe;return Ce*Ce+Ue*Ue}var P0;e.bg=void 0,(P0=e.bg||(e.bg={})).create="create",P0.load="load",P0.fullLoad="fullLoad";let zg=null,Mf=[],Z1=1e3/60,X1="loadTime",I0="fullLoadTime",oA={mark(q){performance.mark(q)},frame(q){let D=q;zg!=null&&Mf.push(D-zg),zg=D},clearMetrics(){zg=null,Mf=[],performance.clearMeasures(X1),performance.clearMeasures(I0);for(let q in e.bg)performance.clearMarks(e.bg[q])},getPerformanceMetrics(){performance.measure(X1,e.bg.create,e.bg.load),performance.measure(I0,e.bg.create,e.bg.fullLoad);let q=performance.getEntriesByName(X1)[0].duration,D=performance.getEntriesByName(I0)[0].duration,Y=Mf.length,pe=1/(Mf.reduce((Ue,Ge)=>Ue+Ge,0)/Y/1e3),Ce=Mf.filter(Ue=>Ue>Z1).reduce((Ue,Ge)=>Ue+(Ge-Z1)/Z1,0);return{loadTime:q,fullLoadTime:D,fps:pe,percentDroppedFrames:Ce/(Y+Ce)*100,totalFrames:Y}}};e.$=class extends cr{},e.A=tn,e.B=yi,e.C=function(q){if(z==null){let D=q.navigator?q.navigator.userAgent:null;z=!!q.safari||!(!D||!(/\b(iPad|iPhone|iPod)\b/.test(D)||D.match("Safari")&&!D.match("Chrome")))}return z},e.D=ro,e.E=ee,e.F=class{constructor(q,D){this.target=q,this.mapId=D,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new B1(()=>this.process()),this.subscription=function(Y,pe,Ce,Ue){return Y.addEventListener(pe,Ce,!1),{unsubscribe:()=>{Y.removeEventListener(pe,Ce,!1)}}}(this.target,"message",Y=>this.receive(Y)),this.globalScope=L(self)?q:window}registerMessageHandler(q,D){this.messageHandlers[q]=D}sendAsync(q,D){return new Promise((Y,pe)=>{let Ce=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[Ce]={resolve:Y,reject:pe},D&&D.signal.addEventListener("abort",()=>{delete this.resolveRejects[Ce];let ut={id:Ce,type:"<cancel>",origin:location.origin,targetMapId:q.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ut)},{once:!0});let Ue=[],Ge=Object.assign(Object.assign({},q),{id:Ce,sourceMapId:this.mapId,origin:location.origin,data:Jn(q.data,Ue)});this.target.postMessage(Ge,{transfer:Ue})})}receive(q){let D=q.data,Y=D.id;if(!(D.origin!=="file://"&&location.origin!=="file://"&&D.origin!=="resource://android"&&location.origin!=="resource://android"&&D.origin!==location.origin||D.targetMapId&&this.mapId!==D.targetMapId)){if(D.type==="<cancel>"){delete this.tasks[Y];let pe=this.abortControllers[Y];return delete this.abortControllers[Y],void(pe&&pe.abort())}if(L(self)||D.mustQueue)return this.tasks[Y]=D,this.taskQueue.push(Y),void this.invoker.trigger();this.processTask(Y,D)}}process(){if(this.taskQueue.length===0)return;let q=this.taskQueue.shift(),D=this.tasks[q];delete this.tasks[q],this.taskQueue.length>0&&this.invoker.trigger(),D&&this.processTask(q,D)}processTask(q,D){return t(this,void 0,void 0,function*(){if(D.type==="<response>"){let Ce=this.resolveRejects[q];return delete this.resolveRejects[q],Ce?void(D.error?Ce.reject(no(D.error)):Ce.resolve(no(D.data))):void 0}if(!this.messageHandlers[D.type])return void this.completeTask(q,new Error(`Could not find a registered handler for ${D.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let Y=no(D.data),pe=new AbortController;this.abortControllers[q]=pe;try{let Ce=yield this.messageHandlers[D.type](D.sourceMapId,Y,pe);this.completeTask(q,null,Ce)}catch(Ce){this.completeTask(q,Ce)}})}completeTask(q,D,Y){let pe=[];delete this.abortControllers[q];let Ce={id:q,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:D?Jn(D):null,data:Jn(Y,pe)};this.target.postMessage(Ce,{transfer:pe})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},e.G=se,e.H=function(){var q=new tn(16);return tn!=Float32Array&&(q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=0,q[12]=0,q[13]=0,q[14]=0),q[0]=1,q[5]=1,q[10]=1,q[15]=1,q},e.I=x0,e.J=function(q,D,Y){var pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la=Y[0],za=Y[1],ja=Y[2];return D===q?(q[12]=D[0]*la+D[4]*za+D[8]*ja+D[12],q[13]=D[1]*la+D[5]*za+D[9]*ja+D[13],q[14]=D[2]*la+D[6]*za+D[10]*ja+D[14],q[15]=D[3]*la+D[7]*za+D[11]*ja+D[15]):(Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],q[0]=pe=D[0],q[1]=Ce,q[2]=Ue,q[3]=Ge,q[4]=ut,q[5]=Tt,q[6]=Ft,q[7]=$t,q[8]=lr,q[9]=Ar,q[10]=zr,q[11]=Kr,q[12]=pe*la+ut*za+lr*ja+D[12],q[13]=Ce*la+Tt*za+Ar*ja+D[13],q[14]=Ue*la+Ft*za+zr*ja+D[14],q[15]=Ge*la+$t*za+Kr*ja+D[15]),q},e.K=function(q,D,Y){var pe=Y[0],Ce=Y[1],Ue=Y[2];return q[0]=D[0]*pe,q[1]=D[1]*pe,q[2]=D[2]*pe,q[3]=D[3]*pe,q[4]=D[4]*Ce,q[5]=D[5]*Ce,q[6]=D[6]*Ce,q[7]=D[7]*Ce,q[8]=D[8]*Ue,q[9]=D[9]*Ue,q[10]=D[10]*Ue,q[11]=D[11]*Ue,q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.L=qi,e.M=function(q,D){let Y={};for(let pe=0;pe<D.length;pe++){let Ce=D[pe];Ce in q&&(Y[Ce]=q[Ce])}return Y},e.N=Gd,e.O=E0,e.P=i,e.Q=Ux,e.R=wn,e.S=Hp,e.T=ec,e.U=p,e.V=T,e.W=O,e.X=ao,e.Y=ft,e.Z=Ig,e._=t,e.a=Q,e.a$=function(q,D){var Y=q[0],pe=q[1],Ce=q[2],Ue=q[3],Ge=q[4],ut=q[5],Tt=q[6],Ft=q[7],$t=q[8],lr=q[9],Ar=q[10],zr=q[11],Kr=q[12],la=q[13],za=q[14],ja=q[15],gi=D[0],ei=D[1],hi=D[2],Ei=D[3],En=D[4],fo=D[5],ss=D[6],eo=D[7],vn=D[8],Uo=D[9],Mo=D[10],xo=D[11],Yi=D[12],Ko=D[13],bo=D[14],gs=D[15];return Math.abs(Y-gi)<=Mi*Math.max(1,Math.abs(Y),Math.abs(gi))&&Math.abs(pe-ei)<=Mi*Math.max(1,Math.abs(pe),Math.abs(ei))&&Math.abs(Ce-hi)<=Mi*Math.max(1,Math.abs(Ce),Math.abs(hi))&&Math.abs(Ue-Ei)<=Mi*Math.max(1,Math.abs(Ue),Math.abs(Ei))&&Math.abs(Ge-En)<=Mi*Math.max(1,Math.abs(Ge),Math.abs(En))&&Math.abs(ut-fo)<=Mi*Math.max(1,Math.abs(ut),Math.abs(fo))&&Math.abs(Tt-ss)<=Mi*Math.max(1,Math.abs(Tt),Math.abs(ss))&&Math.abs(Ft-eo)<=Mi*Math.max(1,Math.abs(Ft),Math.abs(eo))&&Math.abs($t-vn)<=Mi*Math.max(1,Math.abs($t),Math.abs(vn))&&Math.abs(lr-Uo)<=Mi*Math.max(1,Math.abs(lr),Math.abs(Uo))&&Math.abs(Ar-Mo)<=Mi*Math.max(1,Math.abs(Ar),Math.abs(Mo))&&Math.abs(zr-xo)<=Mi*Math.max(1,Math.abs(zr),Math.abs(xo))&&Math.abs(Kr-Yi)<=Mi*Math.max(1,Math.abs(Kr),Math.abs(Yi))&&Math.abs(la-Ko)<=Mi*Math.max(1,Math.abs(la),Math.abs(Ko))&&Math.abs(za-bo)<=Mi*Math.max(1,Math.abs(za),Math.abs(bo))&&Math.abs(ja-gs)<=Mi*Math.max(1,Math.abs(ja),Math.abs(gs))},e.a0=wt,e.a1=U1,e.a2=ge,e.a3=q=>{let D=window.document.createElement("video");return D.muted=!0,new Promise(Y=>{D.onloadstart=()=>{Y(D)};for(let pe of q){let Ce=window.document.createElement("source");J(pe)||(D.crossOrigin="Anonymous"),Ce.src=pe,D.appendChild(Ce)}})},e.a4=function(){return m++},e.a5=Ci,e.a6=um,e.a7=bc,e.a8=Dl,e.a9=j1,e.aA=function(q){if(q.type==="custom")return new O1(q);switch(q.type){case"background":return new $T(q);case"circle":return new Zi(q);case"fill":return new Gr(q);case"fill-extrusion":return new Sp(q);case"heatmap":return new os(q);case"hillshade":return new Uc(q);case"line":return new Lv(q);case"raster":return new Lg(q);case"symbol":return new Dv(q)}},e.aB=u,e.aC=function(q,D){if(!q)return[{command:"setStyle",args:[D]}];let Y=[];try{if(!Ae(q.version,D.version))return[{command:"setStyle",args:[D]}];Ae(q.center,D.center)||Y.push({command:"setCenter",args:[D.center]}),Ae(q.zoom,D.zoom)||Y.push({command:"setZoom",args:[D.zoom]}),Ae(q.bearing,D.bearing)||Y.push({command:"setBearing",args:[D.bearing]}),Ae(q.pitch,D.pitch)||Y.push({command:"setPitch",args:[D.pitch]}),Ae(q.sprite,D.sprite)||Y.push({command:"setSprite",args:[D.sprite]}),Ae(q.glyphs,D.glyphs)||Y.push({command:"setGlyphs",args:[D.glyphs]}),Ae(q.transition,D.transition)||Y.push({command:"setTransition",args:[D.transition]}),Ae(q.light,D.light)||Y.push({command:"setLight",args:[D.light]}),Ae(q.terrain,D.terrain)||Y.push({command:"setTerrain",args:[D.terrain]}),Ae(q.sky,D.sky)||Y.push({command:"setSky",args:[D.sky]}),Ae(q.projection,D.projection)||Y.push({command:"setProjection",args:[D.projection]});let pe={},Ce=[];(function(Ge,ut,Tt,Ft){let $t;for($t in ut=ut||{},Ge=Ge||{})Object.prototype.hasOwnProperty.call(Ge,$t)&&(Object.prototype.hasOwnProperty.call(ut,$t)||Ze($t,Tt,Ft));for($t in ut)Object.prototype.hasOwnProperty.call(ut,$t)&&(Object.prototype.hasOwnProperty.call(Ge,$t)?Ae(Ge[$t],ut[$t])||(Ge[$t].type==="geojson"&&ut[$t].type==="geojson"&&it(Ge,ut,$t)?Be(Tt,{command:"setGeoJSONSourceData",args:[$t,ut[$t].data]}):at($t,ut,Tt,Ft)):Ie($t,ut,Tt))})(q.sources,D.sources,Ce,pe);let Ue=[];q.layers&&q.layers.forEach(Ge=>{"source"in Ge&&pe[Ge.source]?Y.push({command:"removeLayer",args:[Ge.id]}):Ue.push(Ge)}),Y=Y.concat(Ce),function(Ge,ut,Tt){ut=ut||[];let Ft=(Ge=Ge||[]).map(lt),$t=ut.map(lt),lr=Ge.reduce(Me,{}),Ar=ut.reduce(Me,{}),zr=Ft.slice(),Kr=Object.create(null),la,za,ja,gi,ei;for(let hi=0,Ei=0;hi<Ft.length;hi++)la=Ft[hi],Object.prototype.hasOwnProperty.call(Ar,la)?Ei++:(Be(Tt,{command:"removeLayer",args:[la]}),zr.splice(zr.indexOf(la,Ei),1));for(let hi=0,Ei=0;hi<$t.length;hi++)la=$t[$t.length-1-hi],zr[zr.length-1-hi]!==la&&(Object.prototype.hasOwnProperty.call(lr,la)?(Be(Tt,{command:"removeLayer",args:[la]}),zr.splice(zr.lastIndexOf(la,zr.length-Ei),1)):Ei++,gi=zr[zr.length-hi],Be(Tt,{command:"addLayer",args:[Ar[la],gi]}),zr.splice(zr.length-hi,0,la),Kr[la]=!0);for(let hi=0;hi<$t.length;hi++)if(la=$t[hi],za=lr[la],ja=Ar[la],!Kr[la]&&!Ae(za,ja))if(Ae(za.source,ja.source)&&Ae(za["source-layer"],ja["source-layer"])&&Ae(za.type,ja.type)){for(ei in et(za.layout,ja.layout,Tt,la,null,"setLayoutProperty"),et(za.paint,ja.paint,Tt,la,null,"setPaintProperty"),Ae(za.filter,ja.filter)||Be(Tt,{command:"setFilter",args:[la,ja.filter]}),Ae(za.minzoom,ja.minzoom)&&Ae(za.maxzoom,ja.maxzoom)||Be(Tt,{command:"setLayerZoomRange",args:[la,ja.minzoom,ja.maxzoom]}),za)Object.prototype.hasOwnProperty.call(za,ei)&&ei!=="layout"&&ei!=="paint"&&ei!=="filter"&&ei!=="metadata"&&ei!=="minzoom"&&ei!=="maxzoom"&&(ei.indexOf("paint.")===0?et(za[ei],ja[ei],Tt,la,ei.slice(6),"setPaintProperty"):Ae(za[ei],ja[ei])||Be(Tt,{command:"setLayerProperty",args:[la,ei,ja[ei]]}));for(ei in ja)Object.prototype.hasOwnProperty.call(ja,ei)&&!Object.prototype.hasOwnProperty.call(za,ei)&&ei!=="layout"&&ei!=="paint"&&ei!=="filter"&&ei!=="metadata"&&ei!=="minzoom"&&ei!=="maxzoom"&&(ei.indexOf("paint.")===0?et(za[ei],ja[ei],Tt,la,ei.slice(6),"setPaintProperty"):Ae(za[ei],ja[ei])||Be(Tt,{command:"setLayerProperty",args:[la,ei,ja[ei]]}))}else Be(Tt,{command:"removeLayer",args:[la]}),gi=zr[zr.lastIndexOf(la)+1],Be(Tt,{command:"addLayer",args:[ja,gi]})}(Ue,D.layers,Y)}catch(pe){console.warn("Unable to compute style diff:",pe),Y=[{command:"setStyle",args:[D]}]}return Y},e.aD=function(q){let D=[],Y=q.id;return Y===void 0&&D.push({message:`layers.${Y}: missing required property "id"`}),q.render===void 0&&D.push({message:`layers.${Y}: missing required method "render"`}),q.renderingMode&&q.renderingMode!=="2d"&&q.renderingMode!=="3d"&&D.push({message:`layers.${Y}: property "renderingMode" must be either "2d" or "3d"`}),D},e.aE=function q(D,Y){if(Array.isArray(D)){if(!Array.isArray(Y)||D.length!==Y.length)return!1;for(let pe=0;pe<D.length;pe++)if(!q(D[pe],Y[pe]))return!1;return!0}if(typeof D=="object"&&D!==null&&Y!==null){if(typeof Y!="object"||Object.keys(D).length!==Object.keys(Y).length)return!1;for(let pe in D)if(!q(D[pe],Y[pe]))return!1;return!0}return D===Y},e.aF=b,e.aG=d,e.aH=class extends Ya{constructor(q,D){super(q,D),this.current=0}set(q){this.current!==q&&(this.current=q,this.gl.uniform1i(this.location,q))}},e.aI=Da,e.aJ=class extends Ya{constructor(q,D){super(q,D),this.current=Qi}set(q){if(q[12]!==this.current[12]||q[0]!==this.current[0])return this.current=q,void this.gl.uniformMatrix4fv(this.location,!1,q);for(let D=1;D<16;D++)if(q[D]!==this.current[D]){this.current=q,this.gl.uniformMatrix4fv(this.location,!1,q);break}}},e.aK=zi,e.aL=Ni,e.aM=Ut,e.aN=class extends Ya{constructor(q,D){super(q,D),this.current=[0,0,0]}set(q){q[0]===this.current[0]&&q[1]===this.current[1]&&q[2]===this.current[2]||(this.current=q,this.gl.uniform3f(this.location,q[0],q[1],q[2]))}},e.aO=class extends Ya{constructor(q,D){super(q,D),this.current=[0,0]}set(q){q[0]===this.current[0]&&q[1]===this.current[1]||(this.current=q,this.gl.uniform2f(this.location,q[0],q[1]))}},e.aP=function(q,D,Y,pe,Ce,Ue,Ge){var ut=1/(D-Y),Tt=1/(pe-Ce),Ft=1/(Ue-Ge);return q[0]=-2*ut,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=-2*Tt,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=2*Ft,q[11]=0,q[12]=(D+Y)*ut,q[13]=(Ce+pe)*Tt,q[14]=(Ge+Ue)*Ft,q[15]=1,q},e.aQ=bn,e.aR=class extends Pt{},e.aS=nv,e.aT=class extends nr{},e.aU=Xo,e.aV=function(q){return q<=1?1:Math.pow(2,Math.ceil(Math.log(q)/Math.LN2))},e.aW=oo,e.aX=Zo,e.aY=Re,e.aZ=class extends Ja{},e.a_=function(q,D){return q[0]===D[0]&&q[1]===D[1]&&q[2]===D[2]&&q[3]===D[3]&&q[4]===D[4]&&q[5]===D[5]&&q[6]===D[6]&&q[7]===D[7]&&q[8]===D[8]&&q[9]===D[9]&&q[10]===D[10]&&q[11]===D[11]&&q[12]===D[12]&&q[13]===D[13]&&q[14]===D[14]&&q[15]===D[15]},e.aa=function(q){let D={};if(q.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(Y,pe,Ce,Ue)=>{let Ge=Ce||Ue;return D[pe]=!Ge||Ge.toLowerCase(),""}),D["max-age"]){let Y=parseInt(D["max-age"],10);isNaN(Y)?delete D["max-age"]:D["max-age"]=Y}return D},e.ab=function(q,D){let Y=[];for(let pe in q)pe in D||Y.push(pe);return Y},e.ac=w,e.ad=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[0],Ge=D[1],ut=D[2],Tt=D[3],Ft=D[4],$t=D[5],lr=D[6],Ar=D[7];return D!==q&&(q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[0]=Ue*Ce+Ft*pe,q[1]=Ge*Ce+$t*pe,q[2]=ut*Ce+lr*pe,q[3]=Tt*Ce+Ar*pe,q[4]=Ft*Ce-Ue*pe,q[5]=$t*Ce-Ge*pe,q[6]=lr*Ce-ut*pe,q[7]=Ar*Ce-Tt*pe,q},e.ae=function(q){var D=new tn(16);return D[0]=q[0],D[1]=q[1],D[2]=q[2],D[3]=q[3],D[4]=q[4],D[5]=q[5],D[6]=q[6],D[7]=q[7],D[8]=q[8],D[9]=q[9],D[10]=q[10],D[11]=q[11],D[12]=q[12],D[13]=q[13],D[14]=q[14],D[15]=q[15],D},e.af=_o,e.ag=function(q,D){let Y=0,pe=0;if(q.kind==="constant")pe=q.layoutSize;else if(q.kind!=="source"){let{interpolationType:Ce,minZoom:Ue,maxZoom:Ge}=q,ut=Ce?w(Cn.interpolationFactor(Ce,D,Ue,Ge),0,1):0;q.kind==="camera"?pe=$n.number(q.minSize,q.maxSize,ut):Y=ut}return{uSizeT:Y,uSize:pe}},e.ai=function(q,{uSize:D,uSizeT:Y},{lowerSize:pe,upperSize:Ce}){return q.kind==="source"?pe/yd:q.kind==="composite"?$n.number(pe/yd,Ce/yd,Y):D},e.aj=R1,e.ak=function(q,D,Y,pe){let Ce=D.y-q.y,Ue=D.x-q.x,Ge=pe.y-Y.y,ut=pe.x-Y.x,Tt=Ge*Ue-ut*Ce;if(Tt===0)return null;let Ft=(ut*(q.y-Y.y)-Ge*(q.x-Y.x))/Tt;return new i(q.x+Ft*Ue,q.y+Ft*Ce)},e.al=Wx,e.am=dc,e.an=pn,e.ao=function(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return[D,Y,pe,Ce]},e.ap=Bl,e.ar=I1,e.as=function(q,D){var Y=D[0],pe=D[1],Ce=D[2],Ue=D[3],Ge=D[4],ut=D[5],Tt=D[6],Ft=D[7],$t=D[8],lr=D[9],Ar=D[10],zr=D[11],Kr=D[12],la=D[13],za=D[14],ja=D[15],gi=Y*ut-pe*Ge,ei=Y*Tt-Ce*Ge,hi=Y*Ft-Ue*Ge,Ei=pe*Tt-Ce*ut,En=pe*Ft-Ue*ut,fo=Ce*Ft-Ue*Tt,ss=$t*la-lr*Kr,eo=$t*za-Ar*Kr,vn=$t*ja-zr*Kr,Uo=lr*za-Ar*la,Mo=lr*ja-zr*la,xo=Ar*ja-zr*za,Yi=gi*xo-ei*Mo+hi*Uo+Ei*vn-En*eo+fo*ss;return Yi?(q[0]=(ut*xo-Tt*Mo+Ft*Uo)*(Yi=1/Yi),q[1]=(Ce*Mo-pe*xo-Ue*Uo)*Yi,q[2]=(la*fo-za*En+ja*Ei)*Yi,q[3]=(Ar*En-lr*fo-zr*Ei)*Yi,q[4]=(Tt*vn-Ge*xo-Ft*eo)*Yi,q[5]=(Y*xo-Ce*vn+Ue*eo)*Yi,q[6]=(za*hi-Kr*fo-ja*ei)*Yi,q[7]=($t*fo-Ar*hi+zr*ei)*Yi,q[8]=(Ge*Mo-ut*vn+Ft*ss)*Yi,q[9]=(pe*vn-Y*Mo-Ue*ss)*Yi,q[10]=(Kr*En-la*hi+ja*gi)*Yi,q[11]=(lr*hi-$t*En-zr*gi)*Yi,q[12]=(ut*eo-Ge*Uo-Tt*ss)*Yi,q[13]=(Y*Uo-pe*eo+Ce*ss)*Yi,q[14]=(la*ei-Kr*Ei-za*gi)*Yi,q[15]=($t*Ei-lr*ei+Ar*gi)*Yi,q):null},e.at=H1,e.au=A0,e.av=G1,e.aw=function(){let q={},D=ie.$version;for(let Y in ie.$root){let pe=ie.$root[Y];if(pe.required){let Ce=null;Ce=Y==="version"?D:pe.type==="array"?[]:{},Ce!=null&&(q[Y]=Ce)}}return q},e.ax=en,e.ay=G,e.az=function(q){q=q.slice();let D=Object.create(null);for(let Y=0;Y<q.length;Y++)D[q[Y].id]=q[Y];for(let Y=0;Y<q.length;Y++)"ref"in q[Y]&&(q[Y]=be(q[Y],D[q[Y].ref]));return q},e.b=F,e.b0=function(q,D){return q[0]=D[0],q[1]=D[1],q[2]=D[2],q[3]=D[3],q[4]=D[4],q[5]=D[5],q[6]=D[6],q[7]=D[7],q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.b1=function(q,D,Y){return q[0]=D[0]*Y[0],q[1]=D[1]*Y[1],q[2]=D[2]*Y[2],q[3]=D[3]*Y[3],q},e.b2=function(q,D){return q[0]*D[0]+q[1]*D[1]+q[2]*D[2]+q[3]*D[3]},e.b3=S,e.b4=jx,e.b5=k0,e.b6=function(q,D,Y,pe,Ce){var Ue,Ge=1/Math.tan(D/2);return q[0]=Ge/Y,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=Ge,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=-1,q[12]=0,q[13]=0,q[15]=0,Ce!=null&&Ce!==1/0?(q[10]=(Ce+pe)*(Ue=1/(pe-Ce)),q[14]=2*Ce*pe*Ue):(q[10]=-1,q[14]=-2*pe),q},e.b7=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[4],Ge=D[5],ut=D[6],Tt=D[7],Ft=D[8],$t=D[9],lr=D[10],Ar=D[11];return D!==q&&(q[0]=D[0],q[1]=D[1],q[2]=D[2],q[3]=D[3],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[4]=Ue*Ce+Ft*pe,q[5]=Ge*Ce+$t*pe,q[6]=ut*Ce+lr*pe,q[7]=Tt*Ce+Ar*pe,q[8]=Ft*Ce-Ue*pe,q[9]=$t*Ce-Ge*pe,q[10]=lr*Ce-ut*pe,q[11]=Ar*Ce-Tt*pe,q},e.b8=l,e.b9=_,e.bA=Lh,e.bB=function(q){return q.message===U},e.bC=kl,e.bD=js,e.ba=function(q){return q*Math.PI/180},e.bb=function(q,D){let{x:Y,y:pe}=Ig.fromLngLat(D);return!(q<0||q>25||pe<0||pe>=1||Y<0||Y>=1)},e.bc=function(q,D){return q[0]=D[0],q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=D[1],q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=D[2],q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q},e.bd=class extends Yt{},e.be=N1,e.bf=oA,e.bh=he,e.bi=function(q,D){Q.REGISTERED_PROTOCOLS[q]=D},e.bj=function(q){delete Q.REGISTERED_PROTOCOLS[q]},e.bk=function(q,D){let Y={};for(let Ce=0;Ce<q.length;Ce++){let Ue=D&&D[q[Ce].id]||Mh(q[Ce]);D&&(D[q[Ce].id]=Ue);let Ge=Y[Ue];Ge||(Ge=Y[Ue]=[]),Ge.push(q[Ce])}let pe=[];for(let Ce in Y)pe.push(Y[Ce]);return pe},e.bl=ti,e.bm=qx,e.bn=zv,e.bo=b0,e.bp=function(q){q.bucket.createArrays(),q.bucket.tilePixelRatio=ao/(512*q.bucket.overscaling),q.bucket.compareText={},q.bucket.iconsNeedLinear=!1;let D=q.bucket.layers[0],Y=D.layout,pe=D._unevaluatedLayout._values,Ce={layoutIconSize:pe["icon-size"].possiblyEvaluate(new Ts(q.bucket.zoom+1),q.canonical),layoutTextSize:pe["text-size"].possiblyEvaluate(new Ts(q.bucket.zoom+1),q.canonical),textMaxSize:pe["text-size"].possiblyEvaluate(new Ts(18))};if(q.bucket.textSizeData.kind==="composite"){let{minZoom:Ft,maxZoom:$t}=q.bucket.textSizeData;Ce.compositeTextSizes=[pe["text-size"].possiblyEvaluate(new Ts(Ft),q.canonical),pe["text-size"].possiblyEvaluate(new Ts($t),q.canonical)]}if(q.bucket.iconSizeData.kind==="composite"){let{minZoom:Ft,maxZoom:$t}=q.bucket.iconSizeData;Ce.compositeIconSizes=[pe["icon-size"].possiblyEvaluate(new Ts(Ft),q.canonical),pe["icon-size"].possiblyEvaluate(new Ts($t),q.canonical)]}let Ue=Y.get("text-line-height")*Bl,Ge=Y.get("text-rotation-alignment")!=="viewport"&&Y.get("symbol-placement")!=="point",ut=Y.get("text-keep-upright"),Tt=Y.get("text-size");for(let Ft of q.bucket.features){let $t=Y.get("text-font").evaluate(Ft,{},q.canonical).join(","),lr=Tt.evaluate(Ft,{},q.canonical),Ar=Ce.layoutTextSize.evaluate(Ft,{},q.canonical),zr=Ce.layoutIconSize.evaluate(Ft,{},q.canonical),Kr={horizontal:{},vertical:void 0},la=Ft.text,za,ja=[0,0];if(la){let hi=la.toString(),Ei=Y.get("text-letter-spacing").evaluate(Ft,{},q.canonical)*Bl,En=Wo(hi)?Ei:0,fo=Y.get("text-anchor").evaluate(Ft,{},q.canonical),ss=Qx(D,Ft,q.canonical);if(!ss){let Mo=Y.get("text-radial-offset").evaluate(Ft,{},q.canonical);ja=Mo?q1(fo,[Mo*Bl,Fv]):Y.get("text-offset").evaluate(Ft,{},q.canonical).map(xo=>xo*Bl)}let eo=Ge?"center":Y.get("text-justify").evaluate(Ft,{},q.canonical),vn=Y.get("symbol-placement")==="point"?Y.get("text-max-width").evaluate(Ft,{},q.canonical)*Bl:1/0,Uo=()=>{q.bucket.allowVerticalPlacement&&co(hi)&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,"left",En,ja,e.ah.vertical,!0,Ar,lr))};if(!Ge&&ss){let Mo=new Set;if(eo==="auto")for(let Yi=0;Yi<ss.values.length;Yi+=2)Mo.add(H1(ss.values[Yi]));else Mo.add(eo);let xo=!1;for(let Yi of Mo)if(!Kr.horizontal[Yi])if(xo)Kr.horizontal[Yi]=Kr.horizontal[0];else{let Ko=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,"center",Yi,En,ja,e.ah.horizontal,!1,Ar,lr);Ko&&(Kr.horizontal[Yi]=Ko,xo=Ko.positionedLines.length===1)}Uo()}else{eo==="auto"&&(eo=H1(fo));let Mo=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,eo,En,ja,e.ah.horizontal,!1,Ar,lr);Mo&&(Kr.horizontal[eo]=Mo),Uo(),co(hi)&&Ge&&ut&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,eo,En,ja,e.ah.vertical,!1,Ar,lr))}}let gi=!1;if(Ft.icon&&Ft.icon.name){let hi=q.imageMap[Ft.icon.name];hi&&(za=Sg(q.imagePositions[Ft.icon.name],Y.get("icon-offset").evaluate(Ft,{},q.canonical),Y.get("icon-anchor").evaluate(Ft,{},q.canonical)),gi=!!hi.sdf,q.bucket.sdfIcons===void 0?q.bucket.sdfIcons=gi:q.bucket.sdfIcons!==gi&&f("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(hi.pixelRatio!==q.bucket.pixelRatio||Y.get("icon-rotate").constantOr(1)!==0)&&(q.bucket.iconsNeedLinear=!0))}let ei=tb(Kr.horizontal)||Kr.vertical;q.bucket.iconsInText=!!ei&&ei.iconsInText,(ei||za)&&iA(q.bucket,Ft,Kr,za,q.imageMap,Ce,Ar,zr,ja,gi,q.canonical)}q.showCollisionBoxes&&q.bucket.generateCollisionDebugBuffers()},e.bq=qp,e.br=Vr,e.bs=qo,e.bt=Oa,e.bu=C1,e.bv=class{constructor(q){this._marks={start:[q.url,"start"].join("#"),end:[q.url,"end"].join("#"),measure:q.url.toString()},performance.mark(this._marks.start)}finish(){performance.mark(this._marks.end);let q=performance.getEntriesByName(this._marks.measure);return q.length===0&&(performance.measure(this._marks.measure,this._marks.start,this._marks.end),q=performance.getEntriesByName(this._marks.measure),performance.clearMarks(this._marks.start),performance.clearMarks(this._marks.end),performance.clearMeasures(this._marks.measure)),q}},e.bw=function(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(T())try{return yield O(q,D,Y,pe,Ce)}catch{}return function(Ue,Ge,ut,Tt,Ft){let $t=Ue.width,lr=Ue.height;I&&N||(I=new OffscreenCanvas($t,lr),N=I.getContext("2d",{willReadFrequently:!0})),I.width=$t,I.height=lr,N.drawImage(Ue,0,0,$t,lr);let Ar=N.getImageData(Ge,ut,Tt,Ft);return N.clearRect(0,0,$t,lr),Ar.data}(q,D,Y,pe,Ce)})},e.bx=Vx,e.by=r,e.bz=o,e.c=W,e.d=q=>t(void 0,void 0,void 0,function*(){if(q.byteLength===0)return createImageBitmap(new ImageData(1,1));let D=new Blob([new Uint8Array(q)],{type:"image/png"});try{return createImageBitmap(D)}catch(Y){throw new Error(`Could not load image because of ${Y.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),e.e=E,e.f=q=>new Promise((D,Y)=>{let pe=new Image;pe.onload=()=>{D(pe),URL.revokeObjectURL(pe.src),pe.onload=null,window.requestAnimationFrame(()=>{pe.src=B})},pe.onerror=()=>Y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let Ce=new Blob([new Uint8Array(q)],{type:"image/png"});pe.src=q.byteLength?URL.createObjectURL(Ce):B}),e.g=ue,e.h=(q,D)=>$(E(q,{type:"json"}),D),e.i=L,e.j=j,e.k=ne,e.l=(q,D)=>$(E(q,{type:"arrayBuffer"}),D),e.m=$,e.n=function(q){return new C1(q).readFields(fC,[])},e.o=rs,e.p=P1,e.q=Oe,e.r=oi,e.s=J,e.t=li,e.u=Ka,e.v=ie,e.w=f,e.x=function([q,D,Y]){return D+=90,D*=Math.PI/180,Y*=Math.PI/180,{x:q*Math.cos(D)*Math.sin(Y),y:q*Math.sin(D)*Math.sin(Y),z:q*Math.cos(Y)}},e.y=$n,e.z=Ts}),A("worker",["./shared"],function(e){"use strict";class t{constructor(Fe){this.keyCache={},Fe&&this.replace(Fe)}replace(Fe){this._layerConfigs={},this._layers={},this.update(Fe,[])}update(Fe,Ke){for(let Ee of Fe){this._layerConfigs[Ee.id]=Ee;let Ve=this._layers[Ee.id]=e.aA(Ee);Ve._featureFilter=e.a7(Ve.filter),this.keyCache[Ee.id]&&delete this.keyCache[Ee.id]}for(let Ee of Ke)delete this.keyCache[Ee],delete this._layerConfigs[Ee],delete this._layers[Ee];this.familiesBySource={};let Ne=e.bk(Object.values(this._layerConfigs),this.keyCache);for(let Ee of Ne){let Ve=Ee.map(xt=>this._layers[xt.id]),ke=Ve[0];if(ke.visibility==="none")continue;let Te=ke.source||"",Le=this.familiesBySource[Te];Le||(Le=this.familiesBySource[Te]={});let rt=ke.sourceLayer||"_geojsonTileLayer",dt=Le[rt];dt||(dt=Le[rt]=[]),dt.push(Ve)}}}class r{constructor(Fe){let Ke={},Ne=[];for(let Te in Fe){let Le=Fe[Te],rt=Ke[Te]={};for(let dt in Le){let xt=Le[+dt];if(!xt||xt.bitmap.width===0||xt.bitmap.height===0)continue;let It={x:0,y:0,w:xt.bitmap.width+2,h:xt.bitmap.height+2};Ne.push(It),rt[dt]={rect:It,metrics:xt.metrics}}}let{w:Ee,h:Ve}=e.p(Ne),ke=new e.o({width:Ee||1,height:Ve||1});for(let Te in Fe){let Le=Fe[Te];for(let rt in Le){let dt=Le[+rt];if(!dt||dt.bitmap.width===0||dt.bitmap.height===0)continue;let xt=Ke[Te][rt].rect;e.o.copy(dt.bitmap,ke,{x:0,y:0},{x:xt.x+1,y:xt.y+1},dt.bitmap)}}this.image=ke,this.positions=Ke}}e.bl("GlyphAtlas",r);class o{constructor(Fe){this.tileID=new e.S(Fe.tileID.overscaledZ,Fe.tileID.wrap,Fe.tileID.canonical.z,Fe.tileID.canonical.x,Fe.tileID.canonical.y),this.uid=Fe.uid,this.zoom=Fe.zoom,this.pixelRatio=Fe.pixelRatio,this.tileSize=Fe.tileSize,this.source=Fe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Fe.showCollisionBoxes,this.collectResourceTiming=!!Fe.collectResourceTiming,this.returnDependencies=!!Fe.returnDependencies,this.promoteId=Fe.promoteId,this.inFlightDependencies=[]}parse(Fe,Ke,Ne,Ee){return e._(this,void 0,void 0,function*(){this.status="parsing",this.data=Fe,this.collisionBoxArray=new e.a5;let Ve=new e.bm(Object.keys(Fe.layers).sort()),ke=new e.bn(this.tileID,this.promoteId);ke.bucketLayerIDs=[];let Te={},Le={featureIndex:ke,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ne},rt=Ke.familiesBySource[this.source];for(let Ga in rt){let Ma=Fe.layers[Ga];if(!Ma)continue;Ma.version===1&&e.w(`Vector tile source "${this.source}" layer "${Ga}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Ua=Ve.encode(Ga),ni=[];for(let Wt=0;Wt<Ma.length;Wt++){let zt=Ma.feature(Wt),Vt=ke.getId(zt,Ga);ni.push({feature:zt,id:Vt,index:Wt,sourceLayerIndex:Ua})}for(let Wt of rt[Ga]){let zt=Wt[0];zt.source!==this.source&&e.w(`layer.source = ${zt.source} does not equal this.source = ${this.source}`),zt.minzoom&&this.zoom<Math.floor(zt.minzoom)||zt.maxzoom&&this.zoom>=zt.maxzoom||zt.visibility!=="none"&&(a(Wt,this.zoom,Ne),(Te[zt.id]=zt.createBucket({index:ke.bucketLayerIDs.length,layers:Wt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ua,sourceID:this.source})).populate(ni,Le,this.tileID.canonical),ke.bucketLayerIDs.push(Wt.map(Vt=>Vt.id)))}}let dt=e.aF(Le.glyphDependencies,Ga=>Object.keys(Ga).map(Number));this.inFlightDependencies.forEach(Ga=>Ga?.abort()),this.inFlightDependencies=[];let xt=Promise.resolve({});if(Object.keys(dt).length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),xt=Ee.sendAsync({type:"GG",data:{stacks:dt,source:this.source,tileID:this.tileID,type:"glyphs"}},Ga)}let It=Object.keys(Le.iconDependencies),Bt=Promise.resolve({});if(It.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Bt=Ee.sendAsync({type:"GI",data:{icons:It,source:this.source,tileID:this.tileID,type:"icons"}},Ga)}let Gt=Object.keys(Le.patternDependencies),Kt=Promise.resolve({});if(Gt.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Kt=Ee.sendAsync({type:"GI",data:{icons:Gt,source:this.source,tileID:this.tileID,type:"patterns"}},Ga)}let[sr,sa,Aa]=yield Promise.all([xt,Bt,Kt]),La=new r(sr),ka=new e.bo(sa,Aa);for(let Ga in Te){let Ma=Te[Ga];Ma instanceof e.a6?(a(Ma.layers,this.zoom,Ne),e.bp({bucket:Ma,glyphMap:sr,glyphPositions:La.positions,imageMap:sa,imagePositions:ka.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Ma.hasPattern&&(Ma instanceof e.bq||Ma instanceof e.br||Ma instanceof e.bs)&&(a(Ma.layers,this.zoom,Ne),Ma.addFeatures(Le,this.tileID.canonical,ka.patternPositions))}return this.status="done",{buckets:Object.values(Te).filter(Ga=>!Ga.isEmpty()),featureIndex:ke,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:La.image,imageAtlas:ka,glyphMap:this.returnDependencies?sr:null,iconMap:this.returnDependencies?sa:null,glyphPositions:this.returnDependencies?La.positions:null}})}}function a(yt,Fe,Ke){let Ne=new e.z(Fe);for(let Ee of yt)Ee.recalculate(Ne,Ke)}class i{constructor(Fe,Ke,Ne){this.actor=Fe,this.layerIndex=Ke,this.availableImages=Ne,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield e.l(Fe.request,Ke);try{return{vectorTile:new e.bt.VectorTile(new e.bu(Ne.data)),rawData:Ne.data,cacheControl:Ne.cacheControl,expires:Ne.expires}}catch(Ee){let Ve=new Uint8Array(Ne.data),ke=`Unable to parse the tile at ${Fe.request.url}, `;throw ke+=Ve[0]===31&&Ve[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Ee.message}`,new Error(ke)}})}loadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid,Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request),Ee=new o(Fe);this.loading[Ke]=Ee;let Ve=new AbortController;Ee.abort=Ve;try{let ke=yield this.loadVectorTile(Fe,Ve);if(delete this.loading[Ke],!ke)return null;let Te=ke.rawData,Le={};ke.expires&&(Le.expires=ke.expires),ke.cacheControl&&(Le.cacheControl=ke.cacheControl);let rt={};if(Ne){let xt=Ne.finish();xt&&(rt.resourceTiming=JSON.parse(JSON.stringify(xt)))}Ee.vectorTile=ke.vectorTile;let dt=Ee.parse(ke.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Ke]=Ee,this.fetching[Ke]={rawTileData:Te,cacheControl:Le,resourceTiming:rt};try{let xt=yield dt;return e.e({rawTileData:Te.slice(0)},xt,Le,rt)}finally{delete this.fetching[Ke]}}catch(ke){throw delete this.loading[Ke],Ee.status="done",this.loaded[Ke]=Ee,ke}})}reloadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid;if(!this.loaded||!this.loaded[Ke])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ne=this.loaded[Ke];if(Ne.showCollisionBoxes=Fe.showCollisionBoxes,Ne.status==="parsing"){let Ee=yield Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor),Ve;if(this.fetching[Ke]){let{rawTileData:ke,cacheControl:Te,resourceTiming:Le}=this.fetching[Ke];delete this.fetching[Ke],Ve=e.e({rawTileData:ke.slice(0)},Ee,Te,Le)}else Ve=Ee;return Ve}if(Ne.status==="done"&&Ne.vectorTile)return Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=this.loading,Ne=Fe.uid;Ke&&Ke[Ne]&&Ke[Ne].abort&&(Ke[Ne].abort.abort(),delete Ke[Ne])})}removeTile(Fe){return e._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Fe.uid]&&delete this.loaded[Fe.uid]})}}class n{constructor(){this.loaded={}}loadTile(Fe){return e._(this,void 0,void 0,function*(){let{uid:Ke,encoding:Ne,rawImageData:Ee,redFactor:Ve,greenFactor:ke,blueFactor:Te,baseShift:Le}=Fe,rt=Ee.width+2,dt=Ee.height+2,xt=e.b(Ee)?new e.R({width:rt,height:dt},yield e.bw(Ee,-1,-1,rt,dt)):Ee,It=new e.bx(Ke,xt,Ne,Ve,ke,Te,Le);return this.loaded=this.loaded||{},this.loaded[Ke]=It,It})}removeTile(Fe){let Ke=this.loaded,Ne=Fe.uid;Ke&&Ke[Ne]&&delete Ke[Ne]}}function s(yt,Fe){if(yt.length!==0){c(yt[0],Fe);for(var Ke=1;Ke<yt.length;Ke++)c(yt[Ke],!Fe)}}function c(yt,Fe){for(var Ke=0,Ne=0,Ee=0,Ve=yt.length,ke=Ve-1;Ee<Ve;ke=Ee++){var Te=(yt[Ee][0]-yt[ke][0])*(yt[ke][1]+yt[Ee][1]),Le=Ke+Te;Ne+=Math.abs(Ke)>=Math.abs(Te)?Ke-Le+Te:Te-Le+Ke,Ke=Le}Ke+Ne>=0!=!!Fe&&yt.reverse()}var h=e.by(function yt(Fe,Ke){var Ne,Ee=Fe&&Fe.type;if(Ee==="FeatureCollection")for(Ne=0;Ne<Fe.features.length;Ne++)yt(Fe.features[Ne],Ke);else if(Ee==="GeometryCollection")for(Ne=0;Ne<Fe.geometries.length;Ne++)yt(Fe.geometries[Ne],Ke);else if(Ee==="Feature")yt(Fe.geometry,Ke);else if(Ee==="Polygon")s(Fe.coordinates,Ke);else if(Ee==="MultiPolygon")for(Ne=0;Ne<Fe.coordinates.length;Ne++)s(Fe.coordinates[Ne],Ke);return Fe});let v=e.bt.VectorTileFeature.prototype.toGeoJSON;var p={exports:{}},T=e.bz,l=e.bt.VectorTileFeature,_=w;function w(yt,Fe){this.options=Fe||{},this.features=yt,this.length=yt.length}function S(yt,Fe){this.id=typeof yt.id=="number"?yt.id:void 0,this.type=yt.type,this.rawGeometry=yt.type===1?[yt.geometry]:yt.geometry,this.properties=yt.tags,this.extent=Fe||4096}w.prototype.feature=function(yt){return new S(this.features[yt],this.options.extent)},S.prototype.loadGeometry=function(){var yt=this.rawGeometry;this.geometry=[];for(var Fe=0;Fe<yt.length;Fe++){for(var Ke=yt[Fe],Ne=[],Ee=0;Ee<Ke.length;Ee++)Ne.push(new T(Ke[Ee][0],Ke[Ee][1]));this.geometry.push(Ne)}return this.geometry},S.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var yt=this.geometry,Fe=1/0,Ke=-1/0,Ne=1/0,Ee=-1/0,Ve=0;Ve<yt.length;Ve++)for(var ke=yt[Ve],Te=0;Te<ke.length;Te++){var Le=ke[Te];Fe=Math.min(Fe,Le.x),Ke=Math.max(Ke,Le.x),Ne=Math.min(Ne,Le.y),Ee=Math.max(Ee,Le.y)}return[Fe,Ne,Ke,Ee]},S.prototype.toGeoJSON=l.prototype.toGeoJSON;var E=e.bA,m=_;function b(yt){var Fe=new E;return function(Ke,Ne){for(var Ee in Ke.layers)Ne.writeMessage(3,d,Ke.layers[Ee])}(yt,Fe),Fe.finish()}function d(yt,Fe){var Ke;Fe.writeVarintField(15,yt.version||1),Fe.writeStringField(1,yt.name||""),Fe.writeVarintField(5,yt.extent||4096);var Ne={keys:[],values:[],keycache:{},valuecache:{}};for(Ke=0;Ke<yt.length;Ke++)Ne.feature=yt.feature(Ke),Fe.writeMessage(2,u,Ne);var Ee=Ne.keys;for(Ke=0;Ke<Ee.length;Ke++)Fe.writeStringField(3,Ee[Ke]);var Ve=Ne.values;for(Ke=0;Ke<Ve.length;Ke++)Fe.writeMessage(4,z,Ve[Ke])}function u(yt,Fe){var Ke=yt.feature;Ke.id!==void 0&&Fe.writeVarintField(1,Ke.id),Fe.writeMessage(2,y,yt),Fe.writeVarintField(3,Ke.type),Fe.writeMessage(4,L,Ke)}function y(yt,Fe){var Ke=yt.feature,Ne=yt.keys,Ee=yt.values,Ve=yt.keycache,ke=yt.valuecache;for(var Te in Ke.properties){var Le=Ke.properties[Te],rt=Ve[Te];if(Le!==null){rt===void 0&&(Ne.push(Te),Ve[Te]=rt=Ne.length-1),Fe.writeVarint(rt);var dt=typeof Le;dt!=="string"&&dt!=="boolean"&&dt!=="number"&&(Le=JSON.stringify(Le));var xt=dt+":"+Le,It=ke[xt];It===void 0&&(Ee.push(Le),ke[xt]=It=Ee.length-1),Fe.writeVarint(It)}}}function f(yt,Fe){return(Fe<<3)+(7&yt)}function P(yt){return yt<<1^yt>>31}function L(yt,Fe){for(var Ke=yt.loadGeometry(),Ne=yt.type,Ee=0,Ve=0,ke=Ke.length,Te=0;Te<ke;Te++){var Le=Ke[Te],rt=1;Ne===1&&(rt=Le.length),Fe.writeVarint(f(1,rt));for(var dt=Ne===3?Le.length-1:Le.length,xt=0;xt<dt;xt++){xt===1&&Ne!==1&&Fe.writeVarint(f(2,dt-1));var It=Le[xt].x-Ee,Bt=Le[xt].y-Ve;Fe.writeVarint(P(It)),Fe.writeVarint(P(Bt)),Ee+=It,Ve+=Bt}Ne===3&&Fe.writeVarint(f(7,1))}}function z(yt,Fe){var Ke=typeof yt;Ke==="string"?Fe.writeStringField(1,yt):Ke==="boolean"?Fe.writeBooleanField(7,yt):Ke==="number"&&(yt%1!=0?Fe.writeDoubleField(3,yt):yt<0?Fe.writeSVarintField(6,yt):Fe.writeVarintField(5,yt))}p.exports=b,p.exports.fromVectorTileJs=b,p.exports.fromGeojsonVt=function(yt,Fe){Fe=Fe||{};var Ke={};for(var Ne in yt)Ke[Ne]=new m(yt[Ne].features,Fe),Ke[Ne].name=Ne,Ke[Ne].version=Fe.version,Ke[Ne].extent=Fe.extent;return b({layers:Ke})},p.exports.GeoJSONWrapper=m;var F=e.by(p.exports);let B={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:yt=>yt},O=Math.fround||(I=new Float32Array(1),yt=>(I[0]=+yt,I[0]));var I;let N=3,U=5,W=6;class Q{constructor(Fe){this.options=Object.assign(Object.create(B),Fe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Fe){let{log:Ke,minZoom:Ne,maxZoom:Ee}=this.options;Ke&&console.time("total time");let Ve=`prepare ${Fe.length} points`;Ke&&console.time(Ve),this.points=Fe;let ke=[];for(let Le=0;Le<Fe.length;Le++){let rt=Fe[Le];if(!rt.geometry)continue;let[dt,xt]=rt.geometry.coordinates,It=O(he(dt)),Bt=O(G(xt));ke.push(It,Bt,1/0,Le,-1,1),this.options.reduce&&ke.push(0)}let Te=this.trees[Ee+1]=this._createTree(ke);Ke&&console.timeEnd(Ve);for(let Le=Ee;Le>=Ne;Le--){let rt=+Date.now();Te=this.trees[Le]=this._createTree(this._cluster(Te,Le)),Ke&&console.log("z%d: %d clusters in %dms",Le,Te.numItems,+Date.now()-rt)}return Ke&&console.timeEnd("total time"),this}getClusters(Fe,Ke){let Ne=((Fe[0]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,Fe[1])),Ve=Fe[2]===180?180:((Fe[2]+180)%360+360)%360-180,ke=Math.max(-90,Math.min(90,Fe[3]));if(Fe[2]-Fe[0]>=360)Ne=-180,Ve=180;else if(Ne>Ve){let xt=this.getClusters([Ne,Ee,180,ke],Ke),It=this.getClusters([-180,Ee,Ve,ke],Ke);return xt.concat(It)}let Te=this.trees[this._limitZoom(Ke)],Le=Te.range(he(Ne),G(ke),he(Ve),G(Ee)),rt=Te.data,dt=[];for(let xt of Le){let It=this.stride*xt;dt.push(rt[It+U]>1?ue(rt,It,this.clusterProps):this.points[rt[It+N]])}return dt}getChildren(Fe){let Ke=this._getOriginId(Fe),Ne=this._getOriginZoom(Fe),Ee="No cluster with the specified id.",Ve=this.trees[Ne];if(!Ve)throw new Error(Ee);let ke=Ve.data;if(Ke*this.stride>=ke.length)throw new Error(Ee);let Te=this.options.radius/(this.options.extent*Math.pow(2,Ne-1)),Le=Ve.within(ke[Ke*this.stride],ke[Ke*this.stride+1],Te),rt=[];for(let dt of Le){let xt=dt*this.stride;ke[xt+4]===Fe&&rt.push(ke[xt+U]>1?ue(ke,xt,this.clusterProps):this.points[ke[xt+N]])}if(rt.length===0)throw new Error(Ee);return rt}getLeaves(Fe,Ke,Ne){let Ee=[];return this._appendLeaves(Ee,Fe,Ke=Ke||10,Ne=Ne||0,0),Ee}getTile(Fe,Ke,Ne){let Ee=this.trees[this._limitZoom(Fe)],Ve=Math.pow(2,Fe),{extent:ke,radius:Te}=this.options,Le=Te/ke,rt=(Ne-Le)/Ve,dt=(Ne+1+Le)/Ve,xt={features:[]};return this._addTileFeatures(Ee.range((Ke-Le)/Ve,rt,(Ke+1+Le)/Ve,dt),Ee.data,Ke,Ne,Ve,xt),Ke===0&&this._addTileFeatures(Ee.range(1-Le/Ve,rt,1,dt),Ee.data,Ve,Ne,Ve,xt),Ke===Ve-1&&this._addTileFeatures(Ee.range(0,rt,Le/Ve,dt),Ee.data,-1,Ne,Ve,xt),xt.features.length?xt:null}getClusterExpansionZoom(Fe){let Ke=this._getOriginZoom(Fe)-1;for(;Ke<=this.options.maxZoom;){let Ne=this.getChildren(Fe);if(Ke++,Ne.length!==1)break;Fe=Ne[0].properties.cluster_id}return Ke}_appendLeaves(Fe,Ke,Ne,Ee,Ve){let ke=this.getChildren(Ke);for(let Te of ke){let Le=Te.properties;if(Le&&Le.cluster?Ve+Le.point_count<=Ee?Ve+=Le.point_count:Ve=this._appendLeaves(Fe,Le.cluster_id,Ne,Ee,Ve):Ve<Ee?Ve++:Fe.push(Te),Fe.length===Ne)break}return Ve}_createTree(Fe){let Ke=new e.av(Fe.length/this.stride|0,this.options.nodeSize,Float32Array);for(let Ne=0;Ne<Fe.length;Ne+=this.stride)Ke.add(Fe[Ne],Fe[Ne+1]);return Ke.finish(),Ke.data=Fe,Ke}_addTileFeatures(Fe,Ke,Ne,Ee,Ve,ke){for(let Te of Fe){let Le=Te*this.stride,rt=Ke[Le+U]>1,dt,xt,It;if(rt)dt=se(Ke,Le,this.clusterProps),xt=Ke[Le],It=Ke[Le+1];else{let Kt=this.points[Ke[Le+N]];dt=Kt.properties;let[sr,sa]=Kt.geometry.coordinates;xt=he(sr),It=G(sa)}let Bt={type:1,geometry:[[Math.round(this.options.extent*(xt*Ve-Ne)),Math.round(this.options.extent*(It*Ve-Ee))]],tags:dt},Gt;Gt=rt||this.options.generateId?Ke[Le+N]:this.points[Ke[Le+N]].id,Gt!==void 0&&(Bt.id=Gt),ke.features.push(Bt)}}_limitZoom(Fe){return Math.max(this.options.minZoom,Math.min(Math.floor(+Fe),this.options.maxZoom+1))}_cluster(Fe,Ke){let{radius:Ne,extent:Ee,reduce:Ve,minPoints:ke}=this.options,Te=Ne/(Ee*Math.pow(2,Ke)),Le=Fe.data,rt=[],dt=this.stride;for(let xt=0;xt<Le.length;xt+=dt){if(Le[xt+2]<=Ke)continue;Le[xt+2]=Ke;let It=Le[xt],Bt=Le[xt+1],Gt=Fe.within(Le[xt],Le[xt+1],Te),Kt=Le[xt+U],sr=Kt;for(let sa of Gt){let Aa=sa*dt;Le[Aa+2]>Ke&&(sr+=Le[Aa+U])}if(sr>Kt&&sr>=ke){let sa,Aa=It*Kt,La=Bt*Kt,ka=-1,Ga=((xt/dt|0)<<5)+(Ke+1)+this.points.length;for(let Ma of Gt){let Ua=Ma*dt;if(Le[Ua+2]<=Ke)continue;Le[Ua+2]=Ke;let ni=Le[Ua+U];Aa+=Le[Ua]*ni,La+=Le[Ua+1]*ni,Le[Ua+4]=Ga,Ve&&(sa||(sa=this._map(Le,xt,!0),ka=this.clusterProps.length,this.clusterProps.push(sa)),Ve(sa,this._map(Le,Ua)))}Le[xt+4]=Ga,rt.push(Aa/sr,La/sr,1/0,Ga,-1,sr),Ve&&rt.push(ka)}else{for(let sa=0;sa<dt;sa++)rt.push(Le[xt+sa]);if(sr>1)for(let sa of Gt){let Aa=sa*dt;if(!(Le[Aa+2]<=Ke)){Le[Aa+2]=Ke;for(let La=0;La<dt;La++)rt.push(Le[Aa+La])}}}}return rt}_getOriginId(Fe){return Fe-this.points.length>>5}_getOriginZoom(Fe){return(Fe-this.points.length)%32}_map(Fe,Ke,Ne){if(Fe[Ke+U]>1){let ke=this.clusterProps[Fe[Ke+W]];return Ne?Object.assign({},ke):ke}let Ee=this.points[Fe[Ke+N]].properties,Ve=this.options.map(Ee);return Ne&&Ve===Ee?Object.assign({},Ve):Ve}}function ue(yt,Fe,Ke){return{type:"Feature",id:yt[Fe+N],properties:se(yt,Fe,Ke),geometry:{type:"Point",coordinates:[(Ne=yt[Fe],360*(Ne-.5)),$(yt[Fe+1])]}};var Ne}function se(yt,Fe,Ke){let Ne=yt[Fe+U],Ee=Ne>=1e4?`${Math.round(Ne/1e3)}k`:Ne>=1e3?Math.round(Ne/100)/10+"k":Ne,Ve=yt[Fe+W],ke=Ve===-1?{}:Object.assign({},Ke[Ve]);return Object.assign(ke,{cluster:!0,cluster_id:yt[Fe+N],point_count:Ne,point_count_abbreviated:Ee})}function he(yt){return yt/360+.5}function G(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function $(yt){let Fe=(180-360*yt)*Math.PI/180;return 360*Math.atan(Math.exp(Fe))/Math.PI-90}function J(yt,Fe,Ke,Ne){let Ee=Ne,Ve=Fe+(Ke-Fe>>1),ke,Te=Ke-Fe,Le=yt[Fe],rt=yt[Fe+1],dt=yt[Ke],xt=yt[Ke+1];for(let It=Fe+3;It<Ke;It+=3){let Bt=Z(yt[It],yt[It+1],Le,rt,dt,xt);if(Bt>Ee)ke=It,Ee=Bt;else if(Bt===Ee){let Gt=Math.abs(It-Ve);Gt<Te&&(ke=It,Te=Gt)}}Ee>Ne&&(ke-Fe>3&&J(yt,Fe,ke,Ne),yt[ke+2]=Ee,Ke-ke>3&&J(yt,ke,Ke,Ne))}function Z(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ee-Ke,Te=Ve-Ne;if(ke!==0||Te!==0){let Le=((yt-Ke)*ke+(Fe-Ne)*Te)/(ke*ke+Te*Te);Le>1?(Ke=Ee,Ne=Ve):Le>0&&(Ke+=ke*Le,Ne+=Te*Le)}return ke=yt-Ke,Te=Fe-Ne,ke*ke+Te*Te}function re(yt,Fe,Ke,Ne){let Ee={id:yt??null,type:Fe,geometry:Ke,tags:Ne,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Fe==="Point"||Fe==="MultiPoint"||Fe==="LineString")ne(Ee,Ke);else if(Fe==="Polygon")ne(Ee,Ke[0]);else if(Fe==="MultiLineString")for(let Ve of Ke)ne(Ee,Ve);else if(Fe==="MultiPolygon")for(let Ve of Ke)ne(Ee,Ve[0]);return Ee}function ne(yt,Fe){for(let Ke=0;Ke<Fe.length;Ke+=3)yt.minX=Math.min(yt.minX,Fe[Ke]),yt.minY=Math.min(yt.minY,Fe[Ke+1]),yt.maxX=Math.max(yt.maxX,Fe[Ke]),yt.maxY=Math.max(yt.maxY,Fe[Ke+1])}function j(yt,Fe,Ke,Ne){if(!Fe.geometry)return;let Ee=Fe.geometry.coordinates;if(Ee&&Ee.length===0)return;let Ve=Fe.geometry.type,ke=Math.pow(Ke.tolerance/((1<<Ke.maxZoom)*Ke.extent),2),Te=[],Le=Fe.id;if(Ke.promoteId?Le=Fe.properties[Ke.promoteId]:Ke.generateId&&(Le=Ne||0),Ve==="Point")ee(Ee,Te);else if(Ve==="MultiPoint")for(let rt of Ee)ee(rt,Te);else if(Ve==="LineString")ie(Ee,Te,ke,!1);else if(Ve==="MultiLineString"){if(Ke.lineMetrics){for(let rt of Ee)Te=[],ie(rt,Te,ke,!1),yt.push(re(Le,"LineString",Te,Fe.properties));return}fe(Ee,Te,ke,!1)}else if(Ve==="Polygon")fe(Ee,Te,ke,!0);else{if(Ve!=="MultiPolygon"){if(Ve==="GeometryCollection"){for(let rt of Fe.geometry.geometries)j(yt,{id:Le,geometry:rt,properties:Fe.properties},Ke,Ne);return}throw new Error("Input data is not a valid GeoJSON object.")}for(let rt of Ee){let dt=[];fe(rt,dt,ke,!0),Te.push(dt)}}yt.push(re(Le,Ve,Te,Fe.properties))}function ee(yt,Fe){Fe.push(be(yt[0]),Ae(yt[1]),0)}function ie(yt,Fe,Ke,Ne){let Ee,Ve,ke=0;for(let Le=0;Le<yt.length;Le++){let rt=be(yt[Le][0]),dt=Ae(yt[Le][1]);Fe.push(rt,dt,0),Le>0&&(ke+=Ne?(Ee*dt-rt*Ve)/2:Math.sqrt(Math.pow(rt-Ee,2)+Math.pow(dt-Ve,2))),Ee=rt,Ve=dt}let Te=Fe.length-3;Fe[2]=1,J(Fe,0,Te,Ke),Fe[Te+2]=1,Fe.size=Math.abs(ke),Fe.start=0,Fe.end=Fe.size}function fe(yt,Fe,Ke,Ne){for(let Ee=0;Ee<yt.length;Ee++){let Ve=[];ie(yt[Ee],Ve,Ke,Ne),Fe.push(Ve)}}function be(yt){return yt/360+.5}function Ae(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function Be(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){if(Ne/=Fe,Ve>=(Ke/=Fe)&&ke<Ne)return yt;if(ke<Ke||Ve>=Ne)return null;let Le=[];for(let rt of yt){let dt=rt.geometry,xt=rt.type,It=Ee===0?rt.minX:rt.minY,Bt=Ee===0?rt.maxX:rt.maxY;if(It>=Ke&&Bt<Ne){Le.push(rt);continue}if(Bt<Ke||It>=Ne)continue;let Gt=[];if(xt==="Point"||xt==="MultiPoint")Ie(dt,Gt,Ke,Ne,Ee);else if(xt==="LineString")Ze(dt,Gt,Ke,Ne,Ee,!1,Te.lineMetrics);else if(xt==="MultiLineString")it(dt,Gt,Ke,Ne,Ee,!1);else if(xt==="Polygon")it(dt,Gt,Ke,Ne,Ee,!0);else if(xt==="MultiPolygon")for(let Kt of dt){let sr=[];it(Kt,sr,Ke,Ne,Ee,!0),sr.length&&Gt.push(sr)}if(Gt.length){if(Te.lineMetrics&&xt==="LineString"){for(let Kt of Gt)Le.push(re(rt.id,xt,Kt,rt.tags));continue}xt!=="LineString"&&xt!=="MultiLineString"||(Gt.length===1?(xt="LineString",Gt=Gt[0]):xt="MultiLineString"),xt!=="Point"&&xt!=="MultiPoint"||(xt=Gt.length===3?"Point":"MultiPoint"),Le.push(re(rt.id,xt,Gt,rt.tags))}}return Le.length?Le:null}function Ie(yt,Fe,Ke,Ne,Ee){for(let Ve=0;Ve<yt.length;Ve+=3){let ke=yt[Ve+Ee];ke>=Ke&&ke<=Ne&&et(Fe,yt[Ve],yt[Ve+1],yt[Ve+2])}}function Ze(yt,Fe,Ke,Ne,Ee,Ve,ke){let Te=at(yt),Le=Ee===0?lt:Me,rt,dt,xt=yt.start;for(let sr=0;sr<yt.length-3;sr+=3){let sa=yt[sr],Aa=yt[sr+1],La=yt[sr+2],ka=yt[sr+3],Ga=yt[sr+4],Ma=Ee===0?sa:Aa,Ua=Ee===0?ka:Ga,ni=!1;ke&&(rt=Math.sqrt(Math.pow(sa-ka,2)+Math.pow(Aa-Ga,2))),Ma<Ke?Ua>Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ke&&(Te.start=xt+rt*dt)):Ma>Ne?Ua<Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ke&&(Te.start=xt+rt*dt)):et(Te,sa,Aa,La),Ua<Ke&&Ma>=Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ni=!0),Ua>Ne&&Ma<=Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ni=!0),!Ve&&ni&&(ke&&(Te.end=xt+rt*dt),Fe.push(Te),Te=at(yt)),ke&&(xt+=rt)}let It=yt.length-3,Bt=yt[It],Gt=yt[It+1],Kt=Ee===0?Bt:Gt;Kt>=Ke&&Kt<=Ne&&et(Te,Bt,Gt,yt[It+2]),It=Te.length-3,Ve&&It>=3&&(Te[It]!==Te[0]||Te[It+1]!==Te[1])&&et(Te,Te[0],Te[1],Te[2]),Te.length&&Fe.push(Te)}function at(yt){let Fe=[];return Fe.size=yt.size,Fe.start=yt.start,Fe.end=yt.end,Fe}function it(yt,Fe,Ke,Ne,Ee,Ve){for(let ke of yt)Ze(ke,Fe,Ke,Ne,Ee,Ve,!1)}function et(yt,Fe,Ke,Ne){yt.push(Fe,Ke,Ne)}function lt(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Fe)/(Ne-Fe);return et(yt,Ve,Ke+(Ee-Ke)*ke,1),ke}function Me(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Ke)/(Ee-Ke);return et(yt,Fe+(Ne-Fe)*ke,Ve,1),ke}function ge(yt,Fe){let Ke=[];for(let Ne=0;Ne<yt.length;Ne++){let Ee=yt[Ne],Ve=Ee.type,ke;if(Ve==="Point"||Ve==="MultiPoint"||Ve==="LineString")ke=ce(Ee.geometry,Fe);else if(Ve==="MultiLineString"||Ve==="Polygon"){ke=[];for(let Te of Ee.geometry)ke.push(ce(Te,Fe))}else if(Ve==="MultiPolygon"){ke=[];for(let Te of Ee.geometry){let Le=[];for(let rt of Te)Le.push(ce(rt,Fe));ke.push(Le)}}Ke.push(re(Ee.id,Ve,ke,Ee.tags))}return Ke}function ce(yt,Fe){let Ke=[];Ke.size=yt.size,yt.start!==void 0&&(Ke.start=yt.start,Ke.end=yt.end);for(let Ne=0;Ne<yt.length;Ne+=3)Ke.push(yt[Ne]+Fe,yt[Ne+1],yt[Ne+2]);return Ke}function ze(yt,Fe){if(yt.transformed)return yt;let Ke=1<<yt.z,Ne=yt.x,Ee=yt.y;for(let Ve of yt.features){let ke=Ve.geometry,Te=Ve.type;if(Ve.geometry=[],Te===1)for(let Le=0;Le<ke.length;Le+=2)Ve.geometry.push(tt(ke[Le],ke[Le+1],Fe,Ke,Ne,Ee));else for(let Le=0;Le<ke.length;Le++){let rt=[];for(let dt=0;dt<ke[Le].length;dt+=2)rt.push(tt(ke[Le][dt],ke[Le][dt+1],Fe,Ke,Ne,Ee));Ve.geometry.push(rt)}}return yt.transformed=!0,yt}function tt(yt,Fe,Ke,Ne,Ee,Ve){return[Math.round(Ke*(yt*Ne-Ee)),Math.round(Ke*(Fe*Ne-Ve))]}function nt(yt,Fe,Ke,Ne,Ee){let Ve=Fe===Ee.maxZoom?0:Ee.tolerance/((1<<Fe)*Ee.extent),ke={features:[],numPoints:0,numSimplified:0,numFeatures:yt.length,source:null,x:Ke,y:Ne,z:Fe,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0};for(let Te of yt)Qe(ke,Te,Ve,Ee);return ke}function Qe(yt,Fe,Ke,Ne){let Ee=Fe.geometry,Ve=Fe.type,ke=[];if(yt.minX=Math.min(yt.minX,Fe.minX),yt.minY=Math.min(yt.minY,Fe.minY),yt.maxX=Math.max(yt.maxX,Fe.maxX),yt.maxY=Math.max(yt.maxY,Fe.maxY),Ve==="Point"||Ve==="MultiPoint")for(let Te=0;Te<Ee.length;Te+=3)ke.push(Ee[Te],Ee[Te+1]),yt.numPoints++,yt.numSimplified++;else if(Ve==="LineString")Ct(ke,Ee,yt,Ke,!1,!1);else if(Ve==="MultiLineString"||Ve==="Polygon")for(let Te=0;Te<Ee.length;Te++)Ct(ke,Ee[Te],yt,Ke,Ve==="Polygon",Te===0);else if(Ve==="MultiPolygon")for(let Te=0;Te<Ee.length;Te++){let Le=Ee[Te];for(let rt=0;rt<Le.length;rt++)Ct(ke,Le[rt],yt,Ke,!0,rt===0)}if(ke.length){let Te=Fe.tags||null;if(Ve==="LineString"&&Ne.lineMetrics){Te={};for(let rt in Fe.tags)Te[rt]=Fe.tags[rt];Te.mapbox_clip_start=Ee.start/Ee.size,Te.mapbox_clip_end=Ee.end/Ee.size}let Le={geometry:ke,type:Ve==="Polygon"||Ve==="MultiPolygon"?3:Ve==="LineString"||Ve==="MultiLineString"?2:1,tags:Te};Fe.id!==null&&(Le.id=Fe.id),yt.features.push(Le)}}function Ct(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ne*Ne;if(Ne>0&&Fe.size<(Ee?ke:Ne))return void(Ke.numPoints+=Fe.length/3);let Te=[];for(let Le=0;Le<Fe.length;Le+=3)(Ne===0||Fe[Le+2]>ke)&&(Ke.numSimplified++,Te.push(Fe[Le],Fe[Le+1])),Ke.numPoints++;Ee&&function(Le,rt){let dt=0;for(let xt=0,It=Le.length,Bt=It-2;xt<It;Bt=xt,xt+=2)dt+=(Le[xt]-Le[Bt])*(Le[xt+1]+Le[Bt+1]);if(dt>0===rt)for(let xt=0,It=Le.length;xt<It/2;xt+=2){let Bt=Le[xt],Gt=Le[xt+1];Le[xt]=Le[It-2-xt],Le[xt+1]=Le[It-1-xt],Le[It-2-xt]=Bt,Le[It-1-xt]=Gt}}(Te,Ve),yt.push(Te)}let St={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class Ot{constructor(Fe,Ke){let Ne=(Ke=this.options=function(Ve,ke){for(let Te in ke)Ve[Te]=ke[Te];return Ve}(Object.create(St),Ke)).debug;if(Ne&&console.time("preprocess data"),Ke.maxZoom<0||Ke.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Ke.promoteId&&Ke.generateId)throw new Error("promoteId and generateId cannot be used together.");let Ee=function(Ve,ke){let Te=[];if(Ve.type==="FeatureCollection")for(let Le=0;Le<Ve.features.length;Le++)j(Te,Ve.features[Le],ke,Le);else j(Te,Ve.type==="Feature"?Ve:{geometry:Ve},ke);return Te}(Fe,Ke);this.tiles={},this.tileCoords=[],Ne&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Ke.indexMaxZoom,Ke.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ee=function(Ve,ke){let Te=ke.buffer/ke.extent,Le=Ve,rt=Be(Ve,1,-1-Te,Te,0,-1,2,ke),dt=Be(Ve,1,1-Te,2+Te,0,-1,2,ke);return(rt||dt)&&(Le=Be(Ve,1,-Te,1+Te,0,-1,2,ke)||[],rt&&(Le=ge(rt,1).concat(Le)),dt&&(Le=Le.concat(ge(dt,-1)))),Le}(Ee,Ke),Ee.length&&this.splitTile(Ee,0,0,0),Ne&&(Ee.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}splitTile(Fe,Ke,Ne,Ee,Ve,ke,Te){let Le=[Fe,Ke,Ne,Ee],rt=this.options,dt=rt.debug;for(;Le.length;){Ee=Le.pop(),Ne=Le.pop(),Ke=Le.pop(),Fe=Le.pop();let xt=1<<Ke,It=jt(Ke,Ne,Ee),Bt=this.tiles[It];if(!Bt&&(dt>1&&console.time("creation"),Bt=this.tiles[It]=nt(Fe,Ke,Ne,Ee,rt),this.tileCoords.push({z:Ke,x:Ne,y:Ee}),dt)){dt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Ke,Ne,Ee,Bt.numFeatures,Bt.numPoints,Bt.numSimplified),console.timeEnd("creation"));let ni=`z${Ke}`;this.stats[ni]=(this.stats[ni]||0)+1,this.total++}if(Bt.source=Fe,Ve==null){if(Ke===rt.indexMaxZoom||Bt.numPoints<=rt.indexMaxPoints)continue}else{if(Ke===rt.maxZoom||Ke===Ve)continue;if(Ve!=null){let ni=Ve-Ke;if(Ne!==ke>>ni||Ee!==Te>>ni)continue}}if(Bt.source=null,Fe.length===0)continue;dt>1&&console.time("clipping");let Gt=.5*rt.buffer/rt.extent,Kt=.5-Gt,sr=.5+Gt,sa=1+Gt,Aa=null,La=null,ka=null,Ga=null,Ma=Be(Fe,xt,Ne-Gt,Ne+sr,0,Bt.minX,Bt.maxX,rt),Ua=Be(Fe,xt,Ne+Kt,Ne+sa,0,Bt.minX,Bt.maxX,rt);Fe=null,Ma&&(Aa=Be(Ma,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),La=Be(Ma,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ma=null),Ua&&(ka=Be(Ua,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),Ga=Be(Ua,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ua=null),dt>1&&console.timeEnd("clipping"),Le.push(Aa||[],Ke+1,2*Ne,2*Ee),Le.push(La||[],Ke+1,2*Ne,2*Ee+1),Le.push(ka||[],Ke+1,2*Ne+1,2*Ee),Le.push(Ga||[],Ke+1,2*Ne+1,2*Ee+1)}}getTile(Fe,Ke,Ne){Fe=+Fe,Ke=+Ke,Ne=+Ne;let Ee=this.options,{extent:Ve,debug:ke}=Ee;if(Fe<0||Fe>24)return null;let Te=1<<Fe,Le=jt(Fe,Ke=Ke+Te&Te-1,Ne);if(this.tiles[Le])return ze(this.tiles[Le],Ve);ke>1&&console.log("drilling down to z%d-%d-%d",Fe,Ke,Ne);let rt,dt=Fe,xt=Ke,It=Ne;for(;!rt&&dt>0;)dt--,xt>>=1,It>>=1,rt=this.tiles[jt(dt,xt,It)];return rt&&rt.source?(ke>1&&(console.log("found parent tile z%d-%d-%d",dt,xt,It),console.time("drilling down")),this.splitTile(rt.source,dt,xt,It,Fe,Ke,Ne),ke>1&&console.timeEnd("drilling down"),this.tiles[Le]?ze(this.tiles[Le],Ve):null):null}}function jt(yt,Fe,Ke){return 32*((1<<yt)*Ke+Fe)+yt}function ur(yt,Fe){return Fe?yt.properties[Fe]:yt.id}function ar(yt,Fe){if(yt==null)return!0;if(yt.type==="Feature")return ur(yt,Fe)!=null;if(yt.type==="FeatureCollection"){let Ke=new Set;for(let Ne of yt.features){let Ee=ur(Ne,Fe);if(Ee==null||Ke.has(Ee))return!1;Ke.add(Ee)}return!0}return!1}function Cr(yt,Fe){let Ke=new Map;if(yt!=null)if(yt.type==="Feature")Ke.set(ur(yt,Fe),yt);else for(let Ne of yt.features)Ke.set(ur(Ne,Fe),Ne);return Ke}class vr extends i{constructor(){super(...arguments),this._dataUpdateable=new Map}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=Fe.tileID.canonical;if(!this._geoJSONIndex)throw new Error("Unable to parse the data into a cluster or geojson");let Ee=this._geoJSONIndex.getTile(Ne.z,Ne.x,Ne.y);if(!Ee)return null;let Ve=new class{constructor(Te){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.X,this.length=Te.length,this._features=Te}feature(Te){return new class{constructor(Le){this._feature=Le,this.extent=e.X,this.type=Le.type,this.properties=Le.tags,"id"in Le&&!isNaN(Le.id)&&(this.id=parseInt(Le.id,10))}loadGeometry(){if(this._feature.type===1){let Le=[];for(let rt of this._feature.geometry)Le.push([new e.P(rt[0],rt[1])]);return Le}{let Le=[];for(let rt of this._feature.geometry){let dt=[];for(let xt of rt)dt.push(new e.P(xt[0],xt[1]));Le.push(dt)}return Le}}toGeoJSON(Le,rt,dt){return v.call(this,Le,rt,dt)}}(this._features[Te])}}(Ee.features),ke=F(Ve);return ke.byteOffset===0&&ke.byteLength===ke.buffer.byteLength||(ke=new Uint8Array(ke)),{vectorTile:Ve,rawData:ke.buffer}})}loadData(Fe){return e._(this,void 0,void 0,function*(){var Ke;(Ke=this._pendingRequest)===null||Ke===void 0||Ke.abort();let Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request);this._pendingRequest=new AbortController;try{this._pendingData=this.loadAndProcessGeoJSON(Fe,this._pendingRequest),this._geoJSONIndex=Fe.cluster?new Q(function({superclusterOptions:ke,clusterProperties:Te}){if(!Te||!ke)return ke;let Le={},rt={},dt={accumulated:null,zoom:0},xt={properties:null},It=Object.keys(Te);for(let Bt of It){let[Gt,Kt]=Te[Bt],sr=e.bC(Kt),sa=e.bC(typeof Gt=="string"?[Gt,["accumulated"],["get",Bt]]:Gt);Le[Bt]=sr.value,rt[Bt]=sa.value}return ke.map=Bt=>{xt.properties=Bt;let Gt={};for(let Kt of It)Gt[Kt]=Le[Kt].evaluate(dt,xt);return Gt},ke.reduce=(Bt,Gt)=>{xt.properties=Gt;for(let Kt of It)dt.accumulated=Bt[Kt],Bt[Kt]=rt[Kt].evaluate(dt,xt)},ke}(Fe)).load((yield this._pendingData).features):(Ee=yield this._pendingData,new Ot(Ee,Fe.geojsonVtOptions)),this.loaded={};let Ve={};if(Ne){let ke=Ne.finish();ke&&(Ve.resourceTiming={},Ve.resourceTiming[Fe.source]=JSON.parse(JSON.stringify(ke)))}return Ve}catch(Ve){if(delete this._pendingRequest,e.bB(Ve))return{abandoned:!0};throw Ve}var Ee})}getData(){return e._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Fe){let Ke=this.loaded;return Ke&&Ke[Fe.uid]?super.reloadTile(Fe):this.loadTile(Fe)}loadAndProcessGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield this.loadGeoJSON(Fe,Ke);if(delete this._pendingRequest,typeof Ne!="object")throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(h(Ne,!0),Fe.filter){let Ee=e.bC(Fe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Ee.result==="error")throw new Error(Ee.value.map(ke=>`${ke.key}: ${ke.message}`).join(", "));Ne={type:"FeatureCollection",features:Ne.features.filter(ke=>Ee.value.evaluate({zoom:0},ke))}}return Ne})}loadGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let{promoteId:Ne}=Fe;if(Fe.request){let Ee=yield e.h(Fe.request,Ke);return this._dataUpdateable=ar(Ee.data,Ne)?Cr(Ee.data,Ne):void 0,Ee.data}if(typeof Fe.data=="string")try{let Ee=JSON.parse(Fe.data);return this._dataUpdateable=ar(Ee,Ne)?Cr(Ee,Ne):void 0,Ee}catch{throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`)}if(!Fe.dataDiff)throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Fe.source}`);return function(Ee,Ve,ke){var Te,Le,rt,dt;if(Ve.removeAll&&Ee.clear(),Ve.remove)for(let xt of Ve.remove)Ee.delete(xt);if(Ve.add)for(let xt of Ve.add){let It=ur(xt,ke);It!=null&&Ee.set(It,xt)}if(Ve.update)for(let xt of Ve.update){let It=Ee.get(xt.id);if(It==null)continue;let Bt=!xt.removeAllProperties&&(((Te=xt.removeProperties)===null||Te===void 0?void 0:Te.length)>0||((Le=xt.addOrUpdateProperties)===null||Le===void 0?void 0:Le.length)>0);if((xt.newGeometry||xt.removeAllProperties||Bt)&&(It=Object.assign({},It),Ee.set(xt.id,It),Bt&&(It.properties=Object.assign({},It.properties))),xt.newGeometry&&(It.geometry=xt.newGeometry),xt.removeAllProperties)It.properties={};else if(((rt=xt.removeProperties)===null||rt===void 0?void 0:rt.length)>0)for(let Gt of xt.removeProperties)Object.prototype.hasOwnProperty.call(It.properties,Gt)&&delete It.properties[Gt];if(((dt=xt.addOrUpdateProperties)===null||dt===void 0?void 0:dt.length)>0)for(let{key:Gt,value:Kt}of xt.addOrUpdateProperties)It.properties[Gt]=Kt}}(this._dataUpdateable,Fe.dataDiff,Ne),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Fe){return e._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Fe){return this._geoJSONIndex.getClusterExpansionZoom(Fe.clusterId)}getClusterChildren(Fe){return this._geoJSONIndex.getChildren(Fe.clusterId)}getClusterLeaves(Fe){return this._geoJSONIndex.getLeaves(Fe.clusterId,Fe.limit,Fe.offset)}}class _r{constructor(Fe){this.self=Fe,this.actor=new e.F(Fe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Ke,Ne)=>{if(this.externalWorkerSourceTypes[Ke])throw new Error(`Worker source with name "${Ke}" already registered.`);this.externalWorkerSourceTypes[Ke]=Ne},this.self.addProtocol=e.bi,this.self.removeProtocol=e.bj,this.self.registerRTLTextPlugin=Ke=>{if(e.bD.isParsed())throw new Error("RTL text plugin already registered.");e.bD.setMethods(Ke)},this.actor.registerMessageHandler("LDT",(Ke,Ne)=>this._getDEMWorkerSource(Ke,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RDT",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Ke,Ne.source).removeTile(Ne)})),this.actor.registerMessageHandler("GCEZ",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterExpansionZoom(Ne)})),this.actor.registerMessageHandler("GCC",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterChildren(Ne)})),this.actor.registerMessageHandler("GCL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterLeaves(Ne)})),this.actor.registerMessageHandler("LD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadData(Ne)),this.actor.registerMessageHandler("GD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).getData()),this.actor.registerMessageHandler("LT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).reloadTile(Ne)),this.actor.registerMessageHandler("AT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).abortTile(Ne)),this.actor.registerMessageHandler("RMT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).removeTile(Ne)),this.actor.registerMessageHandler("RS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){if(!this.workerSources[Ke]||!this.workerSources[Ke][Ne.type]||!this.workerSources[Ke][Ne.type][Ne.source])return;let Ee=this.workerSources[Ke][Ne.type][Ne.source];delete this.workerSources[Ke][Ne.type][Ne.source],Ee.removeSource!==void 0&&Ee.removeSource(Ne)})),this.actor.registerMessageHandler("RM",Ke=>e._(this,void 0,void 0,function*(){delete this.layerIndexes[Ke],delete this.availableImages[Ke],delete this.workerSources[Ke],delete this.demWorkerSources[Ke]})),this.actor.registerMessageHandler("SR",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.referrer=Ne})),this.actor.registerMessageHandler("SRPS",(Ke,Ne)=>this._syncRTLPluginState(Ke,Ne)),this.actor.registerMessageHandler("IS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.self.importScripts(Ne)})),this.actor.registerMessageHandler("SI",(Ke,Ne)=>this._setImages(Ke,Ne)),this.actor.registerMessageHandler("UL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).update(Ne.layers,Ne.removedIds)})),this.actor.registerMessageHandler("SL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).replace(Ne)}))}_setImages(Fe,Ke){return e._(this,void 0,void 0,function*(){this.availableImages[Fe]=Ke;for(let Ne in this.workerSources[Fe]){let Ee=this.workerSources[Fe][Ne];for(let Ve in Ee)Ee[Ve].availableImages=Ke}})}_syncRTLPluginState(Fe,Ke){return e._(this,void 0,void 0,function*(){if(e.bD.isParsed())return e.bD.getState();if(Ke.pluginStatus!=="loading")return e.bD.setState(Ke),Ke;let Ne=Ke.pluginURL;if(this.self.importScripts(Ne),e.bD.isParsed()){let Ee={pluginStatus:"loaded",pluginURL:Ne};return e.bD.setState(Ee),Ee}throw e.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ne}`)})}_getAvailableImages(Fe){let Ke=this.availableImages[Fe];return Ke||(Ke=[]),Ke}_getLayerIndex(Fe){let Ke=this.layerIndexes[Fe];return Ke||(Ke=this.layerIndexes[Fe]=new t),Ke}_getWorkerSource(Fe,Ke,Ne){if(this.workerSources[Fe]||(this.workerSources[Fe]={}),this.workerSources[Fe][Ke]||(this.workerSources[Fe][Ke]={}),!this.workerSources[Fe][Ke][Ne]){let Ee={sendAsync:(Ve,ke)=>(Ve.targetMapId=Fe,this.actor.sendAsync(Ve,ke))};switch(Ke){case"vector":this.workerSources[Fe][Ke][Ne]=new i(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;case"geojson":this.workerSources[Fe][Ke][Ne]=new vr(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;default:this.workerSources[Fe][Ke][Ne]=new this.externalWorkerSourceTypes[Ke](Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe))}}return this.workerSources[Fe][Ke][Ne]}_getDEMWorkerSource(Fe,Ke){return this.demWorkerSources[Fe]||(this.demWorkerSources[Fe]={}),this.demWorkerSources[Fe][Ke]||(this.demWorkerSources[Fe][Ke]=new n),this.demWorkerSources[Fe][Ke]}}return e.i(self)&&(self.worker=new _r(self)),_r}),A("index",["exports","./shared"],function(e,t){"use strict";var r="4.7.1";let o,a,i={now:typeof performance<"u"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:Oe=>new Promise((R,ae)=>{let we=requestAnimationFrame(R);Oe.signal.addEventListener("abort",()=>{cancelAnimationFrame(we),ae(t.c())})}),getImageData(Oe,R=0){return this.getImageCanvasContext(Oe).getImageData(-R,-R,Oe.width+2*R,Oe.height+2*R)},getImageCanvasContext(Oe){let R=window.document.createElement("canvas"),ae=R.getContext("2d",{willReadFrequently:!0});if(!ae)throw new Error("failed to create canvas 2d context");return R.width=Oe.width,R.height=Oe.height,ae.drawImage(Oe,0,0,Oe.width,Oe.height),ae},resolveURL:Oe=>(o||(o=document.createElement("a")),o.href=Oe,o.href),hardwareConcurrency:typeof navigator<"u"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(a==null&&(a=matchMedia("(prefers-reduced-motion: reduce)")),a.matches)}};class n{static testProp(R){if(!n.docStyle)return R[0];for(let ae=0;ae<R.length;ae++)if(R[ae]in n.docStyle)return R[ae];return R[0]}static create(R,ae,we){let Se=window.document.createElement(R);return ae!==void 0&&(Se.className=ae),we&&we.appendChild(Se),Se}static createNS(R,ae){return window.document.createElementNS(R,ae)}static disableDrag(){n.docStyle&&n.selectProp&&(n.userSelect=n.docStyle[n.selectProp],n.docStyle[n.selectProp]="none")}static enableDrag(){n.docStyle&&n.selectProp&&(n.docStyle[n.selectProp]=n.userSelect)}static setTransform(R,ae){R.style[n.transformProp]=ae}static addEventListener(R,ae,we,Se={}){R.addEventListener(ae,we,"passive"in Se?Se:Se.capture)}static removeEventListener(R,ae,we,Se={}){R.removeEventListener(ae,we,"passive"in Se?Se:Se.capture)}static suppressClickInternal(R){R.preventDefault(),R.stopPropagation(),window.removeEventListener("click",n.suppressClickInternal,!0)}static suppressClick(){window.addEventListener("click",n.suppressClickInternal,!0),window.setTimeout(()=>{window.removeEventListener("click",n.suppressClickInternal,!0)},0)}static getScale(R){let ae=R.getBoundingClientRect();return{x:ae.width/R.offsetWidth||1,y:ae.height/R.offsetHeight||1,boundingClientRect:ae}}static getPoint(R,ae,we){let Se=ae.boundingClientRect;return new t.P((we.clientX-Se.left)/ae.x-R.clientLeft,(we.clientY-Se.top)/ae.y-R.clientTop)}static mousePos(R,ae){let we=n.getScale(R);return n.getPoint(R,we,ae)}static touchPos(R,ae){let we=[],Se=n.getScale(R);for(let De=0;De<ae.length;De++)we.push(n.getPoint(R,Se,ae[De]));return we}static mouseButton(R){return R.button}static remove(R){R.parentNode&&R.parentNode.removeChild(R)}}n.docStyle=typeof window<"u"&&window.document&&window.document.documentElement.style,n.selectProp=n.testProp(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),n.transformProp=n.testProp(["transform","WebkitTransform"]);let s={supported:!1,testSupport:function(Oe){!v&&h&&(p?T(Oe):c=Oe)}},c,h,v=!1,p=!1;function T(Oe){let R=Oe.createTexture();Oe.bindTexture(Oe.TEXTURE_2D,R);try{if(Oe.texImage2D(Oe.TEXTURE_2D,0,Oe.RGBA,Oe.RGBA,Oe.UNSIGNED_BYTE,h),Oe.isContextLost())return;s.supported=!0}catch{}Oe.deleteTexture(R),v=!0}var l;typeof document<"u"&&(h=document.createElement("img"),h.onload=()=>{c&&T(c),c=null,p=!0},h.onerror=()=>{v=!0,c=null},h.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(Oe){let R,ae,we,Se;Oe.resetRequestQueue=()=>{R=[],ae=0,we=0,Se={}},Oe.addThrottleControl=Dt=>{let Yt=we++;return Se[Yt]=Dt,Yt},Oe.removeThrottleControl=Dt=>{delete Se[Dt],ft()},Oe.getImage=(Dt,Yt,cr=!0)=>new Promise((hr,jr)=>{s.supported&&(Dt.headers||(Dt.headers={}),Dt.headers.accept="image/webp,*/*"),t.e(Dt,{type:"image"}),R.push({abortController:Yt,requestParameters:Dt,supportImageRefresh:cr,state:"queued",onError:ea=>{jr(ea)},onSuccess:ea=>{hr(ea)}}),ft()});let De=Dt=>t._(this,void 0,void 0,function*(){Dt.state="running";let{requestParameters:Yt,supportImageRefresh:cr,onError:hr,onSuccess:jr,abortController:ea}=Dt,qe=cr===!1&&!t.i(self)&&!t.g(Yt.url)&&(!Yt.headers||Object.keys(Yt.headers).reduce((ht,At)=>ht&&At==="accept",!0));ae++;let Je=qe?bt(Yt,ea):t.m(Yt,ea);try{let ht=yield Je;delete Dt.abortController,Dt.state="completed",ht.data instanceof HTMLImageElement||t.b(ht.data)?jr(ht):ht.data&&jr({data:yield(ot=ht.data,typeof createImageBitmap=="function"?t.d(ot):t.f(ot)),cacheControl:ht.cacheControl,expires:ht.expires})}catch(ht){delete Dt.abortController,hr(ht)}finally{ae--,ft()}var ot}),ft=()=>{let Dt=(()=>{for(let Yt of Object.keys(Se))if(Se[Yt]())return!0;return!1})()?t.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:t.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Yt=ae;Yt<Dt&&R.length>0;Yt++){let cr=R.shift();cr.abortController.signal.aborted?Yt--:De(cr)}},bt=(Dt,Yt)=>new Promise((cr,hr)=>{let jr=new Image,ea=Dt.url,qe=Dt.credentials;qe&&qe==="include"?jr.crossOrigin="use-credentials":(qe&&qe==="same-origin"||!t.s(ea))&&(jr.crossOrigin="anonymous"),Yt.signal.addEventListener("abort",()=>{jr.src="",hr(t.c())}),jr.fetchPriority="high",jr.onload=()=>{jr.onerror=jr.onload=null,cr({data:jr})},jr.onerror=()=>{jr.onerror=jr.onload=null,Yt.signal.aborted||hr(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},jr.src=ea})}(l||(l={})),l.resetRequestQueue();class _{constructor(R){this._transformRequestFn=R}transformRequest(R,ae){return this._transformRequestFn&&this._transformRequestFn(R,ae)||{url:R}}setTransformRequest(R){this._transformRequestFn=R}}function w(Oe){var R=new t.A(3);return R[0]=Oe[0],R[1]=Oe[1],R[2]=Oe[2],R}var S,E=function(Oe,R,ae){return Oe[0]=R[0]-ae[0],Oe[1]=R[1]-ae[1],Oe[2]=R[2]-ae[2],Oe};S=new t.A(3),t.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var m=function(Oe){var R=Oe[0],ae=Oe[1];return R*R+ae*ae};function b(Oe){let R=[];if(typeof Oe=="string")R.push({id:"default",url:Oe});else if(Oe&&Oe.length>0){let ae=[];for(let{id:we,url:Se}of Oe){let De=`${we}${Se}`;ae.indexOf(De)===-1&&(ae.push(De),R.push({id:we,url:Se}))}}return R}function d(Oe,R,ae){let we=Oe.split("?");return we[0]+=`${R}${ae}`,we.join("?")}(function(){var Oe=new t.A(2);t.A!=Float32Array&&(Oe[0]=0,Oe[1]=0)})();class u{constructor(R,ae,we,Se){this.context=R,this.format=we,this.texture=R.gl.createTexture(),this.update(ae,Se)}update(R,ae,we){let{width:Se,height:De}=R,ft=!(this.size&&this.size[0]===Se&&this.size[1]===De||we),{context:bt}=this,{gl:Dt}=bt;if(this.useMipmap=!!(ae&&ae.useMipmap),Dt.bindTexture(Dt.TEXTURE_2D,this.texture),bt.pixelStoreUnpackFlipY.set(!1),bt.pixelStoreUnpack.set(1),bt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Dt.RGBA&&(!ae||ae.premultiply!==!1)),ft)this.size=[Se,De],R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,this.format,Dt.UNSIGNED_BYTE,R):Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,Se,De,0,this.format,Dt.UNSIGNED_BYTE,R.data);else{let{x:Yt,y:cr}=we||{x:0,y:0};R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Dt.RGBA,Dt.UNSIGNED_BYTE,R):Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Se,De,Dt.RGBA,Dt.UNSIGNED_BYTE,R.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Dt.generateMipmap(Dt.TEXTURE_2D)}bind(R,ae,we){let{context:Se}=this,{gl:De}=Se;De.bindTexture(De.TEXTURE_2D,this.texture),we!==De.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(we=De.LINEAR),R!==this.filter&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,R),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,we||R),this.filter=R),ae!==this.wrap&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,ae),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,ae),this.wrap=ae)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:R}=this.context;R.deleteTexture(this.texture),this.texture=null}}function y(Oe){let{userImage:R}=Oe;return!!(R&&R.render&&R.render())&&(Oe.data.replace(new Uint8Array(R.data.buffer)),!0)}class f extends t.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(R){if(this.loaded!==R&&(this.loaded=R,R)){for(let{ids:ae,promiseResolve:we}of this.requestors)we(this._getImagesForIds(ae));this.requestors=[]}}getImage(R){let ae=this.images[R];if(ae&&!ae.data&&ae.spriteData){let we=ae.spriteData;ae.data=new t.R({width:we.width,height:we.height},we.context.getImageData(we.x,we.y,we.width,we.height).data),ae.spriteData=null}return ae}addImage(R,ae){if(this.images[R])throw new Error(`Image id ${R} already exist, use updateImage instead`);this._validate(R,ae)&&(this.images[R]=ae)}_validate(R,ae){let we=!0,Se=ae.data||ae.spriteData;return this._validateStretch(ae.stretchX,Se&&Se.width)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchX" value`))),we=!1),this._validateStretch(ae.stretchY,Se&&Se.height)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchY" value`))),we=!1),this._validateContent(ae.content,ae)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "content" value`))),we=!1),we}_validateStretch(R,ae){if(!R)return!0;let we=0;for(let Se of R){if(Se[0]<we||Se[1]<Se[0]||ae<Se[1])return!1;we=Se[1]}return!0}_validateContent(R,ae){if(!R)return!0;if(R.length!==4)return!1;let we=ae.spriteData,Se=we&&we.width||ae.data.width,De=we&&we.height||ae.data.height;return!(R[0]<0||Se<R[0]||R[1]<0||De<R[1]||R[2]<0||Se<R[2]||R[3]<0||De<R[3]||R[2]<R[0]||R[3]<R[1])}updateImage(R,ae,we=!0){let Se=this.getImage(R);if(we&&(Se.data.width!==ae.data.width||Se.data.height!==ae.data.height))throw new Error(`size mismatch between old image (${Se.data.width}x${Se.data.height}) and new image (${ae.data.width}x${ae.data.height}).`);ae.version=Se.version+1,this.images[R]=ae,this.updatedImages[R]=!0}removeImage(R){let ae=this.images[R];delete this.images[R],delete this.patterns[R],ae.userImage&&ae.userImage.onRemove&&ae.userImage.onRemove()}listImages(){return Object.keys(this.images)}getImages(R){return new Promise((ae,we)=>{let Se=!0;if(!this.isLoaded())for(let De of R)this.images[De]||(Se=!1);this.isLoaded()||Se?ae(this._getImagesForIds(R)):this.requestors.push({ids:R,promiseResolve:ae})})}_getImagesForIds(R){let ae={};for(let we of R){let Se=this.getImage(we);Se||(this.fire(new t.k("styleimagemissing",{id:we})),Se=this.getImage(we)),Se?ae[we]={data:Se.data.clone(),pixelRatio:Se.pixelRatio,sdf:Se.sdf,version:Se.version,stretchX:Se.stretchX,stretchY:Se.stretchY,content:Se.content,textFitWidth:Se.textFitWidth,textFitHeight:Se.textFitHeight,hasRenderCallback:!!(Se.userImage&&Se.userImage.render)}:t.w(`Image "${we}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return ae}getPixelSize(){let{width:R,height:ae}=this.atlasImage;return{width:R,height:ae}}getPattern(R){let ae=this.patterns[R],we=this.getImage(R);if(!we)return null;if(ae&&ae.position.version===we.version)return ae.position;if(ae)ae.position.version=we.version;else{let Se={w:we.data.width+2,h:we.data.height+2,x:0,y:0},De=new t.I(Se,we);this.patterns[R]={bin:Se,position:De}}return this._updatePatternAtlas(),this.patterns[R].position}bind(R){let ae=R.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new u(R,this.atlasImage,ae.RGBA),this.atlasTexture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE)}_updatePatternAtlas(){let R=[];for(let De in this.patterns)R.push(this.patterns[De].bin);let{w:ae,h:we}=t.p(R),Se=this.atlasImage;Se.resize({width:ae||1,height:we||1});for(let De in this.patterns){let{bin:ft}=this.patterns[De],bt=ft.x+1,Dt=ft.y+1,Yt=this.getImage(De).data,cr=Yt.width,hr=Yt.height;t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt},{width:cr,height:hr}),t.R.copy(Yt,Se,{x:0,y:hr-1},{x:bt,y:Dt-1},{width:cr,height:1}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt+hr},{width:cr,height:1}),t.R.copy(Yt,Se,{x:cr-1,y:0},{x:bt-1,y:Dt},{width:1,height:hr}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt+cr,y:Dt},{width:1,height:hr})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(R){for(let ae of R){if(this.callbackDispatchedThisFrame[ae])continue;this.callbackDispatchedThisFrame[ae]=!0;let we=this.getImage(ae);we||t.w(`Image with ID: "${ae}" was not found`),y(we)&&this.updateImage(ae,we)}}}let P=1e20;function L(Oe,R,ae,we,Se,De,ft,bt,Dt){for(let Yt=R;Yt<R+we;Yt++)z(Oe,ae*De+Yt,De,Se,ft,bt,Dt);for(let Yt=ae;Yt<ae+Se;Yt++)z(Oe,Yt*De+R,1,we,ft,bt,Dt)}function z(Oe,R,ae,we,Se,De,ft){De[0]=0,ft[0]=-P,ft[1]=P,Se[0]=Oe[R];for(let bt=1,Dt=0,Yt=0;bt<we;bt++){Se[bt]=Oe[R+bt*ae];let cr=bt*bt;do{let hr=De[Dt];Yt=(Se[bt]-Se[hr]+cr-hr*hr)/(bt-hr)/2}while(Yt<=ft[Dt]&&--Dt>-1);Dt++,De[Dt]=bt,ft[Dt]=Yt,ft[Dt+1]=P}for(let bt=0,Dt=0;bt<we;bt++){for(;ft[Dt+1]<bt;)Dt++;let Yt=De[Dt],cr=bt-Yt;Oe[R+bt*ae]=Se[Yt]+cr*cr}}class F{constructor(R,ae){this.requestManager=R,this.localIdeographFontFamily=ae,this.entries={}}setURL(R){this.url=R}getGlyphs(R){return t._(this,void 0,void 0,function*(){let ae=[];for(let De in R)for(let ft of R[De])ae.push(this._getAndCacheGlyphsPromise(De,ft));let we=yield Promise.all(ae),Se={};for(let{stack:De,id:ft,glyph:bt}of we)Se[De]||(Se[De]={}),Se[De][ft]=bt&&{id:bt.id,bitmap:bt.bitmap.clone(),metrics:bt.metrics};return Se})}_getAndCacheGlyphsPromise(R,ae){return t._(this,void 0,void 0,function*(){let we=this.entries[R];we||(we=this.entries[R]={glyphs:{},requests:{},ranges:{}});let Se=we.glyphs[ae];if(Se!==void 0)return{stack:R,id:ae,glyph:Se};if(Se=this._tinySDF(we,R,ae),Se)return we.glyphs[ae]=Se,{stack:R,id:ae,glyph:Se};let De=Math.floor(ae/256);if(256*De>65535)throw new Error("glyphs > 65535 not supported");if(we.ranges[De])return{stack:R,id:ae,glyph:Se};if(!this.url)throw new Error("glyphsUrl is not set");if(!we.requests[De]){let bt=F.loadGlyphRange(R,De,this.url,this.requestManager);we.requests[De]=bt}let ft=yield we.requests[De];for(let bt in ft)this._doesCharSupportLocalGlyph(+bt)||(we.glyphs[+bt]=ft[+bt]);return we.ranges[De]=!0,{stack:R,id:ae,glyph:ft[ae]||null}})}_doesCharSupportLocalGlyph(R){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(R))}_tinySDF(R,ae,we){let Se=this.localIdeographFontFamily;if(!Se||!this._doesCharSupportLocalGlyph(we))return;let De=R.tinySDF;if(!De){let bt="400";/bold/i.test(ae)?bt="900":/medium/i.test(ae)?bt="500":/light/i.test(ae)&&(bt="200"),De=R.tinySDF=new F.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:Se,fontWeight:bt})}let ft=De.draw(String.fromCharCode(we));return{id:we,bitmap:new t.o({width:ft.width||60,height:ft.height||60},ft.data),metrics:{width:ft.glyphWidth/2||24,height:ft.glyphHeight/2||24,left:ft.glyphLeft/2+.5||0,top:ft.glyphTop/2-27.5||-8,advance:ft.glyphAdvance/2||24,isDoubleResolution:!0}}}}F.loadGlyphRange=function(Oe,R,ae,we){return t._(this,void 0,void 0,function*(){let Se=256*R,De=Se+255,ft=we.transformRequest(ae.replace("{fontstack}",Oe).replace("{range}",`${Se}-${De}`),"Glyphs"),bt=yield t.l(ft,new AbortController);if(!bt||!bt.data)throw new Error(`Could not load glyph range. range: ${R}, ${Se}-${De}`);let Dt={};for(let Yt of t.n(bt.data))Dt[Yt.id]=Yt;return Dt})},F.TinySDF=class{constructor({fontSize:Oe=24,buffer:R=3,radius:ae=8,cutoff:we=.25,fontFamily:Se="sans-serif",fontWeight:De="normal",fontStyle:ft="normal"}={}){this.buffer=R,this.cutoff=we,this.radius=ae;let bt=this.size=Oe+4*R,Dt=this._createCanvas(bt),Yt=this.ctx=Dt.getContext("2d",{willReadFrequently:!0});Yt.font=`${ft} ${De} ${Oe}px ${Se}`,Yt.textBaseline="alphabetic",Yt.textAlign="left",Yt.fillStyle="black",this.gridOuter=new Float64Array(bt*bt),this.gridInner=new Float64Array(bt*bt),this.f=new Float64Array(bt),this.z=new Float64Array(bt+1),this.v=new Uint16Array(bt)}_createCanvas(Oe){let R=document.createElement("canvas");return R.width=R.height=Oe,R}draw(Oe){let{width:R,actualBoundingBoxAscent:ae,actualBoundingBoxDescent:we,actualBoundingBoxLeft:Se,actualBoundingBoxRight:De}=this.ctx.measureText(Oe),ft=Math.ceil(ae),bt=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(De-Se))),Dt=Math.min(this.size-this.buffer,ft+Math.ceil(we)),Yt=bt+2*this.buffer,cr=Dt+2*this.buffer,hr=Math.max(Yt*cr,0),jr=new Uint8ClampedArray(hr),ea={data:jr,width:Yt,height:cr,glyphWidth:bt,glyphHeight:Dt,glyphTop:ft,glyphLeft:0,glyphAdvance:R};if(bt===0||Dt===0)return ea;let{ctx:qe,buffer:Je,gridInner:ot,gridOuter:ht}=this;qe.clearRect(Je,Je,bt,Dt),qe.fillText(Oe,Je,Je+ft);let At=qe.getImageData(Je,Je,bt,Dt);ht.fill(P,0,hr),ot.fill(0,0,hr);for(let _t=0;_t<Dt;_t++)for(let Pt=0;Pt<bt;Pt++){let er=At.data[4*(_t*bt+Pt)+3]/255;if(er===0)continue;let nr=(_t+Je)*Yt+Pt+Je;if(er===1)ht[nr]=0,ot[nr]=P;else{let pr=.5-er;ht[nr]=pr>0?pr*pr:0,ot[nr]=pr<0?pr*pr:0}}L(ht,0,0,Yt,cr,Yt,this.f,this.v,this.z),L(ot,Je,Je,bt,Dt,Yt,this.f,this.v,this.z);for(let _t=0;_t<hr;_t++){let Pt=Math.sqrt(ht[_t])-Math.sqrt(ot[_t]);jr[_t]=Math.round(255-255*(Pt/this.radius+this.cutoff))}return ea}};class B{constructor(){this.specification=t.v.light.position}possiblyEvaluate(R,ae){return t.x(R.expression.evaluate(ae))}interpolate(R,ae,we){return{x:t.y.number(R.x,ae.x,we),y:t.y.number(R.y,ae.y,we),z:t.y.number(R.z,ae.z,we)}}}let O;class I extends t.E{constructor(R){super(),O=O||new t.q({anchor:new t.D(t.v.light.anchor),position:new B,color:new t.D(t.v.light.color),intensity:new t.D(t.v.light.intensity)}),this._transitionable=new t.T(O),this.setLight(R),this._transitioning=this._transitionable.untransitioned()}getLight(){return this._transitionable.serialize()}setLight(R,ae={}){if(!this._validate(t.r,R,ae))for(let we in R){let Se=R[we];we.endsWith("-transition")?this._transitionable.setTransition(we.slice(0,-11),Se):this._transitionable.setValue(we,Se)}}updateTransitions(R){this._transitioning=this._transitionable.transitioned(R,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(R){this.properties=this._transitioning.possiblyEvaluate(R)}_validate(R,ae,we){return(!we||we.validate!==!1)&&t.t(this,R.call(t.u,{value:ae,style:{glyphs:!0,sprite:!0},styleSpec:t.v}))}}let N=new t.q({"sky-color":new t.D(t.v.sky["sky-color"]),"horizon-color":new t.D(t.v.sky["horizon-color"]),"fog-color":new t.D(t.v.sky["fog-color"]),"fog-ground-blend":new t.D(t.v.sky["fog-ground-blend"]),"horizon-fog-blend":new t.D(t.v.sky["horizon-fog-blend"]),"sky-horizon-blend":new t.D(t.v.sky["sky-horizon-blend"]),"atmosphere-blend":new t.D(t.v.sky["atmosphere-blend"])});class U extends t.E{constructor(R){super(),this._transitionable=new t.T(N),this.setSky(R),this._transitioning=this._transitionable.untransitioned(),this.recalculate(new t.z(0))}setSky(R,ae={}){if(!this._validate(t.B,R,ae)){R||(R={"sky-color":"transparent","horizon-color":"transparent","fog-color":"transparent","fog-ground-blend":1,"atmosphere-blend":0});for(let we in R){let Se=R[we];we.endsWith("-transition")?this._transitionable.setTransition(we.slice(0,-11),Se):this._transitionable.setValue(we,Se)}}}getSky(){return this._transitionable.serialize()}updateTransitions(R){this._transitioning=this._transitionable.transitioned(R,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(R){this.properties=this._transitioning.possiblyEvaluate(R)}_validate(R,ae,we={}){return we?.validate!==!1&&t.t(this,R.call(t.u,t.e({value:ae,style:{glyphs:!0,sprite:!0},styleSpec:t.v})))}calculateFogBlendOpacity(R){return R<60?0:R<70?(R-60)/10:1}}class W{constructor(R,ae){this.width=R,this.height=ae,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}}getDash(R,ae){let we=R.join(",")+String(ae);return this.dashEntry[we]||(this.dashEntry[we]=this.addDash(R,ae)),this.dashEntry[we]}getDashRanges(R,ae,we){let Se=[],De=R.length%2==1?-R[R.length-1]*we:0,ft=R[0]*we,bt=!0;Se.push({left:De,right:ft,isDash:bt,zeroLength:R[0]===0});let Dt=R[0];for(let Yt=1;Yt<R.length;Yt++){bt=!bt;let cr=R[Yt];De=Dt*we,Dt+=cr,ft=Dt*we,Se.push({left:De,right:ft,isDash:bt,zeroLength:cr===0})}return Se}addRoundDash(R,ae,we){let Se=ae/2;for(let De=-we;De<=we;De++){let ft=this.width*(this.nextRow+we+De),bt=0,Dt=R[bt];for(let Yt=0;Yt<this.width;Yt++){Yt/Dt.right>1&&(Dt=R[++bt]);let cr=Math.abs(Yt-Dt.left),hr=Math.abs(Yt-Dt.right),jr=Math.min(cr,hr),ea,qe=De/we*(Se+1);if(Dt.isDash){let Je=Se-Math.abs(qe);ea=Math.sqrt(jr*jr+Je*Je)}else ea=Se-Math.sqrt(jr*jr+qe*qe);this.data[ft+Yt]=Math.max(0,Math.min(255,ea+128))}}}addRegularDash(R){for(let bt=R.length-1;bt>=0;--bt){let Dt=R[bt],Yt=R[bt+1];Dt.zeroLength?R.splice(bt,1):Yt&&Yt.isDash===Dt.isDash&&(Yt.left=Dt.left,R.splice(bt,1))}let ae=R[0],we=R[R.length-1];ae.isDash===we.isDash&&(ae.left=we.left-this.width,we.right=ae.right+this.width);let Se=this.width*this.nextRow,De=0,ft=R[De];for(let bt=0;bt<this.width;bt++){bt/ft.right>1&&(ft=R[++De]);let Dt=Math.abs(bt-ft.left),Yt=Math.abs(bt-ft.right),cr=Math.min(Dt,Yt);this.data[Se+bt]=Math.max(0,Math.min(255,(ft.isDash?cr:-cr)+128))}}addDash(R,ae){let we=ae?7:0,Se=2*we+1;if(this.nextRow+Se>this.height)return t.w("LineAtlas out of space"),null;let De=0;for(let bt=0;bt<R.length;bt++)De+=R[bt];if(De!==0){let bt=this.width/De,Dt=this.getDashRanges(R,this.width,bt);ae?this.addRoundDash(Dt,bt,we):this.addRegularDash(Dt)}let ft={y:(this.nextRow+we+.5)/this.height,height:2*we/this.height,width:De};return this.nextRow+=Se,this.dirty=!0,ft}bind(R){let ae=R.gl;this.texture?(ae.bindTexture(ae.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,this.width,this.height,ae.ALPHA,ae.UNSIGNED_BYTE,this.data))):(this.texture=ae.createTexture(),ae.bindTexture(ae.TEXTURE_2D,this.texture),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_WRAP_S,ae.REPEAT),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_WRAP_T,ae.REPEAT),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_MIN_FILTER,ae.LINEAR),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_MAG_FILTER,ae.LINEAR),ae.texImage2D(ae.TEXTURE_2D,0,ae.ALPHA,this.width,this.height,0,ae.ALPHA,ae.UNSIGNED_BYTE,this.data))}}let Q="maplibre_preloaded_worker_pool";class ue{constructor(){this.active={}}acquire(R){if(!this.workers)for(this.workers=[];this.workers.length<ue.workerCount;)this.workers.push(new Worker(t.a.WORKER_URL));return this.active[R]=!0,this.workers.slice()}release(R){delete this.active[R],this.numActive()===0&&(this.workers.forEach(ae=>{ae.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[Q]}numActive(){return Object.keys(this.active).length}}let se=Math.floor(i.hardwareConcurrency/2),he,G;function $(){return he||(he=new ue),he}ue.workerCount=t.C(globalThis)?Math.max(Math.min(se,3),1):1;class J{constructor(R,ae){this.workerPool=R,this.actors=[],this.currentActor=0,this.id=ae;let we=this.workerPool.acquire(ae);for(let Se=0;Se<we.length;Se++){let De=new t.F(we[Se],ae);De.name=`Worker ${Se}`,this.actors.push(De)}if(!this.actors.length)throw new Error("No actors found")}broadcast(R,ae){let we=[];for(let Se of this.actors)we.push(Se.sendAsync({type:R,data:ae}));return Promise.all(we)}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(R=!0){this.actors.forEach(ae=>{ae.remove()}),this.actors=[],R&&this.workerPool.release(this.id)}registerMessageHandler(R,ae){for(let we of this.actors)we.registerMessageHandler(R,ae)}}function Z(){return G||(G=new J($(),t.G),G.registerMessageHandler("GR",(Oe,R,ae)=>t.m(R,ae))),G}function re(Oe,R){let ae=t.H();return t.J(ae,ae,[1,1,0]),t.K(ae,ae,[.5*Oe.width,.5*Oe.height,1]),t.L(ae,ae,Oe.calculatePosMatrix(R.toUnwrapped()))}function ne(Oe,R,ae,we,Se,De){let ft=function(hr,jr,ea){if(hr)for(let qe of hr){let Je=jr[qe];if(Je&&Je.source===ea&&Je.type==="fill-extrusion")return!0}else for(let qe in jr){let Je=jr[qe];if(Je.source===ea&&Je.type==="fill-extrusion")return!0}return!1}(Se&&Se.layers,R,Oe.id),bt=De.maxPitchScaleFactor(),Dt=Oe.tilesIn(we,bt,ft);Dt.sort(j);let Yt=[];for(let hr of Dt)Yt.push({wrappedTileID:hr.tileID.wrapped().key,queryResults:hr.tile.queryRenderedFeatures(R,ae,Oe._state,hr.queryGeometry,hr.cameraQueryGeometry,hr.scale,Se,De,bt,re(Oe.transform,hr.tileID))});let cr=function(hr){let jr={},ea={};for(let qe of hr){let Je=qe.queryResults,ot=qe.wrappedTileID,ht=ea[ot]=ea[ot]||{};for(let At in Je){let _t=Je[At],Pt=ht[At]=ht[At]||{},er=jr[At]=jr[At]||[];for(let nr of _t)Pt[nr.featureIndex]||(Pt[nr.featureIndex]=!0,er.push(nr))}}return jr}(Yt);for(let hr in cr)cr[hr].forEach(jr=>{let ea=jr.feature,qe=Oe.getFeatureState(ea.layer["source-layer"],ea.id);ea.source=ea.layer.source,ea.layer["source-layer"]&&(ea.sourceLayer=ea.layer["source-layer"]),ea.state=qe});return cr}function j(Oe,R){let ae=Oe.tileID,we=R.tileID;return ae.overscaledZ-we.overscaledZ||ae.canonical.y-we.canonical.y||ae.wrap-we.wrap||ae.canonical.x-we.canonical.x}function ee(Oe,R,ae){return t._(this,void 0,void 0,function*(){let we=Oe;if(Oe.url?we=(yield t.h(R.transformRequest(Oe.url,"Source"),ae)).data:yield i.frameAsync(ae),!we)return null;let Se=t.M(t.e(we,Oe),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in we&&we.vector_layers&&(Se.vectorLayerIds=we.vector_layers.map(De=>De.id)),Se})}class ie{constructor(R,ae){R&&(ae?this.setSouthWest(R).setNorthEast(ae):Array.isArray(R)&&(R.length===4?this.setSouthWest([R[0],R[1]]).setNorthEast([R[2],R[3]]):this.setSouthWest(R[0]).setNorthEast(R[1])))}setNorthEast(R){return this._ne=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}setSouthWest(R){return this._sw=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}extend(R){let ae=this._sw,we=this._ne,Se,De;if(R instanceof t.N)Se=R,De=R;else{if(!(R instanceof ie))return Array.isArray(R)?R.length===4||R.every(Array.isArray)?this.extend(ie.convert(R)):this.extend(t.N.convert(R)):R&&("lng"in R||"lon"in R)&&"lat"in R?this.extend(t.N.convert(R)):this;if(Se=R._sw,De=R._ne,!Se||!De)return this}return ae||we?(ae.lng=Math.min(Se.lng,ae.lng),ae.lat=Math.min(Se.lat,ae.lat),we.lng=Math.max(De.lng,we.lng),we.lat=Math.max(De.lat,we.lat)):(this._sw=new t.N(Se.lng,Se.lat),this._ne=new t.N(De.lng,De.lat)),this}getCenter(){return new t.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new t.N(this.getWest(),this.getNorth())}getSouthEast(){return new t.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(R){let{lng:ae,lat:we}=t.N.convert(R),Se=this._sw.lng<=ae&&ae<=this._ne.lng;return this._sw.lng>this._ne.lng&&(Se=this._sw.lng>=ae&&ae>=this._ne.lng),this._sw.lat<=we&&we<=this._ne.lat&&Se}static convert(R){return R instanceof ie?R:R&&new ie(R)}static fromLngLat(R,ae=0){let we=360*ae/40075017,Se=we/Math.cos(Math.PI/180*R.lat);return new ie(new t.N(R.lng-Se,R.lat-we),new t.N(R.lng+Se,R.lat+we))}adjustAntiMeridian(){let R=new t.N(this._sw.lng,this._sw.lat),ae=new t.N(this._ne.lng,this._ne.lat);return new ie(R,R.lng>ae.lng?new t.N(ae.lng+360,ae.lat):ae)}}class fe{constructor(R,ae,we){this.bounds=ie.convert(this.validateBounds(R)),this.minzoom=ae||0,this.maxzoom=we||24}validateBounds(R){return Array.isArray(R)&&R.length===4?[Math.max(-180,R[0]),Math.max(-90,R[1]),Math.min(180,R[2]),Math.min(90,R[3])]:[-180,-90,180,90]}contains(R){let ae=Math.pow(2,R.z),we=Math.floor(t.O(this.bounds.getWest())*ae),Se=Math.floor(t.Q(this.bounds.getNorth())*ae),De=Math.ceil(t.O(this.bounds.getEast())*ae),ft=Math.ceil(t.Q(this.bounds.getSouth())*ae);return R.x>=we&&R.x<De&&R.y>=Se&&R.y<ft}}class be extends t.E{constructor(R,ae,we,Se){if(super(),this.id=R,this.dispatcher=we,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,t.e(this,t.M(ae,["url","scheme","tileSize","promoteId"])),this._options=t.e({type:"vector"},ae),this._collectResourceTiming=ae.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(Se)}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}onAdd(R){this.map=R,this.load()}setSourceProperty(R){this._tileJSONRequest&&this._tileJSONRequest.abort(),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return t.e({},this._options)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we={request:this.map._requestManager.transformRequest(ae,"Tile"),uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,tileSize:this.tileSize*R.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};we.request.collectResourceTiming=this._collectResourceTiming;let Se="RT";if(R.actor&&R.state!=="expired"){if(R.state==="loading")return new Promise((De,ft)=>{R.reloadPromise={resolve:De,reject:ft}})}else R.actor=this.dispatcher.getActor(),Se="LT";R.abortController=new AbortController;try{let De=yield R.actor.sendAsync({type:Se,data:we},R.abortController);if(delete R.abortController,R.aborted)return;this._afterTileLoadWorkerResponse(R,De)}catch(De){if(delete R.abortController,R.aborted)return;if(De&&De.status!==404)throw De;this._afterTileLoadWorkerResponse(R,null)}})}_afterTileLoadWorkerResponse(R,ae){if(ae&&ae.resourceTiming&&(R.resourceTiming=ae.resourceTiming),ae&&this.map._refreshExpiredTiles&&R.setExpiryData(ae),R.loadVectorData(ae,this.map.painter),R.reloadPromise){let we=R.reloadPromise;R.reloadPromise=null,this.loadTile(R).then(we.resolve).catch(we.reject)}}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.actor&&(yield R.actor.sendAsync({type:"AT",data:{uid:R.uid,type:this.type,source:this.id}}))})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),R.actor&&(yield R.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class Ae extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.setEventedParent(Se),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.e({type:"raster"},ae),t.e(this,t.M(ae,["url","scheme","tileSize"]))}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}onAdd(R){this.map=R,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(R){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}serialize(){return t.e({},this._options)}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);R.abortController=new AbortController;try{let we=yield l.getImage(this.map._requestManager.transformRequest(ae,"Tile"),R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(we&&we.data){this.map._refreshExpiredTiles&&we.cacheControl&&we.expires&&R.setExpiryData({cacheControl:we.cacheControl,expires:we.expires});let Se=this.map.painter.context,De=Se.gl,ft=we.data;R.texture=this.map.painter.getTileTexture(ft.width),R.texture?R.texture.update(ft,{useMipmap:!0}):(R.texture=new u(Se,ft,De.RGBA,{useMipmap:!0}),R.texture.bind(De.LINEAR,De.CLAMP_TO_EDGE,De.LINEAR_MIPMAP_NEAREST)),R.state="loaded"}}catch(we){if(delete R.abortController,R.aborted)R.state="unloaded";else if(we)throw R.state="errored",we}})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController)})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.texture&&this.map.painter.saveTileTexture(R.texture)})}hasTransition(){return!1}}class Be extends Ae{constructor(R,ae,we,Se){super(R,ae,we,Se),this.type="raster-dem",this.maxzoom=22,this._options=t.e({type:"raster-dem"},ae),this.encoding=ae.encoding||"mapbox",this.redFactor=ae.redFactor,this.greenFactor=ae.greenFactor,this.blueFactor=ae.blueFactor,this.baseShift=ae.baseShift}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we=this.map._requestManager.transformRequest(ae,"Tile");R.neighboringTiles=this._getNeighboringTiles(R.tileID),R.abortController=new AbortController;try{let Se=yield l.getImage(we,R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(Se&&Se.data){let De=Se.data;this.map._refreshExpiredTiles&&Se.cacheControl&&Se.expires&&R.setExpiryData({cacheControl:Se.cacheControl,expires:Se.expires});let ft=t.b(De)&&t.U()?De:yield this.readImageNow(De),bt={type:this.type,uid:R.uid,source:this.id,rawImageData:ft,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!R.actor||R.state==="expired"){R.actor=this.dispatcher.getActor();let Dt=yield R.actor.sendAsync({type:"LDT",data:bt});R.dem=Dt,R.needsHillshadePrepare=!0,R.needsTerrainPrepare=!0,R.state="loaded"}}}catch(Se){if(delete R.abortController,R.aborted)R.state="unloaded";else if(Se)throw R.state="errored",Se}})}readImageNow(R){return t._(this,void 0,void 0,function*(){if(typeof VideoFrame<"u"&&t.V()){let ae=R.width+2,we=R.height+2;try{return new t.R({width:ae,height:we},yield t.W(R,-1,-1,ae,we))}catch{}}return i.getImageData(R,1)})}_getNeighboringTiles(R){let ae=R.canonical,we=Math.pow(2,ae.z),Se=(ae.x-1+we)%we,De=ae.x===0?R.wrap-1:R.wrap,ft=(ae.x+1+we)%we,bt=ae.x+1===we?R.wrap+1:R.wrap,Dt={};return Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y).key]={backfilled:!1},ae.y>0&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y-1).key]={backfilled:!1}),ae.y+1<we&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y+1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y+1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y+1).key]={backfilled:!1}),Dt}unloadTile(R){return t._(this,void 0,void 0,function*(){R.demTexture&&this.map.painter.saveTileTexture(R.demTexture),R.fbo&&(R.fbo.destroy(),delete R.fbo),R.dem&&delete R.dem,delete R.neighboringTiles,R.state="unloaded",R.actor&&(yield R.actor.sendAsync({type:"RDT",data:{type:this.type,uid:R.uid,source:this.id}}))})}}class Ie extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._pendingLoads=0,this.actor=we.getActor(),this.setEventedParent(Se),this._data=ae.data,this._options=t.e({},ae),this._collectResourceTiming=ae.collectResourceTiming,ae.maxzoom!==void 0&&(this.maxzoom=ae.maxzoom),ae.type&&(this.type=ae.type),ae.attribution&&(this.attribution=ae.attribution),this.promoteId=ae.promoteId;let De=t.X/this.tileSize;ae.clusterMaxZoom!==void 0&&this.maxzoom<=ae.clusterMaxZoom&&t.w(`The maxzoom value "${this.maxzoom}" is expected to be greater than the clusterMaxZoom value "${ae.clusterMaxZoom}".`),this.workerOptions=t.e({source:this.id,cluster:ae.cluster||!1,geojsonVtOptions:{buffer:(ae.buffer!==void 0?ae.buffer:128)*De,tolerance:(ae.tolerance!==void 0?ae.tolerance:.375)*De,extent:t.X,maxZoom:this.maxzoom,lineMetrics:ae.lineMetrics||!1,generateId:ae.generateId||!1},superclusterOptions:{maxZoom:ae.clusterMaxZoom!==void 0?ae.clusterMaxZoom:this.maxzoom-1,minPoints:Math.max(2,ae.clusterMinPoints||2),extent:t.X,radius:(ae.clusterRadius||50)*De,log:!1,generateId:ae.generateId||!1},clusterProperties:ae.clusterProperties,filter:ae.filter},ae.workerOptions),typeof this.promoteId=="string"&&(this.workerOptions.promoteId=this.promoteId)}load(){return t._(this,void 0,void 0,function*(){yield this._updateWorkerData()})}onAdd(R){this.map=R,this.load()}setData(R){return this._data=R,this._updateWorkerData(),this}updateData(R){return this._updateWorkerData(R),this}getData(){return t._(this,void 0,void 0,function*(){let R=t.e({type:this.type},this.workerOptions);return this.actor.sendAsync({type:"GD",data:R})})}setClusterOptions(R){return this.workerOptions.cluster=R.cluster,R&&(R.clusterRadius!==void 0&&(this.workerOptions.superclusterOptions.radius=R.clusterRadius),R.clusterMaxZoom!==void 0&&(this.workerOptions.superclusterOptions.maxZoom=R.clusterMaxZoom)),this._updateWorkerData(),this}getClusterExpansionZoom(R){return this.actor.sendAsync({type:"GCEZ",data:{type:this.type,clusterId:R,source:this.id}})}getClusterChildren(R){return this.actor.sendAsync({type:"GCC",data:{type:this.type,clusterId:R,source:this.id}})}getClusterLeaves(R,ae,we){return this.actor.sendAsync({type:"GCL",data:{type:this.type,source:this.id,clusterId:R,limit:ae,offset:we}})}_updateWorkerData(R){return t._(this,void 0,void 0,function*(){let ae=t.e({type:this.type},this.workerOptions);R?ae.dataDiff=R:typeof this._data=="string"?(ae.request=this.map._requestManager.transformRequest(i.resolveURL(this._data),"Source"),ae.request.collectResourceTiming=this._collectResourceTiming):ae.data=JSON.stringify(this._data),this._pendingLoads++,this.fire(new t.k("dataloading",{dataType:"source"}));try{let we=yield this.actor.sendAsync({type:"LD",data:ae});if(this._pendingLoads--,this._removed||we.abandoned)return void this.fire(new t.k("dataabort",{dataType:"source"}));let Se=null;we.resourceTiming&&we.resourceTiming[this.id]&&(Se=we.resourceTiming[this.id].slice(0));let De={dataType:"source"};this._collectResourceTiming&&Se&&Se.length>0&&t.e(De,{resourceTiming:Se}),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"metadata"}))),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"content"})))}catch(we){if(this._pendingLoads--,this._removed)return void this.fire(new t.k("dataabort",{dataType:"source"}));this.fire(new t.j(we))}})}loaded(){return this._pendingLoads===0}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.actor?"RT":"LT";R.actor=this.actor;let we={type:this.type,uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};R.abortController=new AbortController;let Se=yield this.actor.sendAsync({type:ae,data:we},R.abortController);delete R.abortController,R.unloadVectorData(),R.aborted||R.loadVectorData(Se,this.map.painter,ae==="RT")})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.aborted=!0})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return t.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Ze=t.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class at extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.coordinates=ae.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(Se),this.options=ae}load(R){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let ae=yield l.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,ae&&ae.data&&(this.image=ae.data,R&&(this.coordinates=R),this._finishLoading())}catch(ae){this._request=null,this._loaded=!0,this.fire(new t.j(ae))}})}loaded(){return this._loaded}updateImage(R){return R.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=R.url,this.load(R.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(R){this.map=R,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(R){this.coordinates=R;let ae=R.map(t.Z.fromLngLat);this.tileID=function(Se){let De=1/0,ft=1/0,bt=-1/0,Dt=-1/0;for(let jr of Se)De=Math.min(De,jr.x),ft=Math.min(ft,jr.y),bt=Math.max(bt,jr.x),Dt=Math.max(Dt,jr.y);let Yt=Math.max(bt-De,Dt-ft),cr=Math.max(0,Math.floor(-Math.log(Yt)/Math.LN2)),hr=Math.pow(2,cr);return new t.a1(cr,Math.floor((De+bt)/2*hr),Math.floor((ft+Dt)/2*hr))}(ae),this.minzoom=this.maxzoom=this.tileID.z;let we=ae.map(Se=>this.tileID.getTilePoint(Se)._round());return this._boundsArray=new t.$,this._boundsArray.emplaceBack(we[0].x,we[0].y,0,0),this._boundsArray.emplaceBack(we[1].x,we[1].y,t.X,0),this._boundsArray.emplaceBack(we[3].x,we[3].y,0,t.X),this._boundsArray.emplaceBack(we[2].x,we[2].y,t.X,t.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new u(R,this.image,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(R){return t._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(R.tileID.canonical)?(this.tiles[String(R.tileID.wrap)]=R,R.buckets={}):R.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class it extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),this.roundZoom=!0,this.type="video",this.options=ae}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1;let R=this.options;this.urls=[];for(let ae of R.urls)this.urls.push(this.map._requestManager.transformRequest(ae,"Source").url);try{let ae=yield t.a3(this.urls);if(this._loaded=!0,!ae)return;this.video=ae,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(ae){this.fire(new t.j(ae))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(R){if(this.video){let ae=this.video.seekable;R<ae.start(0)||R>ae.end(0)?this.fire(new t.j(new t.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${ae.start(0)} and ${ae.end(0)}-second mark.`))):this.video.currentTime=R}}getVideo(){return this.video}onAdd(R){this.map||(this.map=R,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE),ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,ae.RGBA,ae.UNSIGNED_BYTE,this.video)):(this.texture=new u(R,this.video,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class et extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),ae.coordinates?Array.isArray(ae.coordinates)&&ae.coordinates.length===4&&!ae.coordinates.some(De=>!Array.isArray(De)||De.length!==2||De.some(ft=>typeof ft!="number"))||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "coordinates"'))),ae.animate&&typeof ae.animate!="boolean"&&this.fire(new t.j(new t.a2(`sources.${R}`,null,'optional "animate" property must be a boolean value'))),ae.canvas?typeof ae.canvas=="string"||ae.canvas instanceof HTMLCanvasElement||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "canvas"'))),this.options=ae,this.animate=ae.animate===void 0||ae.animate}load(){return t._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(R){this.map=R,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let R=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,R=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,R=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let ae=this.map.painter.context,we=ae.gl;this.boundsBuffer||(this.boundsBuffer=ae.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?(R||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new u(ae,this.canvas,we.RGBA,{premultiply:!0});let Se=!1;for(let De in this.tiles){let ft=this.tiles[De];ft.state!=="loaded"&&(ft.state="loaded",ft.texture=this.texture,Se=!0)}Se&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let R of[this.canvas.width,this.canvas.height])if(isNaN(R)||R<=0)return!0;return!1}}let lt={},Me=Oe=>{switch(Oe){case"geojson":return Ie;case"image":return at;case"raster":return Ae;case"raster-dem":return Be;case"vector":return be;case"video":return it;case"canvas":return et}return lt[Oe]},ge="RTLPluginLoaded";class ce extends t.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Z()}_syncState(R){return this.status=R,this.dispatcher.broadcast("SRPS",{pluginStatus:R,pluginURL:this.url}).catch(ae=>{throw this.status="error",ae})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(R){return t._(this,arguments,void 0,function*(ae,we=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=i.resolveURL(ae),!this.url)throw new Error(`requested url ${ae} is invalid`);if(this.status==="unavailable"){if(!we)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return t._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new t.k(ge))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ze=null;function tt(){return ze||(ze=new ce),ze}class nt{constructor(R,ae){this.timeAdded=0,this.fadeEndTime=0,this.tileID=R,this.uid=t.a4(),this.uses=0,this.tileSize=ae,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(R){let ae=R+this.timeAdded;ae<this.fadeEndTime||(this.fadeEndTime=ae)}wasRequested(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"}clearTextures(R){this.demTexture&&R.saveTileTexture(this.demTexture),this.demTexture=null}loadVectorData(R,ae,we){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",R){R.featureIndex&&(this.latestFeatureIndex=R.featureIndex,R.rawTileData?(this.latestRawTileData=R.rawTileData,this.latestFeatureIndex.rawTileData=R.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=R.collisionBoxArray,this.buckets=function(Se,De){let ft={};if(!De)return ft;for(let bt of Se){let Dt=bt.layerIds.map(Yt=>De.getLayer(Yt)).filter(Boolean);if(Dt.length!==0){bt.layers=Dt,bt.stateDependentLayerIds&&(bt.stateDependentLayers=bt.stateDependentLayerIds.map(Yt=>Dt.filter(cr=>cr.id===Yt)[0]));for(let Yt of Dt)ft[Yt.id]=bt}}return ft}(R.buckets,ae.style),this.hasSymbolBuckets=!1;for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6){if(this.hasSymbolBuckets=!0,!we)break;De.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6&&De.hasRTLText){this.hasRTLText=!0,tt().lazyLoad();break}}this.queryPadding=0;for(let Se in this.buckets){let De=this.buckets[Se];this.queryPadding=Math.max(this.queryPadding,ae.style.getLayer(Se).queryRadius(De))}R.imageAtlas&&(this.imageAtlas=R.imageAtlas),R.glyphAtlasImage&&(this.glyphAtlasImage=R.glyphAtlasImage)}else this.collisionBoxArray=new t.a5}unloadVectorData(){for(let R in this.buckets)this.buckets[R].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(R){return this.buckets[R.id]}upload(R){for(let we in this.buckets){let Se=this.buckets[we];Se.uploadPending()&&Se.upload(R)}let ae=R.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new u(R,this.imageAtlas.image,ae.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new u(R,this.glyphAtlasImage,ae.ALPHA),this.glyphAtlasImage=null)}prepare(R){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(R,this.imageAtlasTexture)}queryRenderedFeatures(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:Se,cameraQueryGeometry:De,scale:ft,tileSize:this.tileSize,pixelPosMatrix:cr,transform:Dt,params:bt,queryPadding:this.queryPadding*Yt},R,ae,we):{}}querySourceFeatures(R,ae){let we=this.latestFeatureIndex;if(!we||!we.rawTileData)return;let Se=we.loadVTLayers(),De=ae&&ae.sourceLayer?ae.sourceLayer:"",ft=Se._geojsonTileLayer||Se[De];if(!ft)return;let bt=t.a7(ae&&ae.filter),{z:Dt,x:Yt,y:cr}=this.tileID.canonical,hr={z:Dt,x:Yt,y:cr};for(let jr=0;jr<ft.length;jr++){let ea=ft.feature(jr);if(bt.needGeometry){let ot=t.a8(ea,!0);if(!bt.filter(new t.z(this.tileID.overscaledZ),ot,this.tileID.canonical))continue}else if(!bt.filter(new t.z(this.tileID.overscaledZ),ea))continue;let qe=we.getId(ea,De),Je=new t.a9(ea,Dt,Yt,cr,qe);Je.tile=hr,R.push(Je)}}hasData(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"}patternsLoaded(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length}setExpiryData(R){let ae=this.expirationTime;if(R.cacheControl){let we=t.aa(R.cacheControl);we["max-age"]&&(this.expirationTime=Date.now()+1e3*we["max-age"])}else R.expires&&(this.expirationTime=new Date(R.expires).getTime());if(this.expirationTime){let we=Date.now(),Se=!1;if(this.expirationTime>we)Se=!1;else if(ae)if(this.expirationTime<ae)Se=!0;else{let De=this.expirationTime-ae;De?this.expirationTime=we+Math.max(De,3e4):Se=!0}else Se=!0;Se?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}}getExpiryTimeout(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-new Date().getTime(),Math.pow(2,31)-1)}setFeatureState(R,ae){if(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(R).length===0)return;let we=this.latestFeatureIndex.loadVTLayers();for(let Se in this.buckets){if(!ae.style.hasLayer(Se))continue;let De=this.buckets[Se],ft=De.layers[0].sourceLayer||"_geojsonTileLayer",bt=we[ft],Dt=R[ft];if(!bt||!Dt||Object.keys(Dt).length===0)continue;De.update(Dt,bt,this.imageAtlas&&this.imageAtlas.patternPositions||{});let Yt=ae&&ae.style&&ae.style.getLayer(Se);Yt&&(this.queryPadding=Math.max(this.queryPadding,Yt.queryRadius(De)))}}holdingForFade(){return this.symbolFadeHoldUntil!==void 0}symbolFadeFinished(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<i.now()}clearFadeHold(){this.symbolFadeHoldUntil=void 0}setHoldDuration(R){this.symbolFadeHoldUntil=i.now()+R}setDependencies(R,ae){let we={};for(let Se of ae)we[Se]=!0;this.dependencies[R]=we}hasDependency(R,ae){for(let we of R){let Se=this.dependencies[we];if(Se){for(let De of ae)if(Se[De])return!0}}return!1}}class Qe{constructor(R,ae){this.max=R,this.onRemove=ae,this.reset()}reset(){for(let R in this.data)for(let ae of this.data[R])ae.timeout&&clearTimeout(ae.timeout),this.onRemove(ae.value);return this.data={},this.order=[],this}add(R,ae,we){let Se=R.wrapped().key;this.data[Se]===void 0&&(this.data[Se]=[]);let De={value:ae,timeout:void 0};if(we!==void 0&&(De.timeout=setTimeout(()=>{this.remove(R,De)},we)),this.data[Se].push(De),this.order.push(Se),this.order.length>this.max){let ft=this._getAndRemoveByKey(this.order[0]);ft&&this.onRemove(ft)}return this}has(R){return R.wrapped().key in this.data}getAndRemove(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null}_getAndRemoveByKey(R){let ae=this.data[R].shift();return ae.timeout&&clearTimeout(ae.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),ae.value}getByKey(R){let ae=this.data[R];return ae?ae[0].value:null}get(R){return this.has(R)?this.data[R.wrapped().key][0].value:null}remove(R,ae){if(!this.has(R))return this;let we=R.wrapped().key,Se=ae===void 0?0:this.data[we].indexOf(ae),De=this.data[we][Se];return this.data[we].splice(Se,1),De.timeout&&clearTimeout(De.timeout),this.data[we].length===0&&delete this.data[we],this.onRemove(De.value),this.order.splice(this.order.indexOf(we),1),this}setMaxSize(R){for(this.max=R;this.order.length>this.max;){let ae=this._getAndRemoveByKey(this.order[0]);ae&&this.onRemove(ae)}return this}filter(R){let ae=[];for(let we in this.data)for(let Se of this.data[we])R(Se.value)||ae.push(Se);for(let we of ae)this.remove(we.value.tileID,we)}}class Ct{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(R,ae,we){let Se=String(ae);if(this.stateChanges[R]=this.stateChanges[R]||{},this.stateChanges[R][Se]=this.stateChanges[R][Se]||{},t.e(this.stateChanges[R][Se],we),this.deletedStates[R]===null){this.deletedStates[R]={};for(let De in this.state[R])De!==Se&&(this.deletedStates[R][De]=null)}else if(this.deletedStates[R]&&this.deletedStates[R][Se]===null){this.deletedStates[R][Se]={};for(let De in this.state[R][Se])we[De]||(this.deletedStates[R][Se][De]=null)}else for(let De in we)this.deletedStates[R]&&this.deletedStates[R][Se]&&this.deletedStates[R][Se][De]===null&&delete this.deletedStates[R][Se][De]}removeFeatureState(R,ae,we){if(this.deletedStates[R]===null)return;let Se=String(ae);if(this.deletedStates[R]=this.deletedStates[R]||{},we&&ae!==void 0)this.deletedStates[R][Se]!==null&&(this.deletedStates[R][Se]=this.deletedStates[R][Se]||{},this.deletedStates[R][Se][we]=null);else if(ae!==void 0)if(this.stateChanges[R]&&this.stateChanges[R][Se])for(we in this.deletedStates[R][Se]={},this.stateChanges[R][Se])this.deletedStates[R][Se][we]=null;else this.deletedStates[R][Se]=null;else this.deletedStates[R]=null}getState(R,ae){let we=String(ae),Se=t.e({},(this.state[R]||{})[we],(this.stateChanges[R]||{})[we]);if(this.deletedStates[R]===null)return{};if(this.deletedStates[R]){let De=this.deletedStates[R][ae];if(De===null)return{};for(let ft in De)delete Se[ft]}return Se}initializeTileState(R,ae){R.setFeatureState(this.state,ae)}coalesceChanges(R,ae){let we={};for(let Se in this.stateChanges){this.state[Se]=this.state[Se]||{};let De={};for(let ft in this.stateChanges[Se])this.state[Se][ft]||(this.state[Se][ft]={}),t.e(this.state[Se][ft],this.stateChanges[Se][ft]),De[ft]=this.state[Se][ft];we[Se]=De}for(let Se in this.deletedStates){this.state[Se]=this.state[Se]||{};let De={};if(this.deletedStates[Se]===null)for(let ft in this.state[Se])De[ft]={},this.state[Se][ft]={};else for(let ft in this.deletedStates[Se]){if(this.deletedStates[Se][ft]===null)this.state[Se][ft]={};else for(let bt of Object.keys(this.deletedStates[Se][ft]))delete this.state[Se][ft][bt];De[ft]=this.state[Se][ft]}we[Se]=we[Se]||{},t.e(we[Se],De)}if(this.stateChanges={},this.deletedStates={},Object.keys(we).length!==0)for(let Se in R)R[Se].setFeatureState(we,ae)}}class St extends t.E{constructor(R,ae,we){super(),this.id=R,this.dispatcher=we,this.on("data",Se=>this._dataHandler(Se)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((Se,De,ft,bt)=>{let Dt=new(Me(De.type))(Se,De,ft,bt);if(Dt.id!==Se)throw new Error(`Expected Source id to be ${Se} instead of ${Dt.id}`);return Dt})(R,ae,we,this),this._tiles={},this._cache=new Qe(0,Se=>this._unloadTile(Se)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new Ct,this._didEmitContent=!1,this._updated=!1}onAdd(R){this.map=R,this._maxTileCacheSize=R?R._maxTileCacheSize:null,this._maxTileCacheZoomLevels=R?R._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(R)}onRemove(R){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(R)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let R in this._tiles){let ae=this._tiles[R];if(ae.state!=="loaded"&&ae.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let R=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,R&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(R,ae,we){return t._(this,void 0,void 0,function*(){try{yield this._source.loadTile(R),this._tileLoaded(R,ae,we)}catch(Se){R.state="errored",Se.status!==404?this._source.fire(new t.j(Se,{tile:R})):this.update(this.transform,this.terrain)}})}_unloadTile(R){this._source.unloadTile&&this._source.unloadTile(R)}_abortTile(R){this._source.abortTile&&this._source.abortTile(R),this._source.fire(new t.k("dataabort",{tile:R,coord:R.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(R){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let ae in this._tiles){let we=this._tiles[ae];we.upload(R),we.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(R=>R.tileID).sort(Ot).map(R=>R.key)}getRenderableIds(R){let ae=[];for(let we in this._tiles)this._isIdRenderable(we,R)&&ae.push(this._tiles[we]);return R?ae.sort((we,Se)=>{let De=we.tileID,ft=Se.tileID,bt=new t.P(De.canonical.x,De.canonical.y)._rotate(this.transform.angle),Dt=new t.P(ft.canonical.x,ft.canonical.y)._rotate(this.transform.angle);return De.overscaledZ-ft.overscaledZ||Dt.y-bt.y||Dt.x-bt.x}).map(we=>we.tileID.key):ae.map(we=>we.tileID).sort(Ot).map(we=>we.key)}hasRenderableParent(R){let ae=this.findLoadedParent(R,0);return!!ae&&this._isIdRenderable(ae.tileID.key)}_isIdRenderable(R,ae){return this._tiles[R]&&this._tiles[R].hasData()&&!this._coveredTiles[R]&&(ae||!this._tiles[R].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let R in this._tiles)this._tiles[R].state!=="errored"&&this._reloadTile(R,"reloading")}}_reloadTile(R,ae){return t._(this,void 0,void 0,function*(){let we=this._tiles[R];we&&(we.state!=="loading"&&(we.state=ae),yield this._loadTile(we,R,ae))})}_tileLoaded(R,ae,we){R.timeAdded=i.now(),we==="expired"&&(R.refreshedUponExpiration=!0),this._setTileReloadTimer(ae,R),this.getSource().type==="raster-dem"&&R.dem&&this._backfillDEM(R),this._state.initializeTileState(R,this.map?this.map.painter:null),R.aborted||this._source.fire(new t.k("data",{dataType:"source",tile:R,coord:R.tileID}))}_backfillDEM(R){let ae=this.getRenderableIds();for(let Se=0;Se<ae.length;Se++){let De=ae[Se];if(R.neighboringTiles&&R.neighboringTiles[De]){let ft=this.getTileByID(De);we(R,ft),we(ft,R)}}function we(Se,De){Se.needsHillshadePrepare=!0,Se.needsTerrainPrepare=!0;let ft=De.tileID.canonical.x-Se.tileID.canonical.x,bt=De.tileID.canonical.y-Se.tileID.canonical.y,Dt=Math.pow(2,Se.tileID.canonical.z),Yt=De.tileID.key;ft===0&&bt===0||Math.abs(bt)>1||(Math.abs(ft)>1&&(Math.abs(ft+Dt)===1?ft+=Dt:Math.abs(ft-Dt)===1&&(ft-=Dt)),De.dem&&Se.dem&&(Se.dem.backfillBorder(De.dem,ft,bt),Se.neighboringTiles&&Se.neighboringTiles[Yt]&&(Se.neighboringTiles[Yt].backfilled=!0)))}}getTile(R){return this.getTileByID(R.key)}getTileByID(R){return this._tiles[R]}_retainLoadedChildren(R,ae,we,Se){for(let De in this._tiles){let ft=this._tiles[De];if(Se[De]||!ft.hasData()||ft.tileID.overscaledZ<=ae||ft.tileID.overscaledZ>we)continue;let bt=ft.tileID;for(;ft&&ft.tileID.overscaledZ>ae+1;){let Yt=ft.tileID.scaledTo(ft.tileID.overscaledZ-1);ft=this._tiles[Yt.key],ft&&ft.hasData()&&(bt=Yt)}let Dt=bt;for(;Dt.overscaledZ>ae;)if(Dt=Dt.scaledTo(Dt.overscaledZ-1),R[Dt.key]){Se[bt.key]=bt;break}}}findLoadedParent(R,ae){if(R.key in this._loadedParentTiles){let we=this._loadedParentTiles[R.key];return we&&we.tileID.overscaledZ>=ae?we:null}for(let we=R.overscaledZ-1;we>=ae;we--){let Se=R.scaledTo(we),De=this._getLoadedTile(Se);if(De)return De}}findLoadedSibling(R){return this._getLoadedTile(R)}_getLoadedTile(R){let ae=this._tiles[R.key];return ae&&ae.hasData()?ae:this._cache.getByKey(R.wrapped().key)}updateCacheSize(R){let ae=Math.ceil(R.width/this._source.tileSize)+1,we=Math.ceil(R.height/this._source.tileSize)+1,Se=Math.floor(ae*we*(this._maxTileCacheZoomLevels===null?t.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),De=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Se):Se;this._cache.setMaxSize(De)}handleWrapJump(R){let ae=Math.round((R-(this._prevLng===void 0?R:this._prevLng))/360);if(this._prevLng=R,ae){let we={};for(let Se in this._tiles){let De=this._tiles[Se];De.tileID=De.tileID.unwrapTo(De.tileID.wrap+ae),we[De.tileID.key]=De}this._tiles=we;for(let Se in this._timers)clearTimeout(this._timers[Se]),delete this._timers[Se];for(let Se in this._tiles)this._setTileReloadTimer(Se,this._tiles[Se])}}_updateCoveredAndRetainedTiles(R,ae,we,Se,De,ft){let bt={},Dt={},Yt=Object.keys(R),cr=i.now();for(let hr of Yt){let jr=R[hr],ea=this._tiles[hr];if(!ea||ea.fadeEndTime!==0&&ea.fadeEndTime<=cr)continue;let qe=this.findLoadedParent(jr,ae),Je=this.findLoadedSibling(jr),ot=qe||Je||null;ot&&(this._addTile(ot.tileID),bt[ot.tileID.key]=ot.tileID),Dt[hr]=jr}this._retainLoadedChildren(Dt,Se,we,R);for(let hr in bt)R[hr]||(this._coveredTiles[hr]=!0,R[hr]=bt[hr]);if(ft){let hr={},jr={};for(let ea of De)this._tiles[ea.key].hasData()?hr[ea.key]=ea:jr[ea.key]=ea;for(let ea in jr){let qe=jr[ea].children(this._source.maxzoom);this._tiles[qe[0].key]&&this._tiles[qe[1].key]&&this._tiles[qe[2].key]&&this._tiles[qe[3].key]&&(hr[qe[0].key]=R[qe[0].key]=qe[0],hr[qe[1].key]=R[qe[1].key]=qe[1],hr[qe[2].key]=R[qe[2].key]=qe[2],hr[qe[3].key]=R[qe[3].key]=qe[3],delete jr[ea])}for(let ea in jr){let qe=jr[ea],Je=this.findLoadedParent(qe,this._source.minzoom),ot=this.findLoadedSibling(qe),ht=Je||ot||null;if(ht){hr[ht.tileID.key]=R[ht.tileID.key]=ht.tileID;for(let At in hr)hr[At].isChildOf(ht.tileID)&&delete hr[At]}}for(let ea in this._tiles)hr[ea]||(this._coveredTiles[ea]=!0)}}update(R,ae){if(!this._sourceLoaded||this._paused)return;let we;this.transform=R,this.terrain=ae,this.updateCacheSize(R),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?we=R.getVisibleUnwrappedCoordinates(this._source.tileID).map(cr=>new t.S(cr.canonical.z,cr.wrap,cr.canonical.z,cr.canonical.x,cr.canonical.y)):(we=R.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:ae}),this._source.hasTile&&(we=we.filter(cr=>this._source.hasTile(cr)))):we=[];let Se=R.coveringZoomLevel(this._source),De=Math.max(Se-St.maxOverzooming,this._source.minzoom),ft=Math.max(Se+St.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let cr={};for(let hr of we)if(hr.canonical.z>this._source.minzoom){let jr=hr.scaledTo(hr.canonical.z-1);cr[jr.key]=jr;let ea=hr.scaledTo(Math.max(this._source.minzoom,Math.min(hr.canonical.z,5)));cr[ea.key]=ea}we=we.concat(Object.values(cr))}let bt=we.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,bt&&this.fire(new t.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let Dt=this._updateRetainedTiles(we,Se);jt(this._source.type)&&this._updateCoveredAndRetainedTiles(Dt,De,ft,Se,we,ae);for(let cr in Dt)this._tiles[cr].clearFadeHold();let Yt=t.ab(this._tiles,Dt);for(let cr of Yt){let hr=this._tiles[cr];hr.hasSymbolBuckets&&!hr.holdingForFade()?hr.setHoldDuration(this.map._fadeDuration):hr.hasSymbolBuckets&&!hr.symbolFadeFinished()||this._removeTile(cr)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let R in this._tiles)this._tiles[R].holdingForFade()&&this._removeTile(R)}_updateRetainedTiles(R,ae){var we;let Se={},De={},ft=Math.max(ae-St.maxOverzooming,this._source.minzoom),bt=Math.max(ae+St.maxUnderzooming,this._source.minzoom),Dt={};for(let Yt of R){let cr=this._addTile(Yt);Se[Yt.key]=Yt,cr.hasData()||ae<this._source.maxzoom&&(Dt[Yt.key]=Yt)}this._retainLoadedChildren(Dt,ae,bt,Se);for(let Yt of R){let cr=this._tiles[Yt.key];if(cr.hasData())continue;if(ae+1>this._source.maxzoom){let jr=Yt.children(this._source.maxzoom)[0],ea=this.getTile(jr);if(ea&&ea.hasData()){Se[jr.key]=jr;continue}}else{let jr=Yt.children(this._source.maxzoom);if(Se[jr[0].key]&&Se[jr[1].key]&&Se[jr[2].key]&&Se[jr[3].key])continue}let hr=cr.wasRequested();for(let jr=Yt.overscaledZ-1;jr>=ft;--jr){let ea=Yt.scaledTo(jr);if(De[ea.key])break;if(De[ea.key]=!0,cr=this.getTile(ea),!cr&&hr&&(cr=this._addTile(ea)),cr){let qe=cr.hasData();if((qe||!(!((we=this.map)===null||we===void 0)&&we.cancelPendingTileRequestsWhileZooming)||hr)&&(Se[ea.key]=ea),hr=cr.wasRequested(),qe)break}}}return Se}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let R in this._tiles){let ae=[],we,Se=this._tiles[R].tileID;for(;Se.overscaledZ>0;){if(Se.key in this._loadedParentTiles){we=this._loadedParentTiles[Se.key];break}ae.push(Se.key);let De=Se.scaledTo(Se.overscaledZ-1);if(we=this._getLoadedTile(De),we)break;Se=De}for(let De of ae)this._loadedParentTiles[De]=we}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let R in this._tiles){let ae=this._tiles[R].tileID,we=this._getLoadedTile(ae);this._loadedSiblingTiles[ae.key]=we}}_addTile(R){let ae=this._tiles[R.key];if(ae)return ae;ae=this._cache.getAndRemove(R),ae&&(this._setTileReloadTimer(R.key,ae),ae.tileID=R,this._state.initializeTileState(ae,this.map?this.map.painter:null),this._cacheTimers[R.key]&&(clearTimeout(this._cacheTimers[R.key]),delete this._cacheTimers[R.key],this._setTileReloadTimer(R.key,ae)));let we=ae;return ae||(ae=new nt(R,this._source.tileSize*R.overscaleFactor()),this._loadTile(ae,R.key,ae.state)),ae.uses++,this._tiles[R.key]=ae,we||this._source.fire(new t.k("dataloading",{tile:ae,coord:ae.tileID,dataType:"source"})),ae}_setTileReloadTimer(R,ae){R in this._timers&&(clearTimeout(this._timers[R]),delete this._timers[R]);let we=ae.getExpiryTimeout();we&&(this._timers[R]=setTimeout(()=>{this._reloadTile(R,"expired"),delete this._timers[R]},we))}_removeTile(R){let ae=this._tiles[R];ae&&(ae.uses--,delete this._tiles[R],this._timers[R]&&(clearTimeout(this._timers[R]),delete this._timers[R]),ae.uses>0||(ae.hasData()&&ae.state!=="reloading"?this._cache.add(ae.tileID,ae,ae.getExpiryTimeout()):(ae.aborted=!0,this._abortTile(ae),this._unloadTile(ae))))}_dataHandler(R){let ae=R.sourceDataType;R.dataType==="source"&&ae==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&R.dataType==="source"&&ae==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let R in this._tiles)this._removeTile(R);this._cache.reset()}tilesIn(R,ae,we){let Se=[],De=this.transform;if(!De)return Se;let ft=we?De.getCameraQueryGeometry(R):R,bt=R.map(qe=>De.pointCoordinate(qe,this.terrain)),Dt=ft.map(qe=>De.pointCoordinate(qe,this.terrain)),Yt=this.getIds(),cr=1/0,hr=1/0,jr=-1/0,ea=-1/0;for(let qe of Dt)cr=Math.min(cr,qe.x),hr=Math.min(hr,qe.y),jr=Math.max(jr,qe.x),ea=Math.max(ea,qe.y);for(let qe=0;qe<Yt.length;qe++){let Je=this._tiles[Yt[qe]];if(Je.holdingForFade())continue;let ot=Je.tileID,ht=Math.pow(2,De.zoom-Je.tileID.overscaledZ),At=ae*Je.queryPadding*t.X/Je.tileSize/ht,_t=[ot.getTilePoint(new t.Z(cr,hr)),ot.getTilePoint(new t.Z(jr,ea))];if(_t[0].x-At<t.X&&_t[0].y-At<t.X&&_t[1].x+At>=0&&_t[1].y+At>=0){let Pt=bt.map(nr=>ot.getTilePoint(nr)),er=Dt.map(nr=>ot.getTilePoint(nr));Se.push({tile:Je,tileID:ot,queryGeometry:Pt,cameraQueryGeometry:er,scale:ht})}}return Se}getVisibleCoordinates(R){let ae=this.getRenderableIds(R).map(we=>this._tiles[we].tileID);for(let we of ae)we.posMatrix=this.transform.calculatePosMatrix(we.toUnwrapped());return ae}hasTransition(){if(this._source.hasTransition())return!0;if(jt(this._source.type)){let R=i.now();for(let ae in this._tiles)if(this._tiles[ae].fadeEndTime>=R)return!0}return!1}setFeatureState(R,ae,we){this._state.updateState(R=R||"_geojsonTileLayer",ae,we)}removeFeatureState(R,ae,we){this._state.removeFeatureState(R=R||"_geojsonTileLayer",ae,we)}getFeatureState(R,ae){return this._state.getState(R=R||"_geojsonTileLayer",ae)}setDependencies(R,ae,we){let Se=this._tiles[R];Se&&Se.setDependencies(ae,we)}reloadTilesForDependencies(R,ae){for(let we in this._tiles)this._tiles[we].hasDependency(R,ae)&&this._reloadTile(we,"reloading");this._cache.filter(we=>!we.hasDependency(R,ae))}}function Ot(Oe,R){let ae=Math.abs(2*Oe.wrap)-+(Oe.wrap<0),we=Math.abs(2*R.wrap)-+(R.wrap<0);return Oe.overscaledZ-R.overscaledZ||we-ae||R.canonical.y-Oe.canonical.y||R.canonical.x-Oe.canonical.x}function jt(Oe){return Oe==="raster"||Oe==="image"||Oe==="video"}St.maxOverzooming=10,St.maxUnderzooming=3;class ur{constructor(R,ae){this.reset(R,ae)}reset(R,ae){this.points=R||[],this._distances=[0];for(let we=1;we<this.points.length;we++)this._distances[we]=this._distances[we-1]+this.points[we].dist(this.points[we-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(ae||0,.5*this.length),this.paddedLength=this.length-2*this.padding}lerp(R){if(this.points.length===1)return this.points[0];R=t.ac(R,0,1);let ae=1,we=this._distances[ae],Se=R*this.paddedLength+this.padding;for(;we<Se&&ae<this._distances.length;)we=this._distances[++ae];let De=ae-1,ft=this._distances[De],bt=we-ft,Dt=bt>0?(Se-ft)/bt:0;return this.points[De].mult(1-Dt).add(this.points[ae].mult(Dt))}}function ar(Oe,R){let ae=!0;return Oe==="always"||Oe!=="never"&&R!=="never"||(ae=!1),ae}class Cr{constructor(R,ae,we){let Se=this.boxCells=[],De=this.circleCells=[];this.xCellCount=Math.ceil(R/we),this.yCellCount=Math.ceil(ae/we);for(let ft=0;ft<this.xCellCount*this.yCellCount;ft++)Se.push([]),De.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=R,this.height=ae,this.xScale=this.xCellCount/R,this.yScale=this.yCellCount/ae,this.boxUid=0,this.circleUid=0}keysLength(){return this.boxKeys.length+this.circleKeys.length}insert(R,ae,we,Se,De){this._forEachCell(ae,we,Se,De,this._insertBoxCell,this.boxUid++),this.boxKeys.push(R),this.bboxes.push(ae),this.bboxes.push(we),this.bboxes.push(Se),this.bboxes.push(De)}insertCircle(R,ae,we,Se){this._forEachCell(ae-Se,we-Se,ae+Se,we+Se,this._insertCircleCell,this.circleUid++),this.circleKeys.push(R),this.circles.push(ae),this.circles.push(we),this.circles.push(Se)}_insertBoxCell(R,ae,we,Se,De,ft){this.boxCells[De].push(ft)}_insertCircleCell(R,ae,we,Se,De,ft){this.circleCells[De].push(ft)}_query(R,ae,we,Se,De,ft,bt){if(we<0||R>this.width||Se<0||ae>this.height)return[];let Dt=[];if(R<=0&&ae<=0&&this.width<=we&&this.height<=Se){if(De)return[{key:null,x1:R,y1:ae,x2:we,y2:Se}];for(let Yt=0;Yt<this.boxKeys.length;Yt++)Dt.push({key:this.boxKeys[Yt],x1:this.bboxes[4*Yt],y1:this.bboxes[4*Yt+1],x2:this.bboxes[4*Yt+2],y2:this.bboxes[4*Yt+3]});for(let Yt=0;Yt<this.circleKeys.length;Yt++){let cr=this.circles[3*Yt],hr=this.circles[3*Yt+1],jr=this.circles[3*Yt+2];Dt.push({key:this.circleKeys[Yt],x1:cr-jr,y1:hr-jr,x2:cr+jr,y2:hr+jr})}}else this._forEachCell(R,ae,we,Se,this._queryCell,Dt,{hitTest:De,overlapMode:ft,seenUids:{box:{},circle:{}}},bt);return Dt}query(R,ae,we,Se){return this._query(R,ae,we,Se,!1,null)}hitTest(R,ae,we,Se,De,ft){return this._query(R,ae,we,Se,!0,De,ft).length>0}hitTestCircle(R,ae,we,Se,De){let ft=R-we,bt=R+we,Dt=ae-we,Yt=ae+we;if(bt<0||ft>this.width||Yt<0||Dt>this.height)return!1;let cr=[];return this._forEachCell(ft,Dt,bt,Yt,this._queryCellCircle,cr,{hitTest:!0,overlapMode:Se,circle:{x:R,y:ae,radius:we},seenUids:{box:{},circle:{}}},De),cr.length>0}_queryCell(R,ae,we,Se,De,ft,bt,Dt){let{seenUids:Yt,hitTest:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!Yt.box[Je]){Yt.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(R<=qe[ot+2]&&ae<=qe[ot+3]&&we>=qe[ot+0]&&Se>=qe[ot+1]&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))&&(ft.push({key:ht,x1:qe[ot],y1:qe[ot+1],x2:qe[ot+2],y2:qe[ot+3]}),cr))return!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!Yt.circle[Je]){Yt.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circleAndRectCollide(qe[ot],qe[ot+1],qe[ot+2],R,ae,we,Se)&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))){let At=qe[ot],_t=qe[ot+1],Pt=qe[ot+2];if(ft.push({key:ht,x1:At-Pt,y1:_t-Pt,x2:At+Pt,y2:_t+Pt}),cr)return!0}}}return!1}_queryCellCircle(R,ae,we,Se,De,ft,bt,Dt){let{circle:Yt,seenUids:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!cr.box[Je]){cr.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(this._circleAndRectCollide(Yt.x,Yt.y,Yt.radius,qe[ot+0],qe[ot+1],qe[ot+2],qe[ot+3])&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!cr.circle[Je]){cr.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circlesCollide(qe[ot],qe[ot+1],qe[ot+2],Yt.x,Yt.y,Yt.radius)&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}}_forEachCell(R,ae,we,Se,De,ft,bt,Dt){let Yt=this._convertToXCellCoord(R),cr=this._convertToYCellCoord(ae),hr=this._convertToXCellCoord(we),jr=this._convertToYCellCoord(Se);for(let ea=Yt;ea<=hr;ea++)for(let qe=cr;qe<=jr;qe++)if(De.call(this,R,ae,we,Se,this.xCellCount*qe+ea,ft,bt,Dt))return}_convertToXCellCoord(R){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(R*this.xScale)))}_convertToYCellCoord(R){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(R*this.yScale)))}_circlesCollide(R,ae,we,Se,De,ft){let bt=Se-R,Dt=De-ae,Yt=we+ft;return Yt*Yt>bt*bt+Dt*Dt}_circleAndRectCollide(R,ae,we,Se,De,ft,bt){let Dt=(ft-Se)/2,Yt=Math.abs(R-(Se+Dt));if(Yt>Dt+we)return!1;let cr=(bt-De)/2,hr=Math.abs(ae-(De+cr));if(hr>cr+we)return!1;if(Yt<=Dt||hr<=cr)return!0;let jr=Yt-Dt,ea=hr-cr;return jr*jr+ea*ea<=we*we}}function vr(Oe,R,ae,we,Se){let De=t.H();return R?(t.K(De,De,[1/Se,1/Se,1]),ae||t.ad(De,De,we.angle)):t.L(De,we.labelPlaneMatrix,Oe),De}function _r(Oe,R,ae,we,Se){if(R){let De=t.ae(Oe);return t.K(De,De,[Se,Se,1]),ae||t.ad(De,De,-we.angle),De}return we.glCoordMatrix}function yt(Oe,R,ae,we){let Se;we?(Se=[Oe,R,we(Oe,R),1],t.af(Se,Se,ae)):(Se=[Oe,R,0,1],Kt(Se,Se,ae));let De=Se[3];return{point:new t.P(Se[0]/De,Se[1]/De),signedDistanceFromCamera:De,isOccluded:!1}}function Fe(Oe,R){return .5+Oe/R*.5}function Ke(Oe,R){return Oe.x>=-R[0]&&Oe.x<=R[0]&&Oe.y>=-R[1]&&Oe.y<=R[1]}function Ne(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe){let Je=we?Oe.textSizeData:Oe.iconSizeData,ot=t.ag(Je,ae.transform.zoom),ht=[256/ae.width*2+1,256/ae.height*2+1],At=we?Oe.text.dynamicLayoutVertexArray:Oe.icon.dynamicLayoutVertexArray;At.clear();let _t=Oe.lineVertexArray,Pt=we?Oe.text.placedSymbolArray:Oe.icon.placedSymbolArray,er=ae.transform.width/ae.transform.height,nr=!1;for(let pr=0;pr<Pt.length;pr++){let Sr=Pt.get(pr);if(Sr.hidden||Sr.writingMode===t.ah.vertical&&!nr){Gt(Sr.numGlyphs,At);continue}nr=!1;let Wr=yt(Sr.anchorX,Sr.anchorY,R,qe);if(!Ke(Wr.point,ht)){Gt(Sr.numGlyphs,At);continue}let ha=Fe(ae.transform.cameraToCenterDistance,Wr.signedDistanceFromCamera),ga=t.ai(Je,ot,Sr),Pa=ft?ga/ha:ga*ha,Ja={getElevation:qe,labelPlaneMatrix:Se,lineVertexArray:_t,pitchWithMap:ft,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:Yt,tileAnchorPoint:new t.P(Sr.anchorX,Sr.anchorY),unwrappedTileID:cr,width:hr,height:jr,translation:ea},di=ke(Ja,Sr,Pa,!1,bt,R,De,Oe.glyphOffsetArray,At,er,Dt);nr=di.useVertical,(di.notEnoughRoom||nr||di.needsFlipping&&ke(Ja,Sr,Pa,!0,bt,R,De,Oe.glyphOffsetArray,At,er,Dt).notEnoughRoom)&&Gt(Sr.numGlyphs,At)}we?Oe.text.dynamicLayoutVertexBuffer.updateData(At):Oe.icon.dynamicLayoutVertexBuffer.updateData(At)}function Ee(Oe,R,ae,we,Se,De,ft,bt){let Dt=De.glyphStartIndex+De.numGlyphs,Yt=De.lineStartIndex,cr=De.lineStartIndex+De.lineLength,hr=R.getoffsetX(De.glyphStartIndex),jr=R.getoffsetX(Dt-1),ea=It(Oe*hr,ae,we,Se,De.segment,Yt,cr,bt,ft);if(!ea)return null;let qe=It(Oe*jr,ae,we,Se,De.segment,Yt,cr,bt,ft);return qe?bt.projectionCache.anyProjectionOccluded?null:{first:ea,last:qe}:null}function Ve(Oe,R,ae,we){return Oe===t.ah.horizontal&&Math.abs(ae.y-R.y)>Math.abs(ae.x-R.x)*we?{useVertical:!0}:(Oe===t.ah.vertical?R.y<ae.y:R.x>ae.x)?{needsFlipping:!0}:null}function ke(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=ae/24,jr=R.lineOffsetX*hr,ea=R.lineOffsetY*hr,qe;if(R.numGlyphs>1){let Je=R.glyphStartIndex+R.numGlyphs,ot=R.lineStartIndex,ht=R.lineStartIndex+R.lineLength,At=Ee(hr,bt,jr,ea,we,R,cr,Oe);if(!At)return{notEnoughRoom:!0};let _t=yt(At.first.point.x,At.first.point.y,ft,Oe.getElevation).point,Pt=yt(At.last.point.x,At.last.point.y,ft,Oe.getElevation).point;if(Se&&!we){let er=Ve(R.writingMode,_t,Pt,Yt);if(er)return er}qe=[At.first];for(let er=R.glyphStartIndex+1;er<Je-1;er++)qe.push(It(hr*bt.getoffsetX(er),jr,ea,we,R.segment,ot,ht,Oe,cr));qe.push(At.last)}else{if(Se&&!we){let ot=yt(Oe.tileAnchorPoint.x,Oe.tileAnchorPoint.y,De,Oe.getElevation).point,ht=R.lineStartIndex+R.segment+1,At=new t.P(Oe.lineVertexArray.getx(ht),Oe.lineVertexArray.gety(ht)),_t=yt(At.x,At.y,De,Oe.getElevation),Pt=_t.signedDistanceFromCamera>0?_t.point:function(nr,pr,Sr,Wr,ha,ga){return Te(nr,pr,Sr,1,ha,ga)}(Oe.tileAnchorPoint,At,ot,0,De,Oe),er=Ve(R.writingMode,ot,Pt,Yt);if(er)return er}let Je=It(hr*bt.getoffsetX(R.glyphStartIndex),jr,ea,we,R.segment,R.lineStartIndex,R.lineStartIndex+R.lineLength,Oe,cr);if(!Je||Oe.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};qe=[Je]}for(let Je of qe)t.aj(Dt,Je.point,Je.angle);return{}}function Te(Oe,R,ae,we,Se,De){let ft=Oe.add(Oe.sub(R)._unit()),bt=Se!==void 0?yt(ft.x,ft.y,Se,De.getElevation).point:rt(ft.x,ft.y,De).point,Dt=ae.sub(bt);return ae.add(Dt._mult(we/Dt.mag()))}function Le(Oe,R,ae){let we=R.projectionCache;if(we.projections[Oe])return we.projections[Oe];let Se=new t.P(R.lineVertexArray.getx(Oe),R.lineVertexArray.gety(Oe)),De=rt(Se.x,Se.y,R);if(De.signedDistanceFromCamera>0)return we.projections[Oe]=De.point,we.anyProjectionOccluded=we.anyProjectionOccluded||De.isOccluded,De.point;let ft=Oe-ae.direction;return function(bt,Dt,Yt,cr,hr){return Te(bt,Dt,Yt,cr,void 0,hr)}(ae.distanceFromAnchor===0?R.tileAnchorPoint:new t.P(R.lineVertexArray.getx(ft),R.lineVertexArray.gety(ft)),Se,ae.previousVertex,ae.absOffsetX-ae.distanceFromAnchor+1,R)}function rt(Oe,R,ae){let we=Oe+ae.translation[0],Se=R+ae.translation[1],De;return!ae.pitchWithMap&&ae.projection.useSpecialProjectionForSymbols?(De=ae.projection.projectTileCoordinates(we,Se,ae.unwrappedTileID,ae.getElevation),De.point.x=(.5*De.point.x+.5)*ae.width,De.point.y=(.5*-De.point.y+.5)*ae.height):(De=yt(we,Se,ae.labelPlaneMatrix,ae.getElevation),De.isOccluded=!1),De}function dt(Oe,R,ae){return Oe._unit()._perp()._mult(R*ae)}function xt(Oe,R,ae,we,Se,De,ft,bt,Dt){if(bt.projectionCache.offsets[Oe])return bt.projectionCache.offsets[Oe];let Yt=ae.add(R);if(Oe+Dt.direction<we||Oe+Dt.direction>=Se)return bt.projectionCache.offsets[Oe]=Yt,Yt;let cr=Le(Oe+Dt.direction,bt,Dt),hr=dt(cr.sub(ae),ft,Dt.direction),jr=ae.add(hr),ea=cr.add(hr);return bt.projectionCache.offsets[Oe]=t.ak(De,Yt,jr,ea)||Yt,bt.projectionCache.offsets[Oe]}function It(Oe,R,ae,we,Se,De,ft,bt,Dt){let Yt=we?Oe-R:Oe+R,cr=Yt>0?1:-1,hr=0;we&&(cr*=-1,hr=Math.PI),cr<0&&(hr+=Math.PI);let jr,ea=cr>0?De+Se:De+Se+1;bt.projectionCache.cachedAnchorPoint?jr=bt.projectionCache.cachedAnchorPoint:(jr=rt(bt.tileAnchorPoint.x,bt.tileAnchorPoint.y,bt).point,bt.projectionCache.cachedAnchorPoint=jr);let qe,Je,ot=jr,ht=jr,At=0,_t=0,Pt=Math.abs(Yt),er=[],nr;for(;At+_t<=Pt;){if(ea+=cr,ea<De||ea>=ft)return null;At+=_t,ht=ot,Je=qe;let Wr={absOffsetX:Pt,direction:cr,distanceFromAnchor:At,previousVertex:ht};if(ot=Le(ea,bt,Wr),ae===0)er.push(ht),nr=ot.sub(ht);else{let ha,ga=ot.sub(ht);ha=ga.mag()===0?dt(Le(ea+cr,bt,Wr).sub(ot),ae,cr):dt(ga,ae,cr),Je||(Je=ht.add(ha)),qe=xt(ea,ha,ot,De,ft,Je,ae,bt,Wr),er.push(Je),nr=qe.sub(Je)}_t=nr.mag()}let pr=nr._mult((Pt-At)/_t)._add(Je||ht),Sr=hr+Math.atan2(ot.y-ht.y,ot.x-ht.x);return er.push(pr),{point:pr,angle:Dt?Sr:0,path:er}}let Bt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Gt(Oe,R){for(let ae=0;ae<Oe;ae++){let we=R.length;R.resize(we+4),R.float32.set(Bt,3*we)}}function Kt(Oe,R,ae){let we=R[0],Se=R[1];return Oe[0]=ae[0]*we+ae[4]*Se+ae[12],Oe[1]=ae[1]*we+ae[5]*Se+ae[13],Oe[3]=ae[3]*we+ae[7]*Se+ae[15],Oe}let sr=100;class sa{constructor(R,ae,we=new Cr(R.width+200,R.height+200,25),Se=new Cr(R.width+200,R.height+200,25)){this.transform=R,this.mapProjection=ae,this.grid=we,this.ignoredGrid=Se,this.pitchFactor=Math.cos(R._pitch)*R.cameraToCenterDistance,this.screenRightBoundary=R.width+sr,this.screenBottomBoundary=R.height+sr,this.gridRightBoundary=R.width+200,this.gridBottomBoundary=R.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr){let jr=R.anchorPointX+Dt[0],ea=R.anchorPointY+Dt[1],qe=this.projectAndGetPerspectiveRatio(Se,jr,ea,De,cr),Je=we*qe.perspectiveRatio,ot;if(ft||bt)ot=this._projectCollisionBox(R,Je,Se,De,ft,bt,Dt,qe,cr,hr);else{let er=qe.point.x+(hr?hr.x*Je:0),nr=qe.point.y+(hr?hr.y*Je:0);ot={allPointsOccluded:!1,box:[er+R.x1*Je,nr+R.y1*Je,er+R.x2*Je,nr+R.y2*Je]}}let[ht,At,_t,Pt]=ot.box;return this.mapProjection.useSpecialProjectionForSymbols&&(ft?ot.allPointsOccluded:this.mapProjection.isOccluded(jr,ea,De))||qe.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(ht,At,_t,Pt)||ae!=="always"&&this.grid.hitTest(ht,At,_t,Pt,ae,Yt)?{box:[ht,At,_t,Pt],placeable:!1,offscreen:!1}:{box:[ht,At,_t,Pt],placeable:!0,offscreen:this.isOffscreen(ht,At,_t,Pt)}}placeCollisionCircles(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot){let ht=[],At=new t.P(ae.anchorX,ae.anchorY),_t=this.getPerspectiveRatio(ft,At.x,At.y,bt,ot),Pt=(hr?De/_t:De*_t)/t.ap,er={getElevation:ot,labelPlaneMatrix:Dt,lineVertexArray:we,pitchWithMap:hr,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:At,unwrappedTileID:bt,width:this.transform.width,height:this.transform.height,translation:Je},nr=Ee(Pt,Se,ae.lineOffsetX*Pt,ae.lineOffsetY*Pt,!1,ae,!1,er),pr=!1,Sr=!1,Wr=!0;if(nr){let ha=.5*ea*_t+qe,ga=new t.P(-100,-100),Pa=new t.P(this.screenRightBoundary,this.screenBottomBoundary),Ja=new ur,di=nr.first,pi=nr.last,Ci=[];for(let Sn=di.path.length-1;Sn>=1;Sn--)Ci.push(di.path[Sn]);for(let Sn=1;Sn<pi.path.length;Sn++)Ci.push(pi.path[Sn]);let $i=2.5*ha;if(Yt){let Sn=this.projectPathToScreenSpace(Ci,er,Yt);Ci=Sn.some(ho=>ho.signedDistanceFromCamera<=0)?[]:Sn.map(ho=>ho.point)}let Bn=[];if(Ci.length>0){let Sn=Ci[0].clone(),ho=Ci[0].clone();for(let ts=1;ts<Ci.length;ts++)Sn.x=Math.min(Sn.x,Ci[ts].x),Sn.y=Math.min(Sn.y,Ci[ts].y),ho.x=Math.max(ho.x,Ci[ts].x),ho.y=Math.max(ho.y,Ci[ts].y);Bn=Sn.x>=ga.x&&ho.x<=Pa.x&&Sn.y>=ga.y&&ho.y<=Pa.y?[Ci]:ho.x<ga.x||Sn.x>Pa.x||ho.y<ga.y||Sn.y>Pa.y?[]:t.al([Ci],ga.x,ga.y,Pa.x,Pa.y)}for(let Sn of Bn){Ja.reset(Sn,.25*ha);let ho=0;ho=Ja.length<=.5*ha?1:Math.ceil(Ja.paddedLength/$i)+1;for(let ts=0;ts<ho;ts++){let yo=ts/Math.max(ho-1,1),Vo=Ja.lerp(yo),ls=Vo.x+sr,rl=Vo.y+sr;ht.push(ls,rl,ha,0);let Ys=ls-ha,Zo=rl-ha,Go=ls+ha,Rl=rl+ha;if(Wr=Wr&&this.isOffscreen(Ys,Zo,Go,Rl),Sr=Sr||this.isInsideGrid(Ys,Zo,Go,Rl),R!=="always"&&this.grid.hitTestCircle(ls,rl,ha,R,jr)&&(pr=!0,!cr))return{circles:[],offscreen:!1,collisionDetected:pr}}}}return{circles:!cr&&pr||!Sr||_t<this.perspectiveRatioCutoff?[]:ht,offscreen:Wr,collisionDetected:pr}}projectPathToScreenSpace(R,ae,we){return R.map(Se=>yt(Se.x,Se.y,we,ae.getElevation))}queryRenderedSymbols(R){if(R.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let ae=[],we=1/0,Se=1/0,De=-1/0,ft=-1/0;for(let cr of R){let hr=new t.P(cr.x+sr,cr.y+sr);we=Math.min(we,hr.x),Se=Math.min(Se,hr.y),De=Math.max(De,hr.x),ft=Math.max(ft,hr.y),ae.push(hr)}let bt=this.grid.query(we,Se,De,ft).concat(this.ignoredGrid.query(we,Se,De,ft)),Dt={},Yt={};for(let cr of bt){let hr=cr.key;if(Dt[hr.bucketInstanceId]===void 0&&(Dt[hr.bucketInstanceId]={}),Dt[hr.bucketInstanceId][hr.featureIndex])continue;let jr=[new t.P(cr.x1,cr.y1),new t.P(cr.x2,cr.y1),new t.P(cr.x2,cr.y2),new t.P(cr.x1,cr.y2)];t.am(ae,jr)&&(Dt[hr.bucketInstanceId][hr.featureIndex]=!0,Yt[hr.bucketInstanceId]===void 0&&(Yt[hr.bucketInstanceId]=[]),Yt[hr.bucketInstanceId].push(hr.featureIndex))}return Yt}insertCollisionBox(R,ae,we,Se,De,ft){(we?this.ignoredGrid:this.grid).insert({bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae},R[0],R[1],R[2],R[3])}insertCollisionCircles(R,ae,we,Se,De,ft){let bt=we?this.ignoredGrid:this.grid,Dt={bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae};for(let Yt=0;Yt<R.length;Yt+=4)bt.insertCircle(Dt,R[Yt],R[Yt+1],R[Yt+2])}projectAndGetPerspectiveRatio(R,ae,we,Se,De){let ft;De?(ft=[ae,we,De(ae,we),1],t.af(ft,ft,R)):(ft=[ae,we,0,1],Kt(ft,ft,R));let bt=ft[3];return{point:new t.P((ft[0]/bt+1)/2*this.transform.width+sr,(-ft[1]/bt+1)/2*this.transform.height+sr),perspectiveRatio:.5+this.transform.cameraToCenterDistance/bt*.5,isOccluded:!1,signedDistanceFromCamera:bt}}getPerspectiveRatio(R,ae,we,Se,De){let ft=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(ae,we,Se,De):yt(ae,we,R,De);return .5+this.transform.cameraToCenterDistance/ft.signedDistanceFromCamera*.5}isOffscreen(R,ae,we,Se){return we<sr||R>=this.screenRightBoundary||Se<sr||ae>this.screenBottomBoundary}isInsideGrid(R,ae,we,Se){return we>=0&&R<this.gridRightBoundary&&Se>=0&&ae<this.gridBottomBoundary}getViewportMatrix(){let R=t.an([]);return t.J(R,R,[-100,-100,0]),R}_projectCollisionBox(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=new t.P(1,0),jr=new t.P(0,1),ea=new t.P(R.anchorPointX+bt[0],R.anchorPointY+bt[1]);if(ft&&!De){let Wr=this.projectAndGetPerspectiveRatio(we,ea.x+1,ea.y,Se,Yt).point.sub(Dt.point).unit(),ha=Math.atan(Wr.y/Wr.x)+(Wr.x<0?Math.PI:0),ga=Math.sin(ha),Pa=Math.cos(ha);hr=new t.P(Pa,ga),jr=new t.P(-ga,Pa)}else if(!ft&&De){let Wr=-this.transform.angle,ha=Math.sin(Wr),ga=Math.cos(Wr);hr=new t.P(ga,ha),jr=new t.P(-ha,ga)}let qe=Dt.point,Je=ae;if(De){qe=ea;let Wr=this.transform.zoom-Math.floor(this.transform.zoom);Je=Math.pow(2,-Wr),Je*=this.mapProjection.getPitchedTextCorrection(this.transform,ea,Se),cr||(Je*=t.ac(.5+Dt.signedDistanceFromCamera/this.transform.cameraToCenterDistance*.5,0,4))}cr&&(qe=qe.add(hr.mult(cr.x*Je)).add(jr.mult(cr.y*Je)));let ot=R.x1*Je,ht=R.x2*Je,At=(ot+ht)/2,_t=R.y1*Je,Pt=R.y2*Je,er=(_t+Pt)/2,nr=[{offsetX:ot,offsetY:_t},{offsetX:At,offsetY:_t},{offsetX:ht,offsetY:_t},{offsetX:ht,offsetY:er},{offsetX:ht,offsetY:Pt},{offsetX:At,offsetY:Pt},{offsetX:ot,offsetY:Pt},{offsetX:ot,offsetY:er}],pr=[];for(let{offsetX:Wr,offsetY:ha}of nr)pr.push(new t.P(qe.x+hr.x*Wr+jr.x*ha,qe.y+hr.y*Wr+jr.y*ha));let Sr=!1;if(De){let Wr=pr.map(ha=>this.projectAndGetPerspectiveRatio(we,ha.x,ha.y,Se,Yt));Sr=Wr.some(ha=>!ha.isOccluded),pr=Wr.map(ha=>ha.point)}else Sr=!0;return{box:t.ao(pr),allPointsOccluded:!Sr}}}function Aa(Oe,R,ae){return R*(t.X/(Oe.tileSize*Math.pow(2,ae-Oe.tileID.overscaledZ)))}class La{constructor(R,ae,we,Se){this.opacity=R?Math.max(0,Math.min(1,R.opacity+(R.placed?ae:-ae))):Se&&we?1:0,this.placed=we}isHidden(){return this.opacity===0&&!this.placed}}class ka{constructor(R,ae,we,Se,De){this.text=new La(R?R.text:null,ae,we,De),this.icon=new La(R?R.icon:null,ae,Se,De)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Ga{constructor(R,ae,we){this.text=R,this.icon=ae,this.skipFade=we}}class Ma{constructor(){this.invProjMatrix=t.H(),this.viewportMatrix=t.H(),this.circles=[]}}class Ua{constructor(R,ae,we,Se,De){this.bucketInstanceId=R,this.featureIndex=ae,this.sourceLayerIndex=we,this.bucketIndex=Se,this.tileID=De}}class ni{constructor(R){this.crossSourceCollisions=R,this.maxGroupID=0,this.collisionGroups={}}get(R){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[R]){let ae=++this.maxGroupID;this.collisionGroups[R]={ID:ae,predicate:we=>we.collisionGroupID===ae}}return this.collisionGroups[R]}}function Wt(Oe,R,ae,we,Se){let{horizontalAlign:De,verticalAlign:ft}=t.au(Oe);return new t.P(-(De-.5)*R+we[0]*Se,-(ft-.5)*ae+we[1]*Se)}class zt{constructor(R,ae,we,Se,De,ft){this.transform=R.clone(),this.terrain=we,this.collisionIndex=new sa(this.transform,ae),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=Se,this.retainedQueryData={},this.collisionGroups=new ni(De),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=ft,ft&&(ft.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(R){let ae=this.terrain;return ae?(we,Se)=>ae.getElevation(R,we,Se):null}getBucketParts(R,ae,we,Se){let De=we.getBucket(ae),ft=we.latestFeatureIndex;if(!De||!ft||ae.id!==De.layerIds[0])return;let bt=we.collisionBoxArray,Dt=De.layers[0].layout,Yt=De.layers[0].paint,cr=Math.pow(2,this.transform.zoom-we.tileID.overscaledZ),hr=we.tileSize/t.X,jr=we.tileID.toUnwrapped(),ea=this.transform.calculatePosMatrix(jr),qe=Dt.get("text-pitch-alignment")==="map",Je=Dt.get("text-rotation-alignment")==="map",ot=Aa(we,1,this.transform.zoom),ht=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("text-translate"),Yt.get("text-translate-anchor")),At=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("icon-translate"),Yt.get("icon-translate-anchor")),_t=vr(ea,qe,Je,this.transform,ot),Pt=null;if(qe){let nr=_r(ea,qe,Je,this.transform,ot);Pt=t.L([],this.transform.labelPlaneMatrix,nr)}this.retainedQueryData[De.bucketInstanceId]=new Ua(De.bucketInstanceId,ft,De.sourceLayerIndex,De.index,we.tileID);let er={bucket:De,layout:Dt,translationText:ht,translationIcon:At,posMatrix:ea,unwrappedTileID:jr,textLabelPlaneMatrix:_t,labelToScreenMatrix:Pt,scale:cr,textPixelRatio:hr,holdingForFade:we.holdingForFade(),collisionBoxArray:bt,partiallyEvaluatedTextSize:t.ag(De.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(De.sourceID)};if(Se)for(let nr of De.sortKeyRanges){let{sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr}=nr;R.push({sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr,parameters:er})}else R.push({symbolInstanceStart:0,symbolInstanceEnd:De.symbolInstances.length,parameters:er})}attemptAnchorPlacement(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At,_t){let Pt=t.aq[R.textAnchor],er=[R.textOffset0,R.textOffset1],nr=Wt(Pt,we,Se,er,De),pr=this.collisionIndex.placeCollisionBox(ae,jr,Dt,Yt,cr,bt,ft,ot,hr.predicate,_t,nr);if((!At||this.collisionIndex.placeCollisionBox(At,jr,Dt,Yt,cr,bt,ft,ht,hr.predicate,_t,nr).placeable)&&pr.placeable){let Sr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID].text&&(Sr=this.prevPlacement.variableOffsets[ea.crossTileID].anchor),ea.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[ea.crossTileID]={textOffset:er,width:we,height:Se,anchor:Pt,textBoxScale:De,prevAnchor:Sr},this.markUsedJustification(qe,Pt,ea,Je),qe.allowVerticalPlacement&&(this.markUsedOrientation(qe,Je,ea),this.placedOrientations[ea.crossTileID]=Je),{shift:nr,placedGlyphBoxes:pr}}}placeLayerBucketPart(R,ae,we){let{bucket:Se,layout:De,translationText:ft,translationIcon:bt,posMatrix:Dt,unwrappedTileID:Yt,textLabelPlaneMatrix:cr,labelToScreenMatrix:hr,textPixelRatio:jr,holdingForFade:ea,collisionBoxArray:qe,partiallyEvaluatedTextSize:Je,collisionGroup:ot}=R.parameters,ht=De.get("text-optional"),At=De.get("icon-optional"),_t=t.ar(De,"text-overlap","text-allow-overlap"),Pt=_t==="always",er=t.ar(De,"icon-overlap","icon-allow-overlap"),nr=er==="always",pr=De.get("text-rotation-alignment")==="map",Sr=De.get("text-pitch-alignment")==="map",Wr=De.get("icon-text-fit")!=="none",ha=De.get("symbol-z-order")==="viewport-y",ga=Pt&&(nr||!Se.hasIconData()||At),Pa=nr&&(Pt||!Se.hasTextData()||ht);!Se.collisionArrays&&qe&&Se.deserializeCollisionBoxes(qe);let Ja=this._getTerrainElevationFunc(this.retainedQueryData[Se.bucketInstanceId].tileID),di=(pi,Ci,$i)=>{var Bn,Sn;if(ae[pi.crossTileID])return;if(ea)return void(this.placements[pi.crossTileID]=new Ga(!1,!1,!1));let ho=!1,ts=!1,yo=!0,Vo=null,ls={box:null,placeable:!1,offscreen:null},rl={box:null,placeable:!1,offscreen:null},Ys=null,Zo=null,Go=null,Rl=0,Xl=0,qu=0;Ci.textFeatureIndex?Rl=Ci.textFeatureIndex:pi.useRuntimeCollisionCircles&&(Rl=pi.featureIndex),Ci.verticalTextFeatureIndex&&(Xl=Ci.verticalTextFeatureIndex);let fu=Ci.textBox;if(fu){let ql=$e=>{let pt=t.ah.horizontal;if(Se.allowVerticalPlacement&&!$e&&this.prevPlacement){let vt=this.prevPlacement.placedOrientations[pi.crossTileID];vt&&(this.placedOrientations[pi.crossTileID]=vt,pt=vt,this.markUsedOrientation(Se,pt,pi))}return pt},Hl=($e,pt)=>{if(Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&Ci.verticalTextBox){for(let vt of Se.writingModes)if(vt===t.ah.vertical?(ls=pt(),rl=ls):ls=$e(),ls&&ls.placeable)break}else ls=$e()},de=pi.textAnchorOffsetStartIndex,Re=pi.textAnchorOffsetEndIndex;if(Re===de){let $e=(pt,vt)=>{let wt=this.collisionIndex.placeCollisionBox(pt,_t,jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja);return wt&&wt.placeable&&(this.markUsedOrientation(Se,vt,pi),this.placedOrientations[pi.crossTileID]=vt),wt};Hl(()=>$e(fu,t.ah.horizontal),()=>{let pt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&pt?$e(pt,t.ah.vertical):{box:null,offscreen:null}}),ql(ls&&ls.placeable)}else{let $e=t.aq[(Sn=(Bn=this.prevPlacement)===null||Bn===void 0?void 0:Bn.variableOffsets[pi.crossTileID])===null||Sn===void 0?void 0:Sn.anchor],pt=(wt,Jt,Rt)=>{let or=wt.x2-wt.x1,Dr=wt.y2-wt.y1,Or=pi.textBoxScale,va=Wr&&er==="never"?Jt:null,fa=null,Va=_t==="never"?1:2,Xa="never";$e&&Va++;for(let _a=0;_a<Va;_a++){for(let Ra=de;Ra<Re;Ra++){let Na=Se.textAnchorOffsets.get(Ra);if($e&&Na.textAnchor!==$e)continue;let Qa=this.attemptAnchorPlacement(Na,wt,or,Dr,Or,pr,Sr,jr,Dt,Yt,ot,Xa,pi,Se,Rt,ft,bt,va,Ja);if(Qa&&(fa=Qa.placedGlyphBoxes,fa&&fa.placeable))return ho=!0,Vo=Qa.shift,fa}$e?$e=null:Xa=_t}return we&&!fa&&(fa={box:this.collisionIndex.placeCollisionBox(fu,"always",jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja,new t.P(0,0)).box,offscreen:!1,placeable:!1}),fa};Hl(()=>pt(fu,Ci.iconBox,t.ah.horizontal),()=>{let wt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&(!ls||!ls.placeable)&&pi.numVerticalGlyphVertices>0&&wt?pt(wt,Ci.verticalIconBox,t.ah.vertical):{box:null,occluded:!0,offscreen:null}}),ls&&(ho=ls.placeable,yo=ls.offscreen);let vt=ql(ls&&ls.placeable);if(!ho&&this.prevPlacement){let wt=this.prevPlacement.variableOffsets[pi.crossTileID];wt&&(this.variableOffsets[pi.crossTileID]=wt,this.markUsedJustification(Se,wt.anchor,pi,vt))}}}if(Ys=ls,ho=Ys&&Ys.placeable,yo=Ys&&Ys.offscreen,pi.useRuntimeCollisionCircles){let ql=Se.text.placedSymbolArray.get(pi.centerJustifiedTextSymbolIndex),Hl=t.ai(Se.textSizeData,Je,ql),de=De.get("text-padding");Zo=this.collisionIndex.placeCollisionCircles(_t,ql,Se.lineVertexArray,Se.glyphOffsetArray,Hl,Dt,Yt,cr,hr,we,Sr,ot.predicate,pi.collisionCircleDiameter,de,ft,Ja),Zo.circles.length&&Zo.collisionDetected&&!we&&t.w("Collisions detected, but collision boxes are not shown"),ho=Pt||Zo.circles.length>0&&!Zo.collisionDetected,yo=yo&&Zo.offscreen}if(Ci.iconFeatureIndex&&(qu=Ci.iconFeatureIndex),Ci.iconBox){let ql=Hl=>this.collisionIndex.placeCollisionBox(Hl,er,jr,Dt,Yt,Sr,pr,bt,ot.predicate,Ja,Wr&&Vo?Vo:void 0);rl&&rl.placeable&&Ci.verticalIconBox?(Go=ql(Ci.verticalIconBox),ts=Go.placeable):(Go=ql(Ci.iconBox),ts=Go.placeable),yo=yo&&Go.offscreen}let bl=ht||pi.numHorizontalGlyphVertices===0&&pi.numVerticalGlyphVertices===0,ou=At||pi.numIconVertices===0;bl||ou?ou?bl||(ts=ts&&ho):ho=ts&&ho:ts=ho=ts&&ho;let Sc=ts&&Go.placeable;if(ho&&Ys.placeable&&this.collisionIndex.insertCollisionBox(Ys.box,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,rl&&rl.placeable&&Xl?Xl:Rl,ot.ID),Sc&&this.collisionIndex.insertCollisionBox(Go.box,er,De.get("icon-ignore-placement"),Se.bucketInstanceId,qu,ot.ID),Zo&&ho&&this.collisionIndex.insertCollisionCircles(Zo.circles,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,Rl,ot.ID),we&&this.storeCollisionData(Se.bucketInstanceId,$i,Ci,Ys,Go,Zo),pi.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(Se.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[pi.crossTileID]=new Ga(ho||ga,ts||Pa,yo||Se.justReloaded),ae[pi.crossTileID]=!0};if(ha){if(R.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let pi=Se.getSortedSymbolIndexes(this.transform.angle);for(let Ci=pi.length-1;Ci>=0;--Ci){let $i=pi[Ci];di(Se.symbolInstances.get($i),Se.collisionArrays[$i],$i)}}else for(let pi=R.symbolInstanceStart;pi<R.symbolInstanceEnd;pi++)di(Se.symbolInstances.get(pi),Se.collisionArrays[pi],pi);if(we&&Se.bucketInstanceId in this.collisionCircleArrays){let pi=this.collisionCircleArrays[Se.bucketInstanceId];t.as(pi.invProjMatrix,Dt),pi.viewportMatrix=this.collisionIndex.getViewportMatrix()}Se.justReloaded=!1}storeCollisionData(R,ae,we,Se,De,ft){if(we.textBox||we.iconBox){let bt,Dt;this.collisionBoxArrays.has(R)?bt=this.collisionBoxArrays.get(R):(bt=new Map,this.collisionBoxArrays.set(R,bt)),bt.has(ae)?Dt=bt.get(ae):(Dt={text:null,icon:null},bt.set(ae,Dt)),we.textBox&&(Dt.text=Se.box),we.iconBox&&(Dt.icon=De.box)}if(ft){let bt=this.collisionCircleArrays[R];bt===void 0&&(bt=this.collisionCircleArrays[R]=new Ma);for(let Dt=0;Dt<ft.circles.length;Dt+=4)bt.circles.push(ft.circles[Dt+0]),bt.circles.push(ft.circles[Dt+1]),bt.circles.push(ft.circles[Dt+2]),bt.circles.push(ft.collisionDetected?1:0)}}markUsedJustification(R,ae,we,Se){let De;De=Se===t.ah.vertical?we.verticalPlacedTextSymbolIndex:{left:we.leftJustifiedTextSymbolIndex,center:we.centerJustifiedTextSymbolIndex,right:we.rightJustifiedTextSymbolIndex}[t.at(ae)];let ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex,we.verticalPlacedTextSymbolIndex];for(let bt of ft)bt>=0&&(R.text.placedSymbolArray.get(bt).crossTileID=De>=0&&bt!==De?0:we.crossTileID)}markUsedOrientation(R,ae,we){let Se=ae===t.ah.horizontal||ae===t.ah.horizontalOnly?ae:0,De=ae===t.ah.vertical?ae:0,ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex];for(let bt of ft)R.text.placedSymbolArray.get(bt).placedOrientation=Se;we.verticalPlacedTextSymbolIndex&&(R.text.placedSymbolArray.get(we.verticalPlacedTextSymbolIndex).placedOrientation=De)}commit(R){this.commitTime=R,this.zoomAtLastRecencyCheck=this.transform.zoom;let ae=this.prevPlacement,we=!1;this.prevZoomAdjustment=ae?ae.zoomAdjustment(this.transform.zoom):0;let Se=ae?ae.symbolFadeChange(R):1,De=ae?ae.opacities:{},ft=ae?ae.variableOffsets:{},bt=ae?ae.placedOrientations:{};for(let Dt in this.placements){let Yt=this.placements[Dt],cr=De[Dt];cr?(this.opacities[Dt]=new ka(cr,Se,Yt.text,Yt.icon),we=we||Yt.text!==cr.text.placed||Yt.icon!==cr.icon.placed):(this.opacities[Dt]=new ka(null,Se,Yt.text,Yt.icon,Yt.skipFade),we=we||Yt.text||Yt.icon)}for(let Dt in De){let Yt=De[Dt];if(!this.opacities[Dt]){let cr=new ka(Yt,Se,!1,!1);cr.isHidden()||(this.opacities[Dt]=cr,we=we||Yt.text.placed||Yt.icon.placed)}}for(let Dt in ft)this.variableOffsets[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.variableOffsets[Dt]=ft[Dt]);for(let Dt in bt)this.placedOrientations[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.placedOrientations[Dt]=bt[Dt]);if(ae&&ae.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");we?this.lastPlacementChangeTime=R:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ae?ae.lastPlacementChangeTime:R)}updateLayerOpacities(R,ae){let we={};for(let Se of ae){let De=Se.getBucket(R);De&&Se.latestFeatureIndex&&R.id===De.layerIds[0]&&this.updateBucketOpacities(De,Se.tileID,we,Se.collisionBoxArray)}}updateBucketOpacities(R,ae,we,Se){R.hasTextData()&&(R.text.opacityVertexArray.clear(),R.text.hasVisibleVertices=!1),R.hasIconData()&&(R.icon.opacityVertexArray.clear(),R.icon.hasVisibleVertices=!1),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexArray.clear(),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexArray.clear();let De=R.layers[0],ft=De.layout,bt=new ka(null,0,!1,!1,!0),Dt=ft.get("text-allow-overlap"),Yt=ft.get("icon-allow-overlap"),cr=De._unevaluatedLayout.hasValue("text-variable-anchor")||De._unevaluatedLayout.hasValue("text-variable-anchor-offset"),hr=ft.get("text-rotation-alignment")==="map",jr=ft.get("text-pitch-alignment")==="map",ea=ft.get("icon-text-fit")!=="none",qe=new ka(null,0,Dt&&(Yt||!R.hasIconData()||ft.get("icon-optional")),Yt&&(Dt||!R.hasTextData()||ft.get("text-optional")),!0);!R.collisionArrays&&Se&&(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData())&&R.deserializeCollisionBoxes(Se);let Je=(ht,At,_t)=>{for(let Pt=0;Pt<At/4;Pt++)ht.opacityVertexArray.emplaceBack(_t);ht.hasVisibleVertices=ht.hasVisibleVertices||_t!==ya},ot=this.collisionBoxArrays.get(R.bucketInstanceId);for(let ht=0;ht<R.symbolInstances.length;ht++){let At=R.symbolInstances.get(ht),{numHorizontalGlyphVertices:_t,numVerticalGlyphVertices:Pt,crossTileID:er}=At,nr=this.opacities[er];we[er]?nr=bt:nr||(nr=qe,this.opacities[er]=nr),we[er]=!0;let pr=At.numIconVertices>0,Sr=this.placedOrientations[At.crossTileID],Wr=Sr===t.ah.vertical,ha=Sr===t.ah.horizontal||Sr===t.ah.horizontalOnly;if(_t>0||Pt>0){let Pa=qa(nr.text);Je(R.text,_t,Wr?ya:Pa),Je(R.text,Pt,ha?ya:Pa);let Ja=nr.text.isHidden();[At.rightJustifiedTextSymbolIndex,At.centerJustifiedTextSymbolIndex,At.leftJustifiedTextSymbolIndex].forEach(Ci=>{Ci>=0&&(R.text.placedSymbolArray.get(Ci).hidden=Ja||Wr?1:0)}),At.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(At.verticalPlacedTextSymbolIndex).hidden=Ja||ha?1:0);let di=this.variableOffsets[At.crossTileID];di&&this.markUsedJustification(R,di.anchor,At,Sr);let pi=this.placedOrientations[At.crossTileID];pi&&(this.markUsedJustification(R,"left",At,pi),this.markUsedOrientation(R,pi,At))}if(pr){let Pa=qa(nr.icon),Ja=!(ea&&At.verticalPlacedIconSymbolIndex&&Wr);At.placedIconSymbolIndex>=0&&(Je(R.icon,At.numIconVertices,Ja?Pa:ya),R.icon.placedSymbolArray.get(At.placedIconSymbolIndex).hidden=nr.icon.isHidden()),At.verticalPlacedIconSymbolIndex>=0&&(Je(R.icon,At.numVerticalIconVertices,Ja?ya:Pa),R.icon.placedSymbolArray.get(At.verticalPlacedIconSymbolIndex).hidden=nr.icon.isHidden())}let ga=ot&&ot.has(ht)?ot.get(ht):{text:null,icon:null};if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){let Pa=R.collisionArrays[ht];if(Pa){let Ja=new t.P(0,0);if(Pa.textBox||Pa.verticalTextBox){let di=!0;if(cr){let pi=this.variableOffsets[er];pi?(Ja=Wt(pi.anchor,pi.width,pi.height,pi.textOffset,pi.textBoxScale),hr&&Ja._rotate(jr?this.transform.angle:-this.transform.angle)):di=!1}if(Pa.textBox||Pa.verticalTextBox){let pi;Pa.textBox&&(pi=Wr),Pa.verticalTextBox&&(pi=ha),Vt(R.textCollisionBox.collisionVertexArray,nr.text.placed,!di||pi,ga.text,Ja.x,Ja.y)}}if(Pa.iconBox||Pa.verticalIconBox){let di=!!(!ha&&Pa.verticalIconBox),pi;Pa.iconBox&&(pi=di),Pa.verticalIconBox&&(pi=!di),Vt(R.iconCollisionBox.collisionVertexArray,nr.icon.placed,pi,ga.icon,ea?Ja.x:0,ea?Ja.y:0)}}}}if(R.sortFeatures(this.transform.angle),this.retainedQueryData[R.bucketInstanceId]&&(this.retainedQueryData[R.bucketInstanceId].featureSortOrder=R.featureSortOrder),R.hasTextData()&&R.text.opacityVertexBuffer&&R.text.opacityVertexBuffer.updateData(R.text.opacityVertexArray),R.hasIconData()&&R.icon.opacityVertexBuffer&&R.icon.opacityVertexBuffer.updateData(R.icon.opacityVertexArray),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexBuffer&&R.iconCollisionBox.collisionVertexBuffer.updateData(R.iconCollisionBox.collisionVertexArray),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexBuffer&&R.textCollisionBox.collisionVertexBuffer.updateData(R.textCollisionBox.collisionVertexArray),R.text.opacityVertexArray.length!==R.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${R.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${R.text.layoutVertexArray.length}) / 4`);if(R.icon.opacityVertexArray.length!==R.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${R.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${R.icon.layoutVertexArray.length}) / 4`);if(R.bucketInstanceId in this.collisionCircleArrays){let ht=this.collisionCircleArrays[R.bucketInstanceId];R.placementInvProjMatrix=ht.invProjMatrix,R.placementViewportMatrix=ht.viewportMatrix,R.collisionCircleArray=ht.circles,delete this.collisionCircleArrays[R.bucketInstanceId]}}symbolFadeChange(R){return this.fadeDuration===0?1:(R-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(R){return Math.max(0,(this.transform.zoom-R)/1.5)}hasTransitions(R){return this.stale||R-this.lastPlacementChangeTime<this.fadeDuration}stillRecent(R,ae){let we=this.zoomAtLastRecencyCheck===ae?1-this.zoomAdjustment(ae):1;return this.zoomAtLastRecencyCheck=ae,this.commitTime+this.fadeDuration*we>R}setStale(){this.stale=!0}}function Vt(Oe,R,ae,we,Se,De){we&&we.length!==0||(we=[0,0,0,0]);let ft=we[0]-sr,bt=we[1]-sr,Dt=we[2]-sr,Yt=we[3]-sr;Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,Yt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,Yt)}let Ut=Math.pow(2,25),xr=Math.pow(2,24),Zr=Math.pow(2,17),pa=Math.pow(2,16),Xr=Math.pow(2,9),Ea=Math.pow(2,8),Fa=Math.pow(2,1);function qa(Oe){if(Oe.opacity===0&&!Oe.placed)return 0;if(Oe.opacity===1&&Oe.placed)return 4294967295;let R=Oe.placed?1:0,ae=Math.floor(127*Oe.opacity);return ae*Ut+R*xr+ae*Zr+R*pa+ae*Xr+R*Ea+ae*Fa+R}let ya=0;function $a(){return{isOccluded:(Oe,R,ae)=>!1,getPitchedTextCorrection:(Oe,R,ae)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(Oe,R,ae,we){throw new Error("Not implemented.")},translatePosition:(Oe,R,ae,we)=>function(Se,De,ft,bt,Dt=!1){if(!ft[0]&&!ft[1])return[0,0];let Yt=Dt?bt==="map"?Se.angle:0:bt==="viewport"?-Se.angle:0;if(Yt){let cr=Math.sin(Yt),hr=Math.cos(Yt);ft=[ft[0]*hr-ft[1]*cr,ft[0]*cr+ft[1]*hr]}return[Dt?ft[0]:Aa(De,ft[0],Se.zoom),Dt?ft[1]:Aa(De,ft[1],Se.zoom)]}(Oe,R,ae,we),getCircleRadiusCorrection:Oe=>1}}class mt{constructor(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&!R.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(R,ae,we,Se,De){let ft=this._bucketParts;for(;this._currentTileIndex<R.length;)if(ae.getBucketParts(ft,Se,R[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,De())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,ft.sort((bt,Dt)=>bt.sortKey-Dt.sortKey));this._currentPartIndex<ft.length;)if(ae.placeLayerBucketPart(ft[this._currentPartIndex],this._seenCrossTileIDs,we),this._currentPartIndex++,De())return!0;return!1}}class gt{constructor(R,ae,we,Se,De,ft,bt,Dt){this.placement=new zt(R,$a(),ae,ft,bt,Dt),this._currentPlacementIndex=we.length-1,this._forceFullPlacement=Se,this._showCollisionBoxes=De,this._done=!1}isDone(){return this._done}continuePlacement(R,ae,we){let Se=i.now(),De=()=>!this._forceFullPlacement&&i.now()-Se>2;for(;this._currentPlacementIndex>=0;){let ft=ae[R[this._currentPlacementIndex]],bt=this.placement.collisionIndex.transform.zoom;if(ft.type==="symbol"&&(!ft.minzoom||ft.minzoom<=bt)&&(!ft.maxzoom||ft.maxzoom>bt)){if(this._inProgressLayer||(this._inProgressLayer=new mt(ft)),this._inProgressLayer.continuePlacement(we[ft.source],this.placement,this._showCollisionBoxes,ft,De))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(R){return this.placement.commit(R),this.placement}}let Er=512/t.X/2;class kr{constructor(R,ae,we){this.tileID=R,this.bucketInstanceId=we,this._symbolsByKey={};let Se=new Map;for(let De=0;De<ae.length;De++){let ft=ae.get(De),bt=ft.key,Dt=Se.get(bt);Dt?Dt.push(ft):Se.set(bt,[ft])}for(let[De,ft]of Se){let bt={positions:ft.map(Dt=>({x:Math.floor(Dt.anchorX*Er),y:Math.floor(Dt.anchorY*Er)})),crossTileIDs:ft.map(Dt=>Dt.crossTileID)};if(bt.positions.length>128){let Dt=new t.av(bt.positions.length,16,Uint16Array);for(let{x:Yt,y:cr}of bt.positions)Dt.add(Yt,cr);Dt.finish(),delete bt.positions,bt.index=Dt}this._symbolsByKey[De]=bt}}getScaledCoordinates(R,ae){let{x:we,y:Se,z:De}=this.tileID.canonical,{x:ft,y:bt,z:Dt}=ae.canonical,Yt=Er/Math.pow(2,Dt-De),cr=(bt*t.X+R.anchorY)*Yt,hr=Se*t.X*Er;return{x:Math.floor((ft*t.X+R.anchorX)*Yt-we*t.X*Er),y:Math.floor(cr-hr)}}findMatches(R,ae,we){let Se=this.tileID.canonical.z<ae.canonical.z?1:Math.pow(2,this.tileID.canonical.z-ae.canonical.z);for(let De=0;De<R.length;De++){let ft=R.get(De);if(ft.crossTileID)continue;let bt=this._symbolsByKey[ft.key];if(!bt)continue;let Dt=this.getScaledCoordinates(ft,ae);if(bt.index){let Yt=bt.index.range(Dt.x-Se,Dt.y-Se,Dt.x+Se,Dt.y+Se).sort();for(let cr of Yt){let hr=bt.crossTileIDs[cr];if(!we[hr]){we[hr]=!0,ft.crossTileID=hr;break}}}else if(bt.positions)for(let Yt=0;Yt<bt.positions.length;Yt++){let cr=bt.positions[Yt],hr=bt.crossTileIDs[Yt];if(Math.abs(cr.x-Dt.x)<=Se&&Math.abs(cr.y-Dt.y)<=Se&&!we[hr]){we[hr]=!0,ft.crossTileID=hr;break}}}}getCrossTileIDsLists(){return Object.values(this._symbolsByKey).map(({crossTileIDs:R})=>R)}}class br{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Tr{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(R){let ae=Math.round((R-this.lng)/360);if(ae!==0)for(let we in this.indexes){let Se=this.indexes[we],De={};for(let ft in Se){let bt=Se[ft];bt.tileID=bt.tileID.unwrapTo(bt.tileID.wrap+ae),De[bt.tileID.key]=bt}this.indexes[we]=De}this.lng=R}addBucket(R,ae,we){if(this.indexes[R.overscaledZ]&&this.indexes[R.overscaledZ][R.key]){if(this.indexes[R.overscaledZ][R.key].bucketInstanceId===ae.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(R.overscaledZ,this.indexes[R.overscaledZ][R.key])}for(let De=0;De<ae.symbolInstances.length;De++)ae.symbolInstances.get(De).crossTileID=0;this.usedCrossTileIDs[R.overscaledZ]||(this.usedCrossTileIDs[R.overscaledZ]={});let Se=this.usedCrossTileIDs[R.overscaledZ];for(let De in this.indexes){let ft=this.indexes[De];if(Number(De)>R.overscaledZ)for(let bt in ft){let Dt=ft[bt];Dt.tileID.isChildOf(R)&&Dt.findMatches(ae.symbolInstances,R,Se)}else{let bt=ft[R.scaledTo(Number(De)).key];bt&&bt.findMatches(ae.symbolInstances,R,Se)}}for(let De=0;De<ae.symbolInstances.length;De++){let ft=ae.symbolInstances.get(De);ft.crossTileID||(ft.crossTileID=we.generate(),Se[ft.crossTileID]=!0)}return this.indexes[R.overscaledZ]===void 0&&(this.indexes[R.overscaledZ]={}),this.indexes[R.overscaledZ][R.key]=new kr(R,ae.symbolInstances,ae.bucketInstanceId),!0}removeBucketCrossTileIDs(R,ae){for(let we of ae.getCrossTileIDsLists())for(let Se of we)delete this.usedCrossTileIDs[R][Se]}removeStaleBuckets(R){let ae=!1;for(let we in this.indexes){let Se=this.indexes[we];for(let De in Se)R[Se[De].bucketInstanceId]||(this.removeBucketCrossTileIDs(we,Se[De]),delete Se[De],ae=!0)}return ae}}class Mr{constructor(){this.layerIndexes={},this.crossTileIDs=new br,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}}addLayer(R,ae,we){let Se=this.layerIndexes[R.id];Se===void 0&&(Se=this.layerIndexes[R.id]=new Tr);let De=!1,ft={};Se.handleWrapJump(we);for(let bt of ae){let Dt=bt.getBucket(R);Dt&&R.id===Dt.layerIds[0]&&(Dt.bucketInstanceId||(Dt.bucketInstanceId=++this.maxBucketInstanceId),Se.addBucket(bt.tileID,Dt,this.crossTileIDs)&&(De=!0),ft[Dt.bucketInstanceId]=!0)}return Se.removeStaleBuckets(ft)&&(De=!0),De}pruneUnusedLayers(R){let ae={};R.forEach(we=>{ae[we]=!0});for(let we in this.layerIndexes)ae[we]||delete this.layerIndexes[we]}}let Fr=(Oe,R)=>t.t(Oe,R&&R.filter(ae=>ae.identifier!=="source.canvas")),Lr=t.aw();class Jr extends t.E{constructor(R,ae={}){super(),this._rtlPluginLoaded=()=>{for(let we in this.sourceCaches){let Se=this.sourceCaches[we].getSource().type;Se!=="vector"&&Se!=="geojson"||this.sourceCaches[we].reload()}},this.map=R,this.dispatcher=new J($(),R._getMapId()),this.dispatcher.registerMessageHandler("GG",(we,Se)=>this.getGlyphs(we,Se)),this.dispatcher.registerMessageHandler("GI",(we,Se)=>this.getImages(we,Se)),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new F(R._requestManager,ae.localIdeographFontFamily),this.lineAtlas=new W(256,512),this.crossTileSymbolIndex=new Mr,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",t.ay()),tt().on(ge,this._rtlPluginLoaded),this.on("data",we=>{if(we.dataType!=="source"||we.sourceDataType!=="metadata")return;let Se=this.sourceCaches[we.sourceId];if(!Se)return;let De=Se.getSource();if(De&&De.vectorLayerIds)for(let ft in this._layers){let bt=this._layers[ft];bt.source===De.id&&this._validateLayer(bt)}})}loadURL(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),ae.validate=typeof ae.validate!="boolean"||ae.validate;let Se=this.map._requestManager.transformRequest(R,"Style");this._loadStyleRequest=new AbortController;let De=this._loadStyleRequest;t.h(Se,this._loadStyleRequest).then(ft=>{this._loadStyleRequest=null,this._load(ft.data,ae,we)}).catch(ft=>{this._loadStyleRequest=null,ft&&!De.signal.aborted&&this.fire(new t.j(ft))})}loadJSON(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,ae.validate=ae.validate!==!1,this._load(R,ae,we)}).catch(()=>{})}loadEmpty(){this.fire(new t.k("dataloading",{dataType:"style"})),this._load(Lr,{validate:!1})}_load(R,ae,we){var Se;let De=ae.transformStyle?ae.transformStyle(we,R):R;if(!ae.validate||!Fr(this,t.u(De))){this._loaded=!0,this.stylesheet=De;for(let ft in De.sources)this.addSource(ft,De.sources[ft],{validate:!1});De.sprite?this._loadSprite(De.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(De.glyphs),this._createLayers(),this.light=new I(this.stylesheet.light),this.sky=new U(this.stylesheet.sky),this.map.setTerrain((Se=this.stylesheet.terrain)!==null&&Se!==void 0?Se:null),this.fire(new t.k("data",{dataType:"style"})),this.fire(new t.k("style.load"))}}_createLayers(){let R=t.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",R),this._order=R.map(ae=>ae.id),this._layers={},this._serializedLayers=null;for(let ae of R){let we=t.aA(ae);we.setEventedParent(this,{layer:{id:ae.id}}),this._layers[ae.id]=we}}_loadSprite(R,ae=!1,we=void 0){let Se;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(De,ft,bt,Dt){return t._(this,void 0,void 0,function*(){let Yt=b(De),cr=bt>1?"@2x":"",hr={},jr={};for(let{id:ea,url:qe}of Yt){let Je=ft.transformRequest(d(qe,cr,".json"),"SpriteJSON");hr[ea]=t.h(Je,Dt);let ot=ft.transformRequest(d(qe,cr,".png"),"SpriteImage");jr[ea]=l.getImage(ot,Dt)}return yield Promise.all([...Object.values(hr),...Object.values(jr)]),function(ea,qe){return t._(this,void 0,void 0,function*(){let Je={};for(let ot in ea){Je[ot]={};let ht=i.getImageCanvasContext((yield qe[ot]).data),At=(yield ea[ot]).data;for(let _t in At){let{width:Pt,height:er,x:nr,y:pr,sdf:Sr,pixelRatio:Wr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di}=At[_t];Je[ot][_t]={data:null,pixelRatio:Wr,sdf:Sr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di,spriteData:{width:Pt,height:er,x:nr,y:pr,context:ht}}}}return Je})}(hr,jr)})}(R,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(De=>{if(this._spriteRequest=null,De)for(let ft in De){this._spritesImagesIds[ft]=[];let bt=this._spritesImagesIds[ft]?this._spritesImagesIds[ft].filter(Dt=>!(Dt in De)):[];for(let Dt of bt)this.imageManager.removeImage(Dt),this._changedImages[Dt]=!0;for(let Dt in De[ft]){let Yt=ft==="default"?Dt:`${ft}:${Dt}`;this._spritesImagesIds[ft].push(Yt),Yt in this.imageManager.images?this.imageManager.updateImage(Yt,De[ft][Dt],!1):this.imageManager.addImage(Yt,De[ft][Dt]),ae&&(this._changedImages[Yt]=!0)}}}).catch(De=>{this._spriteRequest=null,Se=De,this.fire(new t.j(Se))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),ae&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"})),we&&we(Se)})}_unloadSprite(){for(let R of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(R),this._changedImages[R]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}_validateLayer(R){let ae=this.sourceCaches[R.source];if(!ae)return;let we=R.sourceLayer;if(!we)return;let Se=ae.getSource();(Se.type==="geojson"||Se.vectorLayerIds&&Se.vectorLayerIds.indexOf(we)===-1)&&this.fire(new t.j(new Error(`Source layer "${we}" does not exist on source "${Se.id}" as specified by style layer "${R.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let R in this.sourceCaches)if(!this.sourceCaches[R].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(R,ae=!1){let we=this._serializedAllLayers();if(!R||R.length===0)return Object.values(ae?t.aB(we):we);let Se=[];for(let De of R)if(we[De]){let ft=ae?t.aB(we[De]):we[De];Se.push(ft)}return Se}_serializedAllLayers(){let R=this._serializedLayers;if(R)return R;R=this._serializedLayers={};let ae=Object.keys(this._layers);for(let we of ae){let Se=this._layers[we];Se.type!=="custom"&&(R[we]=Se.serialize())}return R}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let R in this.sourceCaches)if(this.sourceCaches[R].hasTransition())return!0;for(let R in this._layers)if(this._layers[R].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(R){if(!this._loaded)return;let ae=this._changed;if(ae){let Se=Object.keys(this._updatedLayers),De=Object.keys(this._removedLayers);(Se.length||De.length)&&this._updateWorkerLayers(Se,De);for(let ft in this._updatedSources){let bt=this._updatedSources[ft];if(bt==="reload")this._reloadSource(ft);else{if(bt!=="clear")throw new Error(`Invalid action ${bt}`);this._clearSource(ft)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let ft in this._updatedPaintProps)this._layers[ft].updateTransitions(R);this.light.updateTransitions(R),this.sky.updateTransitions(R),this._resetUpdates()}let we={};for(let Se in this.sourceCaches){let De=this.sourceCaches[Se];we[Se]=De.used,De.used=!1}for(let Se of this._order){let De=this._layers[Se];De.recalculate(R,this._availableImages),!De.isHidden(R.zoom)&&De.source&&(this.sourceCaches[De.source].used=!0)}for(let Se in we){let De=this.sourceCaches[Se];!!we[Se]!=!!De.used&&De.fire(new t.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:Se}))}this.light.recalculate(R),this.sky.recalculate(R),this.z=R.zoom,ae&&this.fire(new t.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let R=Object.keys(this._changedImages);if(R.length){for(let ae in this.sourceCaches)this.sourceCaches[ae].reloadTilesForDependencies(["icons","patterns"],R);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let R in this.sourceCaches)this.sourceCaches[R].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(R,ae){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(R,!1),removedIds:ae})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(R,ae={}){var we;this._checkLoaded();let Se=this.serialize();if(R=ae.transformStyle?ae.transformStyle(Se,R):R,((we=ae.validate)===null||we===void 0||we)&&Fr(this,t.u(R)))return!1;(R=t.aB(R)).layers=t.az(R.layers);let De=t.aC(Se,R),ft=this._getOperationsToPerform(De);if(ft.unimplemented.length>0)throw new Error(`Unimplemented: ${ft.unimplemented.join(", ")}.`);if(ft.operations.length===0)return!1;for(let bt of ft.operations)bt();return this.stylesheet=R,this._serializedLayers=null,!0}_getOperationsToPerform(R){let ae=[],we=[];for(let Se of R)switch(Se.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":ae.push(()=>this.addLayer.apply(this,Se.args));break;case"removeLayer":ae.push(()=>this.removeLayer.apply(this,Se.args));break;case"setPaintProperty":ae.push(()=>this.setPaintProperty.apply(this,Se.args));break;case"setLayoutProperty":ae.push(()=>this.setLayoutProperty.apply(this,Se.args));break;case"setFilter":ae.push(()=>this.setFilter.apply(this,Se.args));break;case"addSource":ae.push(()=>this.addSource.apply(this,Se.args));break;case"removeSource":ae.push(()=>this.removeSource.apply(this,Se.args));break;case"setLayerZoomRange":ae.push(()=>this.setLayerZoomRange.apply(this,Se.args));break;case"setLight":ae.push(()=>this.setLight.apply(this,Se.args));break;case"setGeoJSONSourceData":ae.push(()=>this.setGeoJSONSourceData.apply(this,Se.args));break;case"setGlyphs":ae.push(()=>this.setGlyphs.apply(this,Se.args));break;case"setSprite":ae.push(()=>this.setSprite.apply(this,Se.args));break;case"setSky":ae.push(()=>this.setSky.apply(this,Se.args));break;case"setTerrain":ae.push(()=>this.map.setTerrain.apply(this,Se.args));break;case"setTransition":ae.push(()=>{});break;default:we.push(Se.command)}return{operations:ae,unimplemented:we}}addImage(R,ae){if(this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" already exists.`)));this.imageManager.addImage(R,ae),this._afterImageUpdated(R)}updateImage(R,ae){this.imageManager.updateImage(R,ae)}getImage(R){return this.imageManager.getImage(R)}removeImage(R){if(!this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" does not exist.`)));this.imageManager.removeImage(R),this._afterImageUpdated(R)}_afterImageUpdated(R){this._availableImages=this.imageManager.listImages(),this._changedImages[R]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(R,ae,we={}){if(this._checkLoaded(),this.sourceCaches[R]!==void 0)throw new Error(`Source "${R}" already exists.`);if(!ae.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(ae).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(ae.type)>=0&&this._validate(t.u.source,`sources.${R}`,ae,null,we))return;this.map&&this.map._collectResourceTiming&&(ae.collectResourceTiming=!0);let Se=this.sourceCaches[R]=new St(R,ae,this.dispatcher);Se.style=this,Se.setEventedParent(this,()=>({isSourceLoaded:Se.loaded(),source:Se.serialize(),sourceId:R})),Se.onAdd(this.map),this._changed=!0}removeSource(R){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error("There is no source with this ID");for(let we in this._layers)if(this._layers[we].source===R)return this.fire(new t.j(new Error(`Source "${R}" cannot be removed while layer "${we}" is using it.`)));let ae=this.sourceCaches[R];delete this.sourceCaches[R],delete this._updatedSources[R],ae.fire(new t.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:R})),ae.setEventedParent(null),ae.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(R,ae){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error(`There is no source with this ID=${R}`);let we=this.sourceCaches[R].getSource();if(we.type!=="geojson")throw new Error(`geojsonSource.type is ${we.type}, which is !== 'geojson`);we.setData(ae),this._changed=!0}getSource(R){return this.sourceCaches[R]&&this.sourceCaches[R].getSource()}addLayer(R,ae,we={}){this._checkLoaded();let Se=R.id;if(this.getLayer(Se))return void this.fire(new t.j(new Error(`Layer "${Se}" already exists on this map.`)));let De;if(R.type==="custom"){if(Fr(this,t.aD(R)))return;De=t.aA(R)}else{if("source"in R&&typeof R.source=="object"&&(this.addSource(Se,R.source),R=t.aB(R),R=t.e(R,{source:Se})),this._validate(t.u.layer,`layers.${Se}`,R,{arrayIndex:-1},we))return;De=t.aA(R),this._validateLayer(De),De.setEventedParent(this,{layer:{id:Se}})}let ft=ae?this._order.indexOf(ae):this._order.length;if(ae&&ft===-1)this.fire(new t.j(new Error(`Cannot add layer "${Se}" before non-existing layer "${ae}".`)));else{if(this._order.splice(ft,0,Se),this._layerOrderChanged=!0,this._layers[Se]=De,this._removedLayers[Se]&&De.source&&De.type!=="custom"){let bt=this._removedLayers[Se];delete this._removedLayers[Se],bt.type!==De.type?this._updatedSources[De.source]="clear":(this._updatedSources[De.source]="reload",this.sourceCaches[De.source].pause())}this._updateLayer(De),De.onAdd&&De.onAdd(this.map)}}moveLayer(R,ae){if(this._checkLoaded(),this._changed=!0,!this._layers[R])return void this.fire(new t.j(new Error(`The layer '${R}' does not exist in the map's style and cannot be moved.`)));if(R===ae)return;let we=this._order.indexOf(R);this._order.splice(we,1);let Se=ae?this._order.indexOf(ae):this._order.length;ae&&Se===-1?this.fire(new t.j(new Error(`Cannot move layer "${R}" before non-existing layer "${ae}".`))):(this._order.splice(Se,0,R),this._layerOrderChanged=!0)}removeLayer(R){this._checkLoaded();let ae=this._layers[R];if(!ae)return void this.fire(new t.j(new Error(`Cannot remove non-existing layer "${R}".`)));ae.setEventedParent(null);let we=this._order.indexOf(R);this._order.splice(we,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[R]=ae,delete this._layers[R],this._serializedLayers&&delete this._serializedLayers[R],delete this._updatedLayers[R],delete this._updatedPaintProps[R],ae.onRemove&&ae.onRemove(this.map)}getLayer(R){return this._layers[R]}getLayersOrder(){return[...this._order]}hasLayer(R){return R in this._layers}setLayerZoomRange(R,ae,we){this._checkLoaded();let Se=this.getLayer(R);Se?Se.minzoom===ae&&Se.maxzoom===we||(ae!=null&&(Se.minzoom=ae),we!=null&&(Se.maxzoom=we),this._updateLayer(Se)):this.fire(new t.j(new Error(`Cannot set the zoom range of non-existing layer "${R}".`)))}setFilter(R,ae,we={}){this._checkLoaded();let Se=this.getLayer(R);if(Se){if(!t.aE(Se.filter,ae))return ae==null?(Se.filter=void 0,void this._updateLayer(Se)):void(this._validate(t.u.filter,`layers.${Se.id}.filter`,ae,null,we)||(Se.filter=t.aB(ae),this._updateLayer(Se)))}else this.fire(new t.j(new Error(`Cannot filter non-existing layer "${R}".`)))}getFilter(R){return t.aB(this.getLayer(R).filter)}setLayoutProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getLayoutProperty(ae),we)||(De.setLayoutProperty(ae,we,Se),this._updateLayer(De)):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getLayoutProperty(R,ae){let we=this.getLayer(R);if(we)return we.getLayoutProperty(ae);this.fire(new t.j(new Error(`Cannot get style of non-existing layer "${R}".`)))}setPaintProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getPaintProperty(ae),we)||(De.setPaintProperty(ae,we,Se)&&this._updateLayer(De),this._changed=!0,this._updatedPaintProps[R]=!0,this._serializedLayers=null):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getPaintProperty(R,ae){return this.getLayer(R).getPaintProperty(ae)}setFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=R.sourceLayer,De=this.sourceCaches[we];if(De===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let ft=De.getSource().type;ft==="geojson"&&Se?this.fire(new t.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):ft!=="vector"||Se?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),De.setFeatureState(Se,R.id,ae)):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=this.sourceCaches[we];if(Se===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let De=Se.getSource().type,ft=De==="vector"?R.sourceLayer:void 0;De!=="vector"||ft?ae&&typeof R.id!="string"&&typeof R.id!="number"?this.fire(new t.j(new Error("A feature id is required to remove its specific state property."))):Se.removeFeatureState(ft,R.id,ae):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(R){this._checkLoaded();let ae=R.source,we=R.sourceLayer,Se=this.sourceCaches[ae];if(Se!==void 0)return Se.getSource().type!=="vector"||we?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),Se.getFeatureState(we,R.id)):void this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new t.j(new Error(`The source '${ae}' does not exist in the map's style.`)))}getTransition(){return t.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let R=t.aF(this.sourceCaches,De=>De.serialize()),ae=this._serializeByIds(this._order,!0),we=this.map.getTerrain()||void 0,Se=this.stylesheet;return t.aG({version:Se.version,name:Se.name,metadata:Se.metadata,light:Se.light,sky:Se.sky,center:Se.center,zoom:Se.zoom,bearing:Se.bearing,pitch:Se.pitch,sprite:Se.sprite,glyphs:Se.glyphs,transition:Se.transition,sources:R,layers:ae,terrain:we},De=>De!==void 0)}_updateLayer(R){this._updatedLayers[R.id]=!0,R.source&&!this._updatedSources[R.source]&&this.sourceCaches[R.source].getSource().type!=="raster"&&(this._updatedSources[R.source]="reload",this.sourceCaches[R.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(R){let ae=ft=>this._layers[ft].type==="fill-extrusion",we={},Se=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt)){we[bt]=ft;for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)Se.push(cr)}}}Se.sort((ft,bt)=>bt.intersectionZ-ft.intersectionZ);let De=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt))for(let Dt=Se.length-1;Dt>=0;Dt--){let Yt=Se[Dt].feature;if(we[Yt.layer.id]<ft)break;De.push(Yt),Se.pop()}else for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)De.push(cr.feature)}}return De}queryRenderedFeatures(R,ae,we){ae&&ae.filter&&this._validate(t.u.filter,"queryRenderedFeatures.filter",ae.filter,null,ae);let Se={};if(ae&&ae.layers){if(!Array.isArray(ae.layers))return this.fire(new t.j(new Error("parameters.layers must be an Array."))),[];for(let bt of ae.layers){let Dt=this._layers[bt];if(!Dt)return this.fire(new t.j(new Error(`The layer '${bt}' does not exist in the map's style and cannot be queried for features.`))),[];Se[Dt.source]=!0}}let De=[];ae.availableImages=this._availableImages;let ft=this._serializedAllLayers();for(let bt in this.sourceCaches)ae.layers&&!Se[bt]||De.push(ne(this.sourceCaches[bt],this._layers,ft,R,ae,we));return this.placement&&De.push(function(bt,Dt,Yt,cr,hr,jr,ea){let qe={},Je=jr.queryRenderedSymbols(cr),ot=[];for(let ht of Object.keys(Je).map(Number))ot.push(ea[ht]);ot.sort(j);for(let ht of ot){let At=ht.featureIndex.lookupSymbolFeatures(Je[ht.bucketInstanceId],Dt,ht.bucketIndex,ht.sourceLayerIndex,hr.filter,hr.layers,hr.availableImages,bt);for(let _t in At){let Pt=qe[_t]=qe[_t]||[],er=At[_t];er.sort((nr,pr)=>{let Sr=ht.featureSortOrder;if(Sr){let Wr=Sr.indexOf(nr.featureIndex);return Sr.indexOf(pr.featureIndex)-Wr}return pr.featureIndex-nr.featureIndex});for(let nr of er)Pt.push(nr)}}for(let ht in qe)qe[ht].forEach(At=>{let _t=At.feature,Pt=Yt[bt[ht].source].getFeatureState(_t.layer["source-layer"],_t.id);_t.source=_t.layer.source,_t.layer["source-layer"]&&(_t.sourceLayer=_t.layer["source-layer"]),_t.state=Pt});return qe}(this._layers,ft,this.sourceCaches,R,ae,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(De)}querySourceFeatures(R,ae){ae&&ae.filter&&this._validate(t.u.filter,"querySourceFeatures.filter",ae.filter,null,ae);let we=this.sourceCaches[R];return we?function(Se,De){let ft=Se.getRenderableIds().map(Yt=>Se.getTileByID(Yt)),bt=[],Dt={};for(let Yt=0;Yt<ft.length;Yt++){let cr=ft[Yt],hr=cr.tileID.canonical.key;Dt[hr]||(Dt[hr]=!0,cr.querySourceFeatures(bt,De))}return bt}(we,ae):[]}getLight(){return this.light.getLight()}setLight(R,ae={}){this._checkLoaded();let we=this.light.getLight(),Se=!1;for(let ft in R)if(!t.aE(R[ft],we[ft])){Se=!0;break}if(!Se)return;let De={now:i.now(),transition:t.e({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(R,ae),this.light.updateTransitions(De)}getSky(){var R;return(R=this.stylesheet)===null||R===void 0?void 0:R.sky}setSky(R,ae={}){let we=this.getSky(),Se=!1;if(!R&&!we)return;if(R&&!we)Se=!0;else if(!R&&we)Se=!0;else for(let ft in R)if(!t.aE(R[ft],we[ft])){Se=!0;break}if(!Se)return;let De={now:i.now(),transition:t.e({duration:300,delay:0},this.stylesheet.transition)};this.stylesheet.sky=R,this.sky.setSky(R,ae),this.sky.updateTransitions(De)}_validate(R,ae,we,Se,De={}){return(!De||De.validate!==!1)&&Fr(this,R.call(t.u,t.e({key:ae,style:this.serialize(),value:we,styleSpec:t.v},Se)))}_remove(R=!0){this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._loadStyleRequest&&(this._loadStyleRequest.abort(),this._loadStyleRequest=null),this._spriteRequest&&(this._spriteRequest.abort(),this._spriteRequest=null),tt().off(ge,this._rtlPluginLoaded);for(let ae in this._layers)this._layers[ae].setEventedParent(null);for(let ae in this.sourceCaches){let we=this.sourceCaches[ae];we.setEventedParent(null),we.onRemove(this.map)}this.imageManager.setEventedParent(null),this.setEventedParent(null),R&&this.dispatcher.broadcast("RM",void 0),this.dispatcher.remove(R)}_clearSource(R){this.sourceCaches[R].clearTiles()}_reloadSource(R){this.sourceCaches[R].resume(),this.sourceCaches[R].reload()}_updateSources(R){for(let ae in this.sourceCaches)this.sourceCaches[ae].update(R,this.map.terrain)}_generateCollisionBoxes(){for(let R in this.sourceCaches)this._reloadSource(R)}_updatePlacement(R,ae,we,Se,De=!1){let ft=!1,bt=!1,Dt={};for(let Yt of this._order){let cr=this._layers[Yt];if(cr.type!=="symbol")continue;if(!Dt[cr.source]){let jr=this.sourceCaches[cr.source];Dt[cr.source]=jr.getRenderableIds(!0).map(ea=>jr.getTileByID(ea)).sort((ea,qe)=>qe.tileID.overscaledZ-ea.tileID.overscaledZ||(ea.tileID.isLessThan(qe.tileID)?-1:1))}let hr=this.crossTileSymbolIndex.addLayer(cr,Dt[cr.source],R.center.lng);ft=ft||hr}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((De=De||this._layerOrderChanged||we===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.now(),R.zoom))&&(this.pauseablePlacement=new gt(R,this.map.terrain,this._order,De,ae,we,Se,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Dt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.now()),bt=!0),ft&&this.pauseablePlacement.placement.setStale()),bt||ft)for(let Yt of this._order){let cr=this._layers[Yt];cr.type==="symbol"&&this.placement.updateLayerOpacities(cr,Dt[cr.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.now())}_releaseSymbolFadeTiles(){for(let R in this.sourceCaches)this.sourceCaches[R].releaseSymbolFadeTiles()}getImages(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.imageManager.getImages(ae.icons);this._updateTilesForChangedImages();let Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,ae.icons),we})}getGlyphs(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.glyphManager.getGlyphs(ae.stacks),Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,[""]),we})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(R,ae={}){this._checkLoaded(),R&&this._validate(t.u.glyphs,"glyphs",R,null,ae)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=R,this.glyphManager.entries={},this.glyphManager.setURL(R))}addSprite(R,ae,we={},Se){this._checkLoaded();let De=[{id:R,url:ae}],ft=[...b(this.stylesheet.sprite),...De];this._validate(t.u.sprite,"sprite",ft,null,we)||(this.stylesheet.sprite=ft,this._loadSprite(De,!0,Se))}removeSprite(R){this._checkLoaded();let ae=b(this.stylesheet.sprite);if(ae.find(we=>we.id===R)){if(this._spritesImagesIds[R])for(let we of this._spritesImagesIds[R])this.imageManager.removeImage(we),this._changedImages[we]=!0;ae.splice(ae.findIndex(we=>we.id===R),1),this.stylesheet.sprite=ae.length>0?ae:void 0,delete this._spritesImagesIds[R],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}else this.fire(new t.j(new Error(`Sprite "${R}" doesn't exists on this map.`)))}getSprite(){return b(this.stylesheet.sprite)}setSprite(R,ae={},we){this._checkLoaded(),R&&this._validate(t.u.sprite,"sprite",R,null,ae)||(this.stylesheet.sprite=R,R?this._loadSprite(R,!0,we):(this._unloadSprite(),we&&we(null)))}}var oa=t.Y([{name:"a_pos",type:"Int16",components:2}]);let ca={prelude:kt(`#ifdef GL_ES
precision mediump float;
#else
#if !defined(lowp)
#define lowp
#endif
#if !defined(mediump)
#define mediump
#endif
#if !defined(highp)
#define highp
#endif
#endif
`,`#ifdef GL_ES
precision highp float;
#else
#if !defined(lowp)
#define lowp
#endif
#if !defined(mediump)
#define mediump
#endif
#if !defined(highp)
#define highp
#endif
#endif
vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0
);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}
#ifdef TERRAIN3D
uniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;
#endif
const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {
#ifdef TERRAIN3D
highp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));
#else
return 1.0;
#endif
}float calculate_visibility(vec4 pos) {
#ifdef TERRAIN3D
vec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;
#else
return 1.0;
#endif
}float ele(vec2 pos) {
#ifdef TERRAIN3D
vec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;
#else
return 0.0;
#endif
}float get_elevation(vec2 pos) {
#ifdef TERRAIN3D
vec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;
#else
return 0.0;
#endif
}`),background:kt(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:kt(`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:kt(`varying vec3 v_data;varying float v_visibility;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define mediump float radius
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define highp vec4 stroke_color
#pragma mapbox: define mediump float stroke_width
#pragma mapbox: define lowp float stroke_opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize mediump float radius
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize highp vec4 stroke_color
#pragma mapbox: initialize mediump float stroke_width
#pragma mapbox: initialize lowp float stroke_opacity
vec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define mediump float radius
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define highp vec4 stroke_color
#pragma mapbox: define mediump float stroke_width
#pragma mapbox: define lowp float stroke_opacity
void main(void) {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize mediump float radius
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize highp vec4 stroke_color
#pragma mapbox: initialize mediump float stroke_width
#pragma mapbox: initialize lowp float stroke_opacity
vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),clippingMask:kt("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:kt(`uniform highp float u_intensity;varying vec2 v_extrude;
#pragma mapbox: define highp float weight
#define GAUSS_COEF 0.3989422804014327
void main() {
#pragma mapbox: initialize highp float weight
float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;
#pragma mapbox: define highp float weight
#pragma mapbox: define mediump float radius
const highp float ZERO=1.0/255.0/16.0;
#define GAUSS_COEF 0.3989422804014327
void main(void) {
#pragma mapbox: initialize highp float weight
#pragma mapbox: initialize mediump float radius
vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}`),heatmapTexture:kt(`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(0.0);
#endif
}`,"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:kt("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:kt("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd  =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz  /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:kt("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:kt(`#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float opacity
gl_FragColor=color*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`attribute vec2 a_pos;uniform mat4 u_matrix;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float opacity
gl_Position=u_matrix*vec4(a_pos,0,1);}`),fillOutline:kt(`varying vec2 v_pos;
#pragma mapbox: define highp vec4 outline_color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 outline_color
#pragma mapbox: initialize lowp float opacity
float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
#pragma mapbox: define highp vec4 outline_color
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 outline_color
#pragma mapbox: initialize lowp float opacity
gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillOutlinePattern:kt(`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillPattern:kt(`#ifdef GL_ES
precision highp float;
#endif
uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`),fillExtrusion:kt(`varying vec4 v_color;void main() {gl_FragColor=v_color;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;
#ifdef TERRAIN3D
attribute vec2 a_centroid;
#endif
varying vec4 v_color;
#pragma mapbox: define highp float base
#pragma mapbox: define highp float height
#pragma mapbox: define highp vec4 color
void main() {
#pragma mapbox: initialize highp float base
#pragma mapbox: initialize highp float height
#pragma mapbox: initialize highp vec4 color
vec3 normal=a_normal_ed.xyz;
#ifdef TERRAIN3D
float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
#else
float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
#endif
base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`),fillExtrusionPattern:kt(`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
#pragma mapbox: define lowp float base
#pragma mapbox: define lowp float height
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float base
#pragma mapbox: initialize lowp float height
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;
#ifdef TERRAIN3D
attribute vec2 a_centroid;
#endif
varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
#pragma mapbox: define lowp float base
#pragma mapbox: define lowp float height
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float base
#pragma mapbox: initialize lowp float height
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;
#ifdef TERRAIN3D
float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
#else
float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
#endif
base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0
? a_pos
: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`),hillshadePrepare:kt(`#ifdef GL_ES
precision highp float;
#endif
uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:kt(`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;
#define PI 3.141592653589793
void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:kt(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`
#define scale 0.015873016
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float width
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float width
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
#ifdef TERRAIN3D
v_gamma_scale=1.0;
#else
float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
#endif
v_width2=vec2(outset,inset);}`),lineGradient:kt(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`
#define scale 0.015873016
attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float width
void main() {
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float width
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
#ifdef TERRAIN3D
v_gamma_scale=1.0;
#else
float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
#endif
v_width2=vec2(outset,inset);}`),linePattern:kt(`#ifdef GL_ES
precision highp float;
#endif
uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`
#define scale 0.015873016
#define LINE_DISTANCE_SCALE 2.0
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define mediump float width
#pragma mapbox: define lowp float floorwidth
#pragma mapbox: define lowp vec4 pattern_from
#pragma mapbox: define lowp vec4 pattern_to
#pragma mapbox: define lowp float pixel_ratio_from
#pragma mapbox: define lowp float pixel_ratio_to
void main() {
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize mediump float width
#pragma mapbox: initialize lowp float floorwidth
#pragma mapbox: initialize mediump vec4 pattern_from
#pragma mapbox: initialize mediump vec4 pattern_to
#pragma mapbox: initialize lowp float pixel_ratio_from
#pragma mapbox: initialize lowp float pixel_ratio_to
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
#ifdef TERRAIN3D
v_gamma_scale=1.0;
#else
float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
#endif
v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),lineSDF:kt(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float width
#pragma mapbox: define lowp float floorwidth
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float width
#pragma mapbox: initialize lowp float floorwidth
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`
#define scale 0.015873016
#define LINE_DISTANCE_SCALE 2.0
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
#pragma mapbox: define highp vec4 color
#pragma mapbox: define lowp float blur
#pragma mapbox: define lowp float opacity
#pragma mapbox: define mediump float gapwidth
#pragma mapbox: define lowp float offset
#pragma mapbox: define mediump float width
#pragma mapbox: define lowp float floorwidth
void main() {
#pragma mapbox: initialize highp vec4 color
#pragma mapbox: initialize lowp float blur
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize mediump float gapwidth
#pragma mapbox: initialize lowp float offset
#pragma mapbox: initialize mediump float width
#pragma mapbox: initialize lowp float floorwidth
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
#ifdef TERRAIN3D
v_gamma_scale=1.0;
#else
float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
#endif
v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`),raster:kt(`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:kt(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize lowp float opacity
lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
#pragma mapbox: define lowp float opacity
void main() {
#pragma mapbox: initialize lowp float opacity
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
camera_to_anchor_distance/u_camera_to_center_distance :
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}`),symbolSDF:kt(`#define SDF_PX 8.0
uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float inner_edge=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
camera_to_anchor_distance/u_camera_to_center_distance :
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),symbolTextAndIcon:kt(`#define SDF_PX 8.0
#define SDF 1.0
#define ICON 0.0
uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
#ifdef OVERDRAW_INSPECTOR
gl_FragColor=vec4(1.0);
#endif
}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
#pragma mapbox: define highp vec4 fill_color
#pragma mapbox: define highp vec4 halo_color
#pragma mapbox: define lowp float opacity
#pragma mapbox: define lowp float halo_width
#pragma mapbox: define lowp float halo_blur
void main() {
#pragma mapbox: initialize highp vec4 fill_color
#pragma mapbox: initialize highp vec4 halo_color
#pragma mapbox: initialize lowp float opacity
#pragma mapbox: initialize lowp float halo_width
#pragma mapbox: initialize lowp float halo_blur
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
camera_to_anchor_distance/u_camera_to_center_distance :
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`),terrain:kt("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:kt("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:kt("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:kt("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function kt(Oe,R){let ae=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,we=R.match(/attribute ([\w]+) ([\w]+)/g),Se=Oe.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),De=R.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),ft=De?De.concat(Se):Se,bt={};return{fragmentSource:Oe=Oe.replace(ae,(Dt,Yt,cr,hr,jr)=>(bt[jr]=!0,Yt==="define"?`
#ifndef HAS_UNIFORM_u_${jr}
varying ${cr} ${hr} ${jr};
#else
uniform ${cr} ${hr} u_${jr};
#endif
`:`
#ifdef HAS_UNIFORM_u_${jr}
    ${cr} ${hr} ${jr} = u_${jr};
#endif
`)),vertexSource:R=R.replace(ae,(Dt,Yt,cr,hr,jr)=>{let ea=hr==="float"?"vec2":"vec4",qe=jr.match(/color/)?"color":ea;return bt[jr]?Yt==="define"?`
#ifndef HAS_UNIFORM_u_${jr}
uniform lowp float u_${jr}_t;
attribute ${cr} ${ea} a_${jr};
varying ${cr} ${hr} ${jr};
#else
uniform ${cr} ${hr} u_${jr};
#endif
`:qe==="vec4"?`
#ifndef HAS_UNIFORM_u_${jr}
    ${jr} = a_${jr};
#else
    ${cr} ${hr} ${jr} = u_${jr};
#endif
`:`
#ifndef HAS_UNIFORM_u_${jr}
    ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t);
#else
    ${cr} ${hr} ${jr} = u_${jr};
#endif
`:Yt==="define"?`
#ifndef HAS_UNIFORM_u_${jr}
uniform lowp float u_${jr}_t;
attribute ${cr} ${ea} a_${jr};
#else
uniform ${cr} ${hr} u_${jr};
#endif
`:qe==="vec4"?`
#ifndef HAS_UNIFORM_u_${jr}
    ${cr} ${hr} ${jr} = a_${jr};
#else
    ${cr} ${hr} ${jr} = u_${jr};
#endif
`:`
#ifndef HAS_UNIFORM_u_${jr}
    ${cr} ${hr} ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t);
#else
    ${cr} ${hr} ${jr} = u_${jr};
#endif
`}),staticAttributes:we,staticUniforms:ft}}class ir{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(R,ae,we,Se,De,ft,bt,Dt,Yt){this.context=R;let cr=this.boundPaintVertexBuffers.length!==Se.length;for(let hr=0;!cr&&hr<Se.length;hr++)this.boundPaintVertexBuffers[hr]!==Se[hr]&&(cr=!0);!this.vao||this.boundProgram!==ae||this.boundLayoutVertexBuffer!==we||cr||this.boundIndexBuffer!==De||this.boundVertexOffset!==ft||this.boundDynamicVertexBuffer!==bt||this.boundDynamicVertexBuffer2!==Dt||this.boundDynamicVertexBuffer3!==Yt?this.freshBind(ae,we,Se,De,ft,bt,Dt,Yt):(R.bindVertexArray.set(this.vao),bt&&bt.bind(),De&&De.dynamicDraw&&De.bind(),Dt&&Dt.bind(),Yt&&Yt.bind())}freshBind(R,ae,we,Se,De,ft,bt,Dt){let Yt=R.numAttributes,cr=this.context,hr=cr.gl;this.vao&&this.destroy(),this.vao=cr.createVertexArray(),cr.bindVertexArray.set(this.vao),this.boundProgram=R,this.boundLayoutVertexBuffer=ae,this.boundPaintVertexBuffers=we,this.boundIndexBuffer=Se,this.boundVertexOffset=De,this.boundDynamicVertexBuffer=ft,this.boundDynamicVertexBuffer2=bt,this.boundDynamicVertexBuffer3=Dt,ae.enableAttributes(hr,R);for(let jr of we)jr.enableAttributes(hr,R);ft&&ft.enableAttributes(hr,R),bt&&bt.enableAttributes(hr,R),Dt&&Dt.enableAttributes(hr,R),ae.bind(),ae.setVertexAttribPointers(hr,R,De);for(let jr of we)jr.bind(),jr.setVertexAttribPointers(hr,R,De);ft&&(ft.bind(),ft.setVertexAttribPointers(hr,R,De)),Se&&Se.bind(),bt&&(bt.bind(),bt.setVertexAttribPointers(hr,R,De)),Dt&&(Dt.bind(),Dt.setVertexAttribPointers(hr,R,De)),cr.currentNumAttributes=Yt}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}let mr=(Oe,R,ae,we,Se)=>({u_matrix:Oe,u_texture:0,u_ele_delta:R,u_fog_matrix:ae,u_fog_color:we?we.properties.get("fog-color"):t.aM.white,u_fog_ground_blend:we?we.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:we?we.calculateFogBlendOpacity(Se):0,u_horizon_color:we?we.properties.get("horizon-color"):t.aM.white,u_horizon_fog_blend:we?we.properties.get("horizon-fog-blend"):1});function $r(Oe){let R=[];for(let ae=0;ae<Oe.length;ae++){if(Oe[ae]===null)continue;let we=Oe[ae].split(" ");R.push(we.pop())}return R}class ma{constructor(R,ae,we,Se,De,ft){let bt=R.gl;this.program=bt.createProgram();let Dt=$r(ae.staticAttributes),Yt=we?we.getBinderAttributes():[],cr=Dt.concat(Yt),hr=ca.prelude.staticUniforms?$r(ca.prelude.staticUniforms):[],jr=ae.staticUniforms?$r(ae.staticUniforms):[],ea=we?we.getBinderUniforms():[],qe=hr.concat(jr).concat(ea),Je=[];for(let nr of qe)Je.indexOf(nr)<0&&Je.push(nr);let ot=we?we.defines():[];De&&ot.push("#define OVERDRAW_INSPECTOR;"),ft&&ot.push("#define TERRAIN3D;");let ht=ot.concat(ca.prelude.fragmentSource,ae.fragmentSource).join(`
`),At=ot.concat(ca.prelude.vertexSource,ae.vertexSource).join(`
`),_t=bt.createShader(bt.FRAGMENT_SHADER);if(bt.isContextLost())return void(this.failedToCreate=!0);if(bt.shaderSource(_t,ht),bt.compileShader(_t),!bt.getShaderParameter(_t,bt.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${bt.getShaderInfoLog(_t)}`);bt.attachShader(this.program,_t);let Pt=bt.createShader(bt.VERTEX_SHADER);if(bt.isContextLost())return void(this.failedToCreate=!0);if(bt.shaderSource(Pt,At),bt.compileShader(Pt),!bt.getShaderParameter(Pt,bt.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${bt.getShaderInfoLog(Pt)}`);bt.attachShader(this.program,Pt),this.attributes={};let er={};this.numAttributes=cr.length;for(let nr=0;nr<this.numAttributes;nr++)cr[nr]&&(bt.bindAttribLocation(this.program,nr,cr[nr]),this.attributes[cr[nr]]=nr);if(bt.linkProgram(this.program),!bt.getProgramParameter(this.program,bt.LINK_STATUS))throw new Error(`Program failed to link: ${bt.getProgramInfoLog(this.program)}`);bt.deleteShader(Pt),bt.deleteShader(_t);for(let nr=0;nr<Je.length;nr++){let pr=Je[nr];if(pr&&!er[pr]){let Sr=bt.getUniformLocation(this.program,pr);Sr&&(er[pr]=Sr)}}this.fixedUniforms=Se(R,er),this.terrainUniforms=((nr,pr)=>({u_depth:new t.aH(nr,pr.u_depth),u_terrain:new t.aH(nr,pr.u_terrain),u_terrain_dim:new t.aI(nr,pr.u_terrain_dim),u_terrain_matrix:new t.aJ(nr,pr.u_terrain_matrix),u_terrain_unpack:new t.aK(nr,pr.u_terrain_unpack),u_terrain_exaggeration:new t.aI(nr,pr.u_terrain_exaggeration)}))(R,er),this.binderUniforms=we?we.getUniforms(R,er):[]}draw(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At){let _t=R.gl;if(this.failedToCreate)return;if(R.program.set(this.program),R.setDepthMode(we),R.setStencilMode(Se),R.setColorMode(De),R.setCullFace(ft),Dt){R.activeTexture.set(_t.TEXTURE2),_t.bindTexture(_t.TEXTURE_2D,Dt.depthTexture),R.activeTexture.set(_t.TEXTURE3),_t.bindTexture(_t.TEXTURE_2D,Dt.texture);for(let er in this.terrainUniforms)this.terrainUniforms[er].set(Dt[er])}for(let er in this.fixedUniforms)this.fixedUniforms[er].set(bt[er]);Je&&Je.setUniforms(R,this.binderUniforms,ea,{zoom:qe});let Pt=0;switch(ae){case _t.LINES:Pt=2;break;case _t.TRIANGLES:Pt=3;break;case _t.LINE_STRIP:Pt=1}for(let er of jr.get()){let nr=er.vaos||(er.vaos={});(nr[Yt]||(nr[Yt]=new ir)).bind(R,this,cr,Je?Je.getPaintVertexBuffers():[],hr,er.vertexOffset,ot,ht,At),_t.drawElements(ae,er.primitiveLength*Pt,_t.UNSIGNED_SHORT,er.primitiveOffset*Pt*2)}}}function Ba(Oe,R,ae){let we=1/Aa(ae,1,R.transform.tileZoom),Se=Math.pow(2,ae.tileID.overscaledZ),De=ae.tileSize*Math.pow(2,R.transform.tileZoom)/Se,ft=De*(ae.tileID.canonical.x+ae.tileID.wrap*Se),bt=De*ae.tileID.canonical.y;return{u_image:0,u_texsize:ae.imageAtlasTexture.size,u_scale:[we,Oe.fromScale,Oe.toScale],u_fade:Oe.t,u_pixel_coord_upper:[ft>>16,bt>>16],u_pixel_coord_lower:[65535&ft,65535&bt]}}let Ca=(Oe,R,ae,we)=>{let Se=R.style.light,De=Se.properties.get("position"),ft=[De.x,De.y,De.z],bt=function(){var Yt=new t.A(9);return t.A!=Float32Array&&(Yt[1]=0,Yt[2]=0,Yt[3]=0,Yt[5]=0,Yt[6]=0,Yt[7]=0),Yt[0]=1,Yt[4]=1,Yt[8]=1,Yt}();Se.properties.get("anchor")==="viewport"&&function(Yt,cr){var hr=Math.sin(cr),jr=Math.cos(cr);Yt[0]=jr,Yt[1]=hr,Yt[2]=0,Yt[3]=-hr,Yt[4]=jr,Yt[5]=0,Yt[6]=0,Yt[7]=0,Yt[8]=1}(bt,-R.transform.angle),function(Yt,cr,hr){var jr=cr[0],ea=cr[1],qe=cr[2];Yt[0]=jr*hr[0]+ea*hr[3]+qe*hr[6],Yt[1]=jr*hr[1]+ea*hr[4]+qe*hr[7],Yt[2]=jr*hr[2]+ea*hr[5]+qe*hr[8]}(ft,ft,bt);let Dt=Se.properties.get("color");return{u_matrix:Oe,u_lightpos:ft,u_lightintensity:Se.properties.get("intensity"),u_lightcolor:[Dt.r,Dt.g,Dt.b],u_vertical_gradient:+ae,u_opacity:we}},da=(Oe,R,ae,we,Se,De,ft)=>t.e(Ca(Oe,R,ae,we),Ba(De,R,ft),{u_height_factor:-Math.pow(2,Se.overscaledZ)/ft.tileSize/8}),Sa=Oe=>({u_matrix:Oe}),Ti=(Oe,R,ae,we)=>t.e(Sa(Oe),Ba(ae,R,we)),ai=(Oe,R)=>({u_matrix:Oe,u_world:R}),an=(Oe,R,ae,we,Se)=>t.e(Ti(Oe,R,ae,we),{u_world:Se}),sn=(Oe,R,ae,we)=>{let Se=Oe.transform,De,ft;if(we.paint.get("circle-pitch-alignment")==="map"){let bt=Aa(ae,1,Se.zoom);De=!0,ft=[bt,bt]}else De=!1,ft=Se.pixelsToGLUnits;return{u_camera_to_center_distance:Se.cameraToCenterDistance,u_scale_with_map:+(we.paint.get("circle-pitch-scale")==="map"),u_matrix:Oe.translatePosMatrix(R.posMatrix,ae,we.paint.get("circle-translate"),we.paint.get("circle-translate-anchor")),u_pitch_with_map:+De,u_device_pixel_ratio:Oe.pixelRatio,u_extrude_scale:ft}},Mn=(Oe,R,ae)=>({u_matrix:Oe,u_inv_matrix:R,u_camera_to_center_distance:ae.cameraToCenterDistance,u_viewport_size:[ae.width,ae.height]}),On=(Oe,R,ae=1)=>({u_matrix:Oe,u_color:R,u_overlay:0,u_overlay_scale:ae}),$n=Oe=>({u_matrix:Oe}),Cn=(Oe,R,ae,we)=>({u_matrix:Oe,u_extrude_scale:Aa(R,1,ae),u_intensity:we}),Lo=(Oe,R,ae,we)=>{let Se=t.H();t.aP(Se,0,Oe.width,Oe.height,0,0,1);let De=Oe.context.gl;return{u_matrix:Se,u_world:[De.drawingBufferWidth,De.drawingBufferHeight],u_image:ae,u_color_ramp:we,u_opacity:R.paint.get("heatmap-opacity")}};function Xi(Oe,R){let ae=Math.pow(2,R.canonical.z),we=R.canonical.y;return[new t.Z(0,we/ae).toLngLat().lat,new t.Z(0,(we+1)/ae).toLngLat().lat]}let Jo=(Oe,R,ae,we)=>{let Se=Oe.transform;return{u_matrix:In(Oe,R,ae,we),u_ratio:1/Aa(R,1,Se.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_units_to_pixels:[1/Se.pixelsToGLUnits[0],1/Se.pixelsToGLUnits[1]]}},zo=(Oe,R,ae,we,Se)=>t.e(Jo(Oe,R,ae,Se),{u_image:0,u_image_height:we}),as=(Oe,R,ae,we,Se)=>{let De=Oe.transform,ft=go(R,De);return{u_matrix:In(Oe,R,ae,Se),u_texsize:R.imageAtlasTexture.size,u_ratio:1/Aa(R,1,De.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_image:0,u_scale:[ft,we.fromScale,we.toScale],u_fade:we.t,u_units_to_pixels:[1/De.pixelsToGLUnits[0],1/De.pixelsToGLUnits[1]]}},Pn=(Oe,R,ae,we,Se,De)=>{let ft=Oe.lineAtlas,bt=go(R,Oe.transform),Dt=ae.layout.get("line-cap")==="round",Yt=ft.getDash(we.from,Dt),cr=ft.getDash(we.to,Dt),hr=Yt.width*Se.fromScale,jr=cr.width*Se.toScale;return t.e(Jo(Oe,R,ae,De),{u_patternscale_a:[bt/hr,-Yt.height/2],u_patternscale_b:[bt/jr,-cr.height/2],u_sdfgamma:ft.width/(256*Math.min(hr,jr)*Oe.pixelRatio)/2,u_image:0,u_tex_y_a:Yt.y,u_tex_y_b:cr.y,u_mix:Se.t})};function go(Oe,R){return 1/Aa(Oe,1,R.tileZoom)}function In(Oe,R,ae,we){return Oe.translatePosMatrix(we?we.posMatrix:R.tileID.posMatrix,R,ae.paint.get("line-translate"),ae.paint.get("line-translate-anchor"))}let Do=(Oe,R,ae,we,Se)=>{return{u_matrix:Oe,u_tl_parent:R,u_scale_parent:ae,u_buffer_scale:1,u_fade_t:we.mix,u_opacity:we.opacity*Se.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:Se.paint.get("raster-brightness-min"),u_brightness_high:Se.paint.get("raster-brightness-max"),u_saturation_factor:(ft=Se.paint.get("raster-saturation"),ft>0?1-1/(1.001-ft):-ft),u_contrast_factor:(De=Se.paint.get("raster-contrast"),De>0?1/(1-De):1+De),u_spin_weights:Ho(Se.paint.get("raster-hue-rotate"))};var De,ft};function Ho(Oe){Oe*=Math.PI/180;let R=Math.sin(Oe),ae=Math.cos(Oe);return[(2*ae+1)/3,(-Math.sqrt(3)*R-ae+1)/3,(Math.sqrt(3)*R-ae+1)/3]}let Qo=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>{let qe=ft.transform;return{u_is_size_zoom_constant:+(Oe==="constant"||Oe==="source"),u_is_size_feature_constant:+(Oe==="constant"||Oe==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:qe.cameraToCenterDistance,u_pitch:qe.pitch/360*2*Math.PI,u_rotate_symbol:+ae,u_aspect_ratio:qe.width/qe.height,u_fade_change:ft.options.fadeDuration?ft.symbolFadeChange:1,u_matrix:bt,u_label_plane_matrix:Dt,u_coord_matrix:Yt,u_is_text:+hr,u_pitch_with_map:+we,u_is_along_line:Se,u_is_variable_anchor:De,u_texsize:jr,u_texture:0,u_translation:cr,u_pitched_scale:ea}},Xn=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe)=>{let Je=ft.transform;return t.e(Qo(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,qe),{u_gamma_scale:we?Math.cos(Je._pitch)*Je.cameraToCenterDistance:1,u_device_pixel_ratio:ft.pixelRatio,u_is_halo:+ea})},po=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>t.e(Xn(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,!0,hr,!0,ea),{u_texsize_icon:jr,u_texture_icon:1}),ys=(Oe,R,ae)=>({u_matrix:Oe,u_opacity:R,u_color:ae}),Is=(Oe,R,ae,we,Se,De)=>t.e(function(ft,bt,Dt,Yt){let cr=Dt.imageManager.getPattern(ft.from.toString()),hr=Dt.imageManager.getPattern(ft.to.toString()),{width:jr,height:ea}=Dt.imageManager.getPixelSize(),qe=Math.pow(2,Yt.tileID.overscaledZ),Je=Yt.tileSize*Math.pow(2,Dt.transform.tileZoom)/qe,ot=Je*(Yt.tileID.canonical.x+Yt.tileID.wrap*qe),ht=Je*Yt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:cr.tl,u_pattern_br_a:cr.br,u_pattern_tl_b:hr.tl,u_pattern_br_b:hr.br,u_texsize:[jr,ea],u_mix:bt.t,u_pattern_size_a:cr.displaySize,u_pattern_size_b:hr.displaySize,u_scale_a:bt.fromScale,u_scale_b:bt.toScale,u_tile_units_to_pixels:1/Aa(Yt,1,Dt.transform.tileZoom),u_pixel_coord_upper:[ot>>16,ht>>16],u_pixel_coord_lower:[65535&ot,65535&ht]}}(we,De,ae,Se),{u_matrix:Oe,u_opacity:R}),Fs={fillExtrusion:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_opacity:new t.aI(Oe,R.u_opacity)}),fillExtrusionPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_height_factor:new t.aI(Oe,R.u_height_factor),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade),u_opacity:new t.aI(Oe,R.u_opacity)}),fill:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),fillPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),fillOutline:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world)}),fillOutlinePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),circle:(Oe,R)=>({u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_scale_with_map:new t.aH(Oe,R.u_scale_with_map),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_extrude_scale:new t.aO(Oe,R.u_extrude_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_matrix:new t.aJ(Oe,R.u_matrix)}),collisionBox:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_pixel_extrude_scale:new t.aO(Oe,R.u_pixel_extrude_scale)}),collisionCircle:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_inv_matrix:new t.aJ(Oe,R.u_inv_matrix),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_viewport_size:new t.aO(Oe,R.u_viewport_size)}),debug:(Oe,R)=>({u_color:new t.aL(Oe,R.u_color),u_matrix:new t.aJ(Oe,R.u_matrix),u_overlay:new t.aH(Oe,R.u_overlay),u_overlay_scale:new t.aI(Oe,R.u_overlay_scale)}),clippingMask:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmap:(Oe,R)=>({u_extrude_scale:new t.aI(Oe,R.u_extrude_scale),u_intensity:new t.aI(Oe,R.u_intensity),u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmapTexture:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_color_ramp:new t.aH(Oe,R.u_color_ramp),u_opacity:new t.aI(Oe,R.u_opacity)}),hillshade:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_latrange:new t.aO(Oe,R.u_latrange),u_light:new t.aO(Oe,R.u_light),u_shadow:new t.aL(Oe,R.u_shadow),u_highlight:new t.aL(Oe,R.u_highlight),u_accent:new t.aL(Oe,R.u_accent)}),hillshadePrepare:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_dimension:new t.aO(Oe,R.u_dimension),u_zoom:new t.aI(Oe,R.u_zoom),u_unpack:new t.aK(Oe,R.u_unpack)}),line:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels)}),lineGradient:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_image:new t.aH(Oe,R.u_image),u_image_height:new t.aI(Oe,R.u_image_height)}),linePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texsize:new t.aO(Oe,R.u_texsize),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_image:new t.aH(Oe,R.u_image),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),lineSDF:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_patternscale_a:new t.aO(Oe,R.u_patternscale_a),u_patternscale_b:new t.aO(Oe,R.u_patternscale_b),u_sdfgamma:new t.aI(Oe,R.u_sdfgamma),u_image:new t.aH(Oe,R.u_image),u_tex_y_a:new t.aI(Oe,R.u_tex_y_a),u_tex_y_b:new t.aI(Oe,R.u_tex_y_b),u_mix:new t.aI(Oe,R.u_mix)}),raster:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_tl_parent:new t.aO(Oe,R.u_tl_parent),u_scale_parent:new t.aI(Oe,R.u_scale_parent),u_buffer_scale:new t.aI(Oe,R.u_buffer_scale),u_fade_t:new t.aI(Oe,R.u_fade_t),u_opacity:new t.aI(Oe,R.u_opacity),u_image0:new t.aH(Oe,R.u_image0),u_image1:new t.aH(Oe,R.u_image1),u_brightness_low:new t.aI(Oe,R.u_brightness_low),u_brightness_high:new t.aI(Oe,R.u_brightness_high),u_saturation_factor:new t.aI(Oe,R.u_saturation_factor),u_contrast_factor:new t.aI(Oe,R.u_contrast_factor),u_spin_weights:new t.aN(Oe,R.u_spin_weights)}),symbolIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolSDF:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolTextAndIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texsize_icon:new t.aO(Oe,R.u_texsize_icon),u_texture:new t.aH(Oe,R.u_texture),u_texture_icon:new t.aH(Oe,R.u_texture_icon),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),background:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_color:new t.aL(Oe,R.u_color)}),backgroundPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_image:new t.aH(Oe,R.u_image),u_pattern_tl_a:new t.aO(Oe,R.u_pattern_tl_a),u_pattern_br_a:new t.aO(Oe,R.u_pattern_br_a),u_pattern_tl_b:new t.aO(Oe,R.u_pattern_tl_b),u_pattern_br_b:new t.aO(Oe,R.u_pattern_br_b),u_texsize:new t.aO(Oe,R.u_texsize),u_mix:new t.aI(Oe,R.u_mix),u_pattern_size_a:new t.aO(Oe,R.u_pattern_size_a),u_pattern_size_b:new t.aO(Oe,R.u_pattern_size_b),u_scale_a:new t.aI(Oe,R.u_scale_a),u_scale_b:new t.aI(Oe,R.u_scale_b),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_tile_units_to_pixels:new t.aI(Oe,R.u_tile_units_to_pixels)}),terrain:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_ele_delta:new t.aI(Oe,R.u_ele_delta),u_fog_matrix:new t.aJ(Oe,R.u_fog_matrix),u_fog_color:new t.aL(Oe,R.u_fog_color),u_fog_ground_blend:new t.aI(Oe,R.u_fog_ground_blend),u_fog_ground_blend_opacity:new t.aI(Oe,R.u_fog_ground_blend_opacity),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon_fog_blend:new t.aI(Oe,R.u_horizon_fog_blend)}),terrainDepth:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),terrainCoords:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_terrain_coords_id:new t.aI(Oe,R.u_terrain_coords_id),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),sky:(Oe,R)=>({u_sky_color:new t.aL(Oe,R.u_sky_color),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon:new t.aI(Oe,R.u_horizon),u_sky_horizon_blend:new t.aI(Oe,R.u_sky_horizon_blend)})};class $o{constructor(R,ae,we){this.context=R;let Se=R.gl;this.buffer=Se.createBuffer(),this.dynamicDraw=!!we,this.context.unbindVAO(),R.bindElementBuffer.set(this.buffer),Se.bufferData(Se.ELEMENT_ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?Se.DYNAMIC_DRAW:Se.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(R){let ae=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),ae.bufferSubData(ae.ELEMENT_ARRAY_BUFFER,0,R.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let fi={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class mn{constructor(R,ae,we,Se){this.length=ae.length,this.attributes=we,this.itemSize=ae.bytesPerElement,this.dynamicDraw=Se,this.context=R;let De=R.gl;this.buffer=De.createBuffer(),R.bindVertexBuffer.set(this.buffer),De.bufferData(De.ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?De.DYNAMIC_DRAW:De.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(R){if(R.length!==this.length)throw new Error(`Length of new data is ${R.length}, which doesn't match current length of ${this.length}`);let ae=this.context.gl;this.bind(),ae.bufferSubData(ae.ARRAY_BUFFER,0,R.arrayBuffer)}enableAttributes(R,ae){for(let we=0;we<this.attributes.length;we++){let Se=ae.attributes[this.attributes[we].name];Se!==void 0&&R.enableVertexAttribArray(Se)}}setVertexAttribPointers(R,ae,we){for(let Se=0;Se<this.attributes.length;Se++){let De=this.attributes[Se],ft=ae.attributes[De.name];ft!==void 0&&R.vertexAttribPointer(ft,De.components,R[fi[De.type]],!1,this.itemSize,De.offset+this.itemSize*(we||0))}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let ol=new WeakMap;function Os(Oe){var R;if(ol.has(Oe))return ol.get(Oe);{let ae=(R=Oe.getParameter(Oe.VERSION))===null||R===void 0?void 0:R.startsWith("WebGL 2.0");return ol.set(Oe,ae),ae}}class so{constructor(R){this.gl=R.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1}get(){return this.current}set(R){}getDefault(){return this.default}setDefault(){this.set(this.default)}}class Ns extends so{getDefault(){return t.aM.transparent}set(R){let ae=this.current;(R.r!==ae.r||R.g!==ae.g||R.b!==ae.b||R.a!==ae.a||this.dirty)&&(this.gl.clearColor(R.r,R.g,R.b,R.a),this.current=R,this.dirty=!1)}}class fs extends so{getDefault(){return 1}set(R){(R!==this.current||this.dirty)&&(this.gl.clearDepth(R),this.current=R,this.dirty=!1)}}class al extends so{getDefault(){return 0}set(R){(R!==this.current||this.dirty)&&(this.gl.clearStencil(R),this.current=R,this.dirty=!1)}}class vl extends so{getDefault(){return[!0,!0,!0,!0]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||R[3]!==ae[3]||this.dirty)&&(this.gl.colorMask(R[0],R[1],R[2],R[3]),this.current=R,this.dirty=!1)}}class ji extends so{getDefault(){return!0}set(R){(R!==this.current||this.dirty)&&(this.gl.depthMask(R),this.current=R,this.dirty=!1)}}class To extends so{getDefault(){return 255}set(R){(R!==this.current||this.dirty)&&(this.gl.stencilMask(R),this.current=R,this.dirty=!1)}}class Yn extends so{getDefault(){return{func:this.gl.ALWAYS,ref:0,mask:255}}set(R){let ae=this.current;(R.func!==ae.func||R.ref!==ae.ref||R.mask!==ae.mask||this.dirty)&&(this.gl.stencilFunc(R.func,R.ref,R.mask),this.current=R,this.dirty=!1)}}class _s extends so{getDefault(){let R=this.gl;return[R.KEEP,R.KEEP,R.KEEP]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||this.dirty)&&(this.gl.stencilOp(R[0],R[1],R[2]),this.current=R,this.dirty=!1)}}class Yo extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.STENCIL_TEST):ae.disable(ae.STENCIL_TEST),this.current=R,this.dirty=!1}}class Nn extends so{getDefault(){return[0,1]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||this.dirty)&&(this.gl.depthRange(R[0],R[1]),this.current=R,this.dirty=!1)}}class Wl extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.DEPTH_TEST):ae.disable(ae.DEPTH_TEST),this.current=R,this.dirty=!1}}class Zu extends so{getDefault(){return this.gl.LESS}set(R){(R!==this.current||this.dirty)&&(this.gl.depthFunc(R),this.current=R,this.dirty=!1)}}class ml extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.BLEND):ae.disable(ae.BLEND),this.current=R,this.dirty=!1}}class Bu extends so{getDefault(){let R=this.gl;return[R.ONE,R.ZERO]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||this.dirty)&&(this.gl.blendFunc(R[0],R[1]),this.current=R,this.dirty=!1)}}class El extends so{getDefault(){return t.aM.transparent}set(R){let ae=this.current;(R.r!==ae.r||R.g!==ae.g||R.b!==ae.b||R.a!==ae.a||this.dirty)&&(this.gl.blendColor(R.r,R.g,R.b,R.a),this.current=R,this.dirty=!1)}}class qs extends so{getDefault(){return this.gl.FUNC_ADD}set(R){(R!==this.current||this.dirty)&&(this.gl.blendEquation(R),this.current=R,this.dirty=!1)}}class Jl extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.CULL_FACE):ae.disable(ae.CULL_FACE),this.current=R,this.dirty=!1}}class Nu extends so{getDefault(){return this.gl.BACK}set(R){(R!==this.current||this.dirty)&&(this.gl.cullFace(R),this.current=R,this.dirty=!1)}}class Ic extends so{getDefault(){return this.gl.CCW}set(R){(R!==this.current||this.dirty)&&(this.gl.frontFace(R),this.current=R,this.dirty=!1)}}class Xu extends so{getDefault(){return null}set(R){(R!==this.current||this.dirty)&&(this.gl.useProgram(R),this.current=R,this.dirty=!1)}}class Th extends so{getDefault(){return this.gl.TEXTURE0}set(R){(R!==this.current||this.dirty)&&(this.gl.activeTexture(R),this.current=R,this.dirty=!1)}}class bf extends so{getDefault(){let R=this.gl;return[0,0,R.drawingBufferWidth,R.drawingBufferHeight]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||R[3]!==ae[3]||this.dirty)&&(this.gl.viewport(R[0],R[1],R[2],R[3]),this.current=R,this.dirty=!1)}}class Rs extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindFramebuffer(ae.FRAMEBUFFER,R),this.current=R,this.dirty=!1}}class Yc extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindRenderbuffer(ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class If extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindTexture(ae.TEXTURE_2D,R),this.current=R,this.dirty=!1}}class Zl extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindBuffer(ae.ARRAY_BUFFER,R),this.current=R,this.dirty=!1}}class yl extends so{getDefault(){return null}set(R){let ae=this.gl;ae.bindBuffer(ae.ELEMENT_ARRAY_BUFFER,R),this.current=R,this.dirty=!1}}class oc extends so{getDefault(){return null}set(R){var ae;if(R===this.current&&!this.dirty)return;let we=this.gl;Os(we)?we.bindVertexArray(R):(ae=we.getExtension("OES_vertex_array_object"))===null||ae===void 0||ae.bindVertexArrayOES(R),this.current=R,this.dirty=!1}}class _c extends so{getDefault(){return 4}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_ALIGNMENT,R),this.current=R,this.dirty=!1}}class Zs extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_PREMULTIPLY_ALPHA_WEBGL,R),this.current=R,this.dirty=!1}}class _l extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_FLIP_Y_WEBGL,R),this.current=R,this.dirty=!1}}class Bs extends so{constructor(R,ae){super(R),this.context=R,this.parent=ae}getDefault(){return null}}class $s extends Bs{setDirty(){this.dirty=!0}set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferTexture2D(ae.FRAMEBUFFER,ae.COLOR_ATTACHMENT0,ae.TEXTURE_2D,R,0),this.current=R,this.dirty=!1}}class sc extends Bs{set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferRenderbuffer(ae.FRAMEBUFFER,ae.DEPTH_ATTACHMENT,ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class zl extends Bs{set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferRenderbuffer(ae.FRAMEBUFFER,ae.DEPTH_STENCIL_ATTACHMENT,ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class Yu{constructor(R,ae,we,Se,De){this.context=R,this.width=ae,this.height=we;let ft=R.gl,bt=this.framebuffer=ft.createFramebuffer();if(this.colorAttachment=new $s(R,bt),Se)this.depthAttachment=De?new zl(R,bt):new sc(R,bt);else if(De)throw new Error("Stencil cannot be set without depth");if(ft.checkFramebufferStatus(ft.FRAMEBUFFER)!==ft.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer is not complete")}destroy(){let R=this.context.gl,ae=this.colorAttachment.get();if(ae&&R.deleteTexture(ae),this.depthAttachment){let we=this.depthAttachment.get();we&&R.deleteRenderbuffer(we)}R.deleteFramebuffer(this.framebuffer)}}class Qs{constructor(R,ae,we){this.blendFunction=R,this.blendColor=ae,this.mask=we}}Qs.Replace=[1,0],Qs.disabled=new Qs(Qs.Replace,t.aM.transparent,[!1,!1,!1,!1]),Qs.unblended=new Qs(Qs.Replace,t.aM.transparent,[!0,!0,!0,!0]),Qs.alphaBlended=new Qs([1,771],t.aM.transparent,[!0,!0,!0,!0]);class fp{constructor(R){var ae,we;if(this.gl=R,this.clearColor=new Ns(this),this.clearDepth=new fs(this),this.clearStencil=new al(this),this.colorMask=new vl(this),this.depthMask=new ji(this),this.stencilMask=new To(this),this.stencilFunc=new Yn(this),this.stencilOp=new _s(this),this.stencilTest=new Yo(this),this.depthRange=new Nn(this),this.depthTest=new Wl(this),this.depthFunc=new Zu(this),this.blend=new ml(this),this.blendFunc=new Bu(this),this.blendColor=new El(this),this.blendEquation=new qs(this),this.cullFace=new Jl(this),this.cullFaceSide=new Nu(this),this.frontFace=new Ic(this),this.program=new Xu(this),this.activeTexture=new Th(this),this.viewport=new bf(this),this.bindFramebuffer=new Rs(this),this.bindRenderbuffer=new Yc(this),this.bindTexture=new If(this),this.bindVertexBuffer=new Zl(this),this.bindElementBuffer=new yl(this),this.bindVertexArray=new oc(this),this.pixelStoreUnpack=new _c(this),this.pixelStoreUnpackPremultiplyAlpha=new Zs(this),this.pixelStoreUnpackFlipY=new _l(this),this.extTextureFilterAnisotropic=R.getExtension("EXT_texture_filter_anisotropic")||R.getExtension("MOZ_EXT_texture_filter_anisotropic")||R.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=R.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.maxTextureSize=R.getParameter(R.MAX_TEXTURE_SIZE),Os(R)){this.HALF_FLOAT=R.HALF_FLOAT;let Se=R.getExtension("EXT_color_buffer_half_float");this.RGBA16F=(ae=R.RGBA16F)!==null&&ae!==void 0?ae:Se?.RGBA16F_EXT,this.RGB16F=(we=R.RGB16F)!==null&&we!==void 0?we:Se?.RGB16F_EXT,R.getExtension("EXT_color_buffer_float")}else{R.getExtension("EXT_color_buffer_half_float"),R.getExtension("OES_texture_half_float_linear");let Se=R.getExtension("OES_texture_half_float");this.HALF_FLOAT=Se?.HALF_FLOAT_OES}}setDefault(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()}setDirty(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.bindVertexArray.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0}createIndexBuffer(R,ae){return new $o(this,R,ae)}createVertexBuffer(R,ae,we){return new mn(this,R,ae,we)}createRenderbuffer(R,ae,we){let Se=this.gl,De=Se.createRenderbuffer();return this.bindRenderbuffer.set(De),Se.renderbufferStorage(Se.RENDERBUFFER,R,ae,we),this.bindRenderbuffer.set(null),De}createFramebuffer(R,ae,we,Se){return new Yu(this,R,ae,we,Se)}clear({color:R,depth:ae,stencil:we}){let Se=this.gl,De=0;R&&(De|=Se.COLOR_BUFFER_BIT,this.clearColor.set(R),this.colorMask.set([!0,!0,!0,!0])),ae!==void 0&&(De|=Se.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(ae),this.depthMask.set(!0)),we!==void 0&&(De|=Se.STENCIL_BUFFER_BIT,this.clearStencil.set(we),this.stencilMask.set(255)),Se.clear(De)}setCullFace(R){R.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(R.mode),this.frontFace.set(R.frontFace))}setDepthMode(R){R.func!==this.gl.ALWAYS||R.mask?(this.depthTest.set(!0),this.depthFunc.set(R.func),this.depthMask.set(R.mask),this.depthRange.set(R.range)):this.depthTest.set(!1)}setStencilMode(R){R.test.func!==this.gl.ALWAYS||R.mask?(this.stencilTest.set(!0),this.stencilMask.set(R.mask),this.stencilOp.set([R.fail,R.depthFail,R.pass]),this.stencilFunc.set({func:R.test.func,ref:R.ref,mask:R.test.mask})):this.stencilTest.set(!1)}setColorMode(R){t.aE(R.blendFunction,Qs.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(R.blendFunction),this.blendColor.set(R.blendColor)),this.colorMask.set(R.mask)}createVertexArray(){var R;return Os(this.gl)?this.gl.createVertexArray():(R=this.gl.getExtension("OES_vertex_array_object"))===null||R===void 0?void 0:R.createVertexArrayOES()}deleteVertexArray(R){var ae;return Os(this.gl)?this.gl.deleteVertexArray(R):(ae=this.gl.getExtension("OES_vertex_array_object"))===null||ae===void 0?void 0:ae.deleteVertexArrayOES(R)}unbindVAO(){this.bindVertexArray.set(null)}}class es{constructor(R,ae,we){this.func=R,this.mask=ae,this.range=we}}es.ReadOnly=!1,es.ReadWrite=!0,es.disabled=new es(519,es.ReadOnly,[0,1]);let Wh=7680;class Ss{constructor(R,ae,we,Se,De,ft){this.test=R,this.ref=ae,this.mask=we,this.fail=Se,this.depthFail=De,this.pass=ft}}Ss.disabled=new Ss({func:519,mask:0},0,0,Wh,Wh,Wh);class So{constructor(R,ae,we){this.enable=R,this.mode=ae,this.frontFace=we}}let hf;function Ku(Oe,R,ae,we,Se){let De=Oe.context,ft=De.gl,bt=Oe.useProgram("collisionBox"),Dt=[],Yt=0,cr=0;for(let ht=0;ht<we.length;ht++){let At=we[ht],_t=R.getTile(At).getBucket(ae);if(!_t)continue;let Pt=Se?_t.textCollisionBox:_t.iconCollisionBox,er=_t.collisionCircleArray;if(er.length>0){let nr=t.H();t.aQ(nr,_t.placementInvProjMatrix,Oe.transform.glCoordMatrix),t.aQ(nr,nr,_t.placementViewportMatrix),Dt.push({circleArray:er,circleOffset:cr,transform:At.posMatrix,invTransform:nr,coord:At}),Yt+=er.length/4,cr=Yt}Pt&&bt.draw(De,ft.LINES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,{u_matrix:At.posMatrix,u_pixel_extrude_scale:[1/(hr=Oe.transform).width,1/hr.height]},Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At),ae.id,Pt.layoutVertexBuffer,Pt.indexBuffer,Pt.segments,null,Oe.transform.zoom,null,null,Pt.collisionVertexBuffer)}var hr;if(!Se||!Dt.length)return;let jr=Oe.useProgram("collisionCircle"),ea=new t.aR;ea.resize(4*Yt),ea._trim();let qe=0;for(let ht of Dt)for(let At=0;At<ht.circleArray.length/4;At++){let _t=4*At,Pt=ht.circleArray[_t+0],er=ht.circleArray[_t+1],nr=ht.circleArray[_t+2],pr=ht.circleArray[_t+3];ea.emplace(qe++,Pt,er,nr,pr,0),ea.emplace(qe++,Pt,er,nr,pr,1),ea.emplace(qe++,Pt,er,nr,pr,2),ea.emplace(qe++,Pt,er,nr,pr,3)}(!hf||hf.length<2*Yt)&&(hf=function(ht){let At=2*ht,_t=new t.aT;_t.resize(At),_t._trim();for(let Pt=0;Pt<At;Pt++){let er=6*Pt;_t.uint16[er+0]=4*Pt+0,_t.uint16[er+1]=4*Pt+1,_t.uint16[er+2]=4*Pt+2,_t.uint16[er+3]=4*Pt+2,_t.uint16[er+4]=4*Pt+3,_t.uint16[er+5]=4*Pt+0}return _t}(Yt));let Je=De.createIndexBuffer(hf,!0),ot=De.createVertexBuffer(ea,t.aS.members,!0);for(let ht of Dt){let At=Mn(ht.transform,ht.invTransform,Oe.transform);jr.draw(De,ft.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,At,Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ht.coord),ae.id,ot,Je,t.a0.simpleSegment(0,2*ht.circleOffset,ht.circleArray.length,ht.circleArray.length/2),null,Oe.transform.zoom,null,null,null)}ot.destroy(),Je.destroy()}So.disabled=new So(!1,1029,2305),So.backCCW=new So(!0,1029,2305);let cu=t.an(new Float32Array(16));function Zf(Oe,R,ae,we,Se,De){let{horizontalAlign:ft,verticalAlign:bt}=t.au(Oe);return new t.P((-(ft-.5)*R/Se+we[0])*De,(-(bt-.5)*ae/Se+we[1])*De)}function Rc(Oe,R,ae,we,Se,De){let ft=R.tileAnchorPoint.add(new t.P(R.translation[0],R.translation[1]));if(R.pitchWithMap){let bt=we.mult(De);ae||(bt=bt.rotate(-Se));let Dt=ft.add(bt);return yt(Dt.x,Dt.y,R.labelPlaneMatrix,R.getElevation).point}if(ae){let bt=rt(R.tileAnchorPoint.x+1,R.tileAnchorPoint.y,R).point.sub(Oe),Dt=Math.atan(bt.y/bt.x)+(bt.x<0?Math.PI:0);return Oe.add(we.rotate(Dt))}return Oe.add(we)}function pf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea){let qe=Oe.text.placedSymbolArray,Je=Oe.text.dynamicLayoutVertexArray,ot=Oe.icon.dynamicLayoutVertexArray,ht={};Je.clear();for(let At=0;At<qe.length;At++){let _t=qe.get(At),Pt=_t.hidden||!_t.crossTileID||Oe.allowVerticalPlacement&&!_t.placedOrientation?null:we[_t.crossTileID];if(Pt){let er=new t.P(_t.anchorX,_t.anchorY),nr={getElevation:ea,width:Se.width,height:Se.height,labelPlaneMatrix:De,lineVertexArray:null,pitchWithMap:ae,projection:cr,projectionCache:null,tileAnchorPoint:er,translation:hr,unwrappedTileID:jr},pr=ae?yt(er.x,er.y,ft,ea):rt(er.x,er.y,nr),Sr=Fe(Se.cameraToCenterDistance,pr.signedDistanceFromCamera),Wr=t.ai(Oe.textSizeData,Dt,_t)*Sr/t.ap;ae&&(Wr*=Oe.tilePixelRatio/bt);let{width:ha,height:ga,anchor:Pa,textOffset:Ja,textBoxScale:di}=Pt,pi=Zf(Pa,ha,ga,Ja,di,Wr),Ci=cr.getPitchedTextCorrection(Se,er.add(new t.P(hr[0],hr[1])),jr),$i=Rc(pr.point,nr,R,pi,Se.angle,Ci),Bn=Oe.allowVerticalPlacement&&_t.placedOrientation===t.ah.vertical?Math.PI/2:0;for(let Sn=0;Sn<_t.numGlyphs;Sn++)t.aj(Je,$i,Bn);Yt&&_t.associatedIconIndex>=0&&(ht[_t.associatedIconIndex]={shiftedAnchor:$i,angle:Bn})}else Gt(_t.numGlyphs,Je)}if(Yt){ot.clear();let At=Oe.icon.placedSymbolArray;for(let _t=0;_t<At.length;_t++){let Pt=At.get(_t);if(Pt.hidden)Gt(Pt.numGlyphs,ot);else{let er=ht[_t];if(er)for(let nr=0;nr<Pt.numGlyphs;nr++)t.aj(ot,er.shiftedAnchor,er.angle);else Gt(Pt.numGlyphs,ot)}}Oe.icon.dynamicLayoutVertexBuffer.updateData(ot)}Oe.text.dynamicLayoutVertexBuffer.updateData(Je)}function Fl(Oe,R,ae){return ae.iconsInText&&R?"symbolTextAndIcon":Oe?"symbolSDF":"symbolIcon"}function lh(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr){let jr=Oe.context,ea=jr.gl,qe=Oe.transform,Je=$a(),ot=bt==="map",ht=Dt==="map",At=bt!=="viewport"&&ae.layout.get("symbol-placement")!=="point",_t=ot&&!ht&&!At,Pt=!ht&&At,er=!ae.layout.get("symbol-sort-key").isConstant(),nr=!1,pr=Oe.depthModeForSublayer(0,es.ReadOnly),Sr=ae._unevaluatedLayout.hasValue("text-variable-anchor")||ae._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Wr=[],ha=Je.getCircleRadiusCorrection(qe);for(let ga of we){let Pa=R.getTile(ga),Ja=Pa.getBucket(ae);if(!Ja)continue;let di=Se?Ja.text:Ja.icon;if(!di||!di.segments.get().length||!di.hasVisibleVertices)continue;let pi=di.programConfigurations.get(ae.id),Ci=Se||Ja.sdfIcons,$i=Se?Ja.textSizeData:Ja.iconSizeData,Bn=ht||qe.pitch!==0,Sn=Oe.useProgram(Fl(Ci,Se,Ja),pi),ho=t.ag($i,qe.zoom),ts=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ga),yo,Vo,ls,rl,Ys=[0,0],Zo=null;if(Se)Vo=Pa.glyphAtlasTexture,ls=ea.LINEAR,yo=Pa.glyphAtlasTexture.size,Ja.iconsInText&&(Ys=Pa.imageAtlasTexture.size,Zo=Pa.imageAtlasTexture,rl=Bn||Oe.options.rotating||Oe.options.zooming||$i.kind==="composite"||$i.kind==="camera"?ea.LINEAR:ea.NEAREST);else{let wt=ae.layout.get("icon-size").constantOr(0)!==1||Ja.iconsNeedLinear;Vo=Pa.imageAtlasTexture,ls=Ci||Oe.options.rotating||Oe.options.zooming||wt||Bn?ea.LINEAR:ea.NEAREST,yo=Pa.imageAtlasTexture.size}let Go=Aa(Pa,1,Oe.transform.zoom),Rl=Pt?ga.posMatrix:cu,Xl=vr(Rl,ht,ot,Oe.transform,Go),qu=_r(Rl,ht,ot,Oe.transform,Go),fu=_r(ga.posMatrix,ht,ot,Oe.transform,Go),bl=Je.translatePosition(Oe.transform,Pa,De,ft),ou=Sr&&Ja.hasTextData(),Sc=ae.layout.get("icon-text-fit")!=="none"&&ou&&Ja.hasIconData();if(At){let wt=Oe.style.map.terrain?(Rt,or)=>Oe.style.map.terrain.getElevation(ga,Rt,or):null,Jt=ae.layout.get("text-rotation-alignment")==="map";Ne(Ja,ga.posMatrix,Oe,Se,Xl,fu,ht,Yt,Jt,Je,ga.toUnwrapped(),qe.width,qe.height,bl,wt)}let ql=ga.posMatrix,Hl=Se&&Sr||Sc,de=At||Hl?cu:Xl,Re=qu,$e=Ci&&ae.paint.get(Se?"text-halo-width":"icon-halo-width").constantOr(1)!==0,pt;pt=Ci?Ja.iconsInText?po($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,yo,Ys,ha):Xn($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,!0,ha):Qo($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,ha);let vt={program:Sn,buffers:di,uniformValues:pt,atlasTexture:Vo,atlasTextureIcon:Zo,atlasInterpolation:ls,atlasInterpolationIcon:rl,isSDF:Ci,hasHalo:$e};if(er&&Ja.canOverlap){nr=!0;let wt=di.segments.get();for(let Jt of wt)Wr.push({segments:new t.a0([Jt]),sortKey:Jt.sortKey,state:vt,terrainData:ts})}else Wr.push({segments:di.segments,sortKey:0,state:vt,terrainData:ts})}nr&&Wr.sort((ga,Pa)=>ga.sortKey-Pa.sortKey);for(let ga of Wr){let Pa=ga.state;if(jr.activeTexture.set(ea.TEXTURE0),Pa.atlasTexture.bind(Pa.atlasInterpolation,ea.CLAMP_TO_EDGE),Pa.atlasTextureIcon&&(jr.activeTexture.set(ea.TEXTURE1),Pa.atlasTextureIcon&&Pa.atlasTextureIcon.bind(Pa.atlasInterpolationIcon,ea.CLAMP_TO_EDGE)),Pa.isSDF){let Ja=Pa.uniformValues;Pa.hasHalo&&(Ja.u_is_halo=1,Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Ja,ga.terrainData)),Ja.u_is_halo=0}Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Pa.uniformValues,ga.terrainData)}}function Xf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt){let cr=we.context;Se.draw(cr,cr.gl.TRIANGLES,De,ft,bt,So.disabled,Dt,Yt,ae.id,Oe.layoutVertexBuffer,Oe.indexBuffer,R,ae.paint,we.transform.zoom,Oe.programConfigurations.get(ae.id),Oe.dynamicLayoutVertexBuffer,Oe.opacityVertexBuffer)}function Rf(Oe,R,ae,we){let Se=Oe.context,De=Se.gl,ft=Ss.disabled,bt=new Qs([De.ONE,De.ONE],t.aM.transparent,[!0,!0,!0,!0]),Dt=R.getBucket(ae);if(!Dt)return;let Yt=we.key,cr=ae.heatmapFbos.get(Yt);cr||(cr=Yf(Se,R.tileSize,R.tileSize),ae.heatmapFbos.set(Yt,cr)),Se.bindFramebuffer.set(cr.framebuffer),Se.viewport.set([0,0,R.tileSize,R.tileSize]),Se.clear({color:t.aM.transparent});let hr=Dt.programConfigurations.get(ae.id),jr=Oe.useProgram("heatmap",hr),ea=Oe.style.map.terrain.getTerrainData(we);jr.draw(Se,De.TRIANGLES,es.disabled,ft,bt,So.disabled,Cn(we.posMatrix,R,Oe.transform.zoom,ae.paint.get("heatmap-intensity")),ea,ae.id,Dt.layoutVertexBuffer,Dt.indexBuffer,Dt.segments,ae.paint,Oe.transform.zoom,hr)}function Kc(Oe,R,ae){let we=Oe.context,Se=we.gl;we.setColorMode(Oe.colorModeForRenderPass());let De=uh(we,R),ft=ae.key,bt=R.heatmapFbos.get(ft);bt&&(we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,bt.colorAttachment.get()),we.activeTexture.set(Se.TEXTURE1),De.bind(Se.LINEAR,Se.CLAMP_TO_EDGE),Oe.useProgram("heatmapTexture").draw(we,Se.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,Lo(Oe,R,0,1),null,R.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments,R.paint,Oe.transform.zoom),bt.destroy(),R.heatmapFbos.delete(ft))}function Yf(Oe,R,ae){var we,Se;let De=Oe.gl,ft=De.createTexture();De.bindTexture(De.TEXTURE_2D,ft),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,De.LINEAR),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,De.LINEAR);let bt=(we=Oe.HALF_FLOAT)!==null&&we!==void 0?we:De.UNSIGNED_BYTE,Dt=(Se=Oe.RGBA16F)!==null&&Se!==void 0?Se:De.RGBA;De.texImage2D(De.TEXTURE_2D,0,Dt,R,ae,0,De.RGBA,bt,null);let Yt=Oe.createFramebuffer(R,ae,!1,!1);return Yt.colorAttachment.set(ft),Yt}function uh(Oe,R){return R.colorRampTexture||(R.colorRampTexture=new u(Oe,R.colorRamp,Oe.gl.RGBA)),R.colorRampTexture}function Ju(Oe,R,ae,we,Se){if(!ae||!we||!we.imageAtlas)return;let De=we.imageAtlas.patternPositions,ft=De[ae.to.toString()],bt=De[ae.from.toString()];if(!ft&&bt&&(ft=bt),!bt&&ft&&(bt=ft),!ft||!bt){let Dt=Se.getPaintProperty(R);ft=De[Dt],bt=De[Dt]}ft&&bt&&Oe.setConstantPatternPositions(ft,bt)}function Df(Oe,R,ae,we,Se,De,ft){let bt=Oe.context.gl,Dt="fill-pattern",Yt=ae.paint.get(Dt),cr=Yt&&Yt.constantOr(1),hr=ae.getCrossfadeParameters(),jr,ea,qe,Je,ot;ft?(ea=cr&&!ae.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",jr=bt.LINES):(ea=cr?"fillPattern":"fill",jr=bt.TRIANGLES);let ht=Yt.constantOr(null);for(let At of we){let _t=R.getTile(At);if(cr&&!_t.patternsLoaded())continue;let Pt=_t.getBucket(ae);if(!Pt)continue;let er=Pt.programConfigurations.get(ae.id),nr=Oe.useProgram(ea,er),pr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At);cr&&(Oe.context.activeTexture.set(bt.TEXTURE0),_t.imageAtlasTexture.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),er.updatePaintBuffers(hr)),Ju(er,Dt,ht,_t,ae);let Sr=pr?At:null,Wr=Oe.translatePosMatrix(Sr?Sr.posMatrix:At.posMatrix,_t,ae.paint.get("fill-translate"),ae.paint.get("fill-translate-anchor"));if(ft){Je=Pt.indexBuffer2,ot=Pt.segments2;let ha=[bt.drawingBufferWidth,bt.drawingBufferHeight];qe=ea==="fillOutlinePattern"&&cr?an(Wr,Oe,hr,_t,ha):ai(Wr,ha)}else Je=Pt.indexBuffer,ot=Pt.segments,qe=cr?Ti(Wr,Oe,hr,_t):Sa(Wr);nr.draw(Oe.context,jr,Se,Oe.stencilModeForClipping(At),De,So.disabled,qe,pr,ae.id,Pt.layoutVertexBuffer,Je,ot,ae.paint,Oe.transform.zoom,er)}}function Dc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt="fill-extrusion-pattern",cr=ae.paint.get(Yt),hr=cr.constantOr(1),jr=ae.getCrossfadeParameters(),ea=ae.paint.get("fill-extrusion-opacity"),qe=cr.constantOr(null);for(let Je of we){let ot=R.getTile(Je),ht=ot.getBucket(ae);if(!ht)continue;let At=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(Je),_t=ht.programConfigurations.get(ae.id),Pt=Oe.useProgram(hr?"fillExtrusionPattern":"fillExtrusion",_t);hr&&(Oe.context.activeTexture.set(Dt.TEXTURE0),ot.imageAtlasTexture.bind(Dt.LINEAR,Dt.CLAMP_TO_EDGE),_t.updatePaintBuffers(jr)),Ju(_t,Yt,qe,ot,ae);let er=Oe.translatePosMatrix(Je.posMatrix,ot,ae.paint.get("fill-extrusion-translate"),ae.paint.get("fill-extrusion-translate-anchor")),nr=ae.paint.get("fill-extrusion-vertical-gradient"),pr=hr?da(er,Oe,nr,ea,Je,jr,ot):Ca(er,Oe,nr,ea);Pt.draw(bt,bt.gl.TRIANGLES,Se,De,ft,So.backCCW,pr,At,ae.id,ht.layoutVertexBuffer,ht.indexBuffer,ht.segments,ae.paint,Oe.transform.zoom,_t,Oe.style.map.terrain&&ht.centroidVertexBuffer)}}function Jc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt=ae.fbo;if(!Yt)return;let cr=Oe.useProgram("hillshade"),hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(R);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,Yt.colorAttachment.get()),cr.draw(bt,Dt.TRIANGLES,Se,De,ft,So.disabled,((jr,ea,qe,Je)=>{let ot=qe.paint.get("hillshade-shadow-color"),ht=qe.paint.get("hillshade-highlight-color"),At=qe.paint.get("hillshade-accent-color"),_t=qe.paint.get("hillshade-illumination-direction")*(Math.PI/180);qe.paint.get("hillshade-illumination-anchor")==="viewport"&&(_t-=jr.transform.angle);let Pt=!jr.options.moving;return{u_matrix:Je?Je.posMatrix:jr.transform.calculatePosMatrix(ea.tileID.toUnwrapped(),Pt),u_image:0,u_latrange:Xi(0,ea.tileID),u_light:[qe.paint.get("hillshade-exaggeration"),_t],u_shadow:ot,u_highlight:ht,u_accent:At}})(Oe,ae,we,hr?R:null),hr,we.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments)}function Eu(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl,Dt=R.dem;if(Dt&&Dt.data){let Yt=Dt.dim,cr=Dt.stride,hr=Dt.getPixels();if(ft.activeTexture.set(bt.TEXTURE1),ft.pixelStoreUnpackPremultiplyAlpha.set(!1),R.demTexture=R.demTexture||Oe.getTileTexture(cr),R.demTexture){let ea=R.demTexture;ea.update(hr,{premultiply:!1}),ea.bind(bt.NEAREST,bt.CLAMP_TO_EDGE)}else R.demTexture=new u(ft,hr,bt.RGBA,{premultiply:!1}),R.demTexture.bind(bt.NEAREST,bt.CLAMP_TO_EDGE);ft.activeTexture.set(bt.TEXTURE0);let jr=R.fbo;if(!jr){let ea=new u(ft,{width:Yt,height:Yt,data:null},bt.RGBA);ea.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),jr=R.fbo=ft.createFramebuffer(Yt,Yt,!0,!1),jr.colorAttachment.set(ea.texture)}ft.bindFramebuffer.set(jr.framebuffer),ft.viewport.set([0,0,Yt,Yt]),Oe.useProgram("hillshadePrepare").draw(ft,bt.TRIANGLES,we,Se,De,So.disabled,((ea,qe)=>{let Je=qe.stride,ot=t.H();return t.aP(ot,0,t.X,-t.X,0,0,1),t.J(ot,ot,[0,-t.X,0]),{u_matrix:ot,u_image:1,u_dimension:[Je,Je],u_zoom:ea.overscaledZ,u_unpack:qe.getUnpackVector()}})(R.tileID,Dt),null,ae.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments),R.needsHillshadePrepare=!1}}function wf(Oe,R,ae,we,Se,De){let ft=we.paint.get("raster-fade-duration");if(!De&&ft>0){let bt=i.now(),Dt=(bt-Oe.timeAdded)/ft,Yt=R?(bt-R.timeAdded)/ft:-1,cr=ae.getSource(),hr=Se.coveringZoomLevel({tileSize:cr.tileSize,roundZoom:cr.roundZoom}),jr=!R||Math.abs(R.tileID.overscaledZ-hr)>Math.abs(Oe.tileID.overscaledZ-hr),ea=jr&&Oe.refreshedUponExpiration?1:t.ac(jr?Dt:1-Yt,0,1);return Oe.refreshedUponExpiration&&Dt>=1&&(Oe.refreshedUponExpiration=!1),R?{opacity:1,mix:1-ea}:{opacity:ea,mix:0}}return{opacity:1,mix:0}}let zc=new t.aM(1,0,0,1),Us=new t.aM(0,1,0,1),Kf=new t.aM(0,0,1,1),Zh=new t.aM(1,0,1,1),ch=new t.aM(0,1,1,1);function df(Oe,R,ae,we){ku(Oe,0,R+ae/2,Oe.transform.width,ae,we)}function Ah(Oe,R,ae,we){ku(Oe,R-ae/2,0,ae,Oe.transform.height,we)}function ku(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl;bt.enable(bt.SCISSOR_TEST),bt.scissor(R*Oe.pixelRatio,ae*Oe.pixelRatio,we*Oe.pixelRatio,Se*Oe.pixelRatio),ft.clear({color:De}),bt.disable(bt.SCISSOR_TEST)}function fh(Oe,R,ae){let we=Oe.context,Se=we.gl,De=ae.posMatrix,ft=Oe.useProgram("debug"),bt=es.disabled,Dt=Ss.disabled,Yt=Oe.colorModeForRenderPass(),cr="$debug",hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ae);we.activeTexture.set(Se.TEXTURE0);let jr=R.getTileByID(ae.key).latestRawTileData,ea=Math.floor((jr&&jr.byteLength||0)/1024),qe=R.getTile(ae).tileSize,Je=512/Math.min(qe,512)*(ae.overscaledZ/Oe.transform.zoom)*.5,ot=ae.canonical.toString();ae.overscaledZ!==ae.canonical.z&&(ot+=` => ${ae.overscaledZ}`),function(ht,At){ht.initDebugOverlayCanvas();let _t=ht.debugOverlayCanvas,Pt=ht.context.gl,er=ht.debugOverlayCanvas.getContext("2d");er.clearRect(0,0,_t.width,_t.height),er.shadowColor="white",er.shadowBlur=2,er.lineWidth=1.5,er.strokeStyle="white",er.textBaseline="top",er.font="bold 36px Open Sans, sans-serif",er.fillText(At,5,5),er.strokeText(At,5,5),ht.debugOverlayTexture.update(_t),ht.debugOverlayTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE)}(Oe,`${ot} ${ea}kB`),ft.draw(we,Se.TRIANGLES,bt,Dt,Qs.alphaBlended,So.disabled,On(De,t.aM.transparent,Je),null,cr,Oe.debugBuffer,Oe.quadTriangleIndexBuffer,Oe.debugSegments),ft.draw(we,Se.LINE_STRIP,bt,Dt,Yt,So.disabled,On(De,t.aM.red),hr,cr,Oe.debugBuffer,Oe.tileBorderIndexBuffer,Oe.debugSegments)}function ru(Oe,R,ae){let we=Oe.context,Se=we.gl,De=Oe.colorModeForRenderPass(),ft=new es(Se.LEQUAL,es.ReadWrite,Oe.depthRangeFor3D),bt=Oe.useProgram("terrain"),Dt=R.getTerrainMesh();we.bindFramebuffer.set(null),we.viewport.set([0,0,Oe.width,Oe.height]);for(let Yt of ae){let cr=Oe.renderToTexture.getTexture(Yt),hr=R.getTerrainData(Yt.tileID);we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,cr.texture);let jr=Oe.transform.calculatePosMatrix(Yt.tileID.toUnwrapped()),ea=R.getMeshFrameDelta(Oe.transform.zoom),qe=Oe.transform.calculateFogMatrix(Yt.tileID.toUnwrapped()),Je=mr(jr,ea,qe,Oe.style.sky,Oe.transform.pitch);bt.draw(we,Se.TRIANGLES,ft,Ss.disabled,De,So.backCCW,Je,hr,"terrain",Dt.vertexBuffer,Dt.indexBuffer,Dt.segments)}}class Cu{constructor(R,ae,we){this.vertexBuffer=R,this.indexBuffer=ae,this.segments=we}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class xc{constructor(R,ae){this.context=new fp(R),this.transform=ae,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:t.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=St.maxUnderzooming+St.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Mr}resize(R,ae,we){if(this.width=Math.floor(R*we),this.height=Math.floor(ae*we),this.pixelRatio=we,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let Se of this.style._order)this.style._layers[Se].resize()}setup(){let R=this.context,ae=new t.aX;ae.emplaceBack(0,0),ae.emplaceBack(t.X,0),ae.emplaceBack(0,t.X),ae.emplaceBack(t.X,t.X),this.tileExtentBuffer=R.createVertexBuffer(ae,oa.members),this.tileExtentSegments=t.a0.simpleSegment(0,0,4,2);let we=new t.aX;we.emplaceBack(0,0),we.emplaceBack(t.X,0),we.emplaceBack(0,t.X),we.emplaceBack(t.X,t.X),this.debugBuffer=R.createVertexBuffer(we,oa.members),this.debugSegments=t.a0.simpleSegment(0,0,4,5);let Se=new t.$;Se.emplaceBack(0,0,0,0),Se.emplaceBack(t.X,0,t.X,0),Se.emplaceBack(0,t.X,0,t.X),Se.emplaceBack(t.X,t.X,t.X,t.X),this.rasterBoundsBuffer=R.createVertexBuffer(Se,Ze.members),this.rasterBoundsSegments=t.a0.simpleSegment(0,0,4,2);let De=new t.aX;De.emplaceBack(0,0),De.emplaceBack(1,0),De.emplaceBack(0,1),De.emplaceBack(1,1),this.viewportBuffer=R.createVertexBuffer(De,oa.members),this.viewportSegments=t.a0.simpleSegment(0,0,4,2);let ft=new t.aZ;ft.emplaceBack(0),ft.emplaceBack(1),ft.emplaceBack(3),ft.emplaceBack(2),ft.emplaceBack(0),this.tileBorderIndexBuffer=R.createIndexBuffer(ft);let bt=new t.aY;bt.emplaceBack(0,1,2),bt.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=R.createIndexBuffer(bt);let Dt=this.context.gl;this.stencilClearMode=new Ss({func:Dt.ALWAYS,mask:0},0,255,Dt.ZERO,Dt.ZERO,Dt.ZERO)}clearStencil(){let R=this.context,ae=R.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let we=t.H();t.aP(we,0,this.width,this.height,0,0,1),t.K(we,we,[ae.drawingBufferWidth,ae.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(R,ae.TRIANGLES,es.disabled,this.stencilClearMode,Qs.disabled,So.disabled,$n(we),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(R,ae){if(this.currentStencilSource===R.source||!R.isTileClipped()||!ae||!ae.length)return;this.currentStencilSource=R.source;let we=this.context,Se=we.gl;this.nextStencilID+ae.length>256&&this.clearStencil(),we.setColorMode(Qs.disabled),we.setDepthMode(es.disabled);let De=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let ft of ae){let bt=this._tileClippingMaskIDs[ft.key]=this.nextStencilID++,Dt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(ft);De.draw(we,Se.TRIANGLES,es.disabled,new Ss({func:Se.ALWAYS,mask:0},bt,255,Se.KEEP,Se.KEEP,Se.REPLACE),Qs.disabled,So.disabled,$n(ft.posMatrix),Dt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let R=this.nextStencilID++,ae=this.context.gl;return new Ss({func:ae.NOTEQUAL,mask:255},R,255,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilModeForClipping(R){let ae=this.context.gl;return new Ss({func:ae.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilConfigForOverlap(R){let ae=this.context.gl,we=R.sort((ft,bt)=>bt.overscaledZ-ft.overscaledZ),Se=we[we.length-1].overscaledZ,De=we[0].overscaledZ-Se+1;if(De>1){this.currentStencilSource=void 0,this.nextStencilID+De>256&&this.clearStencil();let ft={};for(let bt=0;bt<De;bt++)ft[bt+Se]=new Ss({func:ae.GEQUAL,mask:255},bt+this.nextStencilID,255,ae.KEEP,ae.KEEP,ae.REPLACE);return this.nextStencilID+=De,[ft,we]}return[{[Se]:Ss.disabled},we]}colorModeForRenderPass(){let R=this.context.gl;return this._showOverdrawInspector?new Qs([R.CONSTANT_COLOR,R.ONE],new t.aM(.125,.125,.125,0),[!0,!0,!0,!0]):this.renderPass==="opaque"?Qs.unblended:Qs.alphaBlended}depthModeForSublayer(R,ae,we){if(!this.opaquePassEnabledForLayer())return es.disabled;let Se=1-((1+this.currentLayer)*this.numSublayers+R)*this.depthEpsilon;return new es(we||this.context.gl.LEQUAL,ae,[Se,Se])}opaquePassEnabledForLayer(){return this.currentLayer<this.opaquePassCutoff}render(R,ae){this.style=R,this.options=ae,this.lineAtlas=R.lineAtlas,this.imageManager=R.imageManager,this.glyphManager=R.glyphManager,this.symbolFadeChange=R.placement.symbolFadeChange(i.now()),this.imageManager.beginFrame();let we=this.style._order,Se=this.style.sourceCaches,De={},ft={},bt={};for(let Dt in Se){let Yt=Se[Dt];Yt.used&&Yt.prepare(this.context),De[Dt]=Yt.getVisibleCoordinates(),ft[Dt]=De[Dt].slice().reverse(),bt[Dt]=Yt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(let Dt=0;Dt<we.length;Dt++)if(this.style._layers[we[Dt]].is3D()){this.opaquePassCutoff=Dt;break}this.maybeDrawDepthAndCoords(!1),this.renderToTexture&&(this.renderToTexture.prepareForRender(this.style,this.transform.zoom),this.opaquePassCutoff=0),this.renderPass="offscreen";for(let Dt of we){let Yt=this.style._layers[Dt];if(!Yt.hasOffscreenPass()||Yt.isHidden(this.transform.zoom))continue;let cr=ft[Yt.source];(Yt.type==="custom"||cr.length)&&this.renderLayer(this,Se[Yt.source],Yt,cr)}if(this.context.bindFramebuffer.set(null),this.context.clear({color:ae.showOverdrawInspector?t.aM.black:t.aM.transparent,depth:1}),this.clearStencil(),this.style.sky&&function(Dt,Yt){let cr=Dt.context,hr=cr.gl,jr=((ht,At,_t)=>({u_sky_color:ht.properties.get("sky-color"),u_horizon_color:ht.properties.get("horizon-color"),u_horizon:(At.height/2+At.getHorizon())*_t,u_sky_horizon_blend:ht.properties.get("sky-horizon-blend")*At.height/2*_t}))(Yt,Dt.style.map.transform,Dt.pixelRatio),ea=new es(hr.LEQUAL,es.ReadWrite,[0,1]),qe=Ss.disabled,Je=Dt.colorModeForRenderPass(),ot=Dt.useProgram("sky");if(!Yt.mesh){let ht=new t.aX;ht.emplaceBack(-1,-1),ht.emplaceBack(1,-1),ht.emplaceBack(1,1),ht.emplaceBack(-1,1);let At=new t.aY;At.emplaceBack(0,1,2),At.emplaceBack(0,2,3),Yt.mesh=new Cu(cr.createVertexBuffer(ht,oa.members),cr.createIndexBuffer(At),t.a0.simpleSegment(0,0,ht.length,At.length))}ot.draw(cr,hr.TRIANGLES,ea,qe,Je,So.disabled,jr,void 0,"sky",Yt.mesh.vertexBuffer,Yt.mesh.indexBuffer,Yt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=ae.showOverdrawInspector,this.depthRangeFor3D=[0,1-(R._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=we.length-1;this.currentLayer>=0;this.currentLayer--){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source],cr=De[Dt.source];this._renderTileClippingMasks(Dt,cr),this.renderLayer(this,Yt,Dt,cr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<we.length;this.currentLayer++){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source];if(this.renderToTexture&&this.renderToTexture.renderLayer(Dt))continue;let cr=(Dt.type==="symbol"?bt:ft)[Dt.source];this._renderTileClippingMasks(Dt,De[Dt.source]),this.renderLayer(this,Yt,Dt,cr)}if(this.options.showTileBoundaries){let Dt=function(Yt,cr){let hr=null,jr=Object.values(Yt._layers).flatMap(ot=>ot.source&&!ot.isHidden(cr)?[Yt.sourceCaches[ot.source]]:[]),ea=jr.filter(ot=>ot.getSource().type==="vector"),qe=jr.filter(ot=>ot.getSource().type!=="vector"),Je=ot=>{(!hr||hr.getSource().maxzoom<ot.getSource().maxzoom)&&(hr=ot)};return ea.forEach(ot=>Je(ot)),hr||qe.forEach(ot=>Je(ot)),hr}(this.style,this.transform.zoom);Dt&&function(Yt,cr,hr){for(let jr=0;jr<hr.length;jr++)fh(Yt,cr,hr[jr])}(this,Dt,Dt.getVisibleCoordinates())}this.options.showPadding&&function(Dt){let Yt=Dt.transform.padding;df(Dt,Dt.transform.height-(Yt.top||0),3,zc),df(Dt,Yt.bottom||0,3,Us),Ah(Dt,Yt.left||0,3,Kf),Ah(Dt,Dt.transform.width-(Yt.right||0),3,Zh);let cr=Dt.transform.centerPoint;(function(hr,jr,ea,qe){ku(hr,jr-1,ea-10,2,20,qe),ku(hr,jr-10,ea-1,20,2,qe)})(Dt,cr.x,Dt.transform.height-cr.y,ch)}(this),this.context.setDefault()}maybeDrawDepthAndCoords(R){if(!this.style||!this.style.map||!this.style.map.terrain)return;let ae=this.terrainFacilitator.matrix,we=this.transform.modelViewProjectionMatrix,Se=this.terrainFacilitator.dirty;Se||(Se=R?!t.a_(ae,we):!t.a$(ae,we)),Se||(Se=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),Se&&(t.b0(ae,we),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.sourceCache.getRenderableTiles(),ea=De.useProgram("terrainDepth");bt.bindFramebuffer.set(ft.getFramebuffer("depth").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1});for(let qe of jr){let Je=ft.getTerrainData(qe.tileID),ot={u_matrix:De.transform.calculatePosMatrix(qe.tileID.toUnwrapped()),u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};ea.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ot,Je,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain),function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.getCoordsTexture(),ea=ft.sourceCache.getRenderableTiles(),qe=De.useProgram("terrainCoords");bt.bindFramebuffer.set(ft.getFramebuffer("coords").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1}),ft.coordsIndex=[];for(let Je of ea){let ot=ft.getTerrainData(Je.tileID);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,jr.texture);let ht={u_matrix:De.transform.calculatePosMatrix(Je.tileID.toUnwrapped()),u_terrain_coords_id:(255-ft.coordsIndex.length)/255,u_texture:0,u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};qe.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ht,ot,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments),ft.coordsIndex.push(Je.tileID.key)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain))}renderLayer(R,ae,we,Se){if(!we.isHidden(this.transform.zoom)&&(we.type==="background"||we.type==="custom"||(Se||[]).length))switch(this.id=we.id,we.type){case"symbol":(function(De,ft,bt,Dt,Yt){if(De.renderPass!=="translucent")return;let cr=Ss.disabled,hr=De.colorModeForRenderPass();(bt._unevaluatedLayout.hasValue("text-variable-anchor")||bt._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(jr,ea,qe,Je,ot,ht,At,_t,Pt){let er=ea.transform,nr=$a(),pr=ot==="map",Sr=ht==="map";for(let Wr of jr){let ha=Je.getTile(Wr),ga=ha.getBucket(qe);if(!ga||!ga.text||!ga.text.segments.get().length)continue;let Pa=t.ag(ga.textSizeData,er.zoom),Ja=Aa(ha,1,ea.transform.zoom),di=vr(Wr.posMatrix,Sr,pr,ea.transform,Ja),pi=qe.layout.get("icon-text-fit")!=="none"&&ga.hasIconData();if(Pa){let Ci=Math.pow(2,er.zoom-ha.tileID.overscaledZ),$i=ea.style.map.terrain?(Sn,ho)=>ea.style.map.terrain.getElevation(Wr,Sn,ho):null,Bn=nr.translatePosition(er,ha,At,_t);pf(ga,pr,Sr,Pt,er,di,Wr.posMatrix,Ci,Pa,pi,nr,Bn,Wr.toUnwrapped(),$i)}}}(Dt,De,bt,ft,bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),Yt),bt.paint.get("icon-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!1,bt.paint.get("icon-translate"),bt.paint.get("icon-translate-anchor"),bt.layout.get("icon-rotation-alignment"),bt.layout.get("icon-pitch-alignment"),bt.layout.get("icon-keep-upright"),cr,hr),bt.paint.get("text-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!0,bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.layout.get("text-keep-upright"),cr,hr),ft.map.showCollisionBoxes&&(Ku(De,ft,bt,Dt,!0),Ku(De,ft,bt,Dt,!1))})(R,ae,we,Se,this.style.placement.variableOffsets);break;case"circle":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("circle-opacity"),cr=bt.paint.get("circle-stroke-width"),hr=bt.paint.get("circle-stroke-opacity"),jr=!bt.layout.get("circle-sort-key").isConstant();if(Yt.constantOr(1)===0&&(cr.constantOr(1)===0||hr.constantOr(1)===0))return;let ea=De.context,qe=ea.gl,Je=De.depthModeForSublayer(0,es.ReadOnly),ot=Ss.disabled,ht=De.colorModeForRenderPass(),At=[];for(let _t=0;_t<Dt.length;_t++){let Pt=Dt[_t],er=ft.getTile(Pt),nr=er.getBucket(bt);if(!nr)continue;let pr=nr.programConfigurations.get(bt.id),Sr=De.useProgram("circle",pr),Wr=nr.layoutVertexBuffer,ha=nr.indexBuffer,ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(Pt),Pa={programConfiguration:pr,program:Sr,layoutVertexBuffer:Wr,indexBuffer:ha,uniformValues:sn(De,Pt,er,bt),terrainData:ga};if(jr){let Ja=nr.segments.get();for(let di of Ja)At.push({segments:new t.a0([di]),sortKey:di.sortKey,state:Pa})}else At.push({segments:nr.segments,sortKey:0,state:Pa})}jr&&At.sort((_t,Pt)=>_t.sortKey-Pt.sortKey);for(let _t of At){let{programConfiguration:Pt,program:er,layoutVertexBuffer:nr,indexBuffer:pr,uniformValues:Sr,terrainData:Wr}=_t.state;er.draw(ea,qe.TRIANGLES,Je,ot,ht,So.disabled,Sr,Wr,bt.id,nr,pr,_t.segments,bt.paint,De.transform.zoom,Pt)}})(R,ae,we,Se);break;case"heatmap":(function(De,ft,bt,Dt){if(bt.paint.get("heatmap-opacity")===0)return;let Yt=De.context;if(De.style.map.terrain){for(let cr of Dt){let hr=ft.getTile(cr);ft.hasRenderableParent(cr)||(De.renderPass==="offscreen"?Rf(De,hr,bt,cr):De.renderPass==="translucent"&&Kc(De,bt,cr))}Yt.viewport.set([0,0,De.width,De.height])}else De.renderPass==="offscreen"?function(cr,hr,jr,ea){let qe=cr.context,Je=qe.gl,ot=Ss.disabled,ht=new Qs([Je.ONE,Je.ONE],t.aM.transparent,[!0,!0,!0,!0]);(function(At,_t,Pt){let er=At.gl;At.activeTexture.set(er.TEXTURE1),At.viewport.set([0,0,_t.width/4,_t.height/4]);let nr=Pt.heatmapFbos.get(t.aU);nr?(er.bindTexture(er.TEXTURE_2D,nr.colorAttachment.get()),At.bindFramebuffer.set(nr.framebuffer)):(nr=Yf(At,_t.width/4,_t.height/4),Pt.heatmapFbos.set(t.aU,nr))})(qe,cr,jr),qe.clear({color:t.aM.transparent});for(let At=0;At<ea.length;At++){let _t=ea[At];if(hr.hasRenderableParent(_t))continue;let Pt=hr.getTile(_t),er=Pt.getBucket(jr);if(!er)continue;let nr=er.programConfigurations.get(jr.id),pr=cr.useProgram("heatmap",nr),{zoom:Sr}=cr.transform;pr.draw(qe,Je.TRIANGLES,es.disabled,ot,ht,So.disabled,Cn(_t.posMatrix,Pt,Sr,jr.paint.get("heatmap-intensity")),null,jr.id,er.layoutVertexBuffer,er.indexBuffer,er.segments,jr.paint,cr.transform.zoom,nr)}qe.viewport.set([0,0,cr.width,cr.height])}(De,ft,bt,Dt):De.renderPass==="translucent"&&function(cr,hr){let jr=cr.context,ea=jr.gl;jr.setColorMode(cr.colorModeForRenderPass());let qe=hr.heatmapFbos.get(t.aU);qe&&(jr.activeTexture.set(ea.TEXTURE0),ea.bindTexture(ea.TEXTURE_2D,qe.colorAttachment.get()),jr.activeTexture.set(ea.TEXTURE1),uh(jr,hr).bind(ea.LINEAR,ea.CLAMP_TO_EDGE),cr.useProgram("heatmapTexture").draw(jr,ea.TRIANGLES,es.disabled,Ss.disabled,cr.colorModeForRenderPass(),So.disabled,Lo(cr,hr,0,1),null,hr.id,cr.viewportBuffer,cr.quadTriangleIndexBuffer,cr.viewportSegments,hr.paint,cr.transform.zoom))}(De,bt)})(R,ae,we,Se);break;case"line":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("line-opacity"),cr=bt.paint.get("line-width");if(Yt.constantOr(1)===0||cr.constantOr(1)===0)return;let hr=De.depthModeForSublayer(0,es.ReadOnly),jr=De.colorModeForRenderPass(),ea=bt.paint.get("line-dasharray"),qe=bt.paint.get("line-pattern"),Je=qe.constantOr(1),ot=bt.paint.get("line-gradient"),ht=bt.getCrossfadeParameters(),At=Je?"linePattern":ea?"lineSDF":ot?"lineGradient":"line",_t=De.context,Pt=_t.gl,er=!0;for(let nr of Dt){let pr=ft.getTile(nr);if(Je&&!pr.patternsLoaded())continue;let Sr=pr.getBucket(bt);if(!Sr)continue;let Wr=Sr.programConfigurations.get(bt.id),ha=De.context.program.get(),ga=De.useProgram(At,Wr),Pa=er||ga.program!==ha,Ja=De.style.map.terrain&&De.style.map.terrain.getTerrainData(nr),di=qe.constantOr(null);if(di&&pr.imageAtlas){let $i=pr.imageAtlas,Bn=$i.patternPositions[di.to.toString()],Sn=$i.patternPositions[di.from.toString()];Bn&&Sn&&Wr.setConstantPatternPositions(Bn,Sn)}let pi=Ja?nr:null,Ci=Je?as(De,pr,bt,ht,pi):ea?Pn(De,pr,bt,ea,ht,pi):ot?zo(De,pr,bt,Sr.lineClipsArray.length,pi):Jo(De,pr,bt,pi);if(Je)_t.activeTexture.set(Pt.TEXTURE0),pr.imageAtlasTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE),Wr.updatePaintBuffers(ht);else if(ea&&(Pa||De.lineAtlas.dirty))_t.activeTexture.set(Pt.TEXTURE0),De.lineAtlas.bind(_t);else if(ot){let $i=Sr.gradients[bt.id],Bn=$i.texture;if(bt.gradientVersion!==$i.version){let Sn=256;if(bt.stepInterpolant){let ho=ft.getSource().maxzoom,ts=nr.canonical.z===ho?Math.ceil(1<<De.transform.maxZoom-nr.canonical.z):1;Sn=t.ac(t.aV(Sr.maxLineLength/t.X*1024*ts),256,_t.maxTextureSize)}$i.gradient=t.aW({expression:bt.gradientExpression(),evaluationKey:"lineProgress",resolution:Sn,image:$i.gradient||void 0,clips:Sr.lineClipsArray}),$i.texture?$i.texture.update($i.gradient):$i.texture=new u(_t,$i.gradient,Pt.RGBA),$i.version=bt.gradientVersion,Bn=$i.texture}_t.activeTexture.set(Pt.TEXTURE0),Bn.bind(bt.stepInterpolant?Pt.NEAREST:Pt.LINEAR,Pt.CLAMP_TO_EDGE)}ga.draw(_t,Pt.TRIANGLES,hr,De.stencilModeForClipping(nr),jr,So.disabled,Ci,Ja,bt.id,Sr.layoutVertexBuffer,Sr.indexBuffer,Sr.segments,bt.paint,De.transform.zoom,Wr,Sr.layoutVertexBuffer2),er=!1}})(R,ae,we,Se);break;case"fill":(function(De,ft,bt,Dt){let Yt=bt.paint.get("fill-color"),cr=bt.paint.get("fill-opacity");if(cr.constantOr(1)===0)return;let hr=De.colorModeForRenderPass(),jr=bt.paint.get("fill-pattern"),ea=De.opaquePassEnabledForLayer()&&!jr.constantOr(1)&&Yt.constantOr(t.aM.transparent).a===1&&cr.constantOr(0)===1?"opaque":"translucent";if(De.renderPass===ea){let qe=De.depthModeForSublayer(1,De.renderPass==="opaque"?es.ReadWrite:es.ReadOnly);Df(De,ft,bt,Dt,qe,hr,!1)}if(De.renderPass==="translucent"&&bt.paint.get("fill-antialias")){let qe=De.depthModeForSublayer(bt.getPaintProperty("fill-outline-color")?2:0,es.ReadOnly);Df(De,ft,bt,Dt,qe,hr,!0)}})(R,ae,we,Se);break;case"fill-extrusion":(function(De,ft,bt,Dt){let Yt=bt.paint.get("fill-extrusion-opacity");if(Yt!==0&&De.renderPass==="translucent"){let cr=new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D);if(Yt!==1||bt.paint.get("fill-extrusion-pattern").constantOr(1))Dc(De,ft,bt,Dt,cr,Ss.disabled,Qs.disabled),Dc(De,ft,bt,Dt,cr,De.stencilModeFor3D(),De.colorModeForRenderPass());else{let hr=De.colorModeForRenderPass();Dc(De,ft,bt,Dt,cr,Ss.disabled,hr)}}})(R,ae,we,Se);break;case"hillshade":(function(De,ft,bt,Dt){if(De.renderPass!=="offscreen"&&De.renderPass!=="translucent")return;let Yt=De.context,cr=De.depthModeForSublayer(0,es.ReadOnly),hr=De.colorModeForRenderPass(),[jr,ea]=De.renderPass==="translucent"?De.stencilConfigForOverlap(Dt):[{},Dt];for(let qe of ea){let Je=ft.getTile(qe);Je.needsHillshadePrepare!==void 0&&Je.needsHillshadePrepare&&De.renderPass==="offscreen"?Eu(De,Je,bt,cr,Ss.disabled,hr):De.renderPass==="translucent"&&Jc(De,qe,Je,bt,cr,jr[qe.overscaledZ],hr)}Yt.viewport.set([0,0,De.width,De.height])})(R,ae,we,Se);break;case"raster":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent"||bt.paint.get("raster-opacity")===0||!Dt.length)return;let Yt=De.context,cr=Yt.gl,hr=ft.getSource(),jr=De.useProgram("raster"),ea=De.colorModeForRenderPass(),[qe,Je]=hr instanceof at?[{},Dt]:De.stencilConfigForOverlap(Dt),ot=Je[Je.length-1].overscaledZ,ht=!De.options.moving;for(let At of Je){let _t=De.depthModeForSublayer(At.overscaledZ-ot,bt.paint.get("raster-opacity")===1?es.ReadWrite:es.ReadOnly,cr.LESS),Pt=ft.getTile(At);Pt.registerFadeDuration(bt.paint.get("raster-fade-duration"));let er=ft.findLoadedParent(At,0),nr=ft.findLoadedSibling(At),pr=wf(Pt,er||nr||null,ft,bt,De.transform,De.style.map.terrain),Sr,Wr,ha=bt.paint.get("raster-resampling")==="nearest"?cr.NEAREST:cr.LINEAR;Yt.activeTexture.set(cr.TEXTURE0),Pt.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Yt.activeTexture.set(cr.TEXTURE1),er?(er.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Sr=Math.pow(2,er.tileID.overscaledZ-Pt.tileID.overscaledZ),Wr=[Pt.tileID.canonical.x*Sr%1,Pt.tileID.canonical.y*Sr%1]):Pt.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Pt.texture.useMipmap&&Yt.extTextureFilterAnisotropic&&De.transform.pitch>20&&cr.texParameterf(cr.TEXTURE_2D,Yt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Yt.extTextureFilterAnisotropicMax);let ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(At),Pa=ga?At:null,Ja=Pa?Pa.posMatrix:De.transform.calculatePosMatrix(At.toUnwrapped(),ht),di=Do(Ja,Wr||[0,0],Sr||1,pr,bt);hr instanceof at?jr.draw(Yt,cr.TRIANGLES,_t,Ss.disabled,ea,So.disabled,di,ga,bt.id,hr.boundsBuffer,De.quadTriangleIndexBuffer,hr.boundsSegments):jr.draw(Yt,cr.TRIANGLES,_t,qe[At.overscaledZ],ea,So.disabled,di,ga,bt.id,De.rasterBoundsBuffer,De.quadTriangleIndexBuffer,De.rasterBoundsSegments)}})(R,ae,we,Se);break;case"background":(function(De,ft,bt,Dt){let Yt=bt.paint.get("background-color"),cr=bt.paint.get("background-opacity");if(cr===0)return;let hr=De.context,jr=hr.gl,ea=De.transform,qe=ea.tileSize,Je=bt.paint.get("background-pattern");if(De.isPatternMissing(Je))return;let ot=!Je&&Yt.a===1&&cr===1&&De.opaquePassEnabledForLayer()?"opaque":"translucent";if(De.renderPass!==ot)return;let ht=Ss.disabled,At=De.depthModeForSublayer(0,ot==="opaque"?es.ReadWrite:es.ReadOnly),_t=De.colorModeForRenderPass(),Pt=De.useProgram(Je?"backgroundPattern":"background"),er=Dt||ea.coveringTiles({tileSize:qe,terrain:De.style.map.terrain});Je&&(hr.activeTexture.set(jr.TEXTURE0),De.imageManager.bind(De.context));let nr=bt.getCrossfadeParameters();for(let pr of er){let Sr=Dt?pr.posMatrix:De.transform.calculatePosMatrix(pr.toUnwrapped()),Wr=Je?Is(Sr,cr,De,Je,{tileID:pr,tileSize:qe},nr):ys(Sr,cr,Yt),ha=De.style.map.terrain&&De.style.map.terrain.getTerrainData(pr);Pt.draw(hr,jr.TRIANGLES,At,ht,_t,So.disabled,Wr,ha,bt.id,De.tileExtentBuffer,De.quadTriangleIndexBuffer,De.tileExtentSegments)}})(R,0,we,Se);break;case"custom":(function(De,ft,bt){let Dt=De.context,Yt=bt.implementation;if(De.renderPass==="offscreen"){let cr=Yt.prerender;cr&&(De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),cr.call(Yt,Dt.gl,De.transform.customLayerMatrix()),Dt.setDirty(),De.setBaseState())}else if(De.renderPass==="translucent"){De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),Dt.setStencilMode(Ss.disabled);let cr=Yt.renderingMode==="3d"?new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D):De.depthModeForSublayer(0,es.ReadOnly);Dt.setDepthMode(cr),Yt.render(Dt.gl,De.transform.customLayerMatrix(),{farZ:De.transform.farZ,nearZ:De.transform.nearZ,fov:De.transform._fov,modelViewProjectionMatrix:De.transform.modelViewProjectionMatrix,projectionMatrix:De.transform.projectionMatrix}),Dt.setDirty(),De.setBaseState(),Dt.bindFramebuffer.set(null)}})(R,0,we)}}translatePosMatrix(R,ae,we,Se,De){if(!we[0]&&!we[1])return R;let ft=De?Se==="map"?this.transform.angle:0:Se==="viewport"?-this.transform.angle:0;if(ft){let Yt=Math.sin(ft),cr=Math.cos(ft);we=[we[0]*cr-we[1]*Yt,we[0]*Yt+we[1]*cr]}let bt=[De?we[0]:Aa(ae,we[0],this.transform.zoom),De?we[1]:Aa(ae,we[1],this.transform.zoom),0],Dt=new Float32Array(16);return t.J(Dt,R,bt),Dt}saveTileTexture(R){let ae=this._tileTextures[R.size[0]];ae?ae.push(R):this._tileTextures[R.size[0]]=[R]}getTileTexture(R){let ae=this._tileTextures[R];return ae&&ae.length>0?ae.pop():null}isPatternMissing(R){if(!R)return!1;if(!R.from||!R.to)return!0;let ae=this.imageManager.getPattern(R.from.toString()),we=this.imageManager.getPattern(R.to.toString());return!ae||!we}useProgram(R,ae){this.cache=this.cache||{};let we=R+(ae?ae.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[we]||(this.cache[we]=new ma(this.context,ca[R],ae,Fs[R],this._showOverdrawInspector,this.style.map.terrain)),this.cache[we]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new u(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:R,drawingBufferHeight:ae}=this.context.gl;return this.width!==R||this.height!==ae}}class kl{constructor(R,ae){this.points=R,this.planes=ae}static fromInvProjectionMatrix(R,ae,we){let Se=Math.pow(2,we),De=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(bt=>{let Dt=1/(bt=t.af([],bt,R))[3]/ae*Se;return t.b1(bt,bt,[Dt,Dt,1/bt[3],Dt])}),ft=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(bt=>{let Dt=function(jr,ea){var qe=ea[0],Je=ea[1],ot=ea[2],ht=qe*qe+Je*Je+ot*ot;return ht>0&&(ht=1/Math.sqrt(ht)),jr[0]=ea[0]*ht,jr[1]=ea[1]*ht,jr[2]=ea[2]*ht,jr}([],function(jr,ea,qe){var Je=ea[0],ot=ea[1],ht=ea[2],At=qe[0],_t=qe[1],Pt=qe[2];return jr[0]=ot*Pt-ht*_t,jr[1]=ht*At-Je*Pt,jr[2]=Je*_t-ot*At,jr}([],E([],De[bt[0]],De[bt[1]]),E([],De[bt[2]],De[bt[1]]))),Yt=-((cr=Dt)[0]*(hr=De[bt[1]])[0]+cr[1]*hr[1]+cr[2]*hr[2]);var cr,hr;return Dt.concat(Yt)});return new kl(De,ft)}}class Fc{constructor(R,ae){this.min=R,this.max=ae,this.center=function(we,Se,De){return we[0]=.5*Se[0],we[1]=.5*Se[1],we[2]=.5*Se[2],we}([],function(we,Se,De){return we[0]=Se[0]+De[0],we[1]=Se[1]+De[1],we[2]=Se[2]+De[2],we}([],this.min,this.max))}quadrant(R){let ae=[R%2==0,R<2],we=w(this.min),Se=w(this.max);for(let De=0;De<ae.length;De++)we[De]=ae[De]?this.min[De]:this.center[De],Se[De]=ae[De]?this.center[De]:this.max[De];return Se[2]=this.max[2],new Fc(we,Se)}distanceX(R){return Math.max(Math.min(this.max[0],R[0]),this.min[0])-R[0]}distanceY(R){return Math.max(Math.min(this.max[1],R[1]),this.min[1])-R[1]}intersects(R){let ae=[[this.min[0],this.min[1],this.min[2],1],[this.max[0],this.min[1],this.min[2],1],[this.max[0],this.max[1],this.min[2],1],[this.min[0],this.max[1],this.min[2],1],[this.min[0],this.min[1],this.max[2],1],[this.max[0],this.min[1],this.max[2],1],[this.max[0],this.max[1],this.max[2],1],[this.min[0],this.max[1],this.max[2],1]],we=!0;for(let Se=0;Se<R.planes.length;Se++){let De=R.planes[Se],ft=0;for(let bt=0;bt<ae.length;bt++)t.b2(De,ae[bt])>=0&&ft++;if(ft===0)return 0;ft!==ae.length&&(we=!1)}if(we)return 2;for(let Se=0;Se<3;Se++){let De=Number.MAX_VALUE,ft=-Number.MAX_VALUE;for(let bt=0;bt<R.points.length;bt++){let Dt=R.points[bt][Se]-this.min[Se];De=Math.min(De,Dt),ft=Math.max(ft,Dt)}if(ft<0||De>this.max[Se]-this.min[Se])return 0}return 1}}class $u{constructor(R=0,ae=0,we=0,Se=0){if(isNaN(R)||R<0||isNaN(ae)||ae<0||isNaN(we)||we<0||isNaN(Se)||Se<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=ae,this.left=we,this.right=Se}interpolate(R,ae,we){return ae.top!=null&&R.top!=null&&(this.top=t.y.number(R.top,ae.top,we)),ae.bottom!=null&&R.bottom!=null&&(this.bottom=t.y.number(R.bottom,ae.bottom,we)),ae.left!=null&&R.left!=null&&(this.left=t.y.number(R.left,ae.left,we)),ae.right!=null&&R.right!=null&&(this.right=t.y.number(R.right,ae.right,we)),this}getCenter(R,ae){let we=t.ac((this.left+R-this.right)/2,0,R),Se=t.ac((this.top+ae-this.bottom)/2,0,ae);return new t.P(we,Se)}equals(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right}clone(){return new $u(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let vu=85.051129;class xl{constructor(R,ae,we,Se,De){this.tileSize=512,this._renderWorldCopies=De===void 0||!!De,this._minZoom=R||0,this._maxZoom=ae||22,this._minPitch=we??0,this._maxPitch=Se??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new $u,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let R=new xl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.apply(this),R}apply(R){this.tileSize=R.tileSize,this.latRange=R.latRange,this.lngRange=R.lngRange,this.width=R.width,this.height=R.height,this._center=R._center,this._elevation=R._elevation,this.minElevationForCurrentTile=R.minElevationForCurrentTile,this.zoom=R.zoom,this.angle=R.angle,this._fov=R._fov,this._pitch=R._pitch,this._unmodified=R._unmodified,this._edgeInsets=R._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(R){this._minZoom!==R&&(this._minZoom=R,this.zoom=Math.max(this.zoom,R))}get maxZoom(){return this._maxZoom}set maxZoom(R){this._maxZoom!==R&&(this._maxZoom=R,this.zoom=Math.min(this.zoom,R))}get minPitch(){return this._minPitch}set minPitch(R){this._minPitch!==R&&(this._minPitch=R,this.pitch=Math.max(this.pitch,R))}get maxPitch(){return this._maxPitch}set maxPitch(R){this._maxPitch!==R&&(this._maxPitch=R,this.pitch=Math.min(this.pitch,R))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(R){R===void 0?R=!0:R===null&&(R=!1),this._renderWorldCopies=R}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new t.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(R){let ae=-t.b3(R,-180,180)*Math.PI/180;this.angle!==ae&&(this._unmodified=!1,this.angle=ae,this._calcMatrices(),this.rotationMatrix=function(){var we=new t.A(4);return t.A!=Float32Array&&(we[1]=0,we[2]=0),we[0]=1,we[3]=1,we}(),function(we,Se,De){var ft=Se[0],bt=Se[1],Dt=Se[2],Yt=Se[3],cr=Math.sin(De),hr=Math.cos(De);we[0]=ft*hr+Dt*cr,we[1]=bt*hr+Yt*cr,we[2]=ft*-cr+Dt*hr,we[3]=bt*-cr+Yt*hr}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(R){let ae=t.ac(R,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==ae&&(this._unmodified=!1,this._pitch=ae,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(R){R=Math.max(.01,Math.min(60,R)),this._fov!==R&&(this._unmodified=!1,this._fov=R/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(R){let ae=Math.min(Math.max(R,this.minZoom),this.maxZoom);this._zoom!==ae&&(this._unmodified=!1,this._zoom=ae,this.tileZoom=Math.max(0,Math.floor(ae)),this.scale=this.zoomScale(ae),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(R){R.lat===this._center.lat&&R.lng===this._center.lng||(this._unmodified=!1,this._center=R,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(R){R!==this._elevation&&(this._elevation=R,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(R){this._edgeInsets.equals(R)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,R,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(R){return this._edgeInsets.equals(R)}interpolatePadding(R,ae,we){this._unmodified=!1,this._edgeInsets.interpolate(R,ae,we),this._constrain(),this._calcMatrices()}coveringZoomLevel(R){let ae=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,ae)}getVisibleUnwrappedCoordinates(R){let ae=[new t.b4(0,R)];if(this._renderWorldCopies){let we=this.pointCoordinate(new t.P(0,0)),Se=this.pointCoordinate(new t.P(this.width,0)),De=this.pointCoordinate(new t.P(this.width,this.height)),ft=this.pointCoordinate(new t.P(0,this.height)),bt=Math.floor(Math.min(we.x,Se.x,De.x,ft.x)),Dt=Math.floor(Math.max(we.x,Se.x,De.x,ft.x)),Yt=1;for(let cr=bt-Yt;cr<=Dt+Yt;cr++)cr!==0&&ae.push(new t.b4(cr,R))}return ae}coveringTiles(R){var ae,we;let Se=this.coveringZoomLevel(R),De=Se;if(R.minzoom!==void 0&&Se<R.minzoom)return[];R.maxzoom!==void 0&&Se>R.maxzoom&&(Se=R.maxzoom);let ft=this.pointCoordinate(this.getCameraPoint()),bt=t.Z.fromLngLat(this.center),Dt=Math.pow(2,Se),Yt=[Dt*ft.x,Dt*ft.y,0],cr=[Dt*bt.x,Dt*bt.y,0],hr=kl.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,Se),jr=R.minzoom||0;!R.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(jr=Se);let ea=R.terrain?2/Math.min(this.tileSize,R.tileSize)*this.tileSize:3,qe=_t=>({aabb:new Fc([_t*Dt,0,0],[(_t+1)*Dt,Dt,0]),zoom:0,x:0,y:0,wrap:_t,fullyVisible:!1}),Je=[],ot=[],ht=Se,At=R.reparseOverscaled?De:Se;if(this._renderWorldCopies)for(let _t=1;_t<=3;_t++)Je.push(qe(-_t)),Je.push(qe(_t));for(Je.push(qe(0));Je.length>0;){let _t=Je.pop(),Pt=_t.x,er=_t.y,nr=_t.fullyVisible;if(!nr){let ga=_t.aabb.intersects(hr);if(ga===0)continue;nr=ga===2}let pr=R.terrain?Yt:cr,Sr=_t.aabb.distanceX(pr),Wr=_t.aabb.distanceY(pr),ha=Math.max(Math.abs(Sr),Math.abs(Wr));if(_t.zoom===ht||ha>ea+(1<<ht-_t.zoom)-2&&_t.zoom>=jr){let ga=ht-_t.zoom,Pa=Yt[0]-.5-(Pt<<ga),Ja=Yt[1]-.5-(er<<ga);ot.push({tileID:new t.S(_t.zoom===ht?At:_t.zoom,_t.wrap,_t.zoom,Pt,er),distanceSq:m([cr[0]-.5-Pt,cr[1]-.5-er]),tileDistanceToCamera:Math.sqrt(Pa*Pa+Ja*Ja)})}else for(let ga=0;ga<4;ga++){let Pa=(Pt<<1)+ga%2,Ja=(er<<1)+(ga>>1),di=_t.zoom+1,pi=_t.aabb.quadrant(ga);if(R.terrain){let Ci=new t.S(di,_t.wrap,di,Pa,Ja),$i=R.terrain.getMinMaxElevation(Ci),Bn=(ae=$i.minElevation)!==null&&ae!==void 0?ae:this.elevation,Sn=(we=$i.maxElevation)!==null&&we!==void 0?we:this.elevation;pi=new Fc([pi.min[0],pi.min[1],Bn],[pi.max[0],pi.max[1],Sn])}Je.push({aabb:pi,zoom:di,x:Pa,y:Ja,wrap:_t.wrap,fullyVisible:nr})}}return ot.sort((_t,Pt)=>_t.distanceSq-Pt.distanceSq).map(_t=>_t.tileID)}resize(R,ae){this.width=R,this.height=ae,this.pixelsToGLUnits=[2/R,-2/ae],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(R){return Math.pow(2,R)}scaleZoom(R){return Math.log(R)/Math.LN2}project(R){let ae=t.ac(R.lat,-85.051129,vu);return new t.P(t.O(R.lng)*this.worldSize,t.Q(ae)*this.worldSize)}unproject(R){return new t.Z(R.x/this.worldSize,R.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(R){let ae=this.elevation,we=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,Se=this.pointLocation(this.centerPoint,R),De=R.getElevationForLngLatZoom(Se,this.tileZoom);if(!(this.elevation-De))return;let ft=we+ae-De,bt=Math.cos(this._pitch)*this.cameraToCenterDistance/ft/t.b5(1,Se.lat),Dt=this.scaleZoom(bt/this.tileSize);this._elevation=De,this._center=Se,this.zoom=Dt}setLocationAtPoint(R,ae){let we=this.pointCoordinate(ae),Se=this.pointCoordinate(this.centerPoint),De=this.locationCoordinate(R),ft=new t.Z(De.x-(we.x-Se.x),De.y-(we.y-Se.y));this.center=this.coordinateLocation(ft),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(R,ae){return ae?this.coordinatePoint(this.locationCoordinate(R),ae.getElevationForLngLatZoom(R,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(R))}pointLocation(R,ae){return this.coordinateLocation(this.pointCoordinate(R,ae))}locationCoordinate(R){return t.Z.fromLngLat(R)}coordinateLocation(R){return R&&R.toLngLat()}pointCoordinate(R,ae){if(ae){let jr=ae.pointCoordinate(R);if(jr!=null)return jr}let we=[R.x,R.y,0,1],Se=[R.x,R.y,1,1];t.af(we,we,this.pixelMatrixInverse),t.af(Se,Se,this.pixelMatrixInverse);let De=we[3],ft=Se[3],bt=we[1]/De,Dt=Se[1]/ft,Yt=we[2]/De,cr=Se[2]/ft,hr=Yt===cr?0:(0-Yt)/(cr-Yt);return new t.Z(t.y.number(we[0]/De,Se[0]/ft,hr)/this.worldSize,t.y.number(bt,Dt,hr)/this.worldSize)}coordinatePoint(R,ae=0,we=this.pixelMatrix){let Se=[R.x*this.worldSize,R.y*this.worldSize,ae,1];return t.af(Se,Se,we),new t.P(Se[0]/Se[3],Se[1]/Se[3])}getBounds(){let R=Math.max(0,this.height/2-this.getHorizon());return new ie().extend(this.pointLocation(new t.P(0,R))).extend(this.pointLocation(new t.P(this.width,R))).extend(this.pointLocation(new t.P(this.width,this.height))).extend(this.pointLocation(new t.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ie([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,vu])}calculateTileMatrix(R){let ae=R.canonical,we=this.worldSize/this.zoomScale(ae.z),Se=ae.x+Math.pow(2,ae.z)*R.wrap,De=t.an(new Float64Array(16));return t.J(De,De,[Se*we,ae.y*we,0]),t.K(De,De,[we/t.X,we/t.X,1]),De}calculatePosMatrix(R,ae=!1){let we=R.key,Se=ae?this._alignedPosMatrixCache:this._posMatrixCache;if(Se[we])return Se[we];let De=this.calculateTileMatrix(R);return t.L(De,ae?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,De),Se[we]=new Float32Array(De),Se[we]}calculateFogMatrix(R){let ae=R.key,we=this._fogMatrixCache;if(we[ae])return we[ae];let Se=this.calculateTileMatrix(R);return t.L(Se,this.fogMatrix,Se),we[ae]=new Float32Array(Se),we[ae]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(R,ae){ae=t.ac(+ae,this.minZoom,this.maxZoom);let we={center:new t.N(R.lng,R.lat),zoom:ae},Se=this.lngRange;if(!this._renderWorldCopies&&Se===null){let _t=179.9999999999;Se=[-_t,_t]}let De=this.tileSize*this.zoomScale(we.zoom),ft=0,bt=De,Dt=0,Yt=De,cr=0,hr=0,{x:jr,y:ea}=this.size;if(this.latRange){let _t=this.latRange;ft=t.Q(_t[1])*De,bt=t.Q(_t[0])*De,bt-ft<ea&&(cr=ea/(bt-ft))}Se&&(Dt=t.b3(t.O(Se[0])*De,0,De),Yt=t.b3(t.O(Se[1])*De,0,De),Yt<Dt&&(Yt+=De),Yt-Dt<jr&&(hr=jr/(Yt-Dt)));let{x:qe,y:Je}=this.project.call({worldSize:De},R),ot,ht,At=Math.max(hr||0,cr||0);if(At){let _t=new t.P(hr?(Yt+Dt)/2:qe,cr?(bt+ft)/2:Je);return we.center=this.unproject.call({worldSize:De},_t).wrap(),we.zoom+=this.scaleZoom(At),we}if(this.latRange){let _t=ea/2;Je-_t<ft&&(ht=ft+_t),Je+_t>bt&&(ht=bt-_t)}if(Se){let _t=(Dt+Yt)/2,Pt=qe;this._renderWorldCopies&&(Pt=t.b3(qe,_t-De/2,_t+De/2));let er=jr/2;Pt-er<Dt&&(ot=Dt+er),Pt+er>Yt&&(ot=Yt-er)}if(ot!==void 0||ht!==void 0){let _t=new t.P(ot??qe,ht??Je);we.center=this.unproject.call({worldSize:De},_t).wrap()}return we}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let R=this._unmodified,{center:ae,zoom:we}=this.getConstrained(this.center,this.zoom);this.center=ae,this.zoom=we,this._unmodified=R,this._constraining=!1}_calcMatrices(){if(!this.height)return;let R=this.centerOffset,ae=this.point.x,we=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=t.b5(1,this.center.lat)*this.worldSize;let Se=t.an(new Float64Array(16));t.K(Se,Se,[this.width/2,-this.height/2,1]),t.J(Se,Se,[1,-1,0]),this.labelPlaneMatrix=Se,Se=t.an(new Float64Array(16)),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[-1,-1,0]),t.K(Se,Se,[2/this.width,2/this.height,1]),this.glCoordMatrix=Se;let De=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),ft=Math.min(this.elevation,this.minElevationForCurrentTile),bt=De-ft*this._pixelPerMeter/Math.cos(this._pitch),Dt=ft<0?bt:De,Yt=Math.PI/2+this._pitch,cr=this._fov*(.5+R.y/this.height),hr=Math.sin(cr)*Dt/Math.sin(t.ac(Math.PI-Yt-cr,.01,Math.PI-.01)),jr=this.getHorizon(),ea=2*Math.atan(jr/this.cameraToCenterDistance)*(.5+R.y/(2*jr)),qe=Math.sin(ea)*Dt/Math.sin(t.ac(Math.PI-Yt-ea,.01,Math.PI-.01)),Je=Math.min(hr,qe);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Je+Dt),this.nearZ=this.height/50,Se=new Float64Array(16),t.b6(Se,this._fov,this.width/this.height,this.nearZ,this.farZ),Se[8]=2*-R.x/this.width,Se[9]=2*R.y/this.height,this.projectionMatrix=t.ae(Se),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[0,0,-this.cameraToCenterDistance]),t.b7(Se,Se,this._pitch),t.ad(Se,Se,this.angle),t.J(Se,Se,[-ae,-we,0]),this.mercatorMatrix=t.K([],Se,[this.worldSize,this.worldSize,this.worldSize]),t.K(Se,Se,[1,1,this._pixelPerMeter]),this.pixelMatrix=t.L(new Float64Array(16),this.labelPlaneMatrix,Se),t.J(Se,Se,[0,0,-this.elevation]),this.modelViewProjectionMatrix=Se,this.invModelViewProjectionMatrix=t.as([],Se),this.fogMatrix=new Float64Array(16),t.b6(this.fogMatrix,this._fov,this.width/this.height,De,this.farZ),this.fogMatrix[8]=2*-R.x/this.width,this.fogMatrix[9]=2*R.y/this.height,t.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),t.b7(this.fogMatrix,this.fogMatrix,this._pitch),t.ad(this.fogMatrix,this.fogMatrix,this.angle),t.J(this.fogMatrix,this.fogMatrix,[-ae,-we,0]),t.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=t.L(new Float64Array(16),this.labelPlaneMatrix,Se);let ot=this.width%2/2,ht=this.height%2/2,At=Math.cos(this.angle),_t=Math.sin(this.angle),Pt=ae-Math.round(ae)+At*ot+_t*ht,er=we-Math.round(we)+At*ht+_t*ot,nr=new Float64Array(Se);if(t.J(nr,nr,[Pt>.5?Pt-1:Pt,er>.5?er-1:er,0]),this.alignedModelViewProjectionMatrix=nr,Se=t.as(new Float64Array(16),this.pixelMatrix),!Se)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Se,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let R=this.pointCoordinate(new t.P(0,0)),ae=[R.x*this.worldSize,R.y*this.worldSize,0,1];return t.af(ae,ae,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let R=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.P(0,R))}getCameraQueryGeometry(R){let ae=this.getCameraPoint();if(R.length===1)return[R[0],ae];{let we=ae.x,Se=ae.y,De=ae.x,ft=ae.y;for(let bt of R)we=Math.min(we,bt.x),Se=Math.min(Se,bt.y),De=Math.max(De,bt.x),ft=Math.max(ft,bt.y);return[new t.P(we,Se),new t.P(De,Se),new t.P(De,ft),new t.P(we,ft),new t.P(we,Se)]}}lngLatToCameraDepth(R,ae){let we=this.locationCoordinate(R),Se=[we.x*this.worldSize,we.y*this.worldSize,ae,1];return t.af(Se,Se,this.modelViewProjectionMatrix),Se[2]/Se[3]}}function hh(Oe,R){let ae,we=!1,Se=null,De=null,ft=()=>{Se=null,we&&(Oe.apply(De,ae),Se=setTimeout(ft,R),we=!1)};return(...bt)=>(we=!0,De=this,ae=bt,Se||ft(),Se)}class Sh{constructor(R){this._getCurrentHash=()=>{let ae=window.location.hash.replace("#","");if(this._hashName){let we;return ae.split("&").map(Se=>Se.split("=")).forEach(Se=>{Se[0]===this._hashName&&(we=Se)}),(we&&we[1]||"").split("/")}return ae.split("/")},this._onHashChange=()=>{let ae=this._getCurrentHash();if(ae.length>=3&&!ae.some(we=>isNaN(we))){let we=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(ae[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+ae[2],+ae[1]],zoom:+ae[0],bearing:we,pitch:+(ae[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let ae=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,ae)},this._removeHash=()=>{let ae=this._getCurrentHash();if(ae.length===0)return;let we=ae.join("/"),Se=we;Se.split("&").length>0&&(Se=Se.split("&")[0]),this._hashName&&(Se=`${this._hashName}=${we}`);let De=window.location.hash.replace(Se,"");De.startsWith("#&")?De=De.slice(0,1)+De.slice(2):De==="#"&&(De="");let ft=window.location.href.replace(/(#.+)?$/,De);ft=ft.replace("&&","&"),window.history.replaceState(window.history.state,null,ft)},this._updateHash=hh(this._updateHashUnthrottled,300),this._hashName=R&&encodeURIComponent(R)}addTo(R){return this._map=R,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(R){let ae=this._map.getCenter(),we=Math.round(100*this._map.getZoom())/100,Se=Math.ceil((we*Math.LN2+Math.log(512/360/.5))/Math.LN10),De=Math.pow(10,Se),ft=Math.round(ae.lng*De)/De,bt=Math.round(ae.lat*De)/De,Dt=this._map.getBearing(),Yt=this._map.getPitch(),cr="";if(cr+=R?`/${ft}/${bt}/${we}`:`${we}/${bt}/${ft}`,(Dt||Yt)&&(cr+="/"+Math.round(10*Dt)/10),Yt&&(cr+=`/${Math.round(Yt)}`),this._hashName){let hr=this._hashName,jr=!1,ea=window.location.hash.slice(1).split("&").map(qe=>{let Je=qe.split("=")[0];return Je===hr?(jr=!0,`${Je}=${cr}`):qe}).filter(qe=>qe);return jr||ea.push(`${hr}=${cr}`),`#${ea.join("&")}`}return`#${cr}`}}let Uu={linearity:.3,easing:t.b8(0,0,.3,1)},bc=t.e({deceleration:2500,maxSpeed:1400},Uu),lc=t.e({deceleration:20,maxSpeed:1400},Uu),hp=t.e({deceleration:1e3,maxSpeed:360},Uu),vf=t.e({deceleration:1e3,maxSpeed:90},Uu);class Tf{constructor(R){this._map=R,this.clear()}clear(){this._inertiaBuffer=[]}record(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.now(),settings:R})}_drainInertiaBuffer(){let R=this._inertiaBuffer,ae=i.now();for(;R.length>0&&ae-R[0].time>160;)R.shift()}_onMoveEnd(R){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let ae={zoom:0,bearing:0,pitch:0,pan:new t.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:De}of this._inertiaBuffer)ae.zoom+=De.zoomDelta||0,ae.bearing+=De.bearingDelta||0,ae.pitch+=De.pitchDelta||0,De.panDelta&&ae.pan._add(De.panDelta),De.around&&(ae.around=De.around),De.pinchAround&&(ae.pinchAround=De.pinchAround);let we=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,Se={};if(ae.pan.mag()){let De=zf(ae.pan.mag(),we,t.e({},bc,R||{}));Se.offset=ae.pan.mult(De.amount/ae.pan.mag()),Se.center=this._map.transform.center,Lu(Se,De)}if(ae.zoom){let De=zf(ae.zoom,we,lc);Se.zoom=this._map.transform.zoom+De.amount,Lu(Se,De)}if(ae.bearing){let De=zf(ae.bearing,we,hp);Se.bearing=this._map.transform.bearing+t.ac(De.amount,-179,179),Lu(Se,De)}if(ae.pitch){let De=zf(ae.pitch,we,vf);Se.pitch=this._map.transform.pitch+De.amount,Lu(Se,De)}if(Se.zoom||Se.bearing){let De=ae.pinchAround===void 0?ae.around:ae.pinchAround;Se.around=De?this._map.unproject(De):this._map.getCenter()}return this.clear(),t.e(Se,{noMoveStart:!0})}}function Lu(Oe,R){(!Oe.duration||Oe.duration<R.duration)&&(Oe.duration=R.duration,Oe.easing=R.easing)}function zf(Oe,R,ae){let{maxSpeed:we,linearity:Se,deceleration:De}=ae,ft=t.ac(Oe*Se/(R/1e3),-we,we),bt=Math.abs(ft)/(De*Se);return{easing:ae.easing,duration:1e3*bt,amount:ft*(bt/2)}}class au extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we,Se={}){let De=n.mousePos(ae.getCanvas(),we),ft=ae.unproject(De);super(R,t.e({point:De,lngLat:ft,originalEvent:we},Se)),this._defaultPrevented=!1,this.target=ae}}class $c extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){let Se=R==="touchend"?we.changedTouches:we.touches,De=n.touchPos(ae.getCanvasContainer(),Se),ft=De.map(Dt=>ae.unproject(Dt)),bt=De.reduce((Dt,Yt,cr,hr)=>Dt.add(Yt.div(hr.length)),new t.P(0,0));super(R,{points:De,point:bt,lngLats:ft,lngLat:ae.unproject(bt),originalEvent:we}),this._defaultPrevented=!1}}class Mh extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){super(R,{originalEvent:we}),this._defaultPrevented=!1}}class Ff{constructor(R,ae){this._map=R,this._clickTolerance=ae.clickTolerance}reset(){delete this._mousedownPos}wheel(R){return this._firePreventable(new Mh(R.type,this._map,R))}mousedown(R,ae){return this._mousedownPos=ae,this._firePreventable(new au(R.type,this._map,R))}mouseup(R){this._map.fire(new au(R.type,this._map,R))}click(R,ae){this._mousedownPos&&this._mousedownPos.dist(ae)>=this._clickTolerance||this._map.fire(new au(R.type,this._map,R))}dblclick(R){return this._firePreventable(new au(R.type,this._map,R))}mouseover(R){this._map.fire(new au(R.type,this._map,R))}mouseout(R){this._map.fire(new au(R.type,this._map,R))}touchstart(R){return this._firePreventable(new $c(R.type,this._map,R))}touchmove(R){this._map.fire(new $c(R.type,this._map,R))}touchend(R){this._map.fire(new $c(R.type,this._map,R))}touchcancel(R){this._map.fire(new $c(R.type,this._map,R))}_firePreventable(R){if(this._map.fire(R),R.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class il{constructor(R){this._map=R}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(R){this._map.fire(new au(R.type,this._map,R))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new au("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(R){this._delayContextMenu?this._contextMenuEvent=R:this._ignoreContextMenu||this._map.fire(new au(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class mu{constructor(R){this._map=R}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(R){return this.transform.pointLocation(t.P.convert(R),this._map.terrain)}}class gu{constructor(R,ae){this._map=R,this._tr=new mu(R),this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=ae.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(R,ae){this.isEnabled()&&R.shiftKey&&R.button===0&&(n.disableDrag(),this._startPos=this._lastPos=ae,this._active=!0)}mousemoveWindow(R,ae){if(!this._active)return;let we=ae;if(this._lastPos.equals(we)||!this._box&&we.dist(this._startPos)<this._clickTolerance)return;let Se=this._startPos;this._lastPos=we,this._box||(this._box=n.create("div","maplibregl-boxzoom",this._container),this._container.classList.add("maplibregl-crosshair"),this._fireEvent("boxzoomstart",R));let De=Math.min(Se.x,we.x),ft=Math.max(Se.x,we.x),bt=Math.min(Se.y,we.y),Dt=Math.max(Se.y,we.y);n.setTransform(this._box,`translate(${De}px,${bt}px)`),this._box.style.width=ft-De+"px",this._box.style.height=Dt-bt+"px"}mouseupWindow(R,ae){if(!this._active||R.button!==0)return;let we=this._startPos,Se=ae;if(this.reset(),n.suppressClick(),we.x!==Se.x||we.y!==Se.y)return this._map.fire(new t.k("boxzoomend",{originalEvent:R})),{cameraAnimation:De=>De.fitScreenCoordinates(we,Se,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",R)}keydown(R){this._active&&R.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",R))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(n.remove(this._box),this._box=null),n.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(R,ae){return this._map.fire(new t.k(R,{originalEvent:ae}))}}function Jf(Oe,R){if(Oe.length!==R.length)throw new Error(`The number of touches and points are not equal - touches ${Oe.length}, points ${R.length}`);let ae={};for(let we=0;we<Oe.length;we++)ae[Oe[we].identifier]=R[we];return ae}class el{constructor(R){this.reset(),this.numTouches=R.numTouches}reset(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1}touchstart(R,ae,we){(this.centroid||we.length>this.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=R.timeStamp),we.length===this.numTouches&&(this.centroid=function(Se){let De=new t.P(0,0);for(let ft of Se)De._add(ft);return De.div(Se.length)}(ae),this.touches=Jf(we,ae)))}touchmove(R,ae,we){if(this.aborted||!this.centroid)return;let Se=Jf(we,ae);for(let De in this.touches){let ft=Se[De];(!ft||ft.dist(this.touches[De])>30)&&(this.aborted=!0)}}touchend(R,ae,we){if((!this.centroid||R.timeStamp-this.startTime>500)&&(this.aborted=!0),we.length===0){let Se=!this.aborted&&this.centroid;if(this.reset(),Se)return Se}}}class mf{constructor(R){this.singleTap=new el(R),this.numTaps=R.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(R,ae,we){this.singleTap.touchstart(R,ae,we)}touchmove(R,ae,we){this.singleTap.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this.singleTap.touchend(R,ae,we);if(Se){let De=R.timeStamp-this.lastTime<500,ft=!this.lastTap||this.lastTap.dist(Se)<30;if(De&&ft||this.reset(),this.count++,this.lastTime=R.timeStamp,this.lastTap=Se,this.count===this.numTaps)return this.reset(),Se}}}class wc{constructor(R){this._tr=new mu(R),this._zoomIn=new mf({numTouches:1,numTaps:2}),this._zoomOut=new mf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(R,ae,we){this._zoomIn.touchstart(R,ae,we),this._zoomOut.touchstart(R,ae,we)}touchmove(R,ae,we){this._zoomIn.touchmove(R,ae,we),this._zoomOut.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this._zoomIn.touchend(R,ae,we),De=this._zoomOut.touchend(R,ae,we),ft=this._tr;return Se?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom+1,around:ft.unproject(Se)},{originalEvent:R})}):De?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom-1,around:ft.unproject(De)},{originalEvent:R})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ju{constructor(R){this._enabled=!!R.enable,this._moveStateManager=R.moveStateManager,this._clickTolerance=R.clickTolerance||1,this._moveFunction=R.move,this._activateOnStart=!!R.activateOnStart,R.assignEvents(this),this.reset()}reset(R){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(R)}_move(...R){let ae=this._moveFunction(...R);if(ae.bearingDelta||ae.pitchDelta||ae.around||ae.panDelta)return this._active=!0,ae}dragStart(R,ae){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(R)&&(this._moveStateManager.startMove(R),this._lastPoint=ae.length?ae[0]:ae,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(R,ae){if(!this.isEnabled())return;let we=this._lastPoint;if(!we)return;if(R.preventDefault(),!this._moveStateManager.isValidMoveEvent(R))return void this.reset(R);let Se=ae.length?ae[0]:ae;return!this._moved&&Se.dist(we)<this._clickTolerance?void 0:(this._moved=!0,this._lastPoint=Se,this._move(we,Se))}dragEnd(R){this.isEnabled()&&this._lastPoint&&this._moveStateManager.isValidEndEvent(R)&&(this._moved&&n.suppressClick(),this.reset(R))}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}getClickTolerance(){return this._clickTolerance}}let Af={0:1,2:2};class uc{constructor(R){this._correctEvent=R.checkCorrectEvent}startMove(R){let ae=n.mouseButton(R);this._eventButton=ae}endMove(R){delete this._eventButton}isValidStartEvent(R){return this._correctEvent(R)}isValidMoveEvent(R){return!function(ae,we){let Se=Af[we];return ae.buttons===void 0||(ae.buttons&Se)!==Se}(R,this._eventButton)}isValidEndEvent(R){return n.mouseButton(R)===this._eventButton}}class Qc{constructor(){this._firstTouch=void 0}_isOneFingerTouch(R){return R.targetTouches.length===1}_isSameTouchEvent(R){return R.targetTouches[0].identifier===this._firstTouch}startMove(R){this._firstTouch=R.targetTouches[0].identifier}endMove(R){delete this._firstTouch}isValidStartEvent(R){return this._isOneFingerTouch(R)}isValidMoveEvent(R){return this._isOneFingerTouch(R)&&this._isSameTouchEvent(R)}isValidEndEvent(R){return this._isOneFingerTouch(R)&&this._isSameTouchEvent(R)}}let $f=Oe=>{Oe.mousedown=Oe.dragStart,Oe.mousemoveWindow=Oe.dragMove,Oe.mouseup=Oe.dragEnd,Oe.contextmenu=R=>{R.preventDefault()}},Vl=({enable:Oe,clickTolerance:R,bearingDegreesPerPixelMoved:ae=.8})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({bearingDelta:(De.x-Se.x)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})},Qf=({enable:Oe,clickTolerance:R,pitchDegreesPerPixelMoved:ae=-.5})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({pitchDelta:(De.y-Se.y)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})};class Vu{constructor(R,ae){this._clickTolerance=R.clickTolerance||1,this._map=ae,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new t.P(0,0)}_shouldBePrevented(R){return R<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(R,ae,we){return this._calculateTransform(R,ae,we)}touchmove(R,ae,we){if(this._active){if(!this._shouldBePrevented(we.length))return R.preventDefault(),this._calculateTransform(R,ae,we);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",R)}}touchend(R,ae,we){this._calculateTransform(R,ae,we),this._active&&this._shouldBePrevented(we.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(R,ae,we){we.length>0&&(this._active=!0);let Se=Jf(we,ae),De=new t.P(0,0),ft=new t.P(0,0),bt=0;for(let Yt in Se){let cr=Se[Yt],hr=this._touches[Yt];hr&&(De._add(cr),ft._add(cr.sub(hr)),bt++,Se[Yt]=cr)}if(this._touches=Se,this._shouldBePrevented(bt)||!ft.mag())return;let Dt=ft.div(bt);return this._sum._add(Dt),this._sum.mag()<this._clickTolerance?void 0:{around:De.div(bt),panDelta:Dt}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Tc{constructor(){this.reset()}reset(){this._active=!1,delete this._firstTwoTouches}touchstart(R,ae,we){this._firstTwoTouches||we.length<2||(this._firstTwoTouches=[we[0].identifier,we[1].identifier],this._start([ae[0],ae[1]]))}touchmove(R,ae,we){if(!this._firstTwoTouches)return;R.preventDefault();let[Se,De]=this._firstTwoTouches,ft=cc(we,ae,Se),bt=cc(we,ae,De);if(!ft||!bt)return;let Dt=this._aroundCenter?null:ft.add(bt).div(2);return this._move([ft,bt],Dt,R)}touchend(R,ae,we){if(!this._firstTwoTouches)return;let[Se,De]=this._firstTwoTouches,ft=cc(we,ae,Se),bt=cc(we,ae,De);ft&&bt||(this._active&&n.suppressClick(),this.reset())}touchcancel(){this.reset()}enable(R){this._enabled=!0,this._aroundCenter=!!R&&R.around==="center"}disable(){this._enabled=!1,this.reset()}isEnabled(){return!!this._enabled}isActive(){return!!this._active}}function cc(Oe,R,ae){for(let we=0;we<Oe.length;we++)if(Oe[we].identifier===ae)return R[we]}function Cl(Oe,R){return Math.log(Oe/R)/Math.LN2}class iu extends Tc{reset(){super.reset(),delete this._distance,delete this._startDistance}_start(R){this._startDistance=this._distance=R[0].dist(R[1])}_move(R,ae){let we=this._distance;if(this._distance=R[0].dist(R[1]),this._active||!(Math.abs(Cl(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:Cl(this._distance,we),pinchAround:ae}}}function fc(Oe,R){return 180*Oe.angleWith(R)/Math.PI}class Oc extends Tc{reset(){super.reset(),delete this._minDiameter,delete this._startVector,delete this._vector}_start(R){this._startVector=this._vector=R[0].sub(R[1]),this._minDiameter=R[0].dist(R[1])}_move(R,ae,we){let Se=this._vector;if(this._vector=R[0].sub(R[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:fc(this._vector,Se),pinchAround:ae}}_isBelowThreshold(R){this._minDiameter=Math.min(this._minDiameter,R.mag());let ae=25/(Math.PI*this._minDiameter)*360,we=fc(R,this._startVector);return Math.abs(we)<ae}}function Qu(Oe){return Math.abs(Oe.y)>Math.abs(Oe.x)}class ef extends Tc{constructor(R){super(),this._currentTouchCount=0,this._map=R}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(R,ae,we){super.touchstart(R,ae,we),this._currentTouchCount=we.length}_start(R){this._lastPoints=R,Qu(R[0].sub(R[1]))&&(this._valid=!1)}_move(R,ae,we){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let Se=R[0].sub(this._lastPoints[0]),De=R[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(Se,De,we.timeStamp),this._valid?(this._lastPoints=R,this._active=!0,{pitchDelta:(Se.y+De.y)/2*-.5}):void 0}gestureBeginsVertically(R,ae,we){if(this._valid!==void 0)return this._valid;let Se=R.mag()>=2,De=ae.mag()>=2;if(!Se&&!De)return;if(!Se||!De)return this._firstMove===void 0&&(this._firstMove=we),we-this._firstMove<100&&void 0;let ft=R.y>0==ae.y>0;return Qu(R)&&Qu(ae)&&ft}}let Zt={panStep:100,bearingStep:15,pitchStep:10};class fr{constructor(R){this._tr=new mu(R);let ae=Zt;this._panStep=ae.panStep,this._bearingStep=ae.bearingStep,this._pitchStep=ae.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(R){if(R.altKey||R.ctrlKey||R.metaKey)return;let ae=0,we=0,Se=0,De=0,ft=0;switch(R.keyCode){case 61:case 107:case 171:case 187:ae=1;break;case 189:case 109:case 173:ae=-1;break;case 37:R.shiftKey?we=-1:(R.preventDefault(),De=-1);break;case 39:R.shiftKey?we=1:(R.preventDefault(),De=1);break;case 38:R.shiftKey?Se=1:(R.preventDefault(),ft=-1);break;case 40:R.shiftKey?Se=-1:(R.preventDefault(),ft=1);break;default:return}return this._rotationDisabled&&(we=0,Se=0),{cameraAnimation:bt=>{let Dt=this._tr;bt.easeTo({duration:300,easeId:"keyboardHandler",easing:Yr,zoom:ae?Math.round(Dt.zoom)+ae*(R.shiftKey?2:1):Dt.zoom,bearing:Dt.bearing+we*this._bearingStep,pitch:Dt.pitch+Se*this._pitchStep,offset:[-De*this._panStep,-ft*this._panStep],center:Dt.center},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Yr(Oe){return Oe*(2-Oe)}let qr=4.000244140625;class ba{constructor(R,ae){this._onTimeout=we=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(we)},this._map=R,this._tr=new mu(R),this._triggerRenderFrame=ae,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(R){this._defaultZoomRate=R}setWheelZoomRate(R){this._wheelZoomRate=R}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!R&&R.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(R){return!!this._map.cooperativeGestures.isEnabled()&&!(R.ctrlKey||this._map.cooperativeGestures.isBypassed(R))}wheel(R){if(!this.isEnabled())return;if(this._shouldBePrevented(R))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",R);let ae=R.deltaMode===WheelEvent.DOM_DELTA_LINE?40*R.deltaY:R.deltaY,we=i.now(),Se=we-(this._lastWheelEventTime||0);this._lastWheelEventTime=we,ae!==0&&ae%qr==0?this._type="wheel":ae!==0&&Math.abs(ae)<4?this._type="trackpad":Se>400?(this._type=null,this._lastValue=ae,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(Se*ae)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ae+=this._lastValue)),R.shiftKey&&ae&&(ae/=4),this._type&&(this._lastWheelEvent=R,this._delta-=ae,this._active||this._start(R)),R.preventDefault()}_start(R){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let ae=n.mousePos(this._map.getCanvas(),R),we=this._tr;this._around=ae.y>we.transform.height/2-we.transform.getHorizon()?t.N.convert(this._aroundCenter?we.center:we.unproject(ae)):t.N.convert(we.center),this._aroundPoint=we.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let R=this._tr.transform;if(this._delta!==0){let Dt=this._type==="wheel"&&Math.abs(this._delta)>qr?this._wheelZoomRate:this._defaultZoomRate,Yt=2/(1+Math.exp(-Math.abs(this._delta*Dt)));this._delta<0&&Yt!==0&&(Yt=1/Yt);let cr=typeof this._targetZoom=="number"?R.zoomScale(this._targetZoom):R.scale;this._targetZoom=Math.min(R.maxZoom,Math.max(R.minZoom,R.scaleZoom(cr*Yt))),this._type==="wheel"&&(this._startZoom=R.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let ae=typeof this._targetZoom=="number"?this._targetZoom:R.zoom,we=this._startZoom,Se=this._easing,De,ft=!1,bt=i.now()-this._lastWheelEventTime;if(this._type==="wheel"&&we&&Se&&bt){let Dt=Math.min(bt/200,1),Yt=Se(Dt);De=t.y.number(we,ae,Yt),Dt<1?this._frameId||(this._frameId=!0):ft=!0}else De=ae,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:De-R.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(R){let ae=t.b9;if(this._prevEase){let we=this._prevEase,Se=(i.now()-we.start)/we.duration,De=we.easing(Se+.01)-we.easing(Se),ft=.27/Math.sqrt(De*De+1e-4)*.01,bt=Math.sqrt(.0729-ft*ft);ae=t.b8(ft,bt,.25,1)}return this._prevEase={start:i.now(),duration:R,easing:ae},ae}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class Ka{constructor(R,ae){this._clickZoom=R,this._tapZoom=ae}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class oi{constructor(R){this._tr=new mu(R),this.reset()}reset(){this._active=!1}dblclick(R,ae){return R.preventDefault(),{cameraAnimation:we=>{we.easeTo({duration:300,zoom:this._tr.zoom+(R.shiftKey?-1:1),around:this._tr.unproject(ae)},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class yi{constructor(){this._tap=new mf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(R,ae,we){if(!this._swipePoint)if(this._tapTime){let Se=ae[0],De=R.timeStamp-this._tapTime<500,ft=this._tapPoint.dist(Se)<30;De&&ft?we.length>0&&(this._swipePoint=Se,this._swipeTouch=we[0].identifier):this.reset()}else this._tap.touchstart(R,ae,we)}touchmove(R,ae,we){if(this._tapTime){if(this._swipePoint){if(we[0].identifier!==this._swipeTouch)return;let Se=ae[0],De=Se.y-this._swipePoint.y;return this._swipePoint=Se,R.preventDefault(),this._active=!0,{zoomDelta:De/128}}}else this._tap.touchmove(R,ae,we)}touchend(R,ae,we){if(this._tapTime)this._swipePoint&&we.length===0&&this.reset();else{let Se=this._tap.touchend(R,ae,we);Se&&(this._tapTime=R.timeStamp,this._tapPoint=Se)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ki{constructor(R,ae,we){this._el=R,this._mousePan=ae,this._touchPan=we}enable(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Bi{constructor(R,ae,we){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=ae,this._mousePitch=we}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class li{constructor(R,ae,we,Se){this._el=R,this._touchZoom=ae,this._touchRotate=we,this._tapDragZoom=Se,this._rotationDisabled=!1,this._enabled=!0}enable(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class _i{constructor(R,ae){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=R,this._options=ae,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let R=this._map.getCanvasContainer();R.classList.add("maplibregl-cooperative-gestures"),this._container=n.create("div","maplibregl-cooperative-gesture-screen",R);let ae=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(ae=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let we=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),Se=document.createElement("div");Se.className="maplibregl-desktop-message",Se.textContent=ae,this._container.appendChild(Se);let De=document.createElement("div");De.className="maplibregl-mobile-message",De.textContent=we,this._container.appendChild(De),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(n.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(R){return R[this._bypassKey]}notifyGestureBlocked(R,ae){this._enabled&&(this._map.fire(new t.k("cooperativegestureprevented",{gestureType:R,originalEvent:ae})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let vi=Oe=>Oe.zoom||Oe.drag||Oe.pitch||Oe.rotate;class ti extends t.k{}function rn(Oe){return Oe.panDelta&&Oe.panDelta.mag()||Oe.zoomDelta||Oe.bearingDelta||Oe.pitchDelta}class Kn{constructor(R,ae){this.handleWindowEvent=Se=>{this.handleEvent(Se,`${Se.type}Window`)},this.handleEvent=(Se,De)=>{if(Se.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let ft=Se.type==="renderFrame"?void 0:Se,bt={needsRenderFrame:!1},Dt={},Yt={},cr=Se.touches,hr=cr?this._getMapTouches(cr):void 0,jr=hr?n.touchPos(this._map.getCanvas(),hr):n.mousePos(this._map.getCanvas(),Se);for(let{handlerName:Je,handler:ot,allowed:ht}of this._handlers){if(!ot.isEnabled())continue;let At;this._blockedByActive(Yt,ht,Je)?ot.reset():ot[De||Se.type]&&(At=ot[De||Se.type](Se,jr,hr),this.mergeHandlerResult(bt,Dt,At,Je,ft),At&&At.needsRenderFrame&&this._triggerRenderFrame()),(At||ot.isActive())&&(Yt[Je]=ot)}let ea={};for(let Je in this._previousActiveHandlers)Yt[Je]||(ea[Je]=ft);this._previousActiveHandlers=Yt,(Object.keys(ea).length||rn(bt))&&(this._changes.push([bt,Dt,ea]),this._triggerRenderFrame()),(Object.keys(Yt).length||rn(bt))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:qe}=bt;qe&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],qe(this._map))},this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tf(R),this._bearingSnap=ae.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ae);let we=this._el;this._listeners=[[we,"touchstart",{passive:!0}],[we,"touchmove",{passive:!1}],[we,"touchend",void 0],[we,"touchcancel",void 0],[we,"mousedown",void 0],[we,"mousemove",void 0],[we,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[we,"mouseover",void 0],[we,"mouseout",void 0],[we,"dblclick",void 0],[we,"click",void 0],[we,"keydown",{capture:!1}],[we,"keyup",void 0],[we,"wheel",{passive:!1}],[we,"contextmenu",void 0],[window,"blur",void 0]];for(let[Se,De,ft]of this._listeners)n.addEventListener(Se,De,Se===document?this.handleWindowEvent:this.handleEvent,ft)}destroy(){for(let[R,ae,we]of this._listeners)n.removeEventListener(R,ae,R===document?this.handleWindowEvent:this.handleEvent,we)}_addDefaultHandlers(R){let ae=this._map,we=ae.getCanvasContainer();this._add("mapEvent",new Ff(ae,R));let Se=ae.boxZoom=new gu(ae,R);this._add("boxZoom",Se),R.interactive&&R.boxZoom&&Se.enable();let De=ae.cooperativeGestures=new _i(ae,R.cooperativeGestures);this._add("cooperativeGestures",De),R.cooperativeGestures&&De.enable();let ft=new wc(ae),bt=new oi(ae);ae.doubleClickZoom=new Ka(bt,ft),this._add("tapZoom",ft),this._add("clickZoom",bt),R.interactive&&R.doubleClickZoom&&ae.doubleClickZoom.enable();let Dt=new yi;this._add("tapDragZoom",Dt);let Yt=ae.touchPitch=new ef(ae);this._add("touchPitch",Yt),R.interactive&&R.touchPitch&&ae.touchPitch.enable(R.touchPitch);let cr=Vl(R),hr=Qf(R);ae.dragRotate=new Bi(R,cr,hr),this._add("mouseRotate",cr,["mousePitch"]),this._add("mousePitch",hr,["mouseRotate"]),R.interactive&&R.dragRotate&&ae.dragRotate.enable();let jr=(({enable:At,clickTolerance:_t})=>{let Pt=new uc({checkCorrectEvent:er=>n.mouseButton(er)===0&&!er.ctrlKey});return new ju({clickTolerance:_t,move:(er,nr)=>({around:nr,panDelta:nr.sub(er)}),activateOnStart:!0,moveStateManager:Pt,enable:At,assignEvents:$f})})(R),ea=new Vu(R,ae);ae.dragPan=new ki(we,jr,ea),this._add("mousePan",jr),this._add("touchPan",ea,["touchZoom","touchRotate"]),R.interactive&&R.dragPan&&ae.dragPan.enable(R.dragPan);let qe=new Oc,Je=new iu;ae.touchZoomRotate=new li(we,Je,qe,Dt),this._add("touchRotate",qe,["touchPan","touchZoom"]),this._add("touchZoom",Je,["touchPan","touchRotate"]),R.interactive&&R.touchZoomRotate&&ae.touchZoomRotate.enable(R.touchZoomRotate);let ot=ae.scrollZoom=new ba(ae,()=>this._triggerRenderFrame());this._add("scrollZoom",ot,["mousePan"]),R.interactive&&R.scrollZoom&&ae.scrollZoom.enable(R.scrollZoom);let ht=ae.keyboard=new fr(ae);this._add("keyboard",ht),R.interactive&&R.keyboard&&ae.keyboard.enable(),this._add("blockableMapEvent",new il(ae))}_add(R,ae,we){this._handlers.push({handlerName:R,handler:ae,allowed:we}),this._handlersById[R]=ae}stop(R){if(!this._updatingCamera){for(let{handler:ae}of this._handlers)ae.reset();this._inertia.clear(),this._fireEvents({},{},R),this._changes=[]}}isActive(){for(let{handler:R}of this._handlers)if(R.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!vi(this._eventsInProgress)||this.isZooming()}_blockedByActive(R,ae,we){for(let Se in R)if(Se!==we&&(!ae||ae.indexOf(Se)<0))return!0;return!1}_getMapTouches(R){let ae=[];for(let we of R)this._el.contains(we.target)&&ae.push(we);return ae}mergeHandlerResult(R,ae,we,Se,De){if(!we)return;t.e(R,we);let ft={handlerName:Se,originalEvent:we.originalEvent||De};we.zoomDelta!==void 0&&(ae.zoom=ft),we.panDelta!==void 0&&(ae.drag=ft),we.pitchDelta!==void 0&&(ae.pitch=ft),we.bearingDelta!==void 0&&(ae.rotate=ft)}_applyChanges(){let R={},ae={},we={};for(let[Se,De,ft]of this._changes)Se.panDelta&&(R.panDelta=(R.panDelta||new t.P(0,0))._add(Se.panDelta)),Se.zoomDelta&&(R.zoomDelta=(R.zoomDelta||0)+Se.zoomDelta),Se.bearingDelta&&(R.bearingDelta=(R.bearingDelta||0)+Se.bearingDelta),Se.pitchDelta&&(R.pitchDelta=(R.pitchDelta||0)+Se.pitchDelta),Se.around!==void 0&&(R.around=Se.around),Se.pinchAround!==void 0&&(R.pinchAround=Se.pinchAround),Se.noInertia&&(R.noInertia=Se.noInertia),t.e(ae,De),t.e(we,ft);this._updateMapTransform(R,ae,we),this._changes=[]}_updateMapTransform(R,ae,we){let Se=this._map,De=Se._getTransformForUpdate(),ft=Se.terrain;if(!(rn(R)||ft&&this._terrainMovement))return this._fireEvents(ae,we,!0);let{panDelta:bt,zoomDelta:Dt,bearingDelta:Yt,pitchDelta:cr,around:hr,pinchAround:jr}=R;jr!==void 0&&(hr=jr),Se._stop(!0),hr=hr||Se.transform.centerPoint;let ea=De.pointLocation(bt?hr.sub(bt):hr);Yt&&(De.bearing+=Yt),cr&&(De.pitch+=cr),Dt&&(De.zoom+=Dt),ft?this._terrainMovement||!ae.drag&&!ae.zoom?ae.drag&&this._terrainMovement?De.center=De.pointLocation(De.centerPoint.sub(bt)):De.setLocationAtPoint(ea,hr):(this._terrainMovement=!0,this._map._elevationFreeze=!0,De.setLocationAtPoint(ea,hr)):De.setLocationAtPoint(ea,hr),Se._applyUpdatedTransform(De),this._map._update(),R.noInertia||this._inertia.record(R),this._fireEvents(ae,we,!0)}_fireEvents(R,ae,we){let Se=vi(this._eventsInProgress),De=vi(R),ft={};for(let hr in R){let{originalEvent:jr}=R[hr];this._eventsInProgress[hr]||(ft[`${hr}start`]=jr),this._eventsInProgress[hr]=R[hr]}!Se&&De&&this._fireEvent("movestart",De.originalEvent);for(let hr in ft)this._fireEvent(hr,ft[hr]);De&&this._fireEvent("move",De.originalEvent);for(let hr in R){let{originalEvent:jr}=R[hr];this._fireEvent(hr,jr)}let bt={},Dt;for(let hr in this._eventsInProgress){let{handlerName:jr,originalEvent:ea}=this._eventsInProgress[hr];this._handlersById[jr].isActive()||(delete this._eventsInProgress[hr],Dt=ae[jr]||ea,bt[`${hr}end`]=Dt)}for(let hr in bt)this._fireEvent(hr,bt[hr]);let Yt=vi(this._eventsInProgress),cr=(Se||De)&&!Yt;if(cr&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let hr=this._map._getTransformForUpdate();hr.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(hr)}if(we&&cr){this._updatingCamera=!0;let hr=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),jr=ea=>ea!==0&&-this._bearingSnap<ea&&ea<this._bearingSnap;!hr||!hr.essential&&i.prefersReducedMotion?(this._map.fire(new t.k("moveend",{originalEvent:Dt})),jr(this._map.getBearing())&&this._map.resetNorth()):(jr(hr.bearing||this._map.getBearing())&&(hr.bearing=0),hr.freezeElevation=!0,this._map.easeTo(hr,{originalEvent:Dt})),this._updatingCamera=!1}}_fireEvent(R,ae){this._map.fire(new t.k(R,ae?{originalEvent:ae}:{}))}_requestFrame(){return this._map.triggerRepaint(),this._map._renderTaskQueue.add(R=>{delete this._frameId,this.handleEvent(new ti("renderFrame",{timeStamp:R})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Wn extends t.E{constructor(R,ae){super(),this._renderFrameCallback=()=>{let we=Math.min((i.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(we)),we<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=R,this._bearingSnap=ae.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new t.N(this.transform.center.lng,this.transform.center.lat)}setCenter(R,ae){return this.jumpTo({center:R},ae)}panBy(R,ae,we){return R=t.P.convert(R).mult(-1),this.panTo(this.transform.center,t.e({offset:R},ae),we)}panTo(R,ae,we){return this.easeTo(t.e({center:R},ae),we)}getZoom(){return this.transform.zoom}setZoom(R,ae){return this.jumpTo({zoom:R},ae),this}zoomTo(R,ae,we){return this.easeTo(t.e({zoom:R},ae),we)}zoomIn(R,ae){return this.zoomTo(this.getZoom()+1,R,ae),this}zoomOut(R,ae){return this.zoomTo(this.getZoom()-1,R,ae),this}getBearing(){return this.transform.bearing}setBearing(R,ae){return this.jumpTo({bearing:R},ae),this}getPadding(){return this.transform.padding}setPadding(R,ae){return this.jumpTo({padding:R},ae),this}rotateTo(R,ae,we){return this.easeTo(t.e({bearing:R},ae),we)}resetNorth(R,ae){return this.rotateTo(0,t.e({duration:1e3},R),ae),this}resetNorthPitch(R,ae){return this.easeTo(t.e({bearing:0,pitch:0,duration:1e3},R),ae),this}snapToNorth(R,ae){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(R,ae):this}getPitch(){return this.transform.pitch}setPitch(R,ae){return this.jumpTo({pitch:R},ae),this}cameraForBounds(R,ae){R=ie.convert(R).adjustAntiMeridian();let we=ae&&ae.bearing||0;return this._cameraForBoxAndBearing(R.getNorthWest(),R.getSouthEast(),we,ae)}_cameraForBoxAndBearing(R,ae,we,Se){let De={top:0,bottom:0,right:0,left:0};if(typeof(Se=t.e({padding:De,offset:[0,0],maxZoom:this.transform.maxZoom},Se)).padding=="number"){let ga=Se.padding;Se.padding={top:ga,bottom:ga,right:ga,left:ga}}Se.padding=t.e(De,Se.padding);let ft=this.transform,bt=ft.padding,Dt=new ie(R,ae),Yt=ft.project(Dt.getNorthWest()),cr=ft.project(Dt.getNorthEast()),hr=ft.project(Dt.getSouthEast()),jr=ft.project(Dt.getSouthWest()),ea=t.ba(-we),qe=Yt.rotate(ea),Je=cr.rotate(ea),ot=hr.rotate(ea),ht=jr.rotate(ea),At=new t.P(Math.max(qe.x,Je.x,ht.x,ot.x),Math.max(qe.y,Je.y,ht.y,ot.y)),_t=new t.P(Math.min(qe.x,Je.x,ht.x,ot.x),Math.min(qe.y,Je.y,ht.y,ot.y)),Pt=At.sub(_t),er=(ft.width-(bt.left+bt.right+Se.padding.left+Se.padding.right))/Pt.x,nr=(ft.height-(bt.top+bt.bottom+Se.padding.top+Se.padding.bottom))/Pt.y;if(nr<0||er<0)return void t.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");let pr=Math.min(ft.scaleZoom(ft.scale*Math.min(er,nr)),Se.maxZoom),Sr=t.P.convert(Se.offset),Wr=new t.P((Se.padding.left-Se.padding.right)/2,(Se.padding.top-Se.padding.bottom)/2).rotate(t.ba(we)),ha=Sr.add(Wr).mult(ft.scale/ft.zoomScale(pr));return{center:ft.unproject(Yt.add(hr).div(2).sub(ha)),zoom:pr,bearing:we}}fitBounds(R,ae,we){return this._fitInternal(this.cameraForBounds(R,ae),ae,we)}fitScreenCoordinates(R,ae,we,Se,De){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(t.P.convert(R)),this.transform.pointLocation(t.P.convert(ae)),we,Se),Se,De)}_fitInternal(R,ae,we){return R?(delete(ae=t.e(R,ae)).padding,ae.linear?this.easeTo(ae,we):this.flyTo(ae,we)):this}jumpTo(R,ae){this.stop();let we=this._getTransformForUpdate(),Se=!1,De=!1,ft=!1;return"zoom"in R&&we.zoom!==+R.zoom&&(Se=!0,we.zoom=+R.zoom),R.center!==void 0&&(we.center=t.N.convert(R.center)),"bearing"in R&&we.bearing!==+R.bearing&&(De=!0,we.bearing=+R.bearing),"pitch"in R&&we.pitch!==+R.pitch&&(ft=!0,we.pitch=+R.pitch),R.padding==null||we.isPaddingEqual(R.padding)||(we.padding=R.padding),this._applyUpdatedTransform(we),this.fire(new t.k("movestart",ae)).fire(new t.k("move",ae)),Se&&this.fire(new t.k("zoomstart",ae)).fire(new t.k("zoom",ae)).fire(new t.k("zoomend",ae)),De&&this.fire(new t.k("rotatestart",ae)).fire(new t.k("rotate",ae)).fire(new t.k("rotateend",ae)),ft&&this.fire(new t.k("pitchstart",ae)).fire(new t.k("pitch",ae)).fire(new t.k("pitchend",ae)),this.fire(new t.k("moveend",ae))}calculateCameraOptionsFromTo(R,ae,we,Se=0){let De=t.Z.fromLngLat(R,ae),ft=t.Z.fromLngLat(we,Se),bt=ft.x-De.x,Dt=ft.y-De.y,Yt=ft.z-De.z,cr=Math.hypot(bt,Dt,Yt);if(cr===0)throw new Error("Can't calculate camera options with same From and To");let hr=Math.hypot(bt,Dt),jr=this.transform.scaleZoom(this.transform.cameraToCenterDistance/cr/this.transform.tileSize),ea=180*Math.atan2(bt,-Dt)/Math.PI,qe=180*Math.acos(hr/cr)/Math.PI;return qe=Yt<0?90-qe:90+qe,{center:ft.toLngLat(),zoom:jr,pitch:qe,bearing:ea}}easeTo(R,ae){var we;this._stop(!1,R.easeId),((R=t.e({offset:[0,0],duration:500,easing:t.b9},R)).animate===!1||!R.essential&&i.prefersReducedMotion)&&(R.duration=0);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.project(qe),At=Se.project(Je).sub(ht),_t=Se.zoomScale(ot-De),Pt,er;R.around&&(Pt=t.N.convert(R.around),er=Se.locationPoint(Pt));let nr={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||ot!==De,this._rotating=this._rotating||ft!==Yt,this._pitching=this._pitching||cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._easeId=R.easeId,this._prepareEase(ae,R.noMoveStart,nr),this.terrain&&this._prepareElevation(Je),this._ease(pr=>{if(this._zooming&&(Se.zoom=t.y.number(De,ot,pr)),this._rotating&&(Se.bearing=t.y.number(ft,Yt,pr)),this._pitching&&(Se.pitch=t.y.number(bt,cr,pr)),this._padding&&(Se.interpolatePadding(Dt,hr,pr),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(pr),Pt)Se.setLocationAtPoint(Pt,er);else{let Sr=Se.zoomScale(Se.zoom-De),Wr=ot>De?Math.min(2,_t):Math.max(.5,_t),ha=Math.pow(Wr,1-pr),ga=Se.unproject(ht.add(At.mult(pr*ha)).mult(Sr));Se.setLocationAtPoint(Se.renderWorldCopies?ga.wrap():ga,ea)}this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},pr=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae,pr)},R),this}_prepareEase(R,ae,we={}){this._moving=!0,ae||we.moving||this.fire(new t.k("movestart",R)),this._zooming&&!we.zooming&&this.fire(new t.k("zoomstart",R)),this._rotating&&!we.rotating&&this.fire(new t.k("rotatestart",R)),this._pitching&&!we.pitching&&this.fire(new t.k("pitchstart",R))}_prepareElevation(R){this._elevationCenter=R,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(R,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(R){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let ae=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(R<1&&ae!==this._elevationTarget){let we=this._elevationTarget-this._elevationStart;this._elevationStart+=R*(we-(ae-(we*R+this._elevationStart))/(1-R)),this._elevationTarget=ae}this.transform.elevation=t.y.number(this._elevationStart,this._elevationTarget,R)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(R){let ae=R.getCameraPosition(),we=this.terrain.getElevationForLngLatZoom(ae.lngLat,R.zoom);if(ae.altitude<we){let Se=this.calculateCameraOptionsFromTo(ae.lngLat,we,R.center,R.elevation);return{pitch:Se.pitch,zoom:Se.zoom}}return{}}_applyUpdatedTransform(R){let ae=[];if(this.terrain&&ae.push(Se=>this._elevateCameraIfInsideTerrain(Se)),this.transformCameraUpdate&&ae.push(Se=>this.transformCameraUpdate(Se)),!ae.length)return;let we=R.clone();for(let Se of ae){let De=we.clone(),{center:ft,zoom:bt,pitch:Dt,bearing:Yt,elevation:cr}=Se(De);ft&&(De.center=ft),bt!==void 0&&(De.zoom=bt),Dt!==void 0&&(De.pitch=Dt),Yt!==void 0&&(De.bearing=Yt),cr!==void 0&&(De.elevation=cr),we.apply(De)}this.transform.apply(we)}_fireMoveEvents(R){this.fire(new t.k("move",R)),this._zooming&&this.fire(new t.k("zoom",R)),this._rotating&&this.fire(new t.k("rotate",R)),this._pitching&&this.fire(new t.k("pitch",R))}_afterEase(R,ae){if(this._easeId&&ae&&this._easeId===ae)return;delete this._easeId;let we=this._zooming,Se=this._rotating,De=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,we&&this.fire(new t.k("zoomend",R)),Se&&this.fire(new t.k("rotateend",R)),De&&this.fire(new t.k("pitchend",R)),this.fire(new t.k("moveend",R))}flyTo(R,ae){var we;if(!R.essential&&i.prefersReducedMotion){let Ci=t.M(R,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Ci,ae)}this.stop(),R=t.e({offset:[0,0],speed:1.2,curve:1.42,easing:t.b9},R);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.zoomScale(ot-De),At=Se.project(qe),_t=Se.project(Je).sub(At),Pt=R.curve,er=Math.max(Se.width,Se.height),nr=er/ht,pr=_t.mag();if("minZoom"in R){let Ci=t.ac(Math.min(R.minZoom,De,ot),Se.minZoom,Se.maxZoom),$i=er/Se.zoomScale(Ci-De);Pt=Math.sqrt($i/pr*2)}let Sr=Pt*Pt;function Wr(Ci){let $i=(nr*nr-er*er+(Ci?-1:1)*Sr*Sr*pr*pr)/(2*(Ci?nr:er)*Sr*pr);return Math.log(Math.sqrt($i*$i+1)-$i)}function ha(Ci){return(Math.exp(Ci)-Math.exp(-Ci))/2}function ga(Ci){return(Math.exp(Ci)+Math.exp(-Ci))/2}let Pa=Wr(!1),Ja=function(Ci){return ga(Pa)/ga(Pa+Pt*Ci)},di=function(Ci){return er*((ga(Pa)*(ha($i=Pa+Pt*Ci)/ga($i))-ha(Pa))/Sr)/pr;var $i},pi=(Wr(!0)-Pa)/Pt;if(Math.abs(pr)<1e-6||!isFinite(pi)){if(Math.abs(er-nr)<1e-6)return this.easeTo(R,ae);let Ci=nr<er?-1:1;pi=Math.abs(Math.log(nr/er))/Pt,di=()=>0,Ja=$i=>Math.exp(Ci*Pt*$i)}return R.duration="duration"in R?+R.duration:1e3*pi/("screenSpeed"in R?+R.screenSpeed/Pt:+R.speed),R.maxDuration&&R.duration>R.maxDuration&&(R.duration=0),this._zooming=!0,this._rotating=ft!==Yt,this._pitching=cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._prepareEase(ae,!1),this.terrain&&this._prepareElevation(Je),this._ease(Ci=>{let $i=Ci*pi,Bn=1/Ja($i);Se.zoom=Ci===1?ot:De+Se.scaleZoom(Bn),this._rotating&&(Se.bearing=t.y.number(ft,Yt,Ci)),this._pitching&&(Se.pitch=t.y.number(bt,cr,Ci)),this._padding&&(Se.interpolatePadding(Dt,hr,Ci),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(Ci);let Sn=Ci===1?Je:Se.unproject(At.add(_t.mult(di($i))).mult(Bn));Se.setLocationAtPoint(Se.renderWorldCopies?Sn.wrap():Sn,ea),this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},()=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae)},R),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(R,ae){var we;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let Se=this._onEaseEnd;delete this._onEaseEnd,Se.call(this,ae)}return R||(we=this.handlers)===null||we===void 0||we.stop(!1),this}_ease(R,ae,we){we.animate===!1||we.duration===0?(R(1),ae()):(this._easeStart=i.now(),this._easeOptions=we,this._onEaseFrame=R,this._onEaseEnd=ae,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(R,ae){R=t.b3(R,-180,180);let we=Math.abs(R-ae);return Math.abs(R-360-ae)<we&&(R-=360),Math.abs(R+360-ae)<we&&(R+=360),R}_normalizeCenter(R,ae){if(!ae.renderWorldCopies||ae.lngRange)return;let we=R.lng-ae.center.lng;R.lng+=we>180?-360:we<-180?360:0}queryTerrainElevation(R){return this.terrain?this.terrain.getElevationForLngLatZoom(t.N.convert(R),this.transform.tileZoom)-this.transform.elevation:null}}let Jn={compact:!0,customAttribution:'<a href="https://maplibre.org/" target="_blank">MapLibre</a>'};class no{constructor(R=Jn){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=ae=>{!ae||ae.sourceDataType!=="metadata"&&ae.sourceDataType!=="visibility"&&ae.dataType!=="style"&&ae.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=R}getDefaultPosition(){return"bottom-right"}onAdd(R){return this._map=R,this._compact=this.options.compact,this._container=n.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=n.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=n.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){n.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(R,ae){let we=this._map._getUIString(`AttributionControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)}_updateAttributions(){if(!this._map.style)return;let R=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?R=R.concat(this.options.customAttribution.map(Se=>typeof Se!="string"?"":Se)):typeof this.options.customAttribution=="string"&&R.push(this.options.customAttribution)),this._map.style.stylesheet){let Se=this._map.style.stylesheet;this.styleOwner=Se.owner,this.styleId=Se.id}let ae=this._map.style.sourceCaches;for(let Se in ae){let De=ae[Se];if(De.used||De.usedForTerrain){let ft=De.getSource();ft.attribution&&R.indexOf(ft.attribution)<0&&R.push(ft.attribution)}}R=R.filter(Se=>String(Se).trim()),R.sort((Se,De)=>Se.length-De.length),R=R.filter((Se,De)=>{for(let ft=De+1;ft<R.length;ft++)if(R[ft].indexOf(Se)>=0)return!1;return!0});let we=R.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,R.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class en{constructor(R={}){this._updateCompact=()=>{let ae=this._container.children;if(ae.length){let we=ae[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&we.classList.add("maplibregl-compact"):we.classList.remove("maplibregl-compact")}},this.options=R}getDefaultPosition(){return"bottom-left"}onAdd(R){this._map=R,this._compact=this.options&&this.options.compact,this._container=n.create("div","maplibregl-ctrl");let ae=n.create("a","maplibregl-ctrl-logo");return ae.target="_blank",ae.rel="noopener nofollow",ae.href="https://maplibre.org/",ae.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ae.setAttribute("rel","noopener nofollow"),this._container.appendChild(ae),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){n.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Ri{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(R){let ae=++this._id;return this._queue.push({callback:R,id:ae,cancelled:!1}),ae}remove(R){let ae=this._currentlyRunning,we=ae?this._queue.concat(ae):this._queue;for(let Se of we)if(Se.id===R)return void(Se.cancelled=!0)}run(R=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let ae=this._currentlyRunning=this._queue;this._queue=[];for(let we of ae)if(!we.cancelled&&(we.callback(R),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var co=t.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Wo extends t.E{constructor(R){super(),this.sourceCache=R,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,R.usedForTerrain=!0,R.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(R,ae){this.sourceCache.update(R,ae),this._renderableTilesKeys=[];let we={};for(let Se of R.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:ae}))we[Se.key]=!0,this._renderableTilesKeys.push(Se.key),this._tiles[Se.key]||(Se.posMatrix=new Float64Array(16),t.aP(Se.posMatrix,0,t.X,0,t.X,0,1),this._tiles[Se.key]=new nt(Se,this.tileSize));for(let Se in this._tiles)we[Se]||delete this._tiles[Se]}freeRtt(R){for(let ae in this._tiles){let we=this._tiles[ae];(!R||we.tileID.equals(R)||we.tileID.isChildOf(R)||R.isChildOf(we.tileID))&&(we.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(R=>this.getTileByID(R))}getTileByID(R){return this._tiles[R]}getTerrainCoords(R){let ae={};for(let we of this._renderableTilesKeys){let Se=this._tiles[we].tileID;if(Se.canonical.equals(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16),t.aP(De.posMatrix,0,t.X,0,t.X,0,1),ae[we]=De}else if(Se.canonical.isChildOf(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=Se.canonical.z-R.canonical.z,bt=Se.canonical.x-(Se.canonical.x>>ft<<ft),Dt=Se.canonical.y-(Se.canonical.y>>ft<<ft),Yt=t.X>>ft;t.aP(De.posMatrix,0,Yt,0,Yt,0,1),t.J(De.posMatrix,De.posMatrix,[-bt*Yt,-Dt*Yt,0]),ae[we]=De}else if(R.canonical.isChildOf(Se.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=R.canonical.z-Se.canonical.z,bt=R.canonical.x-(R.canonical.x>>ft<<ft),Dt=R.canonical.y-(R.canonical.y>>ft<<ft),Yt=t.X>>ft;t.aP(De.posMatrix,0,t.X,0,t.X,0,1),t.J(De.posMatrix,De.posMatrix,[bt*Yt,Dt*Yt,0]),t.K(De.posMatrix,De.posMatrix,[1/2**ft,1/2**ft,0]),ae[we]=De}}return ae}getSourceTile(R,ae){let we=this.sourceCache._source,Se=R.overscaledZ-this.deltaZoom;if(Se>we.maxzoom&&(Se=we.maxzoom),Se<we.minzoom)return null;this._sourceTileCache[R.key]||(this._sourceTileCache[R.key]=R.scaledTo(Se).key);let De=this.sourceCache.getTileByID(this._sourceTileCache[R.key]);if((!De||!De.dem)&&ae)for(;Se>=we.minzoom&&(!De||!De.dem);)De=this.sourceCache.getTileByID(R.scaledTo(Se--).key);return De}tilesAfterTime(R=Date.now()){return Object.values(this._tiles).filter(ae=>ae.timeAdded>=R)}}class bs{constructor(R,ae,we){this.painter=R,this.sourceCache=new Wo(ae),this.options=we,this.exaggeration=typeof we.exaggeration=="number"?we.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(R,ae,we,Se=t.X){var De;if(!(ae>=0&&ae<Se&&we>=0&&we<Se))return 0;let ft=this.getTerrainData(R),bt=(De=ft.tile)===null||De===void 0?void 0:De.dem;if(!bt)return 0;let Dt=function(qe,Je,ot){var ht=Je[0],At=Je[1];return qe[0]=ot[0]*ht+ot[4]*At+ot[12],qe[1]=ot[1]*ht+ot[5]*At+ot[13],qe}([],[ae/Se*t.X,we/Se*t.X],ft.u_terrain_matrix),Yt=[Dt[0]*bt.dim,Dt[1]*bt.dim],cr=Math.floor(Yt[0]),hr=Math.floor(Yt[1]),jr=Yt[0]-cr,ea=Yt[1]-hr;return bt.get(cr,hr)*(1-jr)*(1-ea)+bt.get(cr+1,hr)*jr*(1-ea)+bt.get(cr,hr+1)*(1-jr)*ea+bt.get(cr+1,hr+1)*jr*ea}getElevationForLngLatZoom(R,ae){if(!t.bb(ae,R.wrap()))return 0;let{tileID:we,mercatorX:Se,mercatorY:De}=this._getOverscaledTileIDFromLngLatZoom(R,ae);return this.getElevation(we,Se%t.X,De%t.X,t.X)}getElevation(R,ae,we,Se=t.X){return this.getDEMElevation(R,ae,we,Se)*this.exaggeration}getTerrainData(R){if(!this._emptyDemTexture){let Se=this.painter.context,De=new t.R({width:1,height:1},new Uint8Array(4));this._emptyDepthTexture=new u(Se,De,Se.gl.RGBA,{premultiply:!1}),this._emptyDemUnpack=[0,0,0,0],this._emptyDemTexture=new u(Se,new t.R({width:1,height:1}),Se.gl.RGBA,{premultiply:!1}),this._emptyDemTexture.bind(Se.gl.NEAREST,Se.gl.CLAMP_TO_EDGE),this._emptyDemMatrix=t.an([])}let ae=this.sourceCache.getSourceTile(R,!0);if(ae&&ae.dem&&(!ae.demTexture||ae.needsTerrainPrepare)){let Se=this.painter.context;ae.demTexture=this.painter.getTileTexture(ae.dem.stride),ae.demTexture?ae.demTexture.update(ae.dem.getPixels(),{premultiply:!1}):ae.demTexture=new u(Se,ae.dem.getPixels(),Se.gl.RGBA,{premultiply:!1}),ae.demTexture.bind(Se.gl.NEAREST,Se.gl.CLAMP_TO_EDGE),ae.needsTerrainPrepare=!1}let we=ae&&ae+ae.tileID.key+R.key;if(we&&!this._demMatrixCache[we]){let Se=this.sourceCache.sourceCache._source.maxzoom,De=R.canonical.z-ae.tileID.canonical.z;R.overscaledZ>R.canonical.z&&(R.canonical.z>=Se?De=R.canonical.z-Se:t.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let ft=R.canonical.x-(R.canonical.x>>De<<De),bt=R.canonical.y-(R.canonical.y>>De<<De),Dt=t.bc(new Float64Array(16),[1/(t.X<<De),1/(t.X<<De),0]);t.J(Dt,Dt,[ft*t.X,bt*t.X,0]),this._demMatrixCache[R.key]={matrix:Dt,coord:R}}return{u_depth:2,u_terrain:3,u_terrain_dim:ae&&ae.dem&&ae.dem.dim||1,u_terrain_matrix:we?this._demMatrixCache[R.key].matrix:this._emptyDemMatrix,u_terrain_unpack:ae&&ae.dem&&ae.dem.getUnpackVector()||this._emptyDemUnpack,u_terrain_exaggeration:this.exaggeration,texture:(ae&&ae.demTexture||this._emptyDemTexture).texture,depthTexture:(this._fboDepthTexture||this._emptyDepthTexture).texture,tile:ae}}getFramebuffer(R){let ae=this.painter,we=ae.width/devicePixelRatio,Se=ae.height/devicePixelRatio;return!this._fbo||this._fbo.width===we&&this._fbo.height===Se||(this._fbo.destroy(),this._fboCoordsTexture.destroy(),this._fboDepthTexture.destroy(),delete this._fbo,delete this._fboDepthTexture,delete this._fboCoordsTexture),this._fboCoordsTexture||(this._fboCoordsTexture=new u(ae.context,{width:we,height:Se,data:null},ae.context.gl.RGBA,{premultiply:!1}),this._fboCoordsTexture.bind(ae.context.gl.NEAREST,ae.context.gl.CLAMP_TO_EDGE)),this._fboDepthTexture||(this._fboDepthTexture=new u(ae.context,{width:we,height:Se,data:null},ae.context.gl.RGBA,{premultiply:!1}),this._fboDepthTexture.bind(ae.context.gl.NEAREST,ae.context.gl.CLAMP_TO_EDGE)),this._fbo||(this._fbo=ae.context.createFramebuffer(we,Se,!0,!1),this._fbo.depthAttachment.set(ae.context.createRenderbuffer(ae.context.gl.DEPTH_COMPONENT16,we,Se))),this._fbo.colorAttachment.set(R==="coords"?this._fboCoordsTexture.texture:this._fboDepthTexture.texture),this._fbo}getCoordsTexture(){let R=this.painter.context;if(this._coordsTexture)return this._coordsTexture;let ae=new Uint8Array(this._coordsTextureSize*this._coordsTextureSize*4);for(let De=0,ft=0;De<this._coordsTextureSize;De++)for(let bt=0;bt<this._coordsTextureSize;bt++,ft+=4)ae[ft+0]=255&bt,ae[ft+1]=255&De,ae[ft+2]=bt>>8<<4|De>>8,ae[ft+3]=0;let we=new t.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(ae.buffer)),Se=new u(R,we,R.gl.RGBA,{premultiply:!1});return Se.bind(R.gl.NEAREST,R.gl.CLAMP_TO_EDGE),this._coordsTexture=Se,Se}pointCoordinate(R){this.painter.maybeDrawDepthAndCoords(!0);let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl,De=Math.round(R.x*this.painter.pixelRatio/devicePixelRatio),ft=Math.round(R.y*this.painter.pixelRatio/devicePixelRatio),bt=Math.round(this.painter.height/devicePixelRatio);we.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),Se.readPixels(De,bt-ft-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null);let Dt=ae[0]+(ae[2]>>4<<8),Yt=ae[1]+((15&ae[2])<<8),cr=this.coordsIndex[255-ae[3]],hr=cr&&this.sourceCache.getTileByID(cr);if(!hr)return null;let jr=this._coordsTextureSize,ea=(1<<hr.tileID.canonical.z)*jr;return new t.Z((hr.tileID.canonical.x*jr+Dt)/ea+hr.tileID.wrap,(hr.tileID.canonical.y*jr+Yt)/ea,this.getElevation(hr.tileID,Dt,Yt,jr))}depthAtPoint(R){let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl;return we.bindFramebuffer.set(this.getFramebuffer("depth").framebuffer),Se.readPixels(R.x,this.painter.height/devicePixelRatio-R.y-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null),(ae[0]/16777216+ae[1]/65536+ae[2]/256+ae[3])/256}getTerrainMesh(){if(this._mesh)return this._mesh;let R=this.painter.context,ae=new t.bd,we=new t.aY,Se=this.meshSize,De=t.X/Se,ft=Se*Se;for(let hr=0;hr<=Se;hr++)for(let jr=0;jr<=Se;jr++)ae.emplaceBack(jr*De,hr*De,0);for(let hr=0;hr<ft;hr+=Se+1)for(let jr=0;jr<Se;jr++)we.emplaceBack(jr+hr,Se+jr+hr+1,Se+jr+hr+2),we.emplaceBack(jr+hr,Se+jr+hr+2,jr+hr+1);let bt=ae.length,Dt=bt+2*(Se+1);for(let hr of[0,1])for(let jr=0;jr<=Se;jr++)for(let ea of[0,1])ae.emplaceBack(jr*De,hr*t.X,ea);for(let hr=0;hr<2*Se;hr+=2)we.emplaceBack(Dt+hr,Dt+hr+1,Dt+hr+3),we.emplaceBack(Dt+hr,Dt+hr+3,Dt+hr+2),we.emplaceBack(bt+hr,bt+hr+3,bt+hr+1),we.emplaceBack(bt+hr,bt+hr+2,bt+hr+3);let Yt=ae.length,cr=Yt+2*(Se+1);for(let hr of[0,1])for(let jr=0;jr<=Se;jr++)for(let ea of[0,1])ae.emplaceBack(hr*t.X,jr*De,ea);for(let hr=0;hr<2*Se;hr+=2)we.emplaceBack(Yt+hr,Yt+hr+1,Yt+hr+3),we.emplaceBack(Yt+hr,Yt+hr+3,Yt+hr+2),we.emplaceBack(cr+hr,cr+hr+3,cr+hr+1),we.emplaceBack(cr+hr,cr+hr+2,cr+hr+3);return this._mesh=new Cu(R.createVertexBuffer(ae,co.members),R.createIndexBuffer(we),t.a0.simpleSegment(0,0,ae.length,we.length)),this._mesh}getMeshFrameDelta(R){return 2*Math.PI*t.be/Math.pow(2,R)/5}getMinTileElevationForLngLatZoom(R,ae){var we;let{tileID:Se}=this._getOverscaledTileIDFromLngLatZoom(R,ae);return(we=this.getMinMaxElevation(Se).minElevation)!==null&&we!==void 0?we:0}getMinMaxElevation(R){let ae=this.getTerrainData(R).tile,we={minElevation:null,maxElevation:null};return ae&&ae.dem&&(we.minElevation=ae.dem.min*this.exaggeration,we.maxElevation=ae.dem.max*this.exaggeration),we}_getOverscaledTileIDFromLngLatZoom(R,ae){let we=t.Z.fromLngLat(R.wrap()),Se=(1<<ae)*t.X,De=we.x*Se,ft=we.y*Se,bt=Math.floor(De/t.X),Dt=Math.floor(ft/t.X);return{tileID:new t.S(ae,0,ae,bt,Dt),mercatorX:De,mercatorY:ft}}}class Xs{constructor(R,ae,we){this._context=R,this._size=ae,this._tileSize=we,this._objects=[],this._recentlyUsed=[],this._stamp=0}destruct(){for(let R of this._objects)R.texture.destroy(),R.fbo.destroy()}_createObject(R){let ae=this._context.createFramebuffer(this._tileSize,this._tileSize,!0,!0),we=new u(this._context,{width:this._tileSize,height:this._tileSize,data:null},this._context.gl.RGBA);return we.bind(this._context.gl.LINEAR,this._context.gl.CLAMP_TO_EDGE),ae.depthAttachment.set(this._context.createRenderbuffer(this._context.gl.DEPTH_STENCIL,this._tileSize,this._tileSize)),ae.colorAttachment.set(we.texture),{id:R,fbo:ae,texture:we,stamp:-1,inUse:!1}}getObjectForId(R){return this._objects[R]}useObject(R){R.inUse=!0,this._recentlyUsed=this._recentlyUsed.filter(ae=>R.id!==ae),this._recentlyUsed.push(R.id)}stampObject(R){R.stamp=++this._stamp}getOrCreateFreeObject(){for(let ae of this._recentlyUsed)if(!this._objects[ae].inUse)return this._objects[ae];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let R=this._createObject(this._objects.length);return this._objects.push(R),R}freeObject(R){R.inUse=!1}freeAllObjects(){for(let R of this._objects)this.freeObject(R)}isFull(){return!(this._objects.length<this._size)&&this._objects.some(R=>!R.inUse)===!1}}let Ms={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Hs{constructor(R,ae){this.painter=R,this.terrain=ae,this.pool=new Xs(R.context,30,ae.sourceCache.tileSize*ae.qualityFactor)}destruct(){this.pool.destruct()}getTexture(R){return this.pool.getObjectForId(R.rtt[this._stacks.length-1].id).texture}prepareForRender(R,ae){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=R._order.filter(we=>!R._layers[we].isHidden(ae)),this._coordsDescendingInv={};for(let we in R.sourceCaches){this._coordsDescendingInv[we]={};let Se=R.sourceCaches[we].getVisibleCoordinates();for(let De of Se){let ft=this.terrain.sourceCache.getTerrainCoords(De);for(let bt in ft)this._coordsDescendingInv[we][bt]||(this._coordsDescendingInv[we][bt]=[]),this._coordsDescendingInv[we][bt].push(ft[bt])}}this._coordsDescendingInvStr={};for(let we of R._order){let Se=R._layers[we],De=Se.source;if(Ms[Se.type]&&!this._coordsDescendingInvStr[De]){this._coordsDescendingInvStr[De]={};for(let ft in this._coordsDescendingInv[De])this._coordsDescendingInvStr[De][ft]=this._coordsDescendingInv[De][ft].map(bt=>bt.key).sort().join()}}for(let we of this._renderableTiles)for(let Se in this._coordsDescendingInvStr){let De=this._coordsDescendingInvStr[Se][we.tileID.key];De&&De!==we.rttCoords[Se]&&(we.rtt=[])}}renderLayer(R){if(R.isHidden(this.painter.transform.zoom))return!1;let ae=R.type,we=this.painter,Se=this._renderableLayerIds[this._renderableLayerIds.length-1]===R.id;if(Ms[ae]&&(this._prevType&&Ms[this._prevType]||this._stacks.push([]),this._prevType=ae,this._stacks[this._stacks.length-1].push(R.id),!Se))return!0;if(Ms[this._prevType]||Ms[ae]&&Se){this._prevType=ae;let De=this._stacks.length-1,ft=this._stacks[De]||[];for(let bt of this._renderableTiles){if(this.pool.isFull()&&(ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(bt),bt.rtt[De]){let Yt=this.pool.getObjectForId(bt.rtt[De].id);if(Yt.stamp===bt.rtt[De].stamp){this.pool.useObject(Yt);continue}}let Dt=this.pool.getOrCreateFreeObject();this.pool.useObject(Dt),this.pool.stampObject(Dt),bt.rtt[De]={id:Dt.id,stamp:Dt.stamp},we.context.bindFramebuffer.set(Dt.fbo.framebuffer),we.context.clear({color:t.aM.transparent,stencil:0}),we.currentStencilSource=void 0;for(let Yt=0;Yt<ft.length;Yt++){let cr=we.style._layers[ft[Yt]],hr=cr.source?this._coordsDescendingInv[cr.source][bt.tileID.key]:[bt.tileID];we.context.viewport.set([0,0,Dt.fbo.width,Dt.fbo.height]),we._renderTileClippingMasks(cr,hr),we.renderLayer(we,we.style.sourceCaches[cr.source],cr,hr),cr.source&&(bt.rttCoords[cr.source]=this._coordsDescendingInvStr[cr.source][bt.tileID.key])}}return ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),Ms[ae]}return!1}}let vs={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"MapLibre logo","Map.Title":"Map","Marker.Title":"Map marker","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","Popup.Close":"Close popup","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm","TerrainControl.Enable":"Enable terrain","TerrainControl.Disable":"Disable terrain","CooperativeGesturesHandler.WindowsHelpText":"Use Ctrl + scroll to zoom the map","CooperativeGesturesHandler.MacHelpText":"Use \u2318 + scroll to zoom the map","CooperativeGesturesHandler.MobileHelpText":"Use two fingers to move the map"},Il=r,fl={hash:!1,interactive:!0,bearingSnap:7,attributionControl:Jn,maplibreLogo:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,refreshExpiredTiles:!0,scrollZoom:!0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,trackResize:!0,center:[0,0],zoom:0,bearing:0,pitch:0,renderWorldCopies:!0,maxTileCacheSize:null,maxTileCacheZoomLevels:t.a.MAX_TILE_CACHE_ZOOM_LEVELS,transformRequest:null,transformCameraUpdate:null,fadeDuration:300,crossSourceCollisions:!0,clickTolerance:3,localIdeographFontFamily:"sans-serif",pitchWithRotate:!0,validateStyle:!0,maxCanvasSize:[4096,4096],cancelPendingTileRequestsWhileZooming:!0},tl=Oe=>{Oe.touchstart=Oe.dragStart,Oe.touchmoveWindow=Oe.dragMove,Oe.touchend=Oe.dragEnd},Ln={showCompass:!0,showZoom:!0,visualizePitch:!1};class Ao{constructor(R,ae,we=!1){this.mousedown=ft=>{this.startMouse(t.e({},ft,{ctrlKey:!0,preventDefault:()=>ft.preventDefault()}),n.mousePos(this.element,ft)),n.addEventListener(window,"mousemove",this.mousemove),n.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=ft=>{this.moveMouse(ft,n.mousePos(this.element,ft))},this.mouseup=ft=>{this.mouseRotate.dragEnd(ft),this.mousePitch&&this.mousePitch.dragEnd(ft),this.offTemp()},this.touchstart=ft=>{ft.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.startTouch(ft,this._startPos),n.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.addEventListener(window,"touchend",this.touchend))},this.touchmove=ft=>{ft.targetTouches.length!==1?this.reset():(this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.moveTouch(ft,this._lastPos))},this.touchend=ft=>{ft.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),delete this._startPos,delete this._lastPos,this.offTemp()},this.reset=()=>{this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let Se=R.dragRotate._mouseRotate.getClickTolerance(),De=R.dragRotate._mousePitch.getClickTolerance();this.element=ae,this.mouseRotate=Vl({clickTolerance:Se,enable:!0}),this.touchRotate=(({enable:ft,clickTolerance:bt,bearingDegreesPerPixelMoved:Dt=.8})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({bearingDelta:(hr.x-cr.x)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:Se,enable:!0}),this.map=R,we&&(this.mousePitch=Qf({clickTolerance:De,enable:!0}),this.touchPitch=(({enable:ft,clickTolerance:bt,pitchDegreesPerPixelMoved:Dt=-.5})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({pitchDelta:(hr.y-cr.y)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:De,enable:!0})),n.addEventListener(ae,"mousedown",this.mousedown),n.addEventListener(ae,"touchstart",this.touchstart,{passive:!1}),n.addEventListener(ae,"touchcancel",this.reset)}startMouse(R,ae){this.mouseRotate.dragStart(R,ae),this.mousePitch&&this.mousePitch.dragStart(R,ae),n.disableDrag()}startTouch(R,ae){this.touchRotate.dragStart(R,ae),this.touchPitch&&this.touchPitch.dragStart(R,ae),n.disableDrag()}moveMouse(R,ae){let we=this.map,{bearingDelta:Se}=this.mouseRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.mousePitch){let{pitchDelta:De}=this.mousePitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}moveTouch(R,ae){let we=this.map,{bearingDelta:Se}=this.touchRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.touchPitch){let{pitchDelta:De}=this.touchPitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}off(){let R=this.element;n.removeEventListener(R,"mousedown",this.mousedown),n.removeEventListener(R,"touchstart",this.touchstart,{passive:!1}),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend),n.removeEventListener(R,"touchcancel",this.reset),this.offTemp()}offTemp(){n.enableDrag(),n.removeEventListener(window,"mousemove",this.mousemove),n.removeEventListener(window,"mouseup",this.mouseup),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend)}}let js;function Ts(Oe,R,ae){let we=new t.N(Oe.lng,Oe.lat);if(Oe=new t.N(Oe.lng,Oe.lat),R){let Se=new t.N(Oe.lng-360,Oe.lat),De=new t.N(Oe.lng+360,Oe.lat),ft=ae.locationPoint(Oe).distSqr(R);ae.locationPoint(Se).distSqr(R)<ft?Oe=Se:ae.locationPoint(De).distSqr(R)<ft&&(Oe=De)}for(;Math.abs(Oe.lng-ae.center.lng)>180;){let Se=ae.locationPoint(Oe);if(Se.x>=0&&Se.y>=0&&Se.x<=ae.width&&Se.y<=ae.height)break;Oe.lng>ae.center.lng?Oe.lng-=360:Oe.lng+=360}return Oe.lng!==we.lng&&ae.locationPoint(Oe).y>ae.height/2-ae.getHorizon()?Oe:we}let nu={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Pu(Oe,R,ae){let we=Oe.classList;for(let Se in nu)we.remove(`maplibregl-${ae}-anchor-${Se}`);we.add(`maplibregl-${ae}-anchor-${R}`)}class ec extends t.E{constructor(R){if(super(),this._onKeyPress=ae=>{let we=ae.code,Se=ae.charCode||ae.keyCode;we!=="Space"&&we!=="Enter"&&Se!==32&&Se!==13||this.togglePopup()},this._onMapClick=ae=>{let we=ae.originalEvent.target,Se=this._element;this._popup&&(we===Se||Se.contains(we))&&this.togglePopup()},this._update=ae=>{var we;if(!this._map)return;let Se=this._map.loaded()&&!this._map.isMoving();(ae?.type==="terrain"||ae?.type==="render"&&!Se)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Ts(this._lngLat,this._flatPos,this._map.transform):(we=this._lngLat)===null||we===void 0?void 0:we.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let De="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?De=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(De=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let ft="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?ft="rotateX(0deg)":this._pitchAlignment==="map"&&(ft=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||ae&&ae.type!=="moveend"||(this._pos=this._pos.round()),n.setTransform(this._element,`${nu[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${ft} ${De}`),i.frameAsync(new AbortController).then(()=>{this._updateOpacity(ae&&ae.type==="moveend")}).catch(()=>{})},this._onMove=ae=>{if(!this._isDragging){let we=this._clickTolerance||this._map._clickTolerance;this._isDragging=ae.point.dist(this._pointerdownPos)>=we}this._isDragging&&(this._pos=ae.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new t.k("dragstart"))),this.fire(new t.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new t.k("dragend")),this._state="inactive"},this._addDragHandler=ae=>{this._element.contains(ae.originalEvent.target)&&(ae.preventDefault(),this._positionDelta=ae.point.sub(this._pos).add(this._offset),this._pointerdownPos=ae.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=R&&R.anchor||"center",this._color=R&&R.color||"#3FB1CE",this._scale=R&&R.scale||1,this._draggable=R&&R.draggable||!1,this._clickTolerance=R&&R.clickTolerance||0,this._subpixelPositioning=R&&R.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=R&&R.rotation||0,this._rotationAlignment=R&&R.rotationAlignment||"auto",this._pitchAlignment=R&&R.pitchAlignment&&R.pitchAlignment!=="auto"?R.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(R?.opacity,R?.opacityWhenCovered),R&&R.element)this._element=R.element,this._offset=t.P.convert(R&&R.offset||[0,0]);else{this._defaultMarker=!0,this._element=n.create("div");let ae=n.createNS("http://www.w3.org/2000/svg","svg"),we=41,Se=27;ae.setAttributeNS(null,"display","block"),ae.setAttributeNS(null,"height",`${we}px`),ae.setAttributeNS(null,"width",`${Se}px`),ae.setAttributeNS(null,"viewBox",`0 0 ${Se} ${we}`);let De=n.createNS("http://www.w3.org/2000/svg","g");De.setAttributeNS(null,"stroke","none"),De.setAttributeNS(null,"stroke-width","1"),De.setAttributeNS(null,"fill","none"),De.setAttributeNS(null,"fill-rule","evenodd");let ft=n.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"fill-rule","nonzero");let bt=n.createNS("http://www.w3.org/2000/svg","g");bt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),bt.setAttributeNS(null,"fill","#000000");let Dt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let ht of Dt){let At=n.createNS("http://www.w3.org/2000/svg","ellipse");At.setAttributeNS(null,"opacity","0.04"),At.setAttributeNS(null,"cx","10.5"),At.setAttributeNS(null,"cy","5.80029008"),At.setAttributeNS(null,"rx",ht.rx),At.setAttributeNS(null,"ry",ht.ry),bt.appendChild(At)}let Yt=n.createNS("http://www.w3.org/2000/svg","g");Yt.setAttributeNS(null,"fill",this._color);let cr=n.createNS("http://www.w3.org/2000/svg","path");cr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Yt.appendChild(cr);let hr=n.createNS("http://www.w3.org/2000/svg","g");hr.setAttributeNS(null,"opacity","0.25"),hr.setAttributeNS(null,"fill","#000000");let jr=n.createNS("http://www.w3.org/2000/svg","path");jr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),hr.appendChild(jr);let ea=n.createNS("http://www.w3.org/2000/svg","g");ea.setAttributeNS(null,"transform","translate(6.0, 7.0)"),ea.setAttributeNS(null,"fill","#FFFFFF");let qe=n.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Je=n.createNS("http://www.w3.org/2000/svg","circle");Je.setAttributeNS(null,"fill","#000000"),Je.setAttributeNS(null,"opacity","0.25"),Je.setAttributeNS(null,"cx","5.5"),Je.setAttributeNS(null,"cy","5.5"),Je.setAttributeNS(null,"r","5.4999962");let ot=n.createNS("http://www.w3.org/2000/svg","circle");ot.setAttributeNS(null,"fill","#FFFFFF"),ot.setAttributeNS(null,"cx","5.5"),ot.setAttributeNS(null,"cy","5.5"),ot.setAttributeNS(null,"r","5.4999962"),qe.appendChild(Je),qe.appendChild(ot),ft.appendChild(bt),ft.appendChild(Yt),ft.appendChild(hr),ft.appendChild(ea),ft.appendChild(qe),ae.appendChild(ft),ae.setAttributeNS(null,"height",we*this._scale+"px"),ae.setAttributeNS(null,"width",Se*this._scale+"px"),this._element.appendChild(ae),this._offset=t.P.convert(R&&R.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",ae=>{ae.preventDefault()}),this._element.addEventListener("mousedown",ae=>{ae.preventDefault()}),Pu(this._element,this._anchor,"marker"),R&&R.className)for(let ae of R.className.split(" "))this._element.classList.add(ae);this._popup=null}addTo(R){return this.remove(),this._map=R,this._element.setAttribute("aria-label",R._getUIString("Marker.Title")),R.getCanvasContainer().appendChild(this._element),R.on("move",this._update),R.on("moveend",this._update),R.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),n.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(R){return this._lngLat=t.N.convert(R),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(R){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),R){if(!("offset"in R.options)){let Se=Math.abs(13.5)/Math.SQRT2;R.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[Se,-1*(38.1-13.5+Se)],"bottom-right":[-Se,-1*(38.1-13.5+Se)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=R,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(R){return this._subpixelPositioning=R,this}getPopup(){return this._popup}togglePopup(){let R=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:R?(R.isOpen()?R.remove():(R.setLngLat(this._lngLat),R.addTo(this._map)),this):this}_updateOpacity(R=!1){var ae,we;if(!(!((ae=this._map)===null||ae===void 0)&&ae.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(R)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let Se=this._map,De=Se.terrain.depthAtPoint(this._pos),ft=Se.terrain.getElevationForLngLatZoom(this._lngLat,Se.transform.tileZoom);if(Se.transform.lngLatToCameraDepth(this._lngLat,ft)-De<.006)return void(this._element.style.opacity=this._opacity);let bt=-this._offset.y/Se.transform._pixelPerMeter,Dt=Math.sin(Se.getPitch()*Math.PI/180)*bt,Yt=Se.terrain.depthAtPoint(new t.P(this._pos.x,this._pos.y-this._offset.y)),cr=Se.transform.lngLatToCameraDepth(this._lngLat,ft+Dt)-Yt>.006;!((we=this._popup)===null||we===void 0)&&we.isOpen()&&cr&&this._popup.remove(),this._element.style.opacity=cr?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(R){return this._offset=t.P.convert(R),this._update(),this}addClassName(R){this._element.classList.add(R)}removeClassName(R){this._element.classList.remove(R)}toggleClassName(R){return this._element.classList.toggle(R)}setDraggable(R){return this._draggable=!!R,this._map&&(R?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(R){return this._rotation=R||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(R){return this._rotationAlignment=R||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(R){return this._pitchAlignment=R&&R!=="auto"?R:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(R,ae){return R===void 0&&ae===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),R!==void 0&&(this._opacity=R),ae!==void 0&&(this._opacityWhenCovered=ae),this._map&&this._updateOpacity(!0),this}}let tf={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},yu=0,Bc=!1,Iu={maxWidth:100,unit:"metric"};function Ac(Oe,R,ae){let we=ae&&ae.maxWidth||100,Se=Oe._container.clientHeight/2,De=Oe.unproject([0,Se]),ft=Oe.unproject([we,Se]),bt=De.distanceTo(ft);if(ae&&ae.unit==="imperial"){let Dt=3.2808*bt;Dt>5280?ro(R,we,Dt/5280,Oe._getUIString("ScaleControl.Miles")):ro(R,we,Dt,Oe._getUIString("ScaleControl.Feet"))}else ae&&ae.unit==="nautical"?ro(R,we,bt/1852,Oe._getUIString("ScaleControl.NauticalMiles")):bt>=1e3?ro(R,we,bt/1e3,Oe._getUIString("ScaleControl.Kilometers")):ro(R,we,bt,Oe._getUIString("ScaleControl.Meters"))}function ro(Oe,R,ae,we){let Se=function(De){let ft=Math.pow(10,`${Math.floor(De)}`.length-1),bt=De/ft;return bt=bt>=10?10:bt>=5?5:bt>=3?3:bt>=2?2:bt>=1?1:function(Dt){let Yt=Math.pow(10,Math.ceil(-Math.log(Dt)/Math.LN10));return Math.round(Dt*Yt)/Yt}(bt),ft*bt}(ae);Oe.style.width=R*(Se/ae)+"px",Oe.innerHTML=`${Se}&nbsp;${we}`}let Po={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Nc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(Oe){if(Oe){if(typeof Oe=="number"){let R=Math.round(Math.abs(Oe)/Math.SQRT2);return{center:new t.P(0,0),top:new t.P(0,Oe),"top-left":new t.P(R,R),"top-right":new t.P(-R,R),bottom:new t.P(0,-Oe),"bottom-left":new t.P(R,-R),"bottom-right":new t.P(-R,-R),left:new t.P(Oe,0),right:new t.P(-Oe,0)}}if(Oe instanceof t.P||Array.isArray(Oe)){let R=t.P.convert(Oe);return{center:R,top:R,"top-left":R,"top-right":R,bottom:R,"bottom-left":R,"bottom-right":R,left:R,right:R}}return{center:t.P.convert(Oe.center||[0,0]),top:t.P.convert(Oe.top||[0,0]),"top-left":t.P.convert(Oe["top-left"]||[0,0]),"top-right":t.P.convert(Oe["top-right"]||[0,0]),bottom:t.P.convert(Oe.bottom||[0,0]),"bottom-left":t.P.convert(Oe["bottom-left"]||[0,0]),"bottom-right":t.P.convert(Oe["bottom-right"]||[0,0]),left:t.P.convert(Oe.left||[0,0]),right:t.P.convert(Oe.right||[0,0])}}return hc(new t.P(0,0))}let pc=r;e.AJAXError=t.bh,e.Evented=t.E,e.LngLat=t.N,e.MercatorCoordinate=t.Z,e.Point=t.P,e.addProtocol=t.bi,e.config=t.a,e.removeProtocol=t.bj,e.AttributionControl=no,e.BoxZoomHandler=gu,e.CanvasSource=et,e.CooperativeGesturesHandler=_i,e.DoubleClickZoomHandler=Ka,e.DragPanHandler=ki,e.DragRotateHandler=Bi,e.EdgeInsets=$u,e.FullscreenControl=class extends t.E{constructor(Oe={}){super(),this._onFullscreenChange=()=>{var R;let ae=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((R=ae?.shadowRoot)===null||R===void 0)&&R.fullscreenElement;)ae=ae.shadowRoot.fullscreenElement;ae===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,Oe&&Oe.container&&(Oe.container instanceof HTMLElement?this._container=Oe.container:t.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(Oe){return this._map=Oe,this._container||(this._container=this._map.getContainer()),this._controlContainer=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){n.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let Oe=this._fullscreenButton=n.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);n.create("span","maplibregl-ctrl-icon",Oe).setAttribute("aria-hidden","true"),Oe.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let Oe=this._getTitle();this._fullscreenButton.setAttribute("aria-label",Oe),this._fullscreenButton.title=Oe}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new t.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new t.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},e.GeoJSONSource=Ie,e.GeolocateControl=class extends t.E{constructor(Oe){super(),this._onSuccess=R=>{if(this._map){if(this._isOutOfMapMaxBounds(R))return this._setErrorState(),this.fire(new t.k("outofmaxbounds",R)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=R,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(R),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(R),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new t.k("geolocate",R)),this._finish()}},this._updateCamera=R=>{let ae=new t.N(R.coords.longitude,R.coords.latitude),we=R.coords.accuracy,Se=this._map.getBearing(),De=t.e({bearing:Se},this.options.fitBoundsOptions),ft=ie.fromLngLat(ae,we);this._map.fitBounds(ft,De,{geolocateSource:!0})},this._updateMarker=R=>{if(R){let ae=new t.N(R.coords.longitude,R.coords.latitude);this._accuracyCircleMarker.setLngLat(ae).addTo(this._map),this._userLocationDotMarker.setLngLat(ae).addTo(this._map),this._accuracy=R.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=R=>{if(this._map){if(this.options.trackUserLocation)if(R.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(R.code===3&&Bc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new t.k("error",R)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",R=>R.preventDefault()),this._geolocateButton=n.create("button","maplibregl-ctrl-geolocate",this._container),n.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=R=>{if(this._map){if(R===!1){t.w("Geolocation support is not available so the GeolocateControl will be disabled.");let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}else{let ae=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=n.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new ec({element:this._dotElement}),this._circleElement=n.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new ec({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",ae=>{ae.geolocateSource||this._watchState!=="ACTIVE_LOCK"||ae.originalEvent&&ae.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new t.k("trackuserlocationend")),this.fire(new t.k("userlocationlostfocus")))})}},this.options=t.e({},tf,Oe)}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return t._(this,arguments,void 0,function*(R=!1){if(js!==void 0&&!R)return js;if(window.navigator.permissions===void 0)return js=!!window.navigator.geolocation,js;try{js=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{js=!!window.navigator.geolocation}return js})}().then(R=>this._finishSetupUI(R)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),n.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,yu=0,Bc=!1}_isOutOfMapMaxBounds(Oe){let R=this._map.getMaxBounds(),ae=Oe.coords;return R&&(ae.longitude<R.getWest()||ae.longitude>R.getEast()||ae.latitude<R.getSouth()||ae.latitude>R.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let Oe=this._map.getBounds(),R=Oe.getSouthEast(),ae=Oe.getNorthEast(),we=R.distanceTo(ae),Se=Math.ceil(this._accuracy/(we/this._map._container.clientHeight)*2);this._circleElement.style.width=`${Se}px`,this._circleElement.style.height=`${Se}px`}trigger(){if(!this._setup)return t.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":yu--,Bc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new t.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.k("trackuserlocationstart")),this.fire(new t.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let Oe;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),yu++,yu>1?(Oe={maximumAge:6e5,timeout:0},Bc=!0):(Oe=this.options.positionOptions,Bc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,Oe)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},e.Hash=Sh,e.ImageSource=at,e.KeyboardHandler=fr,e.LngLatBounds=ie,e.LogoControl=en,e.Map=class extends Wn{constructor(Oe){t.bf.mark(t.bg.create);let R=Object.assign(Object.assign({},fl),Oe);if(R.minZoom!=null&&R.maxZoom!=null&&R.minZoom>R.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(R.minPitch!=null&&R.maxPitch!=null&&R.minPitch>R.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(R.minPitch!=null&&R.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(R.maxPitch!=null&&R.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new xl(R.minZoom,R.maxZoom,R.minPitch,R.maxPitch,R.renderWorldCopies),{bearingSnap:R.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Ri,this._controls=[],this._mapId=t.a4(),this._contextLost=ae=>{ae.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new t.k("webglcontextlost",{originalEvent:ae}))},this._contextRestored=ae=>{this._setupPainter(),this.resize(),this._update(),this.fire(new t.k("webglcontextrestored",{originalEvent:ae}))},this._onMapScroll=ae=>{if(ae.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=R.interactive,this._maxTileCacheSize=R.maxTileCacheSize,this._maxTileCacheZoomLevels=R.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=R.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=R.preserveDrawingBuffer===!0,this._antialias=R.antialias===!0,this._trackResize=R.trackResize===!0,this._bearingSnap=R.bearingSnap,this._refreshExpiredTiles=R.refreshExpiredTiles===!0,this._fadeDuration=R.fadeDuration,this._crossSourceCollisions=R.crossSourceCollisions===!0,this._collectResourceTiming=R.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},vs),R.locale),this._clickTolerance=R.clickTolerance,this._overridePixelRatio=R.pixelRatio,this._maxCanvasSize=R.maxCanvasSize,this.transformCameraUpdate=R.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=R.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=l.addThrottleControl(()=>this.isMoving()),this._requestManager=new _(R.transformRequest),typeof R.container=="string"){if(this._container=document.getElementById(R.container),!this._container)throw new Error(`Container '${R.container}' not found.`)}else{if(!(R.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=R.container}if(R.maxBounds&&this.setMaxBounds(R.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let ae=!1,we=hh(Se=>{this._trackResize&&!this._removed&&(this.resize(Se),this.redraw())},50);this._resizeObserver=new ResizeObserver(Se=>{ae?we(Se):ae=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Kn(this,R),this._hash=R.hash&&new Sh(typeof R.hash=="string"&&R.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:R.center,zoom:R.zoom,bearing:R.bearing,pitch:R.pitch}),R.bounds&&(this.resize(),this.fitBounds(R.bounds,t.e({},R.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=R.localIdeographFontFamily,this._validateStyle=R.validateStyle,R.style&&this.setStyle(R.style,{localIdeographFontFamily:R.localIdeographFontFamily}),R.attributionControl&&this.addControl(new no(typeof R.attributionControl=="boolean"?void 0:R.attributionControl)),R.maplibreLogo&&this.addControl(new en,R.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",ae=>{this._update(ae.dataType==="style"),this.fire(new t.k(`${ae.dataType}data`,ae))}),this.on("dataloading",ae=>{this.fire(new t.k(`${ae.dataType}dataloading`,ae))}),this.on("dataabort",ae=>{this.fire(new t.k("sourcedataabort",ae))})}_getMapId(){return this._mapId}addControl(Oe,R){if(R===void 0&&(R=Oe.getDefaultPosition?Oe.getDefaultPosition():"top-right"),!Oe||!Oe.onAdd)return this.fire(new t.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let ae=Oe.onAdd(this);this._controls.push(Oe);let we=this._controlPositions[R];return R.indexOf("bottom")!==-1?we.insertBefore(ae,we.firstChild):we.appendChild(ae),this}removeControl(Oe){if(!Oe||!Oe.onRemove)return this.fire(new t.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let R=this._controls.indexOf(Oe);return R>-1&&this._controls.splice(R,1),Oe.onRemove(this),this}hasControl(Oe){return this._controls.indexOf(Oe)>-1}calculateCameraOptionsFromTo(Oe,R,ae,we){return we==null&&this.terrain&&(we=this.terrain.getElevationForLngLatZoom(ae,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(Oe,R,ae,we)}resize(Oe){var R;let ae=this._containerDimensions(),we=ae[0],Se=ae[1],De=this._getClampedPixelRatio(we,Se);if(this._resizeCanvas(we,Se,De),this.painter.resize(we,Se,De),this.painter.overLimit()){let bt=this.painter.context.gl;this._maxCanvasSize=[bt.drawingBufferWidth,bt.drawingBufferHeight];let Dt=this._getClampedPixelRatio(we,Se);this._resizeCanvas(we,Se,Dt),this.painter.resize(we,Se,Dt)}this.transform.resize(we,Se),(R=this._requestedCameraState)===null||R===void 0||R.resize(we,Se);let ft=!this._moving;return ft&&(this.stop(),this.fire(new t.k("movestart",Oe)).fire(new t.k("move",Oe))),this.fire(new t.k("resize",Oe)),ft&&this.fire(new t.k("moveend",Oe)),this}_getClampedPixelRatio(Oe,R){let{0:ae,1:we}=this._maxCanvasSize,Se=this.getPixelRatio(),De=Oe*Se,ft=R*Se;return Math.min(De>ae?ae/De:1,ft>we?we/ft:1)*Se}getPixelRatio(){var Oe;return(Oe=this._overridePixelRatio)!==null&&Oe!==void 0?Oe:devicePixelRatio}setPixelRatio(Oe){this._overridePixelRatio=Oe,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(Oe){return this.transform.setMaxBounds(ie.convert(Oe)),this._update()}setMinZoom(Oe){if((Oe=Oe??-2)>=-2&&Oe<=this.transform.maxZoom)return this.transform.minZoom=Oe,this._update(),this.getZoom()<Oe&&this.setZoom(Oe),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")}getMinZoom(){return this.transform.minZoom}setMaxZoom(Oe){if((Oe=Oe??22)>=this.transform.minZoom)return this.transform.maxZoom=Oe,this._update(),this.getZoom()>Oe&&this.setZoom(Oe),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(Oe){if((Oe=Oe??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(Oe>=0&&Oe<=this.transform.maxPitch)return this.transform.minPitch=Oe,this._update(),this.getPitch()<Oe&&this.setPitch(Oe),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")}getMinPitch(){return this.transform.minPitch}setMaxPitch(Oe){if((Oe=Oe??60)>85)throw new Error("maxPitch must be less than or equal to 85");if(Oe>=this.transform.minPitch)return this.transform.maxPitch=Oe,this._update(),this.getPitch()>Oe&&this.setPitch(Oe),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(Oe){return this.transform.renderWorldCopies=Oe,this._update()}project(Oe){return this.transform.locationPoint(t.N.convert(Oe),this.style&&this.terrain)}unproject(Oe){return this.transform.pointLocation(t.P.convert(Oe),this.terrain)}isMoving(){var Oe;return this._moving||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isMoving())}isZooming(){var Oe;return this._zooming||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isZooming())}isRotating(){var Oe;return this._rotating||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isRotating())}_createDelegatedListener(Oe,R,ae){if(Oe==="mouseenter"||Oe==="mouseover"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:De=>{let ft=R.filter(Dt=>this.getLayer(Dt)),bt=ft.length!==0?this.queryRenderedFeatures(De.point,{layers:ft}):[];bt.length?we||(we=!0,ae.call(this,new au(Oe,this,De.originalEvent,{features:bt}))):we=!1},mouseout:()=>{we=!1}}}}if(Oe==="mouseleave"||Oe==="mouseout"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:ft=>{let bt=R.filter(Dt=>this.getLayer(Dt));(bt.length!==0?this.queryRenderedFeatures(ft.point,{layers:bt}):[]).length?we=!0:we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))},mouseout:ft=>{we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))}}}}{let we=Se=>{let De=R.filter(bt=>this.getLayer(bt)),ft=De.length!==0?this.queryRenderedFeatures(Se.point,{layers:De}):[];ft.length&&(Se.features=ft,ae.call(this,Se),delete Se.features)};return{layers:R,listener:ae,delegates:{[Oe]:we}}}}_saveDelegatedListener(Oe,R){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[Oe]=this._delegatedListeners[Oe]||[],this._delegatedListeners[Oe].push(R)}_removeDelegatedListener(Oe,R,ae){if(!this._delegatedListeners||!this._delegatedListeners[Oe])return;let we=this._delegatedListeners[Oe];for(let Se=0;Se<we.length;Se++){let De=we[Se];if(De.listener===ae&&De.layers.length===R.length&&De.layers.every(ft=>R.includes(ft))){for(let ft in De.delegates)this.off(ft,De.delegates[ft]);return void we.splice(Se,1)}}}on(Oe,R,ae){if(ae===void 0)return super.on(Oe,R);let we=this._createDelegatedListener(Oe,typeof R=="string"?[R]:R,ae);this._saveDelegatedListener(Oe,we);for(let Se in we.delegates)this.on(Se,we.delegates[Se]);return this}once(Oe,R,ae){if(ae===void 0)return super.once(Oe,R);let we=typeof R=="string"?[R]:R,Se=this._createDelegatedListener(Oe,we,ae);for(let De in Se.delegates){let ft=Se.delegates[De];Se.delegates[De]=(...bt)=>{this._removeDelegatedListener(Oe,we,ae),ft(...bt)}}this._saveDelegatedListener(Oe,Se);for(let De in Se.delegates)this.once(De,Se.delegates[De]);return this}off(Oe,R,ae){return ae===void 0?super.off(Oe,R):(this._removeDelegatedListener(Oe,typeof R=="string"?[R]:R,ae),this)}queryRenderedFeatures(Oe,R){if(!this.style)return[];let ae,we=Oe instanceof t.P||Array.isArray(Oe),Se=we?Oe:[[0,0],[this.transform.width,this.transform.height]];if(R=R||(we?{}:Oe)||{},Se instanceof t.P||typeof Se[0]=="number")ae=[t.P.convert(Se)];else{let De=t.P.convert(Se[0]),ft=t.P.convert(Se[1]);ae=[De,new t.P(ft.x,De.y),ft,new t.P(De.x,ft.y),De]}return this.style.queryRenderedFeatures(ae,R,this.transform)}querySourceFeatures(Oe,R){return this.style.querySourceFeatures(Oe,R)}setStyle(Oe,R){return(R=t.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},R)).diff!==!1&&R.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&Oe?(this._diffStyle(Oe,R),this):(this._localIdeographFontFamily=R.localIdeographFontFamily,this._updateStyle(Oe,R))}setTransformRequest(Oe){return this._requestManager.setTransformRequest(Oe),this}_getUIString(Oe){let R=this._locale[Oe];if(R==null)throw new Error(`Missing UI string '${Oe}'`);return R}_updateStyle(Oe,R){if(R.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(Oe,R));let ae=this.style&&R.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!Oe)),Oe?(this.style=new Jr(this,R||{}),this.style.setEventedParent(this,{style:this.style}),typeof Oe=="string"?this.style.loadURL(Oe,R,ae):this.style.loadJSON(Oe,R,ae),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Jr(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(Oe,R){if(typeof Oe=="string"){let ae=this._requestManager.transformRequest(Oe,"Style");t.h(ae,new AbortController).then(we=>{this._updateDiff(we.data,R)}).catch(we=>{we&&this.fire(new t.j(we))})}else typeof Oe=="object"&&this._updateDiff(Oe,R)}_updateDiff(Oe,R){try{this.style.setState(Oe,R)&&this._update(!0)}catch(ae){t.w(`Unable to perform style diff: ${ae.message||ae.error||ae}.  Rebuilding the style from scratch.`),this._updateStyle(Oe,R)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():t.w("There is no style added to the map.")}addSource(Oe,R){return this._lazyInitEmptyStyle(),this.style.addSource(Oe,R),this._update(!0)}isSourceLoaded(Oe){let R=this.style&&this.style.sourceCaches[Oe];if(R!==void 0)return R.loaded();this.fire(new t.j(new Error(`There is no source with ID '${Oe}'`)))}setTerrain(Oe){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),Oe){let R=this.style.sourceCaches[Oe.source];if(!R)throw new Error(`cannot load terrain, because there exists no source with ID: ${Oe.source}`);this.terrain===null&&R.reload();for(let ae in this.style._layers){let we=this.style._layers[ae];we.type==="hillshade"&&we.source===Oe.source&&t.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new bs(this.painter,R,Oe),this.painter.renderToTexture=new Hs(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=ae=>{ae.dataType==="style"?this.terrain.sourceCache.freeRtt():ae.dataType==="source"&&ae.tile&&(ae.sourceId!==Oe.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(ae.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new t.k("terrain",{terrain:Oe})),this}getTerrain(){var Oe,R;return(R=(Oe=this.terrain)===null||Oe===void 0?void 0:Oe.options)!==null&&R!==void 0?R:null}areTilesLoaded(){let Oe=this.style&&this.style.sourceCaches;for(let R in Oe){let ae=Oe[R]._tiles;for(let we in ae){let Se=ae[we];if(Se.state!=="loaded"&&Se.state!=="errored")return!1}}return!0}removeSource(Oe){return this.style.removeSource(Oe),this._update(!0)}getSource(Oe){return this.style.getSource(Oe)}addImage(Oe,R,ae={}){let{pixelRatio:we=1,sdf:Se=!1,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt}=ae;if(this._lazyInitEmptyStyle(),!(R instanceof HTMLImageElement||t.b(R))){if(R.width===void 0||R.height===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:cr,height:hr,data:jr}=R,ea=R;return this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},new Uint8Array(jr)),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0,userImage:ea}),ea.onAdd&&ea.onAdd(this,Oe),this}}{let{width:cr,height:hr,data:jr}=i.getImageData(R);this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},jr),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0})}}updateImage(Oe,R){let ae=this.style.getImage(Oe);if(!ae)return this.fire(new t.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let we=R instanceof HTMLImageElement||t.b(R)?i.getImageData(R):R,{width:Se,height:De,data:ft}=we;if(Se===void 0||De===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Se!==ae.data.width||De!==ae.data.height)return this.fire(new t.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let bt=!(R instanceof HTMLImageElement||t.b(R));return ae.data.replace(ft,bt),this.style.updateImage(Oe,ae),this}getImage(Oe){return this.style.getImage(Oe)}hasImage(Oe){return Oe?!!this.style.getImage(Oe):(this.fire(new t.j(new Error("Missing required image id"))),!1)}removeImage(Oe){this.style.removeImage(Oe)}loadImage(Oe){return l.getImage(this._requestManager.transformRequest(Oe,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(Oe,R){return this._lazyInitEmptyStyle(),this.style.addLayer(Oe,R),this._update(!0)}moveLayer(Oe,R){return this.style.moveLayer(Oe,R),this._update(!0)}removeLayer(Oe){return this.style.removeLayer(Oe),this._update(!0)}getLayer(Oe){return this.style.getLayer(Oe)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(Oe,R,ae){return this.style.setLayerZoomRange(Oe,R,ae),this._update(!0)}setFilter(Oe,R,ae={}){return this.style.setFilter(Oe,R,ae),this._update(!0)}getFilter(Oe){return this.style.getFilter(Oe)}setPaintProperty(Oe,R,ae,we={}){return this.style.setPaintProperty(Oe,R,ae,we),this._update(!0)}getPaintProperty(Oe,R){return this.style.getPaintProperty(Oe,R)}setLayoutProperty(Oe,R,ae,we={}){return this.style.setLayoutProperty(Oe,R,ae,we),this._update(!0)}getLayoutProperty(Oe,R){return this.style.getLayoutProperty(Oe,R)}setGlyphs(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(Oe,R),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(Oe,R,ae={}){return this._lazyInitEmptyStyle(),this.style.addSprite(Oe,R,ae,we=>{we||this._update(!0)}),this}removeSprite(Oe){return this._lazyInitEmptyStyle(),this.style.removeSprite(Oe),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setSprite(Oe,R,ae=>{ae||this._update(!0)}),this}setLight(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setLight(Oe,R),this._update(!0)}getLight(){return this.style.getLight()}setSky(Oe){return this._lazyInitEmptyStyle(),this.style.setSky(Oe),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(Oe,R){return this.style.setFeatureState(Oe,R),this._update()}removeFeatureState(Oe,R){return this.style.removeFeatureState(Oe,R),this._update()}getFeatureState(Oe){return this.style.getFeatureState(Oe)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let Oe=0,R=0;return this._container&&(Oe=this._container.clientWidth||400,R=this._container.clientHeight||300),[Oe,R]}_setupContainer(){let Oe=this._container;Oe.classList.add("maplibregl-map");let R=this._canvasContainer=n.create("div","maplibregl-canvas-container",Oe);this._interactive&&R.classList.add("maplibregl-interactive"),this._canvas=n.create("canvas","maplibregl-canvas",R),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let ae=this._containerDimensions(),we=this._getClampedPixelRatio(ae[0],ae[1]);this._resizeCanvas(ae[0],ae[1],we);let Se=this._controlContainer=n.create("div","maplibregl-control-container",Oe),De=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(ft=>{De[ft]=n.create("div",`maplibregl-ctrl-${ft} `,Se)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(Oe,R,ae){this._canvas.width=Math.floor(ae*Oe),this._canvas.height=Math.floor(ae*R),this._canvas.style.width=`${Oe}px`,this._canvas.style.height=`${R}px`}_setupPainter(){let Oe={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},R=null;this._canvas.addEventListener("webglcontextcreationerror",we=>{R={requestedAttributes:Oe},we&&(R.statusMessage=we.statusMessage,R.type=we.type)},{once:!0});let ae=this._canvas.getContext("webgl2",Oe)||this._canvas.getContext("webgl",Oe);if(!ae){let we="Failed to initialize WebGL";throw R?(R.message=we,new Error(JSON.stringify(R))):new Error(we)}this.painter=new xc(ae,this.transform),s.testSupport(ae)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(Oe){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||Oe,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(Oe){return this._update(),this._renderTaskQueue.add(Oe)}_cancelRenderFrame(Oe){this._renderTaskQueue.remove(Oe)}_render(Oe){let R=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(Oe),this._removed)return;let ae=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let Se=this.transform.zoom,De=i.now();this.style.zoomHistory.update(Se,De);let ft=new t.z(Se,{now:De,fadeDuration:R,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),bt=ft.crossFadingFactor();bt===1&&bt===this._crossFadingFactor||(ae=!0,this._crossFadingFactor=bt),this.style.update(ft)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,R,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:R,showPadding:this.showPadding}),this.fire(new t.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,t.bf.mark(t.bg.load),this.fire(new t.k("load"))),this.style&&(this.style.hasTransitions()||ae)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let we=this._sourcesDirty||this._styleDirty||this._placementDirty;return we||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.k("idle")),!this._loaded||this._fullyLoaded||we||(this._fullyLoaded=!0,t.bf.mark(t.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var Oe;this._hash&&this._hash.remove();for(let ae of this._controls)ae.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),l.removeThrottleControl(this._imageQueueHandle),(Oe=this._resizeObserver)===null||Oe===void 0||Oe.disconnect();let R=this.painter.context.gl.getExtension("WEBGL_lose_context");R?.loseContext&&R.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),n.remove(this._canvasContainer),n.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),t.bf.clearMetrics(),this._removed=!0,this.fire(new t.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(Oe=>{t.bf.frame(Oe),this._frameRequest=null,this._render(Oe)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(Oe){this._showTileBoundaries!==Oe&&(this._showTileBoundaries=Oe,this._update())}get showPadding(){return!!this._showPadding}set showPadding(Oe){this._showPadding!==Oe&&(this._showPadding=Oe,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(Oe){this._showCollisionBoxes!==Oe&&(this._showCollisionBoxes=Oe,Oe?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(Oe){this._showOverdrawInspector!==Oe&&(this._showOverdrawInspector=Oe,this._update())}get repaint(){return!!this._repaint}set repaint(Oe){this._repaint!==Oe&&(this._repaint=Oe,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(Oe){this._vertices=Oe,this._update()}get version(){return Il}getCameraTargetElevation(){return this.transform.elevation}},e.MapMouseEvent=au,e.MapTouchEvent=$c,e.MapWheelEvent=Mh,e.Marker=ec,e.NavigationControl=class{constructor(Oe){this._updateZoomButtons=()=>{let R=this._map.getZoom(),ae=R===this._map.getMaxZoom(),we=R===this._map.getMinZoom();this._zoomInButton.disabled=ae,this._zoomOutButton.disabled=we,this._zoomInButton.setAttribute("aria-disabled",ae.toString()),this._zoomOutButton.setAttribute("aria-disabled",we.toString())},this._rotateCompassArrow=()=>{let R=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=R},this._setButtonTitle=(R,ae)=>{let we=this._map._getUIString(`NavigationControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)},this.options=t.e({},Ln,Oe),this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",R=>R.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",R=>this._map.zoomIn({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",R=>this._map.zoomOut({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",R=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:R}):this._map.resetNorth({},{originalEvent:R})}),this._compassIcon=n.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(Oe){return this._map=Oe,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ao(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){n.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(Oe,R){let ae=n.create("button",Oe,this._container);return ae.type="button",ae.addEventListener("click",R),ae}},e.Popup=class extends t.E{constructor(Oe){super(),this.remove=()=>(this._content&&n.remove(this._content),this._container&&(n.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new t.k("close"))),this),this._onMouseUp=R=>{this._update(R.point)},this._onMouseMove=R=>{this._update(R.point)},this._onDrag=R=>{this._update(R.point)},this._update=R=>{var ae;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=n.create("div","maplibregl-popup",this._map.getContainer()),this._tip=n.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let bt of this.options.className.split(" "))this._container.classList.add(bt);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Ts(this._lngLat,this._flatPos,this._map.transform):(ae=this._lngLat)===null||ae===void 0?void 0:ae.wrap(),this._trackPointer&&!R)return;let we=this._flatPos=this._pos=this._trackPointer&&R?R:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&R?R:this._map.transform.locationPoint(this._lngLat));let Se=this.options.anchor,De=hc(this.options.offset);if(!Se){let bt=this._container.offsetWidth,Dt=this._container.offsetHeight,Yt;Yt=we.y+De.bottom.y<Dt?["top"]:we.y>this._map.transform.height-Dt?["bottom"]:[],we.x<bt/2?Yt.push("left"):we.x>this._map.transform.width-bt/2&&Yt.push("right"),Se=Yt.length===0?"bottom":Yt.join("-")}let ft=we.add(De[Se]);this.options.subpixelPositioning||(ft=ft.round()),n.setTransform(this._container,`${nu[Se]} translate(${ft.x}px,${ft.y}px)`),Pu(this._container,Se,"popup")},this._onClose=()=>{this.remove()},this.options=t.e(Object.create(Po),Oe)}addTo(Oe){return this._map&&this.remove(),this._map=Oe,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new t.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(Oe){return this._lngLat=t.N.convert(Oe),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(Oe){return this.setDOMContent(document.createTextNode(Oe))}setHTML(Oe){let R=document.createDocumentFragment(),ae=document.createElement("body"),we;for(ae.innerHTML=Oe;we=ae.firstChild,we;)R.appendChild(we);return this.setDOMContent(R)}getMaxWidth(){var Oe;return(Oe=this._container)===null||Oe===void 0?void 0:Oe.style.maxWidth}setMaxWidth(Oe){return this.options.maxWidth=Oe,this._update(),this}setDOMContent(Oe){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=n.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(Oe),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(Oe){return this._container&&this._container.classList.add(Oe),this}removeClassName(Oe){return this._container&&this._container.classList.remove(Oe),this}setOffset(Oe){return this.options.offset=Oe,this._update(),this}toggleClassName(Oe){if(this._container)return this._container.classList.toggle(Oe)}setSubpixelPositioning(Oe){this.options.subpixelPositioning=Oe}_createCloseButton(){this.options.closeButton&&(this._closeButton=n.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let Oe=this._container.querySelector(Nc);Oe&&Oe.focus()}},e.RasterDEMTileSource=Be,e.RasterTileSource=Ae,e.ScaleControl=class{constructor(Oe){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=R=>{this.options.unit=R,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Iu),Oe)}getDefaultPosition(){return"bottom-left"}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-scale",Oe.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){n.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},e.ScrollZoomHandler=ba,e.Style=Jr,e.TerrainControl=class{constructor(Oe){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=Oe}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=n.create("button","maplibregl-ctrl-terrain",this._container),n.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){n.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},e.TwoFingersTouchPitchHandler=ef,e.TwoFingersTouchRotateHandler=Oc,e.TwoFingersTouchZoomHandler=iu,e.TwoFingersTouchZoomRotateHandler=li,e.VectorTileSource=be,e.VideoSource=it,e.addSourceType=(Oe,R)=>t._(void 0,void 0,void 0,function*(){if(Me(Oe))throw new Error(`A source type called "${Oe}" already exists.`);((ae,we)=>{lt[ae]=we})(Oe,R)}),e.clearPrewarmedResources=function(){let Oe=he;Oe&&(Oe.isPreloaded()&&Oe.numActive()===1?(Oe.release(Q),he=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},e.getMaxParallelImageRequests=function(){return t.a.MAX_PARALLEL_IMAGE_REQUESTS},e.getRTLTextPluginStatus=function(){return tt().getRTLTextPluginStatus()},e.getVersion=function(){return pc},e.getWorkerCount=function(){return ue.workerCount},e.getWorkerUrl=function(){return t.a.WORKER_URL},e.importScriptInWorkers=function(Oe){return Z().broadcast("IS",Oe)},e.prewarm=function(){$().acquire(Q)},e.setMaxParallelImageRequests=function(Oe){t.a.MAX_PARALLEL_IMAGE_REQUESTS=Oe},e.setRTLTextPlugin=function(Oe,R){return tt().setRTLTextPlugin(Oe,R)},e.setWorkerCount=function(Oe){ue.workerCount=Oe},e.setWorkerUrl=function(Oe){t.a.WORKER_URL=Oe}});var M=g;return M})}}),Tq=Ye({"src/plots/map/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=Ck(),M=_g();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s<n.length;s++){var c=n[s].id;if(typeof c=="string"&&c.indexOf(M.traceLayerPrefix)===0){i=c;break}}return i},t.updateLayer=function(i){var n=this.subplot,s=o(i),c=this.lookupBelow(),h=this.findFollowingMapLayerId(c);this.removeLayer(),r(i)&&n.addLayer({id:this.idLayer,source:this.idSource,"source-layer":i.sourcelayer||"",type:i.type,minzoom:i.minzoom,maxzoom:i.maxzoom,layout:s.layout,paint:s.paint},h),this.layerType=i.type,this.below=c},t.updateStyle=function(i){if(r(i)){var n=o(i);this.subplot.setOptions(this.idLayer,"setLayoutProperty",n.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",n.paint)}},t.removeLayer=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer)},t.dispose=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer),i.getSource(this.idSource)&&i.removeSource(this.idSource)};function r(i){if(!i.visible)return!1;var n=i.source;if(Array.isArray(n)&&n.length>0){for(var s=0;s<n.length;s++)if(typeof n[s]!="string"||n[s].length===0)return!1;return!0}return g.isPlainObject(n)||typeof n=="string"&&n.length>0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),Aq=Ye({"src/plots/map/map.js"(X,H){"use strict";var g=wq(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=_g(),p=Tq();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y;u.map?y=new Promise(function(f,P){u.updateMap(m,b,f,P)}):y=new Promise(function(f,P){u.createMap(m,b,f,P)}),d.push(y)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style),L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0})),B={};F.on("styleimagemissing",function(I){var N=I.id;if(!B[N]&&N.includes("-15")){B[N]=!0;var U=new Image(15,15);U.onload=function(){F.addImage(N,U)},U.crossOrigin="Anonymous",U.src="https://unpkg.com/maki@2.1.0/icons/"+N+".svg"}}),F.setTransformRequest(function(I){return I=I.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:I}}),F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var O=[];O.push(new Promise(function(I){F.once("load",I)})),O=O.concat(A.fetchTraceGeoData(m)),Promise.all(O).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y<m.length;y++){var z=m[y][0].trace,F=z._module;typeof z.below=="string"?f=z.below:F.getBelow&&(f=F.getBelow(z,this)),f===""&&(L=!0),P["trace-"+z.uid]=f||""}for(y=0;y<u.length;y++){var B=u[y];typeof B.below=="string"?f=B.below:L?f="traces":f="",P["layout-"+y]=f}var O={},I,N;for(I in P)f=P[I],O[f]?O[f].push(I):O[f]=[I];for(f in O){var U=O[f];if(U.length>1)for(y=0;y<U.length;y++)I=U[y],I.indexOf("trace-")===0?(N=I.split("trace-")[1],this.traceHash[N]&&(this.traceHash[N].below=null)):I.indexOf("layout-")===0&&(N=I.split("layout-")[1],this.layerList[N]&&(this.layerList[N].below=null))}};var _={choroplethmap:0,densitymap:1,scattermap:2};l.updateData=function(m){var b=this.traceHash,d,u,y,f,P=m.slice().sort(function(O,I){return _[O[0].trace.type]-_[I[0].trace.type]});for(y=0;y<P.length;y++){var L=P[y];u=L[0].trace,d=b[u.uid];var z=!1;d&&(d.type===u.type?(d.update(L),z=!0):d.dispose()),!z&&u._module&&(b[u.uid]=u._module.plot(this,L))}var F=Object.keys(b);e:for(y=0;y<F.length;y++){var B=F[y];for(f=0;f<m.length;f++)if(u=m[f][0].trace,B===u.uid)continue e;d=b[B],d.dispose(),delete b[B]}},l.updateLayout=function(m){var b=this.map,d=m[this.id];!this.dragging&&!this.wheeling&&(b.setCenter(E(d.center)),b.setZoom(d.zoom),b.setBearing(d.bearing),b.setPitch(d.pitch)),this.updateLayers(m),this.updateFramework(m),this.updateFx(m),this.map.resize(),this.gd._context._scrollZoom.map?b.scrollZoom.enable():b.scrollZoom.disable()},l.resolveOnRender=function(m){var b=this.map;b.on("render",function d(){b.loaded()&&(b.off("render",d),setTimeout(m,10))})},l.rejectOnError=function(m){var b=this.map;function d(){m(new Error(v.mapOnErrorMsg))}b.once("error",d),b.once("style.error",d),b.once("source.error",d),b.once("tile.error",d),b.once("layer.error",d)},l.createFramework=function(m){var b=this,d=b.div=document.createElement("div");d.id=b.uid,d.style.position="absolute",b.container.appendChild(d),b.xaxis={_id:"x",c2p:function(u){return b.project(u).x}},b.yaxis={_id:"y",c2p:function(u){return b.project(u).y}},b.updateFramework(m),b.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},e.setConvert(b.mockAxis,m)},l.initFx=function(m,b){var d=this,u=d.gd,y=d.map;y.on("moveend",function(L){if(d.map){var z=u._fullLayout;if(L.originalEvent||d.wheeling){var F=z[d.id];M.call("_storeDirectGUIEdit",u.layout,z._preGUI,d.getViewEdits(F));var B=d.getView();F._input.center=F.center=B.center,F._input.zoom=F.zoom=B.zoom,F._input.bearing=F.bearing=B.bearing,F._input.pitch=F.pitch=B.pitch,u.emit("plotly_relayout",d.getViewEditsWithDerived(B))}L.originalEvent&&L.originalEvent.type==="mouseup"?d.dragging=!1:d.wheeling&&(d.wheeling=!1),z&&z._rehover&&z._rehover()}}),y.on("wheel",function(){d.wheeling=!0}),y.on("mousemove",function(L){var z=d.div.getBoundingClientRect(),F=[L.originalEvent.offsetX,L.originalEvent.offsetY];L.target.getBoundingClientRect=function(){return z},d.xaxis.p2c=function(){return y.unproject(F).lng},d.yaxis.p2c=function(){return y.unproject(F).lat},u._fullLayout._rehover=function(){u._fullLayout._hoversubplot===d.id&&u._fullLayout[d.id]&&r.hover(u,L,d.id)},r.hover(u,L,d.id),u._fullLayout._hoversubplot=d.id});function f(){r.loneUnhover(b._hoverlayer)}y.on("dragstart",function(){d.dragging=!0,f()}),y.on("zoomstart",f),y.on("mouseout",function(){u._fullLayout._hoversubplot=null});function P(){var L=d.getView();u.emit("plotly_relayouting",d.getViewEditsWithDerived(L))}y.on("drag",P),y.on("zoom",P),y.on("dblclick",function(){var L=u._fullLayout[d.id];M.call("_storeDirectGUIEdit",u.layout,u._fullLayout._preGUI,d.getViewEdits(L));var z=d.viewInitial;y.setCenter(E(z.center)),y.setZoom(z.zoom),y.setBearing(z.bearing),y.setPitch(z.pitch);var F=d.getView();L._input.center=L.center=F.center,L._input.zoom=L.zoom=F.zoom,L._input.bearing=L.bearing=F.bearing,L._input.pitch=L.pitch=F.pitch,u.emit("plotly_doubleclick",null),u.emit("plotly_relayout",d.getViewEditsWithDerived(F))}),d.clearOutline=function(){c(d.dragOptions),s(d.dragOptions.gd)},d.onClickInPanFn=function(L){return function(z){var F=u._fullLayout.clickmode;F.indexOf("select")>-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;y<u.length;y++)u[y].dispose();for(u=this.layerList=[],y=0;y<d.length;y++)u.push(p(this,y,d[y]))}else for(y=0;y<d.length;y++)u[y].update(d[y])},l.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},l.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},l.setOptions=function(m,b,d){for(var u in d)this.map[b](m,u,d[u])},l.getMapLayers=function(){return this.map.getStyle().layers},l.addLayer=function(m,b){var d=this.map;if(typeof b=="string"){if(b===""){d.addLayer(m,b);return}for(var u=this.getMapLayers(),y=0;y<u.length;y++)if(b===u[y].id){d.addLayer(m,b);return}x.warn(["Trying to add layer with *below* value",b,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}d.addLayer(m)},l.project=function(m){return this.map.project(new g.LngLat(m[0],m[1]))},l.getView=function(){var m=this.map,b=m.getCenter(),d=b.lng,u=b.lat,y={lon:d,lat:u},f=m.getCanvas(),P=parseInt(f.style.width),L=parseInt(f.style.height);return{center:y,zoom:m.getZoom(),bearing:m.getBearing(),pitch:m.getPitch(),_derived:{coordinates:[m.unproject([0,0]).toArray(),m.unproject([P,0]).toArray(),m.unproject([P,L]).toArray(),m.unproject([0,L]).toArray()]}}},l.getViewEdits=function(m){for(var b=this.id,d=["center","zoom","bearing","pitch"],u={},y=0;y<d.length;y++){var f=d[y];u[b+"."+f]=m[f]}return u},l.getViewEditsWithDerived=function(m){var b=this.id,d=this.getViewEdits(m);return d[b+"._derived"]=m._derived,d};function w(m){var b={};return x.isPlainObject(m)?(b.id=m.id,b.style=m):typeof m=="string"?(b.id=m,v.stylesMap[m]?b.style=v.stylesMap[m]:b.style=m):(b.id=v.styleValueDflt,b.style=S(v.styleValueDflt)),b.transition={duration:0,delay:0},b}function S(m){return v.styleUrlPrefix+m+"-"+v.styleUrlSuffix}function E(m){return[m.lon,m.lat]}H.exports=T}}),Sq=Ye({"src/plots/map/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=up(),M=Mx();H.exports=function(o,a,i){x(o,a,i,{type:"map",attributes:M,handleDefaults:e,partition:"y"})};function e(r,o,a){a("style"),a("center.lon"),a("center.lat"),a("zoom"),a("bearing"),a("pitch");var i=a("bounds.west"),n=a("bounds.east"),s=a("bounds.south"),c=a("bounds.north");(i===void 0||n===void 0||s===void 0||c===void 0)&&delete o.bounds,A(r,o,{name:"layers",handleItemDefaults:t}),o._input=r}function t(r,o){function a(v,p){return g.coerce(r,o,M.layers,v,p)}var i=a("visible");if(i){var n=a("sourcetype"),s=n==="raster"||n==="image";a("source"),a("sourceattribution"),n==="vector"&&a("sourcelayer"),n==="image"&&a("coordinates");var c;s&&(c="raster");var h=a("type",c);s&&h!=="raster"&&(h=o.type="raster",g.log("Source types *raster* and *image* must drawn *raster* layer type.")),a("below"),a("color"),a("opacity"),a("minzoom"),a("maxzoom"),h==="circle"&&a("circle.radius"),h==="line"&&(a("line.width"),a("line.dash")),h==="fill"&&a("fill.outlinecolor"),h==="symbol"&&(a("symbol.icon"),a("symbol.iconsize"),a("symbol.text"),g.coerceFont(a,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),a("symbol.textposition"),a("symbol.placement"))}}}}),kT=Ye({"src/plots/map/index.js"(X){"use strict";var H=ta(),g=H.strTranslate,x=H.strScale,A=jh().getSubplotCalcData,M=vd(),e=_n(),t=Bo(),r=jl(),o=Aq(),a="map";X.name=a,X.attr="subplot",X.idRoot=a,X.idRegex=X.attrRegex=H.counterRegex(a),X.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}},X.layoutAttributes=Mx(),X.supplyLayoutDefaults=Sq(),X.plot=function(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[a],v=0;v<h.length;v++){var p=h[v],T=A(c,a,p),l=s[p],_=l._subplot;_||(_=new o(n,p),s[p]._subplot=_),_.viewInitial||(_.viewInitial={center:H.extendFlat({},l.center),zoom:l.zoom,bearing:l.bearing,pitch:l.pitch}),_.plot(T,s,n._promises)}},X.clean=function(i,n,s,c){for(var h=c._subplots[a]||[],v=0;v<h.length;v++){var p=h[v];!n[p]&&c[p]._subplot&&c[p]._subplot.destroy()}},X.toSVG=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=n._size,h=0;h<s.length;h++){var v=n[s[h]],p=v.domain,T=v._subplot,l=T.toImage("png"),_=n._glimages.append("svg:image");_.attr({xmlns:M.svg,"xlink:href":l,x:c.l+c.w*p.x[0],y:c.t+c.h*(1-p.y[1]),width:c.w*(p.x[1]-p.x[0]),height:c.h*(p.y[1]-p.y[0]),preserveAspectRatio:"none"});var w=e.select(v._subplot.div),S=w.select(".maplibregl-ctrl-attrib").text().replace("Improve this map",""),E=n._glimages.append("g"),m=E.append("text");m.text(S).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":S});var b=t.bBox(m.node()),d=c.w*(p.x[1]-p.x[0]);if(b.width>d/2){var u=S.split("|").join("<br>");m.text(u).attr("data-unformatted",u).call(r.convertToTspans,i),b=t.bBox(m.node())}m.attr("transform",g(-3,-b.height+8)),E.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var y=1;b.width+6>d&&(y=d/(b.width+6));var f=[c.l+c.w*p.x[1],c.t+c.h*(1-p.y[0])];E.attr("transform",g(f[0],f[1])+x(y))}},X.updateFx=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=0;c<s.length;c++){var h=n[s[c]]._subplot;h.updateFx(n)}}}}),Mq=Ye({"src/traces/scattermap/index.js"(X,H){"use strict";H.exports={attributes:MT(),supplyDefaults:gq(),colorbar:cp(),formatLabels:kk(),calc:aT(),plot:_q(),hoverPoints:ET().hoverPoints,eventData:xq(),selectPoints:bq(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.update(x)}},moduleType:"trace",name:"scattermap",basePlotModule:kT(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}}}),Eq=Ye({"lib/scattermap.js"(X,H){"use strict";H.exports=Mq()}}),Lk=Ye({"src/traces/choroplethmap/attributes.js"(X,H){"use strict";var g=M1(),x=tu(),A=xs().hovertemplateAttrs,M=Pl(),e=Oo().extendFlat;H.exports=e({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:e({},g.featureidkey,{}),below:{valType:"string",editType:"plot"},text:g.text,hovertext:g.hovertext,marker:{line:{color:e({},g.marker.line.color,{editType:"plot"}),width:e({},g.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:e({},g.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:e({},g.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:e({},g.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:g.hoverinfo,hovertemplate:A({},{keys:["properties"]}),showlegend:e({},M.showlegend,{dflt:!1})},x("",{cLetter:"z",editTypeOverride:"calc"}))}}),kq=Ye({"src/traces/choroplethmap/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Lk();H.exports=function(e,t,r,o){function a(h,v){return g.coerce(e,t,A,h,v)}var i=a("locations"),n=a("z"),s=a("geojson");if(!g.isArrayOrTypedArray(i)||!i.length||!g.isArrayOrTypedArray(n)||!n.length||!(typeof s=="string"&&s!==""||g.isPlainObject(s))){t.visible=!1;return}a("featureidkey"),t._length=Math.min(i.length,n.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),Pk=Ye({"src/traces/choroplethmap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Su(),M=Bo(),e=dg().makeBlank,t=vg();function r(a){var i=a[0].trace,n=i.visible===!0&&i._length!==0,s={layout:{visibility:"none"},paint:{}},c={layout:{visibility:"none"},paint:{}},h=i._opts={fill:s,line:c,geojson:e()};if(!n)return h;var v=t.extractTraceFeature(a);if(!v)return h;var p=A.makeColorScaleFuncFromTrace(i),T=i.marker,l=T.line||{},_;x.isArrayOrTypedArray(T.opacity)&&(_=function(y){var f=y.mo;return g(f)?+x.constrain(f,0,1):0});var w;x.isArrayOrTypedArray(l.color)&&(w=function(y){return y.mlc});var S;x.isArrayOrTypedArray(l.width)&&(S=function(y){return y.mlw});for(var E=0;E<a.length;E++){var m=a[E],b=m.fOut;if(b){var d=b.properties;d.fc=p(m.z),_&&(d.mo=_(m)),w&&(d.mlc=w(m)),S&&(d.mlw=S(m)),m.ct=d.ct,m._polygons=t.feature2polygons(b)}}var u=_?{type:"identity",property:"mo"}:T.opacity;return x.extendFlat(s.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":u}),x.extendFlat(c.paint,{"line-color":w?{type:"identity",property:"mlc"}:l.color,"line-width":S?{type:"identity",property:"mlw"}:l.width,"line-opacity":u}),s.layout.visibility="visible",c.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:v},o(a),h}function o(a){var i=a[0].trace,n=i._opts,s;if(i.selectedpoints){for(var c=M.makeSelectedPointStyleFns(i),h=0;h<a.length;h++){var v=a[h];v.fOut&&(v.fOut.properties.mo2=c.selectedOpacityFn(v))}s={type:"identity",property:"mo2"}}else s=x.isArrayOrTypedArray(i.marker.opacity)?{type:"identity",property:"mo"}:i.marker.opacity;return x.extendFlat(n.fill.paint,{"fill-opacity":s}),x.extendFlat(n.line.paint,{"line-opacity":s}),n}H.exports={convert:r,convertOnSelect:o}}}),Cq=Ye({"src/traces/choroplethmap/plot.js"(X,H){"use strict";var g=Pk().convert,x=Pk().convertOnSelect,A=_g().traceLayerPrefix;function M(t,r){this.type="choroplethmap",this.subplot=t,this.uid=r,this.sourceId="source-"+r,this.layerList=[["fill",A+r+"-fill"],["line",A+r+"-line"]],this.below=null}var e=M.prototype;e.update=function(t){this._update(g(t)),t[0].trace._glTrace=this},e.updateOnSelect=function(t){this._update(x(t))},e._update=function(t){var r=this.subplot,o=this.layerList,a=r.belowLookup["trace-"+this.uid];r.map.getSource(this.sourceId).setData(t.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(t,a),this.below=a);for(var i=0;i<o.length;i++){var n=o[i],s=n[0],c=n[1],h=t[s];r.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&r.setOptions(c,"setPaintProperty",h.paint)}},e._addLayers=function(t,r){for(var o=this.subplot,a=this.layerList,i=this.sourceId,n=0;n<a.length;n++){var s=a[n],c=s[0],h=t[c];o.addLayer({type:c,id:s[1],source:i,layout:h.layout,paint:h.paint},r)}},e._removeLayers=function(){for(var t=this.subplot.map,r=this.layerList,o=r.length-1;o>=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),Lq=Ye({"src/traces/choroplethmap/index.js"(X,H){"use strict";H.exports={attributes:Lk(),supplyDefaults:kq(),colorbar:ag(),calc:sT(),plot:Cq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.updateOnSelect(x)}},getBelow:function(g,x){for(var A=x.getMapLayers(),M=A.length-2;M>=0;M--){var e=A[M].id;if(typeof e=="string"&&e.indexOf("water")===0){for(var t=M+1;t<A.length;t++)if(e=A[t].id,typeof e=="string"&&e.indexOf("plotly-")===-1)return e}}},moduleType:"trace",name:"choroplethmap",basePlotModule:kT(),categories:["map","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_map"}}}}),Pq=Ye({"lib/choroplethmap.js"(X,H){"use strict";H.exports=Lq()}}),Ik=Ye({"src/traces/densitymap/attributes.js"(X,H){"use strict";var g=tu(),x=xs().hovertemplateAttrs,A=Pl(),M=MT(),e=Oo().extendFlat;H.exports=e({lon:M.lon,lat:M.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:M.text,hovertext:M.hovertext,hoverinfo:e({},A.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:x(),showlegend:e({},A.showlegend,{dflt:!1})},g("",{cLetter:"z",editTypeOverride:"calc"}))}}),Iq=Ye({"src/traces/densitymap/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Ik();H.exports=function(e,t,r,o){function a(c,h){return g.coerce(e,t,A,c,h)}var i=a("lon")||[],n=a("lat")||[],s=Math.min(i.length,n.length);if(!s){t.visible=!1;return}t._length=s,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),x(e,t,o,a,{prefix:"",cLetter:"z"})}}}),Rq=Ye({"src/traces/densitymap/calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=jp(),e=ta()._;H.exports=function(r,o){for(var a=o._length,i=new Array(a),n=o.z,s=x(n)&&n.length,c=0;c<a;c++){var h=i[c]={},v=o.lon[c],p=o.lat[c];if(h.lonlat=g(v)&&g(p)?[+v,+p]:[A,A],s){var T=n[c];h.z=g(T)?T:A}}return M(r,o,{vals:s?n:[0,1],containerStr:"",cLetter:"z"}),a&&(i[0].t={labels:{lat:e(r,"lat:")+" ",lon:e(r,"lon:")+" "}}),i}}}),Dq=Ye({"src/traces/densitymap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Su(),e=ks().BADNUM,t=dg().makeBlank;H.exports=function(o){var a=o[0].trace,i=a.visible===!0&&a._length!==0,n={layout:{visibility:"none"},paint:{}},s=a._opts={heatmap:n,geojson:t()};if(!i)return s;var c=[],h,v=a.z,p=a.radius,T=x.isArrayOrTypedArray(v)&&v.length,l=x.isArrayOrTypedArray(p);for(h=0;h<o.length;h++){var _=o[h],w=_.lonlat;if(w[0]!==e){var S={};if(T){var E=_.z;S.z=E!==e?E:0}l&&(S.r=g(p[h])&&p[h]>0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h<b.length;h++)y.push(b[h][0],b[h][1]);var f=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return x.extendFlat(s.heatmap.paint,{"heatmap-weight":T?f:1/(m.max-m.min),"heatmap-color":y,"heatmap-radius":l?{type:"identity",property:"r"}:a.radius,"heatmap-opacity":a.opacity}),s.geojson={type:"FeatureCollection",features:c},s.heatmap.layout.visibility="visible",s}}}),zq=Ye({"src/traces/densitymap/plot.js"(X,H){"use strict";var g=Dq(),x=_g().traceLayerPrefix;function A(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",x+t+"-heatmap"]],this.below=null}var M=A.prototype;M.update=function(e){var t=this.subplot,r=this.layerList,o=g(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(o.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(o,a),this.below=a);for(var i=0;i<r.length;i++){var n=r[i],s=n[0],c=n[1],h=o[s];t.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&t.setOptions(c,"setPaintProperty",h.paint)}},M._addLayers=function(e,t){for(var r=this.subplot,o=this.layerList,a=this.sourceId,i=0;i<o.length;i++){var n=o[i],s=n[0],c=e[s];r.addLayer({type:s,id:n[1],source:a,layout:c.layout,paint:c.paint},t)}},M._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),Fq=Ye({"src/traces/densitymap/hover.js"(X,H){"use strict";var g=Co(),x=ET().hoverPoints,A=ET().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),Oq=Ye({"src/traces/densitymap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),Bq=Ye({"src/traces/densitymap/index.js"(X,H){"use strict";H.exports={attributes:Ik(),supplyDefaults:Iq(),colorbar:ag(),formatLabels:kk(),calc:Rq(),plot:zq(),hoverPoints:Fq(),eventData:Oq(),getBelow:function(g,x){for(var A=x.getMapLayers(),M=0;M<A.length;M++){var e=A[M],t=e.id;if(e.type==="symbol"&&typeof t=="string"&&t.indexOf("plotly-")===-1)return t}},moduleType:"trace",name:"densitymap",basePlotModule:kT(),categories:["map","gl","showLegend"],meta:{hr_name:"density_map"}}}}),Nq=Ye({"lib/densitymap.js"(X,H){"use strict";H.exports=Bq()}}),Rk=Ye({"src/traces/sankey/attributes.js"(X,H){"use strict";var g=Au(),x=Pl(),A=Gf(),M=Yy(),e=Wu().attributes,t=xs().hovertemplateAttrs,r=tu(),o=cl().templatedArray,a=Cc().descriptionOnlyNumbers,i=Oo().extendFlat,n=Ou().overrideAll,s=H.exports=n({hoverinfo:i({},x.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:M.hoverlabel,domain:e({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:a("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:g({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:A.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:M.hoverlabel,hovertemplate:t({},{keys:["value","label"]}),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:A.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:M.hoverlabel,hovertemplate:t({},{keys:["value","label"]}),colorscales:o("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:i(r().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")}}),Uq=Ye({"src/traces/sankey/defaults.js"(X,H){"use strict";var g=ta(),x=Rk(),A=Fn(),M=bh(),e=Wu().defaults,t=S_(),r=cl(),o=up();H.exports=function(n,s,c,h){function v(L,z){return g.coerce(n,s,x,L,z)}var p=g.extendDeep(h.hoverlabel,n.hoverlabel),T=n.node,l=r.newContainer(s,"node");function _(L,z){return g.coerce(T,l,x.node,L,z)}_("label"),_("groups"),_("x"),_("y"),_("pad"),_("thickness"),_("line.color"),_("line.width"),_("hoverinfo",n.hoverinfo),t(T,l,_,p),_("hovertemplate"),_("align");var w=h.colorway,S=function(L){return w[L%w.length]};_("color",l.label.map(function(L,z){return A.addOpacity(S(z),.8)})),_("customdata");var E=n.link||{},m=r.newContainer(s,"link");function b(L,z){return g.coerce(E,m,x.link,L,z)}b("label"),b("arrowlen"),b("source"),b("target"),b("value"),b("line.color"),b("line.width"),b("hoverinfo",n.hoverinfo),t(E,m,b,p),b("hovertemplate");var d=M(h.paper_bgcolor).getLuminance()<.333,u=d?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",y=b("color",u);function f(L){var z=M(L);if(!z.isValid())return L;var F=z.getAlpha();return F<=.8?z.setAlpha(F+.2):z=d?z.brighten():z.darken(),z.toRgbString()}b("hovercolor",Array.isArray(y)?y.map(f):f(y)),b("customdata"),o(E,m,{name:"colorscales",handleItemDefaults:a}),e(s,h,v),v("orientation"),v("valueformat"),v("valuesuffix");var P;l.x.length&&l.y.length&&(P="freeform"),v("arrangement",P),g.coerceFont(v,"textfont",h.font,{autoShadowDflt:!0}),s._length=null};function a(i,n){function s(c,h){return g.coerce(i,n,x.link.colorscales,c,h)}s("label"),s("cmin"),s("cmax"),s("colorscale")}}}),Dk=Ye({"node_modules/strongly-connected-components/scc.js"(X,H){"use strict";H.exports=g;function g(x){for(var A=x.length,M=new Array(A),e=new Array(A),t=new Array(A),r=new Array(A),o=new Array(A),a=new Array(A),i=0;i<A;++i)M[i]=-1,e[i]=0,t[i]=!1,r[i]=0,o[i]=-1,a[i]=[];var n=0,s=[],c=[];function h(l){var _=[l],w=[l];for(M[l]=e[l]=n,t[l]=!0,n+=1;w.length>0;){l=w[w.length-1];var S=x[l];if(r[l]<S.length){for(var E=r[l];E<S.length;++E){var m=S[E];if(M[m]<0){M[m]=e[m]=n,t[m]=!0,n+=1,_.push(m),w.push(m);break}else t[m]&&(e[l]=Math.min(e[l],e[m])|0);o[m]>=0&&a[l].push(o[m])}r[l]=E}else{if(e[l]===M[l]){for(var b=[],d=[],u=0,E=_.length-1;E>=0;--E){var y=_[E];if(t[y]=!1,b.push(y),d.push(a[y]),u+=a[y].length,o[y]=s.length,y===l){_.length=E;break}}s.push(b);for(var f=new Array(u),E=0;E<d.length;E++)for(var P=0;P<d[E].length;P++)f[--u]=d[E][P];c.push(f)}w.pop()}}}for(var i=0;i<A;++i)M[i]<0&&h(i);for(var v,i=0;i<c.length;i++){var p=c[i];if(p.length!==0){p.sort(function(_,w){return _-w}),v=[p[0]];for(var T=1;T<p.length;T++)p[T]!==p[T-1]&&v.push(p[T]);c[i]=v}}return{components:s,adjacencyList:c}}}}),jq=Ye({"src/traces/sankey/calc.js"(X,H){"use strict";var g=Dk(),x=ta(),A=kv().wrap,M=x.isArrayOrTypedArray,e=x.isIndex,t=Su();function r(a){var i=a.node,n=a.link,s=[],c=M(n.color),h=M(n.hovercolor),v=M(n.customdata),p={},T={},l=n.colorscales.length,_;for(_=0;_<l;_++){var w=n.colorscales[_],S=t.extractScale(w,{cLetter:"c"}),E=t.makeColorScaleFunc(S);T[w.label]=E}var m=0;for(_=0;_<n.value.length;_++)n.source[_]>m&&(m=n.source[_]),n.target[_]>m&&(m=n.target[_]);var b=m+1;a.node._count=b;var d,u=a.node.groups,y={};for(_=0;_<u.length;_++){var f=u[_];for(d=0;d<f.length;d++){var P=f[d],L=b+_;y.hasOwnProperty(P)?x.warn("Node "+P+" is already part of a group."):y[P]=L}}var z={source:[],target:[]};for(_=0;_<n.value.length;_++){var F=n.value[_],B=n.source[_],O=n.target[_];if(F>0&&e(B,b)&&e(O,b)&&!(y.hasOwnProperty(B)&&y.hasOwnProperty(O)&&y[B]===y[O])){y.hasOwnProperty(O)&&(O=y[O]),y.hasOwnProperty(B)&&(B=y[B]),B=+B,O=+O,p[B]=p[O]=!0;var I="";n.label&&n.label[_]&&(I=n.label[_]);var N=null;I&&T.hasOwnProperty(I)&&(N=T[I]),s.push({pointNumber:_,label:I,color:c?n.color[_]:n.color,hovercolor:h?n.hovercolor[_]:n.hovercolor,customdata:v?n.customdata[_]:n.customdata,concentrationscale:N,source:B,target:O,value:+F}),z.source.push(B),z.target.push(O)}}var U=b+u.length,W=M(i.color),Q=M(i.customdata),ue=[];for(_=0;_<U;_++)if(p[_]){var se=i.label[_];ue.push({group:_>b-1,childrenNodes:[],pointNumber:_,label:se,color:W?i.color[_]:i.color,customdata:Q?i.customdata[_]:i.customdata})}var he=!1;return o(U,z.source,z.target)&&(he=!0),{circular:he,links:s,nodes:ue,groups:u,groupLookup:y}}function o(a,i,n){for(var s=x.init2dArray(a,0),c=0;c<Math.min(i.length,n.length);c++)if(x.isIndex(i[c],a)&&x.isIndex(n[c],a)){if(i[c]===n[c])return!0;s[i[c]].push(n[c])}var h=g(s);return h.components.some(function(v){return v.length>1})}H.exports=function(i,n){var s=r(n);return A({circular:s.circular,_nodes:s.nodes,_links:s.links,_groups:s.groups,_groupLookup:s.groupLookup})}}}),Vq=Ye({"node_modules/d3-quadtree/dist/d3-quadtree.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){var d=+this._x.call(null,b),u=+this._y.call(null,b);return A(this.cover(d,u),d,u,b)}function A(b,d,u,y){if(isNaN(d)||isNaN(u))return b;var f,P=b._root,L={data:y},z=b._x0,F=b._y0,B=b._x1,O=b._y1,I,N,U,W,Q,ue,se,he;if(!P)return b._root=L,b;for(;P.length;)if((Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N,f=P,!(P=P[se=ue<<1|Q]))return f[se]=L,b;if(U=+b._x.call(null,P.data),W=+b._y.call(null,P.data),d===U&&u===W)return L.next=P,f?f[se]=L:b._root=L,b;do f=f?f[se]=new Array(4):b._root=new Array(4),(Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N;while((se=ue<<1|Q)===(he=(W>=N)<<1|U>=I));return f[he]=P,f[se]=L,b}function M(b){var d,u,y=b.length,f,P,L=new Array(y),z=new Array(y),F=1/0,B=1/0,O=-1/0,I=-1/0;for(u=0;u<y;++u)isNaN(f=+this._x.call(null,d=b[u]))||isNaN(P=+this._y.call(null,d))||(L[u]=f,z[u]=P,f<F&&(F=f),f>O&&(O=f),P<B&&(B=P),P>I&&(I=P));if(F>O||B>I)return this;for(this.cover(F,B).cover(O,I),u=0;u<y;++u)A(this,L[u],z[u],b[u]);return this}function e(b,d){if(isNaN(b=+b)||isNaN(d=+d))return this;var u=this._x0,y=this._y0,f=this._x1,P=this._y1;if(isNaN(u))f=(u=Math.floor(b))+1,P=(y=Math.floor(d))+1;else{for(var L=f-u,z=this._root,F,B;u>b||b>=f||y>d||d>=P;)switch(B=(d<y)<<1|b<u,F=new Array(4),F[B]=z,z=F,L*=2,B){case 0:f=u+L,P=y+L;break;case 1:u=f-L,P=y+L;break;case 2:f=u+L,y=P-L;break;case 3:u=f-L,y=P-L;break}this._root&&this._root.length&&(this._root=z)}return this._x0=u,this._y0=y,this._x1=f,this._y1=P,this}function t(){var b=[];return this.visit(function(d){if(!d.length)do b.push(d.data);while(d=d.next)}),b}function r(b){return arguments.length?this.cover(+b[0][0],+b[0][1]).cover(+b[1][0],+b[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function o(b,d,u,y,f){this.node=b,this.x0=d,this.y0=u,this.x1=y,this.y1=f}function a(b,d,u){var y,f=this._x0,P=this._y0,L,z,F,B,O=this._x1,I=this._y1,N=[],U=this._root,W,Q;for(U&&N.push(new o(U,f,P,O,I)),u==null?u=1/0:(f=b-u,P=d-u,O=b+u,I=d+u,u*=u);W=N.pop();)if(!(!(U=W.node)||(L=W.x0)>O||(z=W.y0)>I||(F=W.x1)<f||(B=W.y1)<P))if(U.length){var ue=(L+F)/2,se=(z+B)/2;N.push(new o(U[3],ue,se,F,B),new o(U[2],L,se,ue,B),new o(U[1],ue,z,F,se),new o(U[0],L,z,ue,se)),(Q=(d>=se)<<1|b>=ue)&&(W=N[N.length-1],N[N.length-1]=N[N.length-1-Q],N[N.length-1-Q]=W)}else{var he=b-+this._x.call(null,U.data),G=d-+this._y.call(null,U.data),$=he*he+G*G;if($<u){var J=Math.sqrt(u=$);f=b-J,P=d-J,O=b+J,I=d+J,y=U.data}}return y}function i(b){if(isNaN(O=+this._x.call(null,b))||isNaN(I=+this._y.call(null,b)))return this;var d,u=this._root,y,f,P,L=this._x0,z=this._y0,F=this._x1,B=this._y1,O,I,N,U,W,Q,ue,se;if(!u)return this;if(u.length)for(;;){if((W=O>=(N=(L+F)/2))?L=N:F=N,(Q=I>=(U=(z+B)/2))?z=U:B=U,d=u,!(u=u[ue=Q<<1|W]))return this;if(!u.length)break;(d[ue+1&3]||d[ue+2&3]||d[ue+3&3])&&(y=d,se=ue)}for(;u.data!==b;)if(f=u,!(u=u.next))return this;return(P=u.next)&&delete u.next,f?(P?f.next=P:delete f.next,this):d?(P?d[ue]=P:delete d[ue],(u=d[0]||d[1]||d[2]||d[3])&&u===(d[3]||d[2]||d[1]||d[0])&&!u.length&&(y?y[se]=u:this._root=u),this):(this._root=P,this)}function n(b){for(var d=0,u=b.length;d<u;++d)this.remove(b[d]);return this}function s(){return this._root}function c(){var b=0;return this.visit(function(d){if(!d.length)do++b;while(d=d.next)}),b}function h(b){var d=[],u,y=this._root,f,P,L,z,F;for(y&&d.push(new o(y,this._x0,this._y0,this._x1,this._y1));u=d.pop();)if(!b(y=u.node,P=u.x0,L=u.y0,z=u.x1,F=u.y1)&&y.length){var B=(P+z)/2,O=(L+F)/2;(f=y[3])&&d.push(new o(f,B,O,z,F)),(f=y[2])&&d.push(new o(f,P,O,B,F)),(f=y[1])&&d.push(new o(f,B,L,z,O)),(f=y[0])&&d.push(new o(f,P,L,B,O))}return this}function v(b){var d=[],u=[],y;for(this._root&&d.push(new o(this._root,this._x0,this._y0,this._x1,this._y1));y=d.pop();){var f=y.node;if(f.length){var P,L=y.x0,z=y.y0,F=y.x1,B=y.y1,O=(L+F)/2,I=(z+B)/2;(P=f[0])&&d.push(new o(P,L,z,O,I)),(P=f[1])&&d.push(new o(P,O,z,F,I)),(P=f[2])&&d.push(new o(P,L,I,O,B)),(P=f[3])&&d.push(new o(P,O,I,F,B))}u.push(y)}for(;y=u.pop();)b(y.node,y.x0,y.y0,y.x1,y.y1);return this}function p(b){return b[0]}function T(b){return arguments.length?(this._x=b,this):this._x}function l(b){return b[1]}function _(b){return arguments.length?(this._y=b,this):this._y}function w(b,d,u){var y=new S(d??p,u??l,NaN,NaN,NaN,NaN);return b==null?y:y.addAll(b)}function S(b,d,u,y,f,P){this._x=b,this._y=d,this._x0=u,this._y0=y,this._x1=f,this._y1=P,this._root=void 0}function E(b){for(var d={data:b.data},u=d;b=b.next;)u=u.next={data:b.data};return d}var m=w.prototype=S.prototype;m.copy=function(){var b=new S(this._x,this._y,this._x0,this._y0,this._x1,this._y1),d=this._root,u,y;if(!d)return b;if(!d.length)return b._root=E(d),b;for(u=[{source:d,target:b._root=new Array(4)}];d=u.pop();)for(var f=0;f<4;++f)(y=d.source[f])&&(y.length?u.push({source:y,target:d.target[f]=new Array(4)}):d.target[f]=E(y));return b},m.add=x,m.addAll=M,m.cover=e,m.data=t,m.extent=r,m.find=a,m.remove=i,m.removeAll=n,m.root=s,m.size=c,m.visit=h,m.visitAfter=v,m.x=T,m.y=_,g.quadtree=w,Object.defineProperty(g,"__esModule",{value:!0})})}}),CT=Ye({"node_modules/d3-collection/dist/d3-collection.js"(X,H){(function(g,x){x(typeof X=="object"&&typeof H<"u"?X:g.d3=g.d3||{})})(X,function(g){"use strict";var x="$";function A(){}A.prototype=M.prototype={constructor:A,has:function(p){return x+p in this},get:function(p){return this[x+p]},set:function(p,T){return this[x+p]=T,this},remove:function(p){var T=x+p;return T in this&&delete this[T]},clear:function(){for(var p in this)p[0]===x&&delete this[p]},keys:function(){var p=[];for(var T in this)T[0]===x&&p.push(T.slice(1));return p},values:function(){var p=[];for(var T in this)T[0]===x&&p.push(this[T]);return p},entries:function(){var p=[];for(var T in this)T[0]===x&&p.push({key:T.slice(1),value:this[T]});return p},size:function(){var p=0;for(var T in this)T[0]===x&&++p;return p},empty:function(){for(var p in this)if(p[0]===x)return!1;return!0},each:function(p){for(var T in this)T[0]===x&&p(this[T],T.slice(1),this)}};function M(p,T){var l=new A;if(p instanceof A)p.each(function(m,b){l.set(b,m)});else if(Array.isArray(p)){var _=-1,w=p.length,S;if(T==null)for(;++_<w;)l.set(_,p[_]);else for(;++_<w;)l.set(T(S=p[_],_,p),S)}else if(p)for(var E in p)l.set(E,p[E]);return l}function e(){var p=[],T=[],l,_,w;function S(m,b,d,u){if(b>=p.length)return l!=null&&m.sort(l),_!=null?_(m):m;for(var y=-1,f=m.length,P=p[b++],L,z,F=M(),B,O=d();++y<f;)(B=F.get(L=P(z=m[y])+""))?B.push(z):F.set(L,[z]);return F.each(function(I,N){u(O,N,S(I,b,d,u))}),O}function E(m,b){if(++b>p.length)return m;var d,u=T[b-1];return _!=null&&b>=p.length?d=m.entries():(d=[],m.each(function(y,f){d.push({key:f,values:E(y,b)})})),u!=null?d.sort(function(y,f){return u(y.key,f.key)}):d}return w={object:function(m){return S(m,0,t,r)},map:function(m){return S(m,0,o,a)},entries:function(m){return E(S(m,0,o,a),0)},key:function(m){return p.push(m),w},sortKeys:function(m){return T[p.length-1]=m,w},sortValues:function(m){return l=m,w},rollup:function(m){return _=m,w}}}function t(){return{}}function r(p,T,l){p[T]=l}function o(){return M()}function a(p,T,l){p.set(T,l)}function i(){}var n=M.prototype;i.prototype=s.prototype={constructor:i,has:n.has,add:function(p){return p+="",this[x+p]=p,this},remove:n.remove,clear:n.clear,values:n.keys,size:n.size,empty:n.empty,each:n.each};function s(p,T){var l=new i;if(p instanceof i)p.each(function(S){l.add(S)});else if(p){var _=-1,w=p.length;if(T==null)for(;++_<w;)l.add(p[_]);else for(;++_<w;)l.add(T(p[_],_,p))}return l}function c(p){var T=[];for(var l in p)T.push(l);return T}function h(p){var T=[];for(var l in p)T.push(p[l]);return T}function v(p){var T=[];for(var l in p)T.push({key:l,value:p[l]});return T}g.nest=e,g.set=s,g.map=M,g.keys=c,g.values=h,g.entries=v,Object.defineProperty(g,"__esModule",{value:!0})})}}),qq=Ye({"node_modules/d3-dispatch/dist/d3-dispatch.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x={value:function(){}};function A(){for(var o=0,a=arguments.length,i={},n;o<a;++o){if(!(n=arguments[o]+"")||n in i||/[\s.]/.test(n))throw new Error("illegal type: "+n);i[n]=[]}return new M(i)}function M(o){this._=o}function e(o,a){return o.trim().split(/^|\s+/).map(function(i){var n="",s=i.indexOf(".");if(s>=0&&(n=i.slice(s+1),i=i.slice(0,s)),i&&!a.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:n}})}M.prototype=A.prototype={constructor:M,on:function(o,a){var i=this._,n=e(o+"",i),s,c=-1,h=n.length;if(arguments.length<2){for(;++c<h;)if((s=(o=n[c]).type)&&(s=t(i[s],o.name)))return s;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++c<h;)if(s=(o=n[c]).type)i[s]=r(i[s],o.name,a);else if(a==null)for(s in i)i[s]=r(i[s],o.name,null);return this},copy:function(){var o={},a=this._;for(var i in a)o[i]=a[i].slice();return new M(o)},call:function(o,a){if((s=arguments.length-2)>0)for(var i=new Array(s),n=0,s,c;n<s;++n)i[n]=arguments[n+2];if(!this._.hasOwnProperty(o))throw new Error("unknown type: "+o);for(c=this._[o],n=0,s=c.length;n<s;++n)c[n].value.apply(a,i)},apply:function(o,a,i){if(!this._.hasOwnProperty(o))throw new Error("unknown type: "+o);for(var n=this._[o],s=0,c=n.length;s<c;++s)n[s].value.apply(a,i)}};function t(o,a){for(var i=0,n=o.length,s;i<n;++i)if((s=o[i]).name===a)return s.value}function r(o,a,i){for(var n=0,s=o.length;n<s;++n)if(o[n].name===a){o[n]=x,o=o.slice(0,n).concat(o.slice(n+1));break}return i!=null&&o.push({name:a,value:i}),o}g.dispatch=A,Object.defineProperty(g,"__esModule",{value:!0})})}}),Hq=Ye({"node_modules/d3-timer/dist/d3-timer.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=0,A=0,M=0,e=1e3,t,r,o=0,a=0,i=0,n=typeof performance=="object"&&performance.now?performance:Date,s=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(b){setTimeout(b,17)};function c(){return a||(s(h),a=n.now()+i)}function h(){a=0}function v(){this._call=this._time=this._next=null}v.prototype=p.prototype={constructor:v,restart:function(b,d,u){if(typeof b!="function")throw new TypeError("callback is not a function");u=(u==null?c():+u)+(d==null?0:+d),!this._next&&r!==this&&(r?r._next=this:t=this,r=this),this._call=b,this._time=u,S()},stop:function(){this._call&&(this._call=null,this._time=1/0,S())}};function p(b,d,u){var y=new v;return y.restart(b,d,u),y}function T(){c(),++x;for(var b=t,d;b;)(d=a-b._time)>=0&&b._call.call(null,d),b=b._next;--x}function l(){a=(o=n.now())+i,x=A=0;try{T()}finally{x=0,w(),a=0}}function _(){var b=n.now(),d=b-o;d>e&&(i-=d,o=b)}function w(){for(var b,d=t,u,y=1/0;d;)d._call?(y>d._time&&(y=d._time),b=d,d=d._next):(u=d._next,d._next=null,d=b?b._next=u:t=u);r=b,S(y)}function S(b){if(!x){A&&(A=clearTimeout(A));var d=b-a;d>24?(b<1/0&&(A=setTimeout(l,b-n.now()-i)),M&&(M=clearInterval(M))):(M||(o=n.now(),M=setInterval(_,e)),x=1,s(l))}}function E(b,d,u){var y=new v;return d=d==null?0:+d,y.restart(function(f){y.stop(),b(f+d)},d,u),y}function m(b,d,u){var y=new v,f=d;return d==null?(y.restart(b,d,u),y):(d=+d,u=u==null?c():+u,y.restart(function P(L){L+=f,y.restart(P,f+=d,u),b(L)},d,u),y)}g.interval=m,g.now=c,g.timeout=E,g.timer=p,g.timerFlush=T,Object.defineProperty(g,"__esModule",{value:!0})})}}),Gq=Ye({"node_modules/d3-force/dist/d3-force.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Vq(),CT(),qq(),Hq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,g.d3)})(X,function(g,x,A,M,e){"use strict";function t(b,d){var u;b==null&&(b=0),d==null&&(d=0);function y(){var f,P=u.length,L,z=0,F=0;for(f=0;f<P;++f)L=u[f],z+=L.x,F+=L.y;for(z=z/P-b,F=F/P-d,f=0;f<P;++f)L=u[f],L.x-=z,L.y-=F}return y.initialize=function(f){u=f},y.x=function(f){return arguments.length?(b=+f,y):b},y.y=function(f){return arguments.length?(d=+f,y):d},y}function r(b){return function(){return b}}function o(){return(Math.random()-.5)*1e-6}function a(b){return b.x+b.vx}function i(b){return b.y+b.vy}function n(b){var d,u,y=1,f=1;typeof b!="function"&&(b=r(b==null?1:+b));function P(){for(var F,B=d.length,O,I,N,U,W,Q,ue=0;ue<f;++ue)for(O=x.quadtree(d,a,i).visitAfter(L),F=0;F<B;++F)I=d[F],W=u[I.index],Q=W*W,N=I.x+I.vx,U=I.y+I.vy,O.visit(se);function se(he,G,$,J,Z){var re=he.data,ne=he.r,j=W+ne;if(re){if(re.index>I.index){var ee=N-re.x-re.vx,ie=U-re.y-re.vy,fe=ee*ee+ie*ie;fe<j*j&&(ee===0&&(ee=o(),fe+=ee*ee),ie===0&&(ie=o(),fe+=ie*ie),fe=(j-(fe=Math.sqrt(fe)))/fe*y,I.vx+=(ee*=fe)*(j=(ne*=ne)/(Q+ne)),I.vy+=(ie*=fe)*j,re.vx-=ee*(j=1-j),re.vy-=ie*j)}return}return G>N+j||J<N-j||$>U+j||Z<U-j}}function L(F){if(F.data)return F.r=u[F.data.index];for(var B=F.r=0;B<4;++B)F[B]&&F[B].r>F.r&&(F.r=F[B].r)}function z(){if(d){var F,B=d.length,O;for(u=new Array(B),F=0;F<B;++F)O=d[F],u[O.index]=+b(O,F,d)}}return P.initialize=function(F){d=F,z()},P.iterations=function(F){return arguments.length?(f=+F,P):f},P.strength=function(F){return arguments.length?(y=+F,P):y},P.radius=function(F){return arguments.length?(b=typeof F=="function"?F:r(+F),z(),P):b},P}function s(b){return b.index}function c(b,d){var u=b.get(d);if(!u)throw new Error("missing: "+d);return u}function h(b){var d=s,u=O,y,f=r(30),P,L,z,F,B=1;b==null&&(b=[]);function O(Q){return 1/Math.min(z[Q.source.index],z[Q.target.index])}function I(Q){for(var ue=0,se=b.length;ue<B;++ue)for(var he=0,G,$,J,Z,re,ne,j;he<se;++he)G=b[he],$=G.source,J=G.target,Z=J.x+J.vx-$.x-$.vx||o(),re=J.y+J.vy-$.y-$.vy||o(),ne=Math.sqrt(Z*Z+re*re),ne=(ne-P[he])/ne*Q*y[he],Z*=ne,re*=ne,J.vx-=Z*(j=F[he]),J.vy-=re*j,$.vx+=Z*(j=1-j),$.vy+=re*j}function N(){if(L){var Q,ue=L.length,se=b.length,he=A.map(L,d),G;for(Q=0,z=new Array(ue);Q<se;++Q)G=b[Q],G.index=Q,typeof G.source!="object"&&(G.source=c(he,G.source)),typeof G.target!="object"&&(G.target=c(he,G.target)),z[G.source.index]=(z[G.source.index]||0)+1,z[G.target.index]=(z[G.target.index]||0)+1;for(Q=0,F=new Array(se);Q<se;++Q)G=b[Q],F[Q]=z[G.source.index]/(z[G.source.index]+z[G.target.index]);y=new Array(se),U(),P=new Array(se),W()}}function U(){if(L)for(var Q=0,ue=b.length;Q<ue;++Q)y[Q]=+u(b[Q],Q,b)}function W(){if(L)for(var Q=0,ue=b.length;Q<ue;++Q)P[Q]=+f(b[Q],Q,b)}return I.initialize=function(Q){L=Q,N()},I.links=function(Q){return arguments.length?(b=Q,N(),I):b},I.id=function(Q){return arguments.length?(d=Q,I):d},I.iterations=function(Q){return arguments.length?(B=+Q,I):B},I.strength=function(Q){return arguments.length?(u=typeof Q=="function"?Q:r(+Q),U(),I):u},I.distance=function(Q){return arguments.length?(f=typeof Q=="function"?Q:r(+Q),W(),I):f},I}function v(b){return b.x}function p(b){return b.y}var T=10,l=Math.PI*(3-Math.sqrt(5));function _(b){var d,u=1,y=.001,f=1-Math.pow(y,1/300),P=0,L=.6,z=A.map(),F=e.timer(O),B=M.dispatch("tick","end");b==null&&(b=[]);function O(){I(),B.call("tick",d),u<y&&(F.stop(),B.call("end",d))}function I(W){var Q,ue=b.length,se;W===void 0&&(W=1);for(var he=0;he<W;++he)for(u+=(P-u)*f,z.each(function(G){G(u)}),Q=0;Q<ue;++Q)se=b[Q],se.fx==null?se.x+=se.vx*=L:(se.x=se.fx,se.vx=0),se.fy==null?se.y+=se.vy*=L:(se.y=se.fy,se.vy=0);return d}function N(){for(var W=0,Q=b.length,ue;W<Q;++W){if(ue=b[W],ue.index=W,ue.fx!=null&&(ue.x=ue.fx),ue.fy!=null&&(ue.y=ue.fy),isNaN(ue.x)||isNaN(ue.y)){var se=T*Math.sqrt(W),he=W*l;ue.x=se*Math.cos(he),ue.y=se*Math.sin(he)}(isNaN(ue.vx)||isNaN(ue.vy))&&(ue.vx=ue.vy=0)}}function U(W){return W.initialize&&W.initialize(b),W}return N(),d={tick:I,restart:function(){return F.restart(O),d},stop:function(){return F.stop(),d},nodes:function(W){return arguments.length?(b=W,N(),z.each(U),d):b},alpha:function(W){return arguments.length?(u=+W,d):u},alphaMin:function(W){return arguments.length?(y=+W,d):y},alphaDecay:function(W){return arguments.length?(f=+W,d):+f},alphaTarget:function(W){return arguments.length?(P=+W,d):P},velocityDecay:function(W){return arguments.length?(L=1-W,d):1-L},force:function(W,Q){return arguments.length>1?(Q==null?z.remove(W):z.set(W,U(Q)),d):z.get(W)},find:function(W,Q,ue){var se=0,he=b.length,G,$,J,Z,re;for(ue==null?ue=1/0:ue*=ue,se=0;se<he;++se)Z=b[se],G=W-Z.x,$=Q-Z.y,J=G*G+$*$,J<ue&&(re=Z,ue=J);return re},on:function(W,Q){return arguments.length>1?(B.on(W,Q),d):B.on(W)}}}function w(){var b,d,u,y=r(-30),f,P=1,L=1/0,z=.81;function F(N){var U,W=b.length,Q=x.quadtree(b,v,p).visitAfter(O);for(u=N,U=0;U<W;++U)d=b[U],Q.visit(I)}function B(){if(b){var N,U=b.length,W;for(f=new Array(U),N=0;N<U;++N)W=b[N],f[W.index]=+y(W,N,b)}}function O(N){var U=0,W,Q,ue=0,se,he,G;if(N.length){for(se=he=G=0;G<4;++G)(W=N[G])&&(Q=Math.abs(W.value))&&(U+=W.value,ue+=Q,se+=Q*W.x,he+=Q*W.y);N.x=se/ue,N.y=he/ue}else{W=N,W.x=W.data.x,W.y=W.data.y;do U+=f[W.data.index];while(W=W.next)}N.value=U}function I(N,U,W,Q){if(!N.value)return!0;var ue=N.x-d.x,se=N.y-d.y,he=Q-U,G=ue*ue+se*se;if(he*he/z<G)return G<L&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),G<P&&(G=Math.sqrt(P*G)),d.vx+=ue*N.value*u/G,d.vy+=se*N.value*u/G),!0;if(N.length||G>=L)return;(N.data!==d||N.next)&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),G<P&&(G=Math.sqrt(P*G)));do N.data!==d&&(he=f[N.data.index]*u/G,d.vx+=ue*he,d.vy+=se*he);while(N=N.next)}return F.initialize=function(N){b=N,B()},F.strength=function(N){return arguments.length?(y=typeof N=="function"?N:r(+N),B(),F):y},F.distanceMin=function(N){return arguments.length?(P=N*N,F):Math.sqrt(P)},F.distanceMax=function(N){return arguments.length?(L=N*N,F):Math.sqrt(L)},F.theta=function(N){return arguments.length?(z=N*N,F):Math.sqrt(z)},F}function S(b,d,u){var y,f=r(.1),P,L;typeof b!="function"&&(b=r(+b)),d==null&&(d=0),u==null&&(u=0);function z(B){for(var O=0,I=y.length;O<I;++O){var N=y[O],U=N.x-d||1e-6,W=N.y-u||1e-6,Q=Math.sqrt(U*U+W*W),ue=(L[O]-Q)*P[O]*B/Q;N.vx+=U*ue,N.vy+=W*ue}}function F(){if(y){var B,O=y.length;for(P=new Array(O),L=new Array(O),B=0;B<O;++B)L[B]=+b(y[B],B,y),P[B]=isNaN(L[B])?0:+f(y[B],B,y)}}return z.initialize=function(B){y=B,F()},z.strength=function(B){return arguments.length?(f=typeof B=="function"?B:r(+B),F(),z):f},z.radius=function(B){return arguments.length?(b=typeof B=="function"?B:r(+B),F(),z):b},z.x=function(B){return arguments.length?(d=+B,z):d},z.y=function(B){return arguments.length?(u=+B,z):u},z}function E(b){var d=r(.1),u,y,f;typeof b!="function"&&(b=r(b==null?0:+b));function P(z){for(var F=0,B=u.length,O;F<B;++F)O=u[F],O.vx+=(f[F]-O.x)*y[F]*z}function L(){if(u){var z,F=u.length;for(y=new Array(F),f=new Array(F),z=0;z<F;++z)y[z]=isNaN(f[z]=+b(u[z],z,u))?0:+d(u[z],z,u)}}return P.initialize=function(z){u=z,L()},P.strength=function(z){return arguments.length?(d=typeof z=="function"?z:r(+z),L(),P):d},P.x=function(z){return arguments.length?(b=typeof z=="function"?z:r(+z),L(),P):b},P}function m(b){var d=r(.1),u,y,f;typeof b!="function"&&(b=r(b==null?0:+b));function P(z){for(var F=0,B=u.length,O;F<B;++F)O=u[F],O.vy+=(f[F]-O.y)*y[F]*z}function L(){if(u){var z,F=u.length;for(y=new Array(F),f=new Array(F),z=0;z<F;++z)y[z]=isNaN(f[z]=+b(u[z],z,u))?0:+d(u[z],z,u)}}return P.initialize=function(z){u=z,L()},P.strength=function(z){return arguments.length?(d=typeof z=="function"?z:r(+z),L(),P):d},P.y=function(z){return arguments.length?(b=typeof z=="function"?z:r(+z),L(),P):b},P}g.forceCenter=t,g.forceCollide=n,g.forceLink=h,g.forceManyBody=w,g.forceRadial=S,g.forceSimulation=_,g.forceX=E,g.forceY=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),Wq=Ye({"node_modules/d3-path/dist/d3-path.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=Math.PI,A=2*x,M=1e-6,e=A-M;function t(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function r(){return new t}t.prototype=r.prototype={constructor:t,moveTo:function(o,a){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(o,a){this._+="L"+(this._x1=+o)+","+(this._y1=+a)},quadraticCurveTo:function(o,a,i,n){this._+="Q"+ +o+","+ +a+","+(this._x1=+i)+","+(this._y1=+n)},bezierCurveTo:function(o,a,i,n,s,c){this._+="C"+ +o+","+ +a+","+ +i+","+ +n+","+(this._x1=+s)+","+(this._y1=+c)},arcTo:function(o,a,i,n,s){o=+o,a=+a,i=+i,n=+n,s=+s;var c=this._x1,h=this._y1,v=i-o,p=n-a,T=c-o,l=h-a,_=T*T+l*l;if(s<0)throw new Error("negative radius: "+s);if(this._x1===null)this._+="M"+(this._x1=o)+","+(this._y1=a);else if(_>M)if(!(Math.abs(l*v-p*T)>M)||!s)this._+="L"+(this._x1=o)+","+(this._y1=a);else{var w=i-c,S=n-h,E=v*v+p*p,m=w*w+S*S,b=Math.sqrt(E),d=Math.sqrt(_),u=s*Math.tan((x-Math.acos((E+_-m)/(2*b*d)))/2),y=u/d,f=u/b;Math.abs(y-1)>M&&(this._+="L"+(o+y*T)+","+(a+y*l)),this._+="A"+s+","+s+",0,0,"+ +(l*w>T*S)+","+(this._x1=o+f*v)+","+(this._y1=a+f*p)}},arc:function(o,a,i,n,s,c){o=+o,a=+a,i=+i,c=!!c;var h=i*Math.cos(n),v=i*Math.sin(n),p=o+h,T=a+v,l=1^c,_=c?n-s:s-n;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+p+","+T:(Math.abs(this._x1-p)>M||Math.abs(this._y1-T)>M)&&(this._+="L"+p+","+T),i&&(_<0&&(_=_%A+A),_>e?this._+="A"+i+","+i+",0,1,"+l+","+(o-h)+","+(a-v)+"A"+i+","+i+",0,1,"+l+","+(this._x1=p)+","+(this._y1=T):_>M&&(this._+="A"+i+","+i+",0,"+ +(_>=x)+","+l+","+(this._x1=o+i*Math.cos(s))+","+(this._y1=a+i*Math.sin(s))))},rect:function(o,a,i,n){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)+"h"+ +i+"v"+ +n+"h"+-i+"Z"},toString:function(){return this._}},g.path=r,Object.defineProperty(g,"__esModule",{value:!0})})}}),zk=Ye({"node_modules/d3-shape/dist/d3-shape.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Wq()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(kt){return function(){return kt}}var M=Math.abs,e=Math.atan2,t=Math.cos,r=Math.max,o=Math.min,a=Math.sin,i=Math.sqrt,n=1e-12,s=Math.PI,c=s/2,h=2*s;function v(kt){return kt>1?0:kt<-1?s:Math.acos(kt)}function p(kt){return kt>=1?c:kt<=-1?-c:Math.asin(kt)}function T(kt){return kt.innerRadius}function l(kt){return kt.outerRadius}function _(kt){return kt.startAngle}function w(kt){return kt.endAngle}function S(kt){return kt&&kt.padAngle}function E(kt,ir,mr,$r,ma,Ba,Ca,da){var Sa=mr-kt,Ti=$r-ir,ai=Ca-ma,an=da-Ba,sn=an*Sa-ai*Ti;if(!(sn*sn<n))return sn=(ai*(ir-Ba)-an*(kt-ma))/sn,[kt+sn*Sa,ir+sn*Ti]}function m(kt,ir,mr,$r,ma,Ba,Ca){var da=kt-mr,Sa=ir-$r,Ti=(Ca?Ba:-Ba)/i(da*da+Sa*Sa),ai=Ti*Sa,an=-Ti*da,sn=kt+ai,Mn=ir+an,On=mr+ai,$n=$r+an,Cn=(sn+On)/2,Lo=(Mn+$n)/2,Xi=On-sn,Jo=$n-Mn,zo=Xi*Xi+Jo*Jo,as=ma-Ba,Pn=sn*$n-On*Mn,go=(Jo<0?-1:1)*i(r(0,as*as*zo-Pn*Pn)),In=(Pn*Jo-Xi*go)/zo,Do=(-Pn*Xi-Jo*go)/zo,Ho=(Pn*Jo+Xi*go)/zo,Qo=(-Pn*Xi+Jo*go)/zo,Xn=In-Cn,po=Do-Lo,ys=Ho-Cn,Is=Qo-Lo;return Xn*Xn+po*po>ys*ys+Is*Is&&(In=Ho,Do=Qo),{cx:In,cy:Do,x01:-ai,y01:-an,x11:In*(ma/as-1),y11:Do*(ma/as-1)}}function b(){var kt=T,ir=l,mr=A(0),$r=null,ma=_,Ba=w,Ca=S,da=null;function Sa(){var Ti,ai,an=+kt.apply(this,arguments),sn=+ir.apply(this,arguments),Mn=ma.apply(this,arguments)-c,On=Ba.apply(this,arguments)-c,$n=M(On-Mn),Cn=On>Mn;if(da||(da=Ti=x.path()),sn<an&&(ai=sn,sn=an,an=ai),!(sn>n))da.moveTo(0,0);else if($n>h-n)da.moveTo(sn*t(Mn),sn*a(Mn)),da.arc(0,0,sn,Mn,On,!Cn),an>n&&(da.moveTo(an*t(On),an*a(On)),da.arc(0,0,an,On,Mn,Cn));else{var Lo=Mn,Xi=On,Jo=Mn,zo=On,as=$n,Pn=$n,go=Ca.apply(this,arguments)/2,In=go>n&&($r?+$r.apply(this,arguments):i(an*an+sn*sn)),Do=o(M(sn-an)/2,+mr.apply(this,arguments)),Ho=Do,Qo=Do,Xn,po;if(In>n){var ys=p(In/an*a(go)),Is=p(In/sn*a(go));(as-=ys*2)>n?(ys*=Cn?1:-1,Jo+=ys,zo-=ys):(as=0,Jo=zo=(Mn+On)/2),(Pn-=Is*2)>n?(Is*=Cn?1:-1,Lo+=Is,Xi-=Is):(Pn=0,Lo=Xi=(Mn+On)/2)}var Fs=sn*t(Lo),$o=sn*a(Lo),fi=an*t(zo),mn=an*a(zo);if(Do>n){var ol=sn*t(Xi),Os=sn*a(Xi),so=an*t(Jo),Ns=an*a(Jo),fs;if($n<s&&(fs=E(Fs,$o,so,Ns,ol,Os,fi,mn))){var al=Fs-fs[0],vl=$o-fs[1],ji=ol-fs[0],To=Os-fs[1],Yn=1/a(v((al*ji+vl*To)/(i(al*al+vl*vl)*i(ji*ji+To*To)))/2),_s=i(fs[0]*fs[0]+fs[1]*fs[1]);Ho=o(Do,(an-_s)/(Yn-1)),Qo=o(Do,(sn-_s)/(Yn+1))}}Pn>n?Qo>n?(Xn=m(so,Ns,Fs,$o,sn,Qo,Cn),po=m(ol,Os,fi,mn,sn,Qo,Cn),da.moveTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Qo<Do?da.arc(Xn.cx,Xn.cy,Qo,e(Xn.y01,Xn.x01),e(po.y01,po.x01),!Cn):(da.arc(Xn.cx,Xn.cy,Qo,e(Xn.y01,Xn.x01),e(Xn.y11,Xn.x11),!Cn),da.arc(0,0,sn,e(Xn.cy+Xn.y11,Xn.cx+Xn.x11),e(po.cy+po.y11,po.cx+po.x11),!Cn),da.arc(po.cx,po.cy,Qo,e(po.y11,po.x11),e(po.y01,po.x01),!Cn))):(da.moveTo(Fs,$o),da.arc(0,0,sn,Lo,Xi,!Cn)):da.moveTo(Fs,$o),!(an>n)||!(as>n)?da.lineTo(fi,mn):Ho>n?(Xn=m(fi,mn,ol,Os,an,-Ho,Cn),po=m(Fs,$o,so,Ns,an,-Ho,Cn),da.lineTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Ho<Do?da.arc(Xn.cx,Xn.cy,Ho,e(Xn.y01,Xn.x01),e(po.y01,po.x01),!Cn):(da.arc(Xn.cx,Xn.cy,Ho,e(Xn.y01,Xn.x01),e(Xn.y11,Xn.x11),!Cn),da.arc(0,0,an,e(Xn.cy+Xn.y11,Xn.cx+Xn.x11),e(po.cy+po.y11,po.cx+po.x11),Cn),da.arc(po.cx,po.cy,Ho,e(po.y11,po.x11),e(po.y01,po.x01),!Cn))):da.arc(0,0,an,zo,Jo,Cn)}if(da.closePath(),Ti)return da=null,Ti+""||null}return Sa.centroid=function(){var Ti=(+kt.apply(this,arguments)+ +ir.apply(this,arguments))/2,ai=(+ma.apply(this,arguments)+ +Ba.apply(this,arguments))/2-s/2;return[t(ai)*Ti,a(ai)*Ti]},Sa.innerRadius=function(Ti){return arguments.length?(kt=typeof Ti=="function"?Ti:A(+Ti),Sa):kt},Sa.outerRadius=function(Ti){return arguments.length?(ir=typeof Ti=="function"?Ti:A(+Ti),Sa):ir},Sa.cornerRadius=function(Ti){return arguments.length?(mr=typeof Ti=="function"?Ti:A(+Ti),Sa):mr},Sa.padRadius=function(Ti){return arguments.length?($r=Ti==null?null:typeof Ti=="function"?Ti:A(+Ti),Sa):$r},Sa.startAngle=function(Ti){return arguments.length?(ma=typeof Ti=="function"?Ti:A(+Ti),Sa):ma},Sa.endAngle=function(Ti){return arguments.length?(Ba=typeof Ti=="function"?Ti:A(+Ti),Sa):Ba},Sa.padAngle=function(Ti){return arguments.length?(Ca=typeof Ti=="function"?Ti:A(+Ti),Sa):Ca},Sa.context=function(Ti){return arguments.length?(da=Ti??null,Sa):da},Sa}function d(kt){this._context=kt}d.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:this._context.lineTo(kt,ir);break}}};function u(kt){return new d(kt)}function y(kt){return kt[0]}function f(kt){return kt[1]}function P(){var kt=y,ir=f,mr=A(!0),$r=null,ma=u,Ba=null;function Ca(da){var Sa,Ti=da.length,ai,an=!1,sn;for($r==null&&(Ba=ma(sn=x.path())),Sa=0;Sa<=Ti;++Sa)!(Sa<Ti&&mr(ai=da[Sa],Sa,da))===an&&((an=!an)?Ba.lineStart():Ba.lineEnd()),an&&Ba.point(+kt(ai,Sa,da),+ir(ai,Sa,da));if(sn)return Ba=null,sn+""||null}return Ca.x=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.y=function(da){return arguments.length?(ir=typeof da=="function"?da:A(+da),Ca):ir},Ca.defined=function(da){return arguments.length?(mr=typeof da=="function"?da:A(!!da),Ca):mr},Ca.curve=function(da){return arguments.length?(ma=da,$r!=null&&(Ba=ma($r)),Ca):ma},Ca.context=function(da){return arguments.length?(da==null?$r=Ba=null:Ba=ma($r=da),Ca):$r},Ca}function L(){var kt=y,ir=null,mr=A(0),$r=f,ma=A(!0),Ba=null,Ca=u,da=null;function Sa(ai){var an,sn,Mn,On=ai.length,$n,Cn=!1,Lo,Xi=new Array(On),Jo=new Array(On);for(Ba==null&&(da=Ca(Lo=x.path())),an=0;an<=On;++an){if(!(an<On&&ma($n=ai[an],an,ai))===Cn)if(Cn=!Cn)sn=an,da.areaStart(),da.lineStart();else{for(da.lineEnd(),da.lineStart(),Mn=an-1;Mn>=sn;--Mn)da.point(Xi[Mn],Jo[Mn]);da.lineEnd(),da.areaEnd()}Cn&&(Xi[an]=+kt($n,an,ai),Jo[an]=+mr($n,an,ai),da.point(ir?+ir($n,an,ai):Xi[an],$r?+$r($n,an,ai):Jo[an]))}if(Lo)return da=null,Lo+""||null}function Ti(){return P().defined(ma).curve(Ca).context(Ba)}return Sa.x=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),ir=null,Sa):kt},Sa.x0=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),Sa):kt},Sa.x1=function(ai){return arguments.length?(ir=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):ir},Sa.y=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),$r=null,Sa):mr},Sa.y0=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),Sa):mr},Sa.y1=function(ai){return arguments.length?($r=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):$r},Sa.lineX0=Sa.lineY0=function(){return Ti().x(kt).y(mr)},Sa.lineY1=function(){return Ti().x(kt).y($r)},Sa.lineX1=function(){return Ti().x(ir).y(mr)},Sa.defined=function(ai){return arguments.length?(ma=typeof ai=="function"?ai:A(!!ai),Sa):ma},Sa.curve=function(ai){return arguments.length?(Ca=ai,Ba!=null&&(da=Ca(Ba)),Sa):Ca},Sa.context=function(ai){return arguments.length?(ai==null?Ba=da=null:da=Ca(Ba=ai),Sa):Ba},Sa}function z(kt,ir){return ir<kt?-1:ir>kt?1:ir>=kt?0:NaN}function F(kt){return kt}function B(){var kt=F,ir=z,mr=null,$r=A(0),ma=A(h),Ba=A(0);function Ca(da){var Sa,Ti=da.length,ai,an,sn=0,Mn=new Array(Ti),On=new Array(Ti),$n=+$r.apply(this,arguments),Cn=Math.min(h,Math.max(-h,ma.apply(this,arguments)-$n)),Lo,Xi=Math.min(Math.abs(Cn)/Ti,Ba.apply(this,arguments)),Jo=Xi*(Cn<0?-1:1),zo;for(Sa=0;Sa<Ti;++Sa)(zo=On[Mn[Sa]=Sa]=+kt(da[Sa],Sa,da))>0&&(sn+=zo);for(ir!=null?Mn.sort(function(as,Pn){return ir(On[as],On[Pn])}):mr!=null&&Mn.sort(function(as,Pn){return mr(da[as],da[Pn])}),Sa=0,an=sn?(Cn-Ti*Jo)/sn:0;Sa<Ti;++Sa,$n=Lo)ai=Mn[Sa],zo=On[ai],Lo=$n+(zo>0?zo*an:0)+Jo,On[ai]={data:da[ai],index:Sa,value:zo,startAngle:$n,endAngle:Lo,padAngle:Xi};return On}return Ca.value=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.sortValues=function(da){return arguments.length?(ir=da,mr=null,Ca):ir},Ca.sort=function(da){return arguments.length?(mr=da,ir=null,Ca):mr},Ca.startAngle=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.endAngle=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.padAngle=function(da){return arguments.length?(Ba=typeof da=="function"?da:A(+da),Ca):Ba},Ca}var O=N(u);function I(kt){this._curve=kt}I.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(kt,ir){this._curve.point(ir*Math.sin(kt),ir*-Math.cos(kt))}};function N(kt){function ir(mr){return new I(kt(mr))}return ir._curve=kt,ir}function U(kt){var ir=kt.curve;return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt.curve=function(mr){return arguments.length?ir(N(mr)):ir()._curve},kt}function W(){return U(P().curve(O))}function Q(){var kt=L().curve(O),ir=kt.curve,mr=kt.lineX0,$r=kt.lineX1,ma=kt.lineY0,Ba=kt.lineY1;return kt.angle=kt.x,delete kt.x,kt.startAngle=kt.x0,delete kt.x0,kt.endAngle=kt.x1,delete kt.x1,kt.radius=kt.y,delete kt.y,kt.innerRadius=kt.y0,delete kt.y0,kt.outerRadius=kt.y1,delete kt.y1,kt.lineStartAngle=function(){return U(mr())},delete kt.lineX0,kt.lineEndAngle=function(){return U($r())},delete kt.lineX1,kt.lineInnerRadius=function(){return U(ma())},delete kt.lineY0,kt.lineOuterRadius=function(){return U(Ba())},delete kt.lineY1,kt.curve=function(Ca){return arguments.length?ir(N(Ca)):ir()._curve},kt}function ue(kt,ir){return[(ir=+ir)*Math.cos(kt-=Math.PI/2),ir*Math.sin(kt)]}var se=Array.prototype.slice;function he(kt){return kt.source}function G(kt){return kt.target}function $(kt){var ir=he,mr=G,$r=y,ma=f,Ba=null;function Ca(){var da,Sa=se.call(arguments),Ti=ir.apply(this,Sa),ai=mr.apply(this,Sa);if(Ba||(Ba=da=x.path()),kt(Ba,+$r.apply(this,(Sa[0]=Ti,Sa)),+ma.apply(this,Sa),+$r.apply(this,(Sa[0]=ai,Sa)),+ma.apply(this,Sa)),da)return Ba=null,da+""||null}return Ca.source=function(da){return arguments.length?(ir=da,Ca):ir},Ca.target=function(da){return arguments.length?(mr=da,Ca):mr},Ca.x=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.y=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.context=function(da){return arguments.length?(Ba=da??null,Ca):Ba},Ca}function J(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir=(ir+$r)/2,mr,ir,ma,$r,ma)}function Z(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir,mr=(mr+ma)/2,$r,mr,$r,ma)}function re(kt,ir,mr,$r,ma){var Ba=ue(ir,mr),Ca=ue(ir,mr=(mr+ma)/2),da=ue($r,mr),Sa=ue($r,ma);kt.moveTo(Ba[0],Ba[1]),kt.bezierCurveTo(Ca[0],Ca[1],da[0],da[1],Sa[0],Sa[1])}function ne(){return $(J)}function j(){return $(Z)}function ee(){var kt=$(re);return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt}var ie={draw:function(kt,ir){var mr=Math.sqrt(ir/s);kt.moveTo(mr,0),kt.arc(0,0,mr,0,h)}},fe={draw:function(kt,ir){var mr=Math.sqrt(ir/5)/2;kt.moveTo(-3*mr,-mr),kt.lineTo(-mr,-mr),kt.lineTo(-mr,-3*mr),kt.lineTo(mr,-3*mr),kt.lineTo(mr,-mr),kt.lineTo(3*mr,-mr),kt.lineTo(3*mr,mr),kt.lineTo(mr,mr),kt.lineTo(mr,3*mr),kt.lineTo(-mr,3*mr),kt.lineTo(-mr,mr),kt.lineTo(-3*mr,mr),kt.closePath()}},be=Math.sqrt(1/3),Ae=be*2,Be={draw:function(kt,ir){var mr=Math.sqrt(ir/Ae),$r=mr*be;kt.moveTo(0,-mr),kt.lineTo($r,0),kt.lineTo(0,mr),kt.lineTo(-$r,0),kt.closePath()}},Ie=.8908130915292852,Ze=Math.sin(s/10)/Math.sin(7*s/10),at=Math.sin(h/10)*Ze,it=-Math.cos(h/10)*Ze,et={draw:function(kt,ir){var mr=Math.sqrt(ir*Ie),$r=at*mr,ma=it*mr;kt.moveTo(0,-mr),kt.lineTo($r,ma);for(var Ba=1;Ba<5;++Ba){var Ca=h*Ba/5,da=Math.cos(Ca),Sa=Math.sin(Ca);kt.lineTo(Sa*mr,-da*mr),kt.lineTo(da*$r-Sa*ma,Sa*$r+da*ma)}kt.closePath()}},lt={draw:function(kt,ir){var mr=Math.sqrt(ir),$r=-mr/2;kt.rect($r,$r,mr,mr)}},Me=Math.sqrt(3),ge={draw:function(kt,ir){var mr=-Math.sqrt(ir/(Me*3));kt.moveTo(0,mr*2),kt.lineTo(-Me*mr,-mr),kt.lineTo(Me*mr,-mr),kt.closePath()}},ce=-.5,ze=Math.sqrt(3)/2,tt=1/Math.sqrt(12),nt=(tt/2+1)*3,Qe={draw:function(kt,ir){var mr=Math.sqrt(ir/nt),$r=mr/2,ma=mr*tt,Ba=$r,Ca=mr*tt+mr,da=-Ba,Sa=Ca;kt.moveTo($r,ma),kt.lineTo(Ba,Ca),kt.lineTo(da,Sa),kt.lineTo(ce*$r-ze*ma,ze*$r+ce*ma),kt.lineTo(ce*Ba-ze*Ca,ze*Ba+ce*Ca),kt.lineTo(ce*da-ze*Sa,ze*da+ce*Sa),kt.lineTo(ce*$r+ze*ma,ce*ma-ze*$r),kt.lineTo(ce*Ba+ze*Ca,ce*Ca-ze*Ba),kt.lineTo(ce*da+ze*Sa,ce*Sa-ze*da),kt.closePath()}},Ct=[ie,fe,Be,lt,et,ge,Qe];function St(){var kt=A(ie),ir=A(64),mr=null;function $r(){var ma;if(mr||(mr=ma=x.path()),kt.apply(this,arguments).draw(mr,+ir.apply(this,arguments)),ma)return mr=null,ma+""||null}return $r.type=function(ma){return arguments.length?(kt=typeof ma=="function"?ma:A(ma),$r):kt},$r.size=function(ma){return arguments.length?(ir=typeof ma=="function"?ma:A(+ma),$r):ir},$r.context=function(ma){return arguments.length?(mr=ma??null,$r):mr},$r}function Ot(){}function jt(kt,ir,mr){kt._context.bezierCurveTo((2*kt._x0+kt._x1)/3,(2*kt._y0+kt._y1)/3,(kt._x0+2*kt._x1)/3,(kt._y0+2*kt._y1)/3,(kt._x0+4*kt._x1+ir)/6,(kt._y0+4*kt._y1+mr)/6)}function ur(kt){this._context=kt}ur.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:jt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function ar(kt){return new ur(kt)}function Cr(kt){this._context=kt}Cr.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x2=kt,this._y2=ir;break;case 1:this._point=2,this._x3=kt,this._y3=ir;break;case 2:this._point=3,this._x4=kt,this._y4=ir,this._context.moveTo((this._x0+4*this._x1+kt)/6,(this._y0+4*this._y1+ir)/6);break;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function vr(kt){return new Cr(kt)}function _r(kt){this._context=kt}_r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var mr=(this._x0+4*this._x1+kt)/6,$r=(this._y0+4*this._y1+ir)/6;this._line?this._context.lineTo(mr,$r):this._context.moveTo(mr,$r);break;case 3:this._point=4;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function yt(kt){return new _r(kt)}function Fe(kt,ir){this._basis=new ur(kt),this._beta=ir}Fe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length-1;if(mr>0)for(var $r=kt[0],ma=ir[0],Ba=kt[mr]-$r,Ca=ir[mr]-ma,da=-1,Sa;++da<=mr;)Sa=da/mr,this._basis.point(this._beta*kt[da]+(1-this._beta)*($r+Sa*Ba),this._beta*ir[da]+(1-this._beta)*(ma+Sa*Ca));this._x=this._y=null,this._basis.lineEnd()},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};var Ke=function kt(ir){function mr($r){return ir===1?new ur($r):new Fe($r,ir)}return mr.beta=function($r){return kt(+$r)},mr}(.85);function Ne(kt,ir,mr){kt._context.bezierCurveTo(kt._x1+kt._k*(kt._x2-kt._x0),kt._y1+kt._k*(kt._y2-kt._y0),kt._x2+kt._k*(kt._x1-ir),kt._y2+kt._k*(kt._y1-mr),kt._x2,kt._y2)}function Ee(kt,ir){this._context=kt,this._k=(1-ir)/6}Ee.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ne(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2,this._x1=kt,this._y1=ir;break;case 2:this._point=3;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Ve=function kt(ir){function mr($r){return new Ee($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function ke(kt,ir){this._context=kt,this._k=(1-ir)/6}ke.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Te=function kt(ir){function mr($r){return new ke($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function Le(kt,ir){this._context=kt,this._k=(1-ir)/6}Le.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var rt=function kt(ir){function mr($r){return new Le($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function dt(kt,ir,mr){var $r=kt._x1,ma=kt._y1,Ba=kt._x2,Ca=kt._y2;if(kt._l01_a>n){var da=2*kt._l01_2a+3*kt._l01_a*kt._l12_a+kt._l12_2a,Sa=3*kt._l01_a*(kt._l01_a+kt._l12_a);$r=($r*da-kt._x0*kt._l12_2a+kt._x2*kt._l01_2a)/Sa,ma=(ma*da-kt._y0*kt._l12_2a+kt._y2*kt._l01_2a)/Sa}if(kt._l23_a>n){var Ti=2*kt._l23_2a+3*kt._l23_a*kt._l12_a+kt._l12_2a,ai=3*kt._l23_a*(kt._l23_a+kt._l12_a);Ba=(Ba*Ti+kt._x1*kt._l23_2a-ir*kt._l12_2a)/ai,Ca=(Ca*Ti+kt._y1*kt._l23_2a-mr*kt._l12_2a)/ai}kt._context.bezierCurveTo($r,ma,Ba,Ca,kt._x2,kt._y2)}function xt(kt,ir){this._context=kt,this._alpha=ir}xt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var It=function kt(ir){function mr($r){return ir?new xt($r,ir):new Ee($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Bt(kt,ir){this._context=kt,this._alpha=ir}Bt.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Gt=function kt(ir){function mr($r){return ir?new Bt($r,ir):new ke($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Kt(kt,ir){this._context=kt,this._alpha=ir}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var sr=function kt(ir){function mr($r){return ir?new Kt($r,ir):new Le($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function sa(kt){this._context=kt}sa.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(kt,ir){kt=+kt,ir=+ir,this._point?this._context.lineTo(kt,ir):(this._point=1,this._context.moveTo(kt,ir))}};function Aa(kt){return new sa(kt)}function La(kt){return kt<0?-1:1}function ka(kt,ir,mr){var $r=kt._x1-kt._x0,ma=ir-kt._x1,Ba=(kt._y1-kt._y0)/($r||ma<0&&-0),Ca=(mr-kt._y1)/(ma||$r<0&&-0),da=(Ba*ma+Ca*$r)/($r+ma);return(La(Ba)+La(Ca))*Math.min(Math.abs(Ba),Math.abs(Ca),.5*Math.abs(da))||0}function Ga(kt,ir){var mr=kt._x1-kt._x0;return mr?(3*(kt._y1-kt._y0)/mr-ir)/2:ir}function Ma(kt,ir,mr){var $r=kt._x0,ma=kt._y0,Ba=kt._x1,Ca=kt._y1,da=(Ba-$r)/3;kt._context.bezierCurveTo($r+da,ma+da*ir,Ba-da,Ca-da*mr,Ba,Ca)}function Ua(kt){this._context=kt}Ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Ma(this,this._t0,Ga(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){var mr=NaN;if(kt=+kt,ir=+ir,!(kt===this._x1&&ir===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,Ma(this,Ga(this,mr=ka(this,kt,ir)),mr);break;default:Ma(this,this._t0,mr=ka(this,kt,ir));break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir,this._t0=mr}}};function ni(kt){this._context=new Wt(kt)}(ni.prototype=Object.create(Ua.prototype)).point=function(kt,ir){Ua.prototype.point.call(this,ir,kt)};function Wt(kt){this._context=kt}Wt.prototype={moveTo:function(kt,ir){this._context.moveTo(ir,kt)},closePath:function(){this._context.closePath()},lineTo:function(kt,ir){this._context.lineTo(ir,kt)},bezierCurveTo:function(kt,ir,mr,$r,ma,Ba){this._context.bezierCurveTo(ir,kt,$r,mr,Ba,ma)}};function zt(kt){return new Ua(kt)}function Vt(kt){return new ni(kt)}function Ut(kt){this._context=kt}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length;if(mr)if(this._line?this._context.lineTo(kt[0],ir[0]):this._context.moveTo(kt[0],ir[0]),mr===2)this._context.lineTo(kt[1],ir[1]);else for(var $r=xr(kt),ma=xr(ir),Ba=0,Ca=1;Ca<mr;++Ba,++Ca)this._context.bezierCurveTo($r[0][Ba],ma[0][Ba],$r[1][Ba],ma[1][Ba],kt[Ca],ir[Ca]);(this._line||this._line!==0&&mr===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};function xr(kt){var ir,mr=kt.length-1,$r,ma=new Array(mr),Ba=new Array(mr),Ca=new Array(mr);for(ma[0]=0,Ba[0]=2,Ca[0]=kt[0]+2*kt[1],ir=1;ir<mr-1;++ir)ma[ir]=1,Ba[ir]=4,Ca[ir]=4*kt[ir]+2*kt[ir+1];for(ma[mr-1]=2,Ba[mr-1]=7,Ca[mr-1]=8*kt[mr-1]+kt[mr],ir=1;ir<mr;++ir)$r=ma[ir]/Ba[ir-1],Ba[ir]-=$r,Ca[ir]-=$r*Ca[ir-1];for(ma[mr-1]=Ca[mr-1]/Ba[mr-1],ir=mr-2;ir>=0;--ir)ma[ir]=(Ca[ir]-ma[ir+1])/Ba[ir];for(Ba[mr-1]=(kt[mr]+ma[mr-1])/2,ir=0;ir<mr-1;++ir)Ba[ir]=2*kt[ir+1]-ma[ir+1];return[ma,Ba]}function Zr(kt){return new Ut(kt)}function pa(kt,ir){this._context=kt,this._t=ir}pa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,ir),this._context.lineTo(kt,ir);else{var mr=this._x*(1-this._t)+kt*this._t;this._context.lineTo(mr,this._y),this._context.lineTo(mr,ir)}break}}this._x=kt,this._y=ir}};function Xr(kt){return new pa(kt,.5)}function Ea(kt){return new pa(kt,0)}function Fa(kt){return new pa(kt,1)}function qa(kt,ir){if((Ca=kt.length)>1)for(var mr=1,$r,ma,Ba=kt[ir[0]],Ca,da=Ba.length;mr<Ca;++mr)for(ma=Ba,Ba=kt[ir[mr]],$r=0;$r<da;++$r)Ba[$r][1]+=Ba[$r][0]=isNaN(ma[$r][1])?ma[$r][0]:ma[$r][1]}function ya(kt){for(var ir=kt.length,mr=new Array(ir);--ir>=0;)mr[ir]=ir;return mr}function $a(kt,ir){return kt[ir]}function mt(){var kt=A([]),ir=ya,mr=qa,$r=$a;function ma(Ba){var Ca=kt.apply(this,arguments),da,Sa=Ba.length,Ti=Ca.length,ai=new Array(Ti),an;for(da=0;da<Ti;++da){for(var sn=Ca[da],Mn=ai[da]=new Array(Sa),On=0,$n;On<Sa;++On)Mn[On]=$n=[0,+$r(Ba[On],sn,On,Ba)],$n.data=Ba[On];Mn.key=sn}for(da=0,an=ir(ai);da<Ti;++da)ai[an[da]].index=da;return mr(ai,an),ai}return ma.keys=function(Ba){return arguments.length?(kt=typeof Ba=="function"?Ba:A(se.call(Ba)),ma):kt},ma.value=function(Ba){return arguments.length?($r=typeof Ba=="function"?Ba:A(+Ba),ma):$r},ma.order=function(Ba){return arguments.length?(ir=Ba==null?ya:typeof Ba=="function"?Ba:A(se.call(Ba)),ma):ir},ma.offset=function(Ba){return arguments.length?(mr=Ba??qa,ma):mr},ma}function gt(kt,ir){if(($r=kt.length)>0){for(var mr,$r,ma=0,Ba=kt[0].length,Ca;ma<Ba;++ma){for(Ca=mr=0;mr<$r;++mr)Ca+=kt[mr][ma][1]||0;if(Ca)for(mr=0;mr<$r;++mr)kt[mr][ma][1]/=Ca}qa(kt,ir)}}function Er(kt,ir){if((Sa=kt.length)>0)for(var mr,$r=0,ma,Ba,Ca,da,Sa,Ti=kt[ir[0]].length;$r<Ti;++$r)for(Ca=da=0,mr=0;mr<Sa;++mr)(Ba=(ma=kt[ir[mr]][$r])[1]-ma[0])>0?(ma[0]=Ca,ma[1]=Ca+=Ba):Ba<0?(ma[1]=da,ma[0]=da+=Ba):(ma[0]=0,ma[1]=Ba)}function kr(kt,ir){if((ma=kt.length)>0){for(var mr=0,$r=kt[ir[0]],ma,Ba=$r.length;mr<Ba;++mr){for(var Ca=0,da=0;Ca<ma;++Ca)da+=kt[Ca][mr][1]||0;$r[mr][1]+=$r[mr][0]=-da/2}qa(kt,ir)}}function br(kt,ir){if(!(!((Ca=kt.length)>0)||!((Ba=(ma=kt[ir[0]]).length)>0))){for(var mr=0,$r=1,ma,Ba,Ca;$r<Ba;++$r){for(var da=0,Sa=0,Ti=0;da<Ca;++da){for(var ai=kt[ir[da]],an=ai[$r][1]||0,sn=ai[$r-1][1]||0,Mn=(an-sn)/2,On=0;On<da;++On){var $n=kt[ir[On]],Cn=$n[$r][1]||0,Lo=$n[$r-1][1]||0;Mn+=Cn-Lo}Sa+=an,Ti+=Mn*an}ma[$r-1][1]+=ma[$r-1][0]=mr,Sa&&(mr-=Ti/Sa)}ma[$r-1][1]+=ma[$r-1][0]=mr,qa(kt,ir)}}function Tr(kt){var ir=kt.map(Mr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Mr(kt){for(var ir=-1,mr=0,$r=kt.length,ma,Ba=-1/0;++ir<$r;)(ma=+kt[ir][1])>Ba&&(Ba=ma,mr=ir);return mr}function Fr(kt){var ir=kt.map(Lr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Lr(kt){for(var ir=0,mr=-1,$r=kt.length,ma;++mr<$r;)(ma=+kt[mr][1])&&(ir+=ma);return ir}function Jr(kt){return Fr(kt).reverse()}function oa(kt){var ir=kt.length,mr,$r,ma=kt.map(Lr),Ba=Tr(kt),Ca=0,da=0,Sa=[],Ti=[];for(mr=0;mr<ir;++mr)$r=Ba[mr],Ca<da?(Ca+=ma[$r],Sa.push($r)):(da+=ma[$r],Ti.push($r));return Ti.reverse().concat(Sa)}function ca(kt){return ya(kt).reverse()}g.arc=b,g.area=L,g.areaRadial=Q,g.curveBasis=ar,g.curveBasisClosed=vr,g.curveBasisOpen=yt,g.curveBundle=Ke,g.curveCardinal=Ve,g.curveCardinalClosed=Te,g.curveCardinalOpen=rt,g.curveCatmullRom=It,g.curveCatmullRomClosed=Gt,g.curveCatmullRomOpen=sr,g.curveLinear=u,g.curveLinearClosed=Aa,g.curveMonotoneX=zt,g.curveMonotoneY=Vt,g.curveNatural=Zr,g.curveStep=Xr,g.curveStepAfter=Fa,g.curveStepBefore=Ea,g.line=P,g.lineRadial=W,g.linkHorizontal=ne,g.linkRadial=ee,g.linkVertical=j,g.pie=B,g.pointRadial=ue,g.radialArea=Q,g.radialLine=W,g.stack=mt,g.stackOffsetDiverging=Er,g.stackOffsetExpand=gt,g.stackOffsetNone=qa,g.stackOffsetSilhouette=kr,g.stackOffsetWiggle=br,g.stackOrderAppearance=Tr,g.stackOrderAscending=Fr,g.stackOrderDescending=Jr,g.stackOrderInsideOut=oa,g.stackOrderNone=ya,g.stackOrderReverse=ca,g.symbol=St,g.symbolCircle=ie,g.symbolCross=fe,g.symbolDiamond=Be,g.symbolSquare=lt,g.symbolStar=et,g.symbolTriangle=ge,g.symbolWye=Qe,g.symbols=Ct,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zq=Ye({"node_modules/@plotly/d3-sankey/build/d3-sankey.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx(),CT(),zk()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3)})(X,function(g,x,A,M){"use strict";function e(u){return u.target.depth}function t(u){return u.depth}function r(u,y){return y-1-u.height}function o(u,y){return u.sourceLinks.length?u.depth:y-1}function a(u){return u.targetLinks.length?u.depth:u.sourceLinks.length?x.min(u.sourceLinks,e)-1:0}function i(u){return function(){return u}}function n(u,y){return c(u.source,y.source)||u.index-y.index}function s(u,y){return c(u.target,y.target)||u.index-y.index}function c(u,y){return u.y0-y.y0}function h(u){return u.value}function v(u){return(u.y0+u.y1)/2}function p(u){return v(u.source)*u.value}function T(u){return v(u.target)*u.value}function l(u){return u.index}function _(u){return u.nodes}function w(u){return u.links}function S(u,y){var f=u.get(y);if(!f)throw new Error("missing: "+y);return f}var E=function(){var u=0,y=0,f=1,P=1,L=24,z=8,F=l,B=o,O=_,I=w,N=32,U=2/3;function W(){var $={nodes:O.apply(null,arguments),links:I.apply(null,arguments)};return Q($),ue($),se($),he($,N),G($),$}W.update=function($){return G($),$},W.nodeId=function($){return arguments.length?(F=typeof $=="function"?$:i($),W):F},W.nodeAlign=function($){return arguments.length?(B=typeof $=="function"?$:i($),W):B},W.nodeWidth=function($){return arguments.length?(L=+$,W):L},W.nodePadding=function($){return arguments.length?(z=+$,W):z},W.nodes=function($){return arguments.length?(O=typeof $=="function"?$:i($),W):O},W.links=function($){return arguments.length?(I=typeof $=="function"?$:i($),W):I},W.size=function($){return arguments.length?(u=y=0,f=+$[0],P=+$[1],W):[f-u,P-y]},W.extent=function($){return arguments.length?(u=+$[0][0],f=+$[1][0],y=+$[0][1],P=+$[1][1],W):[[u,y],[f,P]]},W.iterations=function($){return arguments.length?(N=+$,W):N};function Q($){$.nodes.forEach(function(Z,re){Z.index=re,Z.sourceLinks=[],Z.targetLinks=[]});var J=A.map($.nodes,F);$.links.forEach(function(Z,re){Z.index=re;var ne=Z.source,j=Z.target;typeof ne!="object"&&(ne=Z.source=S(J,ne)),typeof j!="object"&&(j=Z.target=S(J,j)),ne.sourceLinks.push(Z),j.targetLinks.push(Z)})}function ue($){$.nodes.forEach(function(J){J.value=Math.max(x.sum(J.sourceLinks,h),x.sum(J.targetLinks,h))})}function se($){var J,Z,re;for(J=$.nodes,Z=[],re=0;J.length;++re,J=Z,Z=[])J.forEach(function(j){j.depth=re,j.sourceLinks.forEach(function(ee){Z.indexOf(ee.target)<0&&Z.push(ee.target)})});for(J=$.nodes,Z=[],re=0;J.length;++re,J=Z,Z=[])J.forEach(function(j){j.height=re,j.targetLinks.forEach(function(ee){Z.indexOf(ee.source)<0&&Z.push(ee.source)})});var ne=(f-u-L)/(re-1);$.nodes.forEach(function(j){j.x1=(j.x0=u+Math.max(0,Math.min(re-1,Math.floor(B.call(null,j,re))))*ne)+L})}function he($){var J=A.nest().key(function(fe){return fe.x0}).sortKeys(x.ascending).entries($.nodes).map(function(fe){return fe.values});ne(),ie();for(var Z=1,re=N;re>0;--re)ee(Z*=.99),ie(),j(Z),ie();function ne(){var fe=x.max(J,function(Be){return Be.length}),be=U*(P-y)/(fe-1);z>be&&(z=be);var Ae=x.min(J,function(Be){return(P-y-(Be.length-1)*z)/x.sum(Be,h)});J.forEach(function(Be){Be.forEach(function(Ie,Ze){Ie.y1=(Ie.y0=Ze)+Ie.value*Ae})}),$.links.forEach(function(Be){Be.width=Be.value*Ae})}function j(fe){J.forEach(function(be){be.forEach(function(Ae){if(Ae.targetLinks.length){var Be=(x.sum(Ae.targetLinks,p)/x.sum(Ae.targetLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ee(fe){J.slice().reverse().forEach(function(be){be.forEach(function(Ae){if(Ae.sourceLinks.length){var Be=(x.sum(Ae.sourceLinks,T)/x.sum(Ae.sourceLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ie(){J.forEach(function(fe){var be,Ae,Be=y,Ie=fe.length,Ze;for(fe.sort(c),Ze=0;Ze<Ie;++Ze)be=fe[Ze],Ae=Be-be.y0,Ae>0&&(be.y0+=Ae,be.y1+=Ae),Be=be.y1+z;if(Ae=Be-z-P,Ae>0)for(Be=be.y0-=Ae,be.y1-=Ae,Ze=Ie-2;Ze>=0;--Ze)be=fe[Ze],Ae=be.y1+z-Be,Ae>0&&(be.y0-=Ae,be.y1-=Ae),Be=be.y0})}}function G($){$.nodes.forEach(function(J){J.sourceLinks.sort(s),J.targetLinks.sort(n)}),$.nodes.forEach(function(J){var Z=J.y0,re=Z;J.sourceLinks.forEach(function(ne){ne.y0=Z+ne.width/2,Z+=ne.width}),J.targetLinks.forEach(function(ne){ne.y1=re+ne.width/2,re+=ne.width})})}return W};function m(u){return[u.source.x1,u.y0]}function b(u){return[u.target.x0,u.y1]}var d=function(){return M.linkHorizontal().source(m).target(b)};g.sankey=E,g.sankeyCenter=a,g.sankeyLeft=t,g.sankeyRight=r,g.sankeyJustify=o,g.sankeyLinkHorizontal=d,Object.defineProperty(g,"__esModule",{value:!0})})}}),Xq=Ye({"node_modules/elementary-circuits-directed-graph/johnson.js"(X,H){var g=Dk();H.exports=function(A,M){var e=[],t=[],r=[],o={},a=[],i;function n(S){r[S]=!1,o.hasOwnProperty(S)&&Object.keys(o[S]).forEach(function(E){delete o[S][E],r[E]&&n(E)})}function s(S){var E=!1;t.push(S),r[S]=!0;var m,b;for(m=0;m<a[S].length;m++)b=a[S][m],b===i?(c(i,t),E=!0):r[b]||(E=s(b));if(E)n(S);else for(m=0;m<a[S].length;m++){b=a[S][m];var d=o[b];d||(d={},o[b]=d),d[b]=!0}return t.pop(),E}function c(S,E){var m=[].concat(E).concat(S);M?M(s):e.push(m)}function h(S){for(var E=0;E<A.length;E++)E<S&&(A[E]=[]),A[E]=A[E].filter(function(m){return m>=S})}function v(S){h(S);for(var E=A,m=g(E),b=m.components.filter(function(z){return z.length>1}),d=1/0,u,y=0;y<b.length;y++)for(var f=0;f<b[y].length;f++)b[y][f]<d&&(d=b[y][f],u=y);var P=b[u];if(!P)return!1;var L=A.map(function(z,F){return P.indexOf(F)===-1?[]:z.filter(function(B){return P.indexOf(B)!==-1})});return{leastVertex:d,adjList:L}}i=0;for(var p=A.length;i<p;){var T=v(i);if(i=T.leastVertex,a=T.adjList,a){for(var l=0;l<a.length;l++)for(var _=0;_<a[l].length;_++){var w=a[l][_];r[+w]=!1,o[w]={}}s(i),i=i+1}else i=p}if(!M)return e}}}),Yq=Ye({"node_modules/@plotly/d3-sankey-circular/dist/d3-sankey-circular.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx(),CT(),zk(),Xq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,null)})(X,function(g,x,A,M,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;function t(Ie){return Ie.target.depth}function r(Ie){return Ie.depth}function o(Ie,Ze){return Ze-1-Ie.height}function a(Ie,Ze){return Ie.sourceLinks.length?Ie.depth:Ze-1}function i(Ie){return Ie.targetLinks.length?Ie.depth:Ie.sourceLinks.length?x.min(Ie.sourceLinks,t)-1:0}function n(Ie){return function(){return Ie}}var s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ie){return typeof Ie}:function(Ie){return Ie&&typeof Symbol=="function"&&Ie.constructor===Symbol&&Ie!==Symbol.prototype?"symbol":typeof Ie};function c(Ie,Ze){return v(Ie.source,Ze.source)||Ie.index-Ze.index}function h(Ie,Ze){return v(Ie.target,Ze.target)||Ie.index-Ze.index}function v(Ie,Ze){return Ie.partOfCycle===Ze.partOfCycle?Ie.y0-Ze.y0:Ie.circularLinkType==="top"||Ze.circularLinkType==="bottom"?-1:1}function p(Ie){return Ie.value}function T(Ie){return(Ie.y0+Ie.y1)/2}function l(Ie){return T(Ie.source)}function _(Ie){return T(Ie.target)}function w(Ie){return Ie.index}function S(Ie){return Ie.nodes}function E(Ie){return Ie.links}function m(Ie,Ze){var at=Ie.get(Ze);if(!at)throw new Error("missing: "+Ze);return at}function b(Ie,Ze){return Ze(Ie)}var d=25,u=10,y=.3;function f(){var Ie=0,Ze=0,at=1,it=1,et=24,lt,Me=w,ge=a,ce=S,ze=E,tt=32,nt=2,Qe,Ct=null;function St(){var yt={nodes:ce.apply(null,arguments),links:ze.apply(null,arguments)};Ot(yt),P(yt,Me,Ct),jt(yt),Cr(yt),L(yt,Me),vr(yt,tt,Me),_r(yt);for(var Fe=4,Ke=0;Ke<Fe;Ke++)ee(yt,it,Me),ie(yt,it,Me),re(yt,Ze,it,Me),ee(yt,it,Me),ie(yt,it,Me);return Be(yt,Ze,it),N(yt,nt,it,Me),yt}St.nodeId=function(yt){return arguments.length?(Me=typeof yt=="function"?yt:n(yt),St):Me},St.nodeAlign=function(yt){return arguments.length?(ge=typeof yt=="function"?yt:n(yt),St):ge},St.nodeWidth=function(yt){return arguments.length?(et=+yt,St):et},St.nodePadding=function(yt){return arguments.length?(lt=+yt,St):lt},St.nodes=function(yt){return arguments.length?(ce=typeof yt=="function"?yt:n(yt),St):ce},St.links=function(yt){return arguments.length?(ze=typeof yt=="function"?yt:n(yt),St):ze},St.size=function(yt){return arguments.length?(Ie=Ze=0,at=+yt[0],it=+yt[1],St):[at-Ie,it-Ze]},St.extent=function(yt){return arguments.length?(Ie=+yt[0][0],at=+yt[1][0],Ze=+yt[0][1],it=+yt[1][1],St):[[Ie,Ze],[at,it]]},St.iterations=function(yt){return arguments.length?(tt=+yt,St):tt},St.circularLinkGap=function(yt){return arguments.length?(nt=+yt,St):nt},St.nodePaddingRatio=function(yt){return arguments.length?(Qe=+yt,St):Qe},St.sortNodes=function(yt){return arguments.length?(Ct=yt,St):Ct},St.update=function(yt){return L(yt,Me),_r(yt),yt.links.forEach(function(Fe){Fe.circular&&(Fe.circularLinkType=Fe.y0+Fe.y1<it?"top":"bottom",Fe.source.circularLinkType=Fe.circularLinkType,Fe.target.circularLinkType=Fe.circularLinkType)}),ee(yt,it,Me,!1),ie(yt,it,Me),N(yt,nt,it,Me),yt};function Ot(yt){yt.nodes.forEach(function(Ke,Ne){Ke.index=Ne,Ke.sourceLinks=[],Ke.targetLinks=[]});var Fe=A.map(yt.nodes,Me);return yt.links.forEach(function(Ke,Ne){Ke.index=Ne;var Ee=Ke.source,Ve=Ke.target;(typeof Ee>"u"?"undefined":s(Ee))!=="object"&&(Ee=Ke.source=m(Fe,Ee)),(typeof Ve>"u"?"undefined":s(Ve))!=="object"&&(Ve=Ke.target=m(Fe,Ve)),Ee.sourceLinks.push(Ke),Ve.targetLinks.push(Ke)}),yt}function jt(yt){yt.nodes.forEach(function(Fe){Fe.partOfCycle=!1,Fe.value=Math.max(x.sum(Fe.sourceLinks,p),x.sum(Fe.targetLinks,p)),Fe.sourceLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)}),Fe.targetLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)})})}function ur(yt){var Fe=0,Ke=0,Ne=0,Ee=0,Ve=x.max(yt.nodes,function(ke){return ke.column});return yt.links.forEach(function(ke){ke.circular&&(ke.circularLinkType=="top"?Fe=Fe+ke.width:Ke=Ke+ke.width,ke.target.column==0&&(Ee=Ee+ke.width),ke.source.column==Ve&&(Ne=Ne+ke.width))}),Fe=Fe>0?Fe+d+u:Fe,Ke=Ke>0?Ke+d+u:Ke,Ne=Ne>0?Ne+d+u:Ne,Ee=Ee>0?Ee+d+u:Ee,{top:Fe,bottom:Ke,left:Ee,right:Ne}}function ar(yt,Fe){var Ke=x.max(yt.nodes,function(rt){return rt.column}),Ne=at-Ie,Ee=it-Ze,Ve=Ne+Fe.right+Fe.left,ke=Ee+Fe.top+Fe.bottom,Te=Ne/Ve,Le=Ee/ke;return Ie=Ie*Te+Fe.left,at=Fe.right==0?at:at*Te,Ze=Ze*Le+Fe.top,it=it*Le,yt.nodes.forEach(function(rt){rt.x0=Ie+rt.column*((at-Ie-et)/Ke),rt.x1=rt.x0+et}),Le}function Cr(yt){var Fe,Ke,Ne;for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.depth=Ne,Ee.sourceLinks.forEach(function(Ve){Ke.indexOf(Ve.target)<0&&!Ve.circular&&Ke.push(Ve.target)})});for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.height=Ne,Ee.targetLinks.forEach(function(Ve){Ke.indexOf(Ve.source)<0&&!Ve.circular&&Ke.push(Ve.source)})});yt.nodes.forEach(function(Ee){Ee.column=Math.floor(ge.call(null,Ee,Ne))})}function vr(yt,Fe,Ke){var Ne=A.nest().key(function(rt){return rt.column}).sortKeys(x.ascending).entries(yt.nodes).map(function(rt){return rt.values});ke(Ke),Le();for(var Ee=1,Ve=Fe;Ve>0;--Ve)Te(Ee*=.99,Ke),Le();function ke(rt){if(Qe){var dt=1/0;Ne.forEach(function(Gt){var Kt=it*Qe/(Gt.length+1);dt=Kt<dt?Kt:dt}),lt=dt}var xt=x.min(Ne,function(Gt){return(it-Ze-(Gt.length-1)*lt)/x.sum(Gt,p)});xt=xt*y,yt.links.forEach(function(Gt){Gt.width=Gt.value*xt});var It=ur(yt),Bt=ar(yt,It);xt=xt*Bt,yt.links.forEach(function(Gt){Gt.width=Gt.value*xt}),Ne.forEach(function(Gt){var Kt=Gt.length;Gt.forEach(function(sr,sa){sr.depth==Ne.length-1&&Kt==1||sr.depth==0&&Kt==1?(sr.y0=it/2-sr.value*xt,sr.y1=sr.y0+sr.value*xt):sr.partOfCycle?B(sr,rt)==0?(sr.y0=it/2+sa,sr.y1=sr.y0+sr.value*xt):sr.circularLinkType=="top"?(sr.y0=Ze+sa,sr.y1=sr.y0+sr.value*xt):(sr.y0=it-sr.value*xt-sa,sr.y1=sr.y0+sr.value*xt):It.top==0||It.bottom==0?(sr.y0=(it-Ze)/Kt*sa,sr.y1=sr.y0+sr.value*xt):(sr.y0=(it-Ze)/2-Kt/2+sa,sr.y1=sr.y0+sr.value*xt)})})}function Te(rt,dt){var xt=Ne.length;Ne.forEach(function(It){var Bt=It.length,Gt=It[0].depth;It.forEach(function(Kt){var sr;if((Kt.sourceLinks.length||Kt.targetLinks.length)&&!(Kt.partOfCycle&&B(Kt,dt)>0))if(Gt==0&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else if(Gt==xt-1&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else{var sa=0,Aa=x.mean(Kt.sourceLinks,_),La=x.mean(Kt.targetLinks,l);Aa&&La?sa=(Aa+La)/2:sa=Aa||La;var ka=(sa-T(Kt))*rt;Kt.y0+=ka,Kt.y1+=ka}})})}function Le(){Ne.forEach(function(rt){var dt,xt,It=Ze,Bt=rt.length,Gt;for(rt.sort(v),Gt=0;Gt<Bt;++Gt)dt=rt[Gt],xt=It-dt.y0,xt>0&&(dt.y0+=xt,dt.y1+=xt),It=dt.y1+lt;if(xt=It-lt-it,xt>0)for(It=dt.y0-=xt,dt.y1-=xt,Gt=Bt-2;Gt>=0;--Gt)dt=rt[Gt],xt=dt.y1+lt-It,xt>0&&(dt.y0-=xt,dt.y1-=xt),It=dt.y0})}}function _r(yt){yt.nodes.forEach(function(Fe){Fe.sourceLinks.sort(h),Fe.targetLinks.sort(c)}),yt.nodes.forEach(function(Fe){var Ke=Fe.y0,Ne=Ke,Ee=Fe.y1,Ve=Ee;Fe.sourceLinks.forEach(function(ke){ke.circular?(ke.y0=Ee-ke.width/2,Ee=Ee-ke.width):(ke.y0=Ke+ke.width/2,Ke+=ke.width)}),Fe.targetLinks.forEach(function(ke){ke.circular?(ke.y1=Ve-ke.width/2,Ve=Ve-ke.width):(ke.y1=Ne+ke.width/2,Ne+=ke.width)})})}return St}function P(Ie,Ze,at){var it=0;if(at===null){for(var et=[],lt=0;lt<Ie.links.length;lt++){var Me=Ie.links[lt],ge=Me.source.index,ce=Me.target.index;et[ge]||(et[ge]=[]),et[ce]||(et[ce]=[]),et[ge].indexOf(ce)===-1&&et[ge].push(ce)}var ze=e(et);ze.sort(function(Ct,St){return Ct.length-St.length});var tt={};for(lt=0;lt<ze.length;lt++){var nt=ze[lt],Qe=nt.slice(-2);tt[Qe[0]]||(tt[Qe[0]]={}),tt[Qe[0]][Qe[1]]=!0}Ie.links.forEach(function(Ct){var St=Ct.target.index,Ot=Ct.source.index;St===Ot||tt[Ot]&&tt[Ot][St]?(Ct.circular=!0,Ct.circularLinkID=it,it=it+1):Ct.circular=!1})}else Ie.links.forEach(function(Ct){Ct.source[at]<Ct.target[at]?Ct.circular=!1:(Ct.circular=!0,Ct.circularLinkID=it,it=it+1)})}function L(Ie,Ze){var at=0,it=0;Ie.links.forEach(function(et){et.circular&&(et.source.circularLinkType||et.target.circularLinkType?et.circularLinkType=et.source.circularLinkType?et.source.circularLinkType:et.target.circularLinkType:et.circularLinkType=at<it?"top":"bottom",et.circularLinkType=="top"?at=at+1:it=it+1,Ie.nodes.forEach(function(lt){(b(lt,Ze)==b(et.source,Ze)||b(lt,Ze)==b(et.target,Ze))&&(lt.circularLinkType=et.circularLinkType)}))}),Ie.links.forEach(function(et){et.circular&&(et.source.circularLinkType==et.target.circularLinkType&&(et.circularLinkType=et.source.circularLinkType),Ae(et,Ze)&&(et.circularLinkType=et.source.circularLinkType))})}function z(Ie){var Ze=Math.abs(Ie.y1-Ie.y0),at=Math.abs(Ie.target.x0-Ie.source.x1);return Math.atan(at/Ze)}function F(Ie,Ze){return Ie.source.column<Ze.target.column?!1:!(Ie.target.column>Ze.source.column)}function B(Ie,Ze){var at=0;Ie.sourceLinks.forEach(function(et){at=et.circular&&!Ae(et,Ze)?at+1:at});var it=0;return Ie.targetLinks.forEach(function(et){it=et.circular&&!Ae(et,Ze)?it+1:it}),at+it}function O(Ie){var Ze=Ie.source.sourceLinks,at=0;Ze.forEach(function(lt){at=lt.circular?at+1:at});var it=Ie.target.targetLinks,et=0;return it.forEach(function(lt){et=lt.circular?et+1:et}),!(at>1||et>1)}function I(Ie,Ze,at){return Ie.sort(W),Ie.forEach(function(it,et){var lt=0;if(Ae(it,at)&&O(it))it.circularPathData.verticalBuffer=lt+it.width/2;else{var Me=0;for(Me;Me<et;Me++)if(F(Ie[et],Ie[Me])){var ge=Ie[Me].circularPathData.verticalBuffer+Ie[Me].width/2+Ze;lt=ge>lt?ge:lt}it.circularPathData.verticalBuffer=lt+it.width/2}}),Ie}function N(Ie,Ze,at,it){var et=5,lt=x.min(Ie.links,function(ce){return ce.source.y0});Ie.links.forEach(function(ce){ce.circular&&(ce.circularPathData={})});var Me=Ie.links.filter(function(ce){return ce.circularLinkType=="top"});I(Me,Ze,it);var ge=Ie.links.filter(function(ce){return ce.circularLinkType=="bottom"});I(ge,Ze,it),Ie.links.forEach(function(ce){if(ce.circular){if(ce.circularPathData.arcRadius=ce.width+u,ce.circularPathData.leftNodeBuffer=et,ce.circularPathData.rightNodeBuffer=et,ce.circularPathData.sourceWidth=ce.source.x1-ce.source.x0,ce.circularPathData.sourceX=ce.source.x0+ce.circularPathData.sourceWidth,ce.circularPathData.targetX=ce.target.x0,ce.circularPathData.sourceY=ce.y0,ce.circularPathData.targetY=ce.y1,Ae(ce,it)&&O(ce))ce.circularPathData.leftSmallArcRadius=u+ce.width/2,ce.circularPathData.leftLargeArcRadius=u+ce.width/2,ce.circularPathData.rightSmallArcRadius=u+ce.width/2,ce.circularPathData.rightLargeArcRadius=u+ce.width/2,ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=ce.source.y1+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=ce.source.y0-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius);else{var ze=ce.source.column,tt=ce.circularLinkType,nt=Ie.links.filter(function(St){return St.source.column==ze&&St.circularLinkType==tt});ce.circularLinkType=="bottom"?nt.sort(ue):nt.sort(Q);var Qe=0;nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.leftSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.leftLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ze=ce.target.column,nt=Ie.links.filter(function(St){return St.target.column==ze&&St.circularLinkType==tt}),ce.circularLinkType=="bottom"?nt.sort(he):nt.sort(se),Qe=0,nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.rightSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.rightLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=Math.max(at,ce.source.y1,ce.target.y1)+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=lt-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius)}ce.circularPathData.leftInnerExtent=ce.circularPathData.sourceX+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightInnerExtent=ce.circularPathData.targetX-ce.circularPathData.rightNodeBuffer,ce.circularPathData.leftFullExtent=ce.circularPathData.sourceX+ce.circularPathData.leftLargeArcRadius+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightFullExtent=ce.circularPathData.targetX-ce.circularPathData.rightLargeArcRadius-ce.circularPathData.rightNodeBuffer}if(ce.circular)ce.path=U(ce);else{var Ct=M.linkHorizontal().source(function(St){var Ot=St.source.x0+(St.source.x1-St.source.x0),jt=St.y0;return[Ot,jt]}).target(function(St){var Ot=St.target.x0,jt=St.y1;return[Ot,jt]});ce.path=Ct(ce)}})}function U(Ie){var Ze="";return Ie.circularLinkType=="top"?Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 0 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY-Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 0 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 0 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY-Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 0 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY:Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 1 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY+Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 1 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 1 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY+Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 1 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY,Ze}function W(Ie,Ze){return G(Ie)==G(Ze)?Ie.circularLinkType=="bottom"?ue(Ie,Ze):Q(Ie,Ze):G(Ze)-G(Ie)}function Q(Ie,Ze){return Ie.y0-Ze.y0}function ue(Ie,Ze){return Ze.y0-Ie.y0}function se(Ie,Ze){return Ie.y1-Ze.y1}function he(Ie,Ze){return Ze.y1-Ie.y1}function G(Ie){return Ie.target.column-Ie.source.column}function $(Ie){return Ie.target.x0-Ie.source.x1}function J(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1+it:Ie.y1-it;return et}function Z(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1-it:Ie.y1+it;return et}function re(Ie,Ze,at,it){Ie.links.forEach(function(et){if(!et.circular&&et.target.column-et.source.column>1){var lt=et.source.column+1,Me=et.target.column-1,ge=1,ce=Me-lt+1;for(ge=1;lt<=Me;lt++,ge++)Ie.nodes.forEach(function(ze){if(ze.column==lt){var tt=ge/(ce+1),nt=Math.pow(1-tt,3),Qe=3*tt*Math.pow(1-tt,2),Ct=3*Math.pow(tt,2)*(1-tt),St=Math.pow(tt,3),Ot=nt*et.y0+Qe*et.y0+Ct*et.y1+St*et.y1,jt=Ot-et.width/2,ur=Ot+et.width/2,ar;jt>ze.y0&&jt<ze.y1?(ar=ze.y1-jt+10,ar=ze.circularLinkType=="bottom"?ar:-ar,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||ne(ze,Cr)&&j(Cr,ar,Ze,at)})):ur>ze.y0&&ur<ze.y1?(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0<ze.y1&&Cr.y1>ze.y1&&j(Cr,ar,Ze,at)})):jt<ze.y0&&ur>ze.y1&&(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0<ze.y1&&Cr.y1>ze.y1&&j(Cr,ar,Ze,at)}))}})}})}function ne(Ie,Ze){return Ie.y0>Ze.y0&&Ie.y0<Ze.y1||Ie.y1>Ze.y0&&Ie.y1<Ze.y1?!0:Ie.y0<Ze.y0&&Ie.y1>Ze.y1}function j(Ie,Ze,at,it){return Ie.y0+Ze>=at&&Ie.y1+Ze<=it&&(Ie.y0=Ie.y0+Ze,Ie.y1=Ie.y1+Ze,Ie.targetLinks.forEach(function(et){et.y1=et.y1+Ze}),Ie.sourceLinks.forEach(function(et){et.y0=et.y0+Ze})),Ie}function ee(Ie,Ze,at,it){Ie.nodes.forEach(function(et){it&&et.y+(et.y1-et.y0)>Ze&&(et.y=et.y-(et.y+(et.y1-et.y0)-Ze));var lt=Ie.links.filter(function(ce){return b(ce.source,at)==b(et,at)}),Me=lt.length;Me>1&&lt.sort(function(ce,ze){if(!ce.circular&&!ze.circular){if(ce.target.column==ze.target.column)return ce.y1-ze.y1;if(fe(ce,ze)){if(ce.target.column>ze.target.column){var tt=Z(ze,ce);return ce.y1-tt}if(ze.target.column>ce.target.column){var nt=Z(ce,ze);return nt-ze.y1}}else return ce.y1-ze.y1}if(ce.circular&&!ze.circular)return ce.circularLinkType=="top"?-1:1;if(ze.circular&&!ce.circular)return ze.circularLinkType=="top"?1:-1;if(ce.circular&&ze.circular)return ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="top"?ce.target.column===ze.target.column?ce.target.y1-ze.target.y1:ze.target.column-ce.target.column:ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="bottom"?ce.target.column===ze.target.column?ze.target.y1-ce.target.y1:ce.target.column-ze.target.column:ce.circularLinkType=="top"?-1:1});var ge=et.y0;lt.forEach(function(ce){ce.y0=ge+ce.width/2,ge=ge+ce.width}),lt.forEach(function(ce,ze){if(ce.circularLinkType=="bottom"){var tt=ze+1,nt=0;for(tt;tt<Me;tt++)nt=nt+lt[tt].width;ce.y0=et.y1-nt-ce.width/2}})})}function ie(Ie,Ze,at){Ie.nodes.forEach(function(it){var et=Ie.links.filter(function(ge){return b(ge.target,at)==b(it,at)}),lt=et.length;lt>1&&et.sort(function(ge,ce){if(!ge.circular&&!ce.circular){if(ge.source.column==ce.source.column)return ge.y0-ce.y0;if(fe(ge,ce)){if(ce.source.column<ge.source.column){var ze=J(ce,ge);return ge.y0-ze}if(ge.source.column<ce.source.column){var tt=J(ge,ce);return tt-ce.y0}}else return ge.y0-ce.y0}if(ge.circular&&!ce.circular)return ge.circularLinkType=="top"?-1:1;if(ce.circular&&!ge.circular)return ce.circularLinkType=="top"?1:-1;if(ge.circular&&ce.circular)return ge.circularLinkType===ce.circularLinkType&&ge.circularLinkType=="top"?ge.source.column===ce.source.column?ge.source.y1-ce.source.y1:ge.source.column-ce.source.column:ge.circularLinkType===ce.circularLinkType&&ge.circularLinkType=="bottom"?ge.source.column===ce.source.column?ge.source.y1-ce.source.y1:ce.source.column-ge.source.column:ge.circularLinkType=="top"?-1:1});var Me=it.y0;et.forEach(function(ge){ge.y1=Me+ge.width/2,Me=Me+ge.width}),et.forEach(function(ge,ce){if(ge.circularLinkType=="bottom"){var ze=ce+1,tt=0;for(ze;ze<lt;ze++)tt=tt+et[ze].width;ge.y1=it.y1-tt-ge.width/2}})})}function fe(Ie,Ze){return be(Ie)==be(Ze)}function be(Ie){return Ie.y0-Ie.y1>0?"up":"down"}function Ae(Ie,Ze){return b(Ie.source,Ze)==b(Ie.target,Ze)}function Be(Ie,Ze,at){var it=Ie.nodes,et=Ie.links,lt=!1,Me=!1;if(et.forEach(function(Qe){Qe.circularLinkType=="top"?lt=!0:Qe.circularLinkType=="bottom"&&(Me=!0)}),lt==!1||Me==!1){var ge=x.min(it,function(Qe){return Qe.y0}),ce=x.max(it,function(Qe){return Qe.y1}),ze=ce-ge,tt=at-Ze,nt=tt/ze;it.forEach(function(Qe){var Ct=(Qe.y1-Qe.y0)*nt;Qe.y0=(Qe.y0-ge)*nt,Qe.y1=Qe.y0+Ct}),et.forEach(function(Qe){Qe.y0=(Qe.y0-ge)*nt,Qe.y1=(Qe.y1-ge)*nt,Qe.width=Qe.width*nt})}}g.sankeyCircular=f,g.sankeyCenter=i,g.sankeyLeft=r,g.sankeyRight=o,g.sankeyJustify=a,Object.defineProperty(g,"__esModule",{value:!0})})}}),Fk=Ye({"src/traces/sankey/constants.js"(X,H){"use strict";H.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}}}),Kq=Ye({"src/traces/sankey/render.js"(X,H){"use strict";var g=Gq(),x=(f0(),Hf(fg)).interpolateNumber,A=_n(),M=Zq(),e=Yq(),t=Fk(),r=bh(),o=Fn(),a=Bo(),i=ta(),n=i.strTranslate,s=i.strRotate,c=kv(),h=c.keyFun,v=c.repeat,p=c.unwrap,T=jl(),l=Hn(),_=oh(),w=_.CAP_SHIFT,S=_.LINE_SPACING,E=3;function m(J,Z,re){var ne=p(Z),j=ne.trace,ee=j.domain,ie=j.orientation==="h",fe=j.node.pad,be=j.node.thickness,Ae={justify:M.sankeyJustify,left:M.sankeyLeft,right:M.sankeyRight,center:M.sankeyCenter}[j.node.align],Be=J.width*(ee.x[1]-ee.x[0]),Ie=J.height*(ee.y[1]-ee.y[0]),Ze=ne._nodes,at=ne._links,it=ne.circular,et;it?et=e.sankeyCircular().circularLinkGap(0):et=M.sankey(),et.iterations(t.sankeyIterations).size(ie?[Be,Ie]:[Ie,Be]).nodeWidth(be).nodePadding(fe).nodeId(function(Cr){return Cr.pointNumber}).nodeAlign(Ae).nodes(Ze).links(at);var lt=et();et.nodePadding()<fe&&i.warn("node.pad was reduced to ",et.nodePadding()," to fit within the figure.");var Me,ge,ce;for(var ze in ne._groupLookup){var tt=parseInt(ne._groupLookup[ze]),nt;for(Me=0;Me<lt.nodes.length;Me++)if(lt.nodes[Me].pointNumber===tt){nt=lt.nodes[Me];break}if(nt){var Qe={pointNumber:parseInt(ze),x0:nt.x0,x1:nt.x1,y0:nt.y0,y1:nt.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};lt.nodes.unshift(Qe),nt.childrenNodes.unshift(Qe)}}function Ct(){for(Me=0;Me<lt.nodes.length;Me++){var Cr=lt.nodes[Me],vr={},_r,yt;for(ge=0;ge<Cr.targetLinks.length;ge++)yt=Cr.targetLinks[ge],_r=yt.source.pointNumber+":"+yt.target.pointNumber,vr.hasOwnProperty(_r)||(vr[_r]=[]),vr[_r].push(yt);var Fe=Object.keys(vr);for(ge=0;ge<Fe.length;ge++){_r=Fe[ge];var Ke=vr[_r],Ne=0,Ee={};for(ce=0;ce<Ke.length;ce++)yt=Ke[ce],Ee[yt.label]||(Ee[yt.label]=0),Ee[yt.label]+=yt.value,Ne+=yt.value;for(ce=0;ce<Ke.length;ce++)yt=Ke[ce],yt.flow={value:Ne,labelConcentration:Ee[yt.label]/Ne,concentration:yt.value/Ne,links:Ke},yt.concentrationscale&&(yt.color=r(yt.concentrationscale(yt.flow.labelConcentration)))}var Ve=0;for(ge=0;ge<Cr.sourceLinks.length;ge++)Ve+=Cr.sourceLinks[ge].value;for(ge=0;ge<Cr.sourceLinks.length;ge++)yt=Cr.sourceLinks[ge],yt.concentrationOut=yt.value/Ve;var ke=0;for(ge=0;ge<Cr.targetLinks.length;ge++)ke+=Cr.targetLinks[ge].value;for(ge=0;ge<Cr.targetLinks.length;ge++)yt=Cr.targetLinks[ge],yt.concenrationIn=yt.value/ke}}Ct();function St(Cr){Cr.forEach(function(vr){var _r,yt,Fe=0,Ke=vr.length,Ne;for(vr.sort(function(Ee,Ve){return Ee.y0-Ve.y0}),Ne=0;Ne<Ke;++Ne)_r=vr[Ne],_r.y0>=Fe||(yt=Fe-_r.y0,yt>1e-6&&(_r.y0+=yt,_r.y1+=yt)),Fe=_r.y1+fe})}function Ot(Cr){var vr=Cr.map(function(Ve,ke){return{x0:Ve.x0,index:ke}}).sort(function(Ve,ke){return Ve.x0-ke.x0}),_r=[],yt=-1,Fe,Ke=-1/0,Ne;for(Me=0;Me<vr.length;Me++){var Ee=Cr[vr[Me].index];Ee.x0>Ke+be&&(yt+=1,Fe=Ee.x0),Ke=Ee.x0,_r[yt]||(_r[yt]=[]),_r[yt].push(Ee),Ne=Fe-Ee.x0,Ee.x0+=Ne,Ee.x1+=Ne}return _r}if(j.node.x.length&&j.node.y.length){for(Me=0;Me<Math.min(j.node.x.length,j.node.y.length,lt.nodes.length);Me++)if(j.node.x[Me]&&j.node.y[Me]){var jt=[j.node.x[Me]*Be,j.node.y[Me]*Ie];lt.nodes[Me].x0=jt[0]-be/2,lt.nodes[Me].x1=jt[0]+be/2;var ur=lt.nodes[Me].y1-lt.nodes[Me].y0;lt.nodes[Me].y0=jt[1]-ur/2,lt.nodes[Me].y1=jt[1]+ur/2}if(j.arrangement==="snap"){Ze=lt.nodes;var ar=Ot(Ze);St(ar)}et.update(lt)}return{circular:it,key:re,trace:j,guid:i.randstr(),horizontal:ie,width:Be,height:Ie,nodePad:j.node.pad,nodeLineColor:j.node.line.color,nodeLineWidth:j.node.line.width,linkLineColor:j.link.line.color,linkLineWidth:j.link.line.width,linkArrowLength:j.link.arrowlen,valueFormat:j.valueformat,valueSuffix:j.valuesuffix,textFont:j.textfont,translateX:ee.x[0]*J.width+J.margin.l,translateY:J.height-ee.y[1]*J.height+J.margin.t,dragParallel:ie?Ie:Be,dragPerpendicular:ie?Be:Ie,arrangement:j.arrangement,sankey:et,graph:lt,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function b(J,Z,re){var ne=r(Z.color),j=r(Z.hovercolor),ee=Z.source.label+"|"+Z.target.label,ie=ee+"__"+re;return Z.trace=J.trace,Z.curveNumber=J.trace.index,{circular:J.circular,key:ie,traceId:J.key,pointNumber:Z.pointNumber,link:Z,tinyColorHue:o.tinyRGB(ne),tinyColorAlpha:ne.getAlpha(),tinyColorHoverHue:o.tinyRGB(j),tinyColorHoverAlpha:j.getAlpha(),linkPath:u,linkLineColor:J.linkLineColor,linkLineWidth:J.linkLineWidth,linkArrowLength:J.linkArrowLength,valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,parent:J,interactionState:J.interactionState,flow:Z.flow}}function d(J,Z){var re="",ne=J.width/2,j=J.circularPathData,ee=j.sourceX+j.verticalBuffer<j.targetX,ie=j.rightFullExtent-j.rightLargeArcRadius-Z<=j.leftFullExtent-ne,fe=Math.abs(j.rightFullExtent-j.leftFullExtent-ne)<ne;return J.circularLinkType==="top"?(re="M "+(j.targetX-Z)+" "+(j.targetY+ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+"A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY-j.rightSmallArcRadius)+"L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius+ne))+" L "+(j.rightFullExtent+ne-(j.rightLargeArcRadius-ne)-Z)+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius+ne))+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius-ne))+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius-ne))+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY-j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.sourceY+ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.leftInnerExtent+" "+(j.sourceY-ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 0 "+(j.leftFullExtent-ne)+" "+(j.sourceY-j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent-ne)+" "+(j.verticalFullExtent+ne)+"L"+(j.rightFullExtent+ne-Z)+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent-ne-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY-j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" L "+(j.targetX-Z)+" "+(j.targetY-ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"):(re="M "+(j.targetX-Z)+" "+(j.targetY-ne)+"  L "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-ne-Z)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent-Z-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.leftInnerExtent+" "+(j.sourceY+ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent+ne-Z+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent-Z-ne)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+" L "+(j.targetX-Z)+" "+(j.targetY+ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"),re}function u(){var J=.5;function Z(re){var ne=re.linkArrowLength;if(re.link.circular)return d(re.link,ne);var j=Math.abs((re.link.target.x0-re.link.source.x1)/2);ne>j&&(ne=j);var ee=re.link.source.x1,ie=re.link.target.x0-ne,fe=x(ee,ie),be=fe(J),Ae=fe(1-J),Be=re.link.y0-re.link.width/2,Ie=re.link.y0+re.link.width/2,Ze=re.link.y1-re.link.width/2,at=re.link.y1+re.link.width/2,it="M"+ee+","+Be,et="C"+be+","+Be+" "+Ae+","+Ze+" "+ie+","+Ze,lt="C"+Ae+","+at+" "+be+","+Ie+" "+ee+","+Ie,Me=ne>0?"L"+(ie+ne)+","+(Ze+re.link.width/2):"";return Me+="L"+ie+","+at,it+et+Me+lt+"Z"}return Z}function y(J,Z){var re=r(Z.color),ne=t.nodePadAcross,j=J.nodePad/2;Z.dx=Z.x1-Z.x0,Z.dy=Z.y1-Z.y0;var ee=Z.dx,ie=Math.max(.5,Z.dy),fe="node_"+Z.pointNumber;return Z.group&&(fe=i.randstr()),Z.trace=J.trace,Z.curveNumber=J.trace.index,{index:Z.pointNumber,key:fe,partOfGroup:Z.partOfGroup||!1,group:Z.group,traceId:J.key,trace:J.trace,node:Z,nodePad:J.nodePad,nodeLineColor:J.nodeLineColor,nodeLineWidth:J.nodeLineWidth,textFont:J.textFont,size:J.horizontal?J.height:J.width,visibleWidth:Math.ceil(ee),visibleHeight:ie,zoneX:-ne,zoneY:-j,zoneWidth:ee+2*ne,zoneHeight:ie+2*j,labelY:J.horizontal?Z.dy/2+1:Z.dx/2+1,left:Z.originalLayer===1,sizeAcross:J.width,forceLayouts:J.forceLayouts,horizontal:J.horizontal,darkBackground:re.getBrightness()<=128,tinyColorHue:o.tinyRGB(re),tinyColorAlpha:re.getAlpha(),valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,graph:J.graph,arrangement:J.arrangement,uniqueNodeLabelPathId:[J.guid,J.key,fe].join("_"),interactionState:J.interactionState,figure:J}}function f(J){J.attr("transform",function(Z){return n(Z.node.x0.toFixed(3),Z.node.y0.toFixed(3))})}function P(J){J.call(f)}function L(J,Z){J.call(P),Z.attr("d",u())}function z(J){J.attr("width",function(Z){return Z.node.x1-Z.node.x0}).attr("height",function(Z){return Z.visibleHeight})}function F(J){return J.link.width>1||J.linkLineWidth>0}function B(J){var Z=n(J.translateX,J.translateY);return Z+(J.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function O(J,Z,re){J.on(".basic",null).on("mouseover.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.hover(this,ne,Z),ne.interactionState.hovered=[this,ne])}).on("mousemove.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.follow(this,ne),ne.interactionState.hovered=[this,ne])}).on("mouseout.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1)}).on("click.basic",function(ne){ne.interactionState.hovered&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1),!ne.interactionState.dragInProgress&&!ne.partOfGroup&&re.select(this,ne,Z)})}function I(J,Z,re,ne){var j=A.behavior.drag().origin(function(ee){return{x:ee.node.x0+ee.visibleWidth/2,y:ee.node.y0+ee.visibleHeight/2}}).on("dragstart",function(ee){if(ee.arrangement!=="fixed"&&(i.ensureSingle(ne._fullLayout._infolayer,"g","dragcover",function(fe){ne._fullLayout._dragCover=fe}),i.raiseToTop(this),ee.interactionState.dragInProgress=ee.node,se(ee.node),ee.interactionState.hovered&&(re.nodeEvents.unhover.apply(0,ee.interactionState.hovered),ee.interactionState.hovered=!1),ee.arrangement==="snap")){var ie=ee.traceId+"|"+ee.key;ee.forceLayouts[ie]?ee.forceLayouts[ie].alpha(1):N(J,ie,ee,ne),U(J,Z,ee,ie,ne)}}).on("drag",function(ee){if(ee.arrangement!=="fixed"){var ie=A.event.x,fe=A.event.y;ee.arrangement==="snap"?(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2,ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2):(ee.arrangement==="freeform"&&(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2),fe=Math.max(0,Math.min(ee.size-ee.visibleHeight/2,fe)),ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2),se(ee.node),ee.arrangement!=="snap"&&(ee.sankey.update(ee.graph),L(J.filter(he(ee)),Z))}}).on("dragend",function(ee){if(ee.arrangement!=="fixed"){ee.interactionState.dragInProgress=!1;for(var ie=0;ie<ee.node.childrenNodes.length;ie++)ee.node.childrenNodes[ie].x=ee.node.x,ee.node.childrenNodes[ie].y=ee.node.y;ee.arrangement!=="snap"&&Q(ee,ne)}});J.on(".drag",null).call(j)}function N(J,Z,re,ne){G(re.graph.nodes);var j=re.graph.nodes.filter(function(ee){return ee.originalX===re.node.originalX}).filter(function(ee){return!ee.partOfGroup});re.forceLayouts[Z]=g.forceSimulation(j).alphaDecay(0).force("collide",g.forceCollide().radius(function(ee){return ee.dy/2+re.nodePad/2}).strength(1).iterations(t.forceIterations)).force("constrain",W(J,Z,j,re,ne)).stop()}function U(J,Z,re,ne,j){window.requestAnimationFrame(function ee(){var ie;for(ie=0;ie<t.forceTicksPerFrame;ie++)re.forceLayouts[ne].tick();var fe=re.graph.nodes;if($(fe),re.sankey.update(re.graph),L(J.filter(he(re)),Z),re.forceLayouts[ne].alpha()>0)window.requestAnimationFrame(ee);else{var be=re.node.originalX;re.node.x0=be-re.visibleWidth/2,re.node.x1=be+re.visibleWidth/2,Q(re,j)}})}function W(J,Z,re,ne){return function(){for(var ee=0,ie=0;ie<re.length;ie++){var fe=re[ie];fe===ne.interactionState.dragInProgress?(fe.x=fe.lastDraggedX,fe.y=fe.lastDraggedY):(fe.vx=(fe.originalX-fe.x)/t.forceTicksPerFrame,fe.y=Math.min(ne.size-fe.dy/2,Math.max(fe.dy/2,fe.y))),ee=Math.max(ee,Math.abs(fe.vx),Math.abs(fe.vy))}!ne.interactionState.dragInProgress&&ee<.1&&ne.forceLayouts[Z].alpha()>0&&ne.forceLayouts[Z].alpha(0)}}function Q(J,Z){for(var re=[],ne=[],j=0;j<J.graph.nodes.length;j++){var ee=(J.graph.nodes[j].x0+J.graph.nodes[j].x1)/2,ie=(J.graph.nodes[j].y0+J.graph.nodes[j].y1)/2;re.push(ee/J.figure.width),ne.push(ie/J.figure.height)}l.call("_guiRestyle",Z,{"node.x":[re],"node.y":[ne]},J.trace.index).then(function(){Z._fullLayout._dragCover&&Z._fullLayout._dragCover.remove()})}function ue(J){var Z=[],re;for(re=0;re<J.length;re++)J[re].originalX=(J[re].x0+J[re].x1)/2,J[re].originalY=(J[re].y0+J[re].y1)/2,Z.indexOf(J[re].originalX)===-1&&Z.push(J[re].originalX);for(Z.sort(function(ne,j){return ne-j}),re=0;re<J.length;re++)J[re].originalLayerIndex=Z.indexOf(J[re].originalX),J[re].originalLayer=J[re].originalLayerIndex/(Z.length-1)}function se(J){J.lastDraggedX=J.x0+J.dx/2,J.lastDraggedY=J.y0+J.dy/2}function he(J){return function(Z){return Z.node.originalX===J.node.originalX}}function G(J){for(var Z=0;Z<J.length;Z++)J[Z].y=(J[Z].y0+J[Z].y1)/2,J[Z].x=(J[Z].x0+J[Z].x1)/2}function $(J){for(var Z=0;Z<J.length;Z++)J[Z].y0=J[Z].y-J[Z].dy/2,J[Z].y1=J[Z].y0+J[Z].dy,J[Z].x0=J[Z].x-J[Z].dx/2,J[Z].x1=J[Z].x0+J[Z].dx}H.exports=function(J,Z,re,ne,j){var ee=J._context.staticPlot,ie=!1;i.ensureSingle(J._fullLayout._infolayer,"g","first-render",function(){ie=!0});var fe=J._fullLayout._dragCover,be=re.filter(function(lt){return p(lt).trace.visible}).map(m.bind(null,ne)),Ae=Z.selectAll("."+t.cn.sankey).data(be,h);Ae.exit().remove(),Ae.enter().append("g").classed(t.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events",ee?"none":"auto").attr("transform",B),Ae.each(function(lt,Me){J._fullData[Me]._sankey=lt;var ge="bgsankey-"+lt.trace.uid+"-"+Me;i.ensureSingle(J._fullLayout._draggers,"rect",ge),J._fullData[Me]._bgRect=A.select("."+ge),J._fullData[Me]._bgRect.style("pointer-events",ee?"none":"all").attr("width",lt.width).attr("height",lt.height).attr("x",lt.translateX).attr("y",lt.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})}),Ae.transition().ease(t.ease).duration(t.duration).attr("transform",B);var Be=Ae.selectAll("."+t.cn.sankeyLinks).data(v,h);Be.enter().append("g").classed(t.cn.sankeyLinks,!0).style("fill","none");var Ie=Be.selectAll("."+t.cn.sankeyLink).data(function(lt){var Me=lt.graph.links;return Me.filter(function(ge){return ge.value}).map(b.bind(null,lt))},h);Ie.enter().append("path").classed(t.cn.sankeyLink,!0).call(O,Ae,j.linkEvents),Ie.style("stroke",function(lt){return F(lt)?o.tinyRGB(r(lt.linkLineColor)):lt.tinyColorHue}).style("stroke-opacity",function(lt){return F(lt)?o.opacity(lt.linkLineColor):lt.tinyColorAlpha}).style("fill",function(lt){return lt.tinyColorHue}).style("fill-opacity",function(lt){return lt.tinyColorAlpha}).style("stroke-width",function(lt){return F(lt)?lt.linkLineWidth:1}).attr("d",u()),Ie.style("opacity",function(){return J._context.staticPlot||ie||fe?1:0}).transition().ease(t.ease).duration(t.duration).style("opacity",1),Ie.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var Ze=Ae.selectAll("."+t.cn.sankeyNodeSet).data(v,h);Ze.enter().append("g").classed(t.cn.sankeyNodeSet,!0),Ze.style("cursor",function(lt){switch(lt.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}});var at=Ze.selectAll("."+t.cn.sankeyNode).data(function(lt){var Me=lt.graph.nodes;return ue(Me),Me.map(y.bind(null,lt))},h);at.enter().append("g").classed(t.cn.sankeyNode,!0).call(f).style("opacity",function(lt){return(J._context.staticPlot||ie)&&!lt.partOfGroup?1:0}),at.call(O,Ae,j.nodeEvents).call(I,Ie,j,J),at.transition().ease(t.ease).duration(t.duration).call(f).style("opacity",function(lt){return lt.partOfGroup?0:1}),at.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var it=at.selectAll("."+t.cn.nodeRect).data(v);it.enter().append("rect").classed(t.cn.nodeRect,!0).call(z),it.style("stroke-width",function(lt){return lt.nodeLineWidth}).style("stroke",function(lt){return o.tinyRGB(r(lt.nodeLineColor))}).style("stroke-opacity",function(lt){return o.opacity(lt.nodeLineColor)}).style("fill",function(lt){return lt.tinyColorHue}).style("fill-opacity",function(lt){return lt.tinyColorAlpha}),it.transition().ease(t.ease).duration(t.duration).call(z);var et=at.selectAll("."+t.cn.nodeLabel).data(v);et.enter().append("text").classed(t.cn.nodeLabel,!0).style("cursor","default"),et.attr("data-notex",1).text(function(lt){return lt.node.label}).each(function(lt){var Me=A.select(this);a.font(Me,lt.textFont),T.convertToTspans(Me,J)}).attr("text-anchor",function(lt){return lt.horizontal&&lt.left?"end":"start"}).attr("transform",function(lt){var Me=A.select(this),ge=T.lineCount(Me),ce=lt.textFont.size*((ge-1)*S-w),ze=lt.nodeLineWidth/2+E,tt=((lt.horizontal?lt.visibleHeight:lt.visibleWidth)-ce)/2;lt.horizontal&&(lt.left?ze=-ze:ze+=lt.visibleWidth);var nt=lt.horizontal?"":"scale(-1,1)"+s(90);return n(lt.horizontal?ze:tt,lt.horizontal?tt:ze)+nt}),et.transition().ease(t.ease).duration(t.duration)}}}),Ok=Ye({"src/traces/sankey/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=Kq(),e=Lc(),t=Fn(),r=Fk().cn,o=x._;function a(w){return w!==""}function i(w,S){return w.filter(function(E){return E.key===S.traceId})}function n(w,S){g.select(w).select("path").style("fill-opacity",S),g.select(w).select("rect").style("fill-opacity",S)}function s(w){g.select(w).select("text.name").style("fill","black")}function c(w){return function(S){return w.node.sourceLinks.indexOf(S.link)!==-1||w.node.targetLinks.indexOf(S.link)!==-1}}function h(w){return function(S){return S.node.sourceLinks.indexOf(w.link)!==-1||S.node.targetLinks.indexOf(w.link)!==-1}}function v(w,S,E){S&&E&&i(E,S).selectAll("."+r.sankeyLink).filter(c(S)).call(T.bind(0,S,E,!1))}function p(w,S,E){S&&E&&i(E,S).selectAll("."+r.sankeyLink).filter(c(S)).call(l.bind(0,S,E,!1))}function T(w,S,E,m){m.style("fill",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverHue}).style("fill-opacity",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverAlpha}),m.each(function(b){var d=b.link.label;d!==""&&i(S,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===d}).style("fill",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverHue}).style("fill-opacity",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverAlpha})}),E&&i(S,w).selectAll("."+r.sankeyNode).filter(h(w)).call(v)}function l(w,S,E,m){m.style("fill",function(b){return b.tinyColorHue}).style("fill-opacity",function(b){return b.tinyColorAlpha}),m.each(function(b){var d=b.link.label;d!==""&&i(S,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===d}).style("fill",function(u){return u.tinyColorHue}).style("fill-opacity",function(u){return u.tinyColorAlpha})}),E&&i(S,w).selectAll(r.sankeyNode).filter(h(w)).call(p)}function _(w,S){var E=w.hoverlabel||{},m=x.nestedProperty(E,S).get();return Array.isArray(m)?!1:m}H.exports=function(S,E){for(var m=S._fullLayout,b=m._paper,d=m._size,u=0;u<S._fullData.length;u++)if(S._fullData[u].visible&&S._fullData[u].type===r.sankey&&!S._fullData[u]._viewInitial){var y=S._fullData[u].node;S._fullData[u]._viewInitial={node:{groups:y.groups.slice(),x:y.x.slice(),y:y.y.slice()}}}var f=function(se,he){var G=he.link;G.originalEvent=g.event,S._hoverdata=[G],e.click(S,{target:!0})},P=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(T.bind(0,he,G,!0)),he.link.trace.link.hoverinfo!=="skip"&&(he.link.fullData=he.link.trace,S.emit("plotly_hover",{event:g.event,points:[he.link]})))},L=o(S,"source:")+" ",z=o(S,"target:")+" ",F=o(S,"concentration:")+" ",B=o(S,"incoming flow count:")+" ",O=o(S,"outgoing flow count:")+" ",I=function(se,he){if(S._fullLayout.hovermode===!1)return;var G=he.link.trace.link;if(G.hoverinfo==="none"||G.hoverinfo==="skip")return;var $=[];function J(fe){var be,Ae;fe.circular?(be=(fe.circularPathData.leftInnerExtent+fe.circularPathData.rightInnerExtent)/2,Ae=fe.circularPathData.verticalFullExtent):(be=(fe.source.x1+fe.target.x0)/2,Ae=(fe.y0+fe.y1)/2);var Be=[be,Ae];return fe.trace.orientation==="v"&&Be.reverse(),Be[0]+=he.parent.translateX,Be[1]+=he.parent.translateY,Be}for(var Z=0,re=0;re<he.flow.links.length;re++){var ne=he.flow.links[re];if(!(S._fullLayout.hovermode==="closest"&&he.link.pointNumber!==ne.pointNumber)){he.link.pointNumber===ne.pointNumber&&(Z=re),ne.fullData=ne.trace,G=he.link.trace.link;var j=J(ne),ee={valueLabel:A(he.valueFormat)(ne.value)+he.valueSuffix};$.push({x:j[0],y:j[1],name:ee.valueLabel,text:[ne.label||"",L+ne.source.label,z+ne.target.label,ne.concentrationscale?F+A("%0.2f")(ne.flow.labelConcentration):""].filter(a).join("<br>"),color:_(G,"bgcolor")||t.addOpacity(ne.color,1),borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:g.event.x<j[0]?"right":"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[ne]})}}var ie=e.loneHover($,{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S,anchorIndex:Z});ie.each(function(){var fe=this;he.link.concentrationscale||n(fe,.65),s(fe)})},N=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(l.bind(0,he,G,!0)),he.link.trace.link.hoverinfo!=="skip"&&(he.link.fullData=he.link.trace,S.emit("plotly_unhover",{event:g.event,points:[he.link]})),e.loneUnhover(m._hoverlayer.node()))},U=function(se,he,G){var $=he.node;$.originalEvent=g.event,S._hoverdata=[$],g.select(se).call(p,he,G),e.click(S,{target:!0})},W=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(v,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_hover",{event:g.event,points:[he.node]})))},Q=function(se,he){if(S._fullLayout.hovermode!==!1){var G=he.node.trace.node;if(!(G.hoverinfo==="none"||G.hoverinfo==="skip")){var $=g.select(se).select("."+r.nodeRect),J=S._fullLayout._paperdiv.node().getBoundingClientRect(),Z=$.node().getBoundingClientRect(),re=Z.left-2-J.left,ne=Z.right+2-J.left,j=Z.top+Z.height/4-J.top,ee={valueLabel:A(he.valueFormat)(he.node.value)+he.valueSuffix};he.node.fullData=he.node.trace,S._fullLayout._calcInverseTransform(S);var ie=S._fullLayout._invScaleX,fe=S._fullLayout._invScaleY,be=e.loneHover({x0:ie*re,x1:ie*ne,y:fe*j,name:A(he.valueFormat)(he.node.value)+he.valueSuffix,text:[he.node.label,B+he.node.targetLinks.length,O+he.node.sourceLinks.length].filter(a).join("<br>"),color:_(G,"bgcolor")||he.tinyColorHue,borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[he.node]},{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S});n(be,.85),s(be)}}},ue=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(p,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_unhover",{event:g.event,points:[he.node]})),e.loneUnhover(m._hoverlayer.node()))};M(S,b,E,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{linkEvents:{hover:P,follow:I,unhover:N,select:f},nodeEvents:{hover:W,follow:Q,unhover:ue,select:U}})}}}),Jq=Ye({"src/traces/sankey/base_plot.js"(X){"use strict";var H=Ou().overrideAll,g=jh().getModuleCalcData,x=Ok(),A=Zm(),M=Kd(),e=bp(),t=ff().prepSelect,r=ta(),o=Hn(),a="sankey";X.name=a,X.baseLayoutAttrOverrides=H({hoverlabel:A.hoverlabel},"plot","nested"),X.plot=function(n){var s=g(n.calcdata,a)[0];x(n,s),X.updateFx(n)},X.clean=function(n,s,c,h){var v=h._has&&h._has(a),p=s._has&&s._has(a);v&&!p&&(h._paperdiv.selectAll(".sankey").remove(),h._paperdiv.selectAll(".bgsankey").remove())},X.updateFx=function(n){for(var s=0;s<n._fullData.length;s++)i(n,s)};function i(n,s){var c=n._fullData[s],h=n._fullLayout,v=h.dragmode,p=h.dragmode==="pan"?"move":"crosshair",T=c._bgRect;if(T&&!(v==="pan"||v==="zoom")){M(T,p);var l={_id:"x",c2p:r.identity,_offset:c._sankey.translateX,_length:c._sankey.width},_={_id:"y",c2p:r.identity,_offset:c._sankey.translateY,_length:c._sankey.height},w={gd:n,element:T.node(),plotinfo:{id:s,xaxis:l,yaxis:_,fillRangeItems:r.noop},subplot:s,xaxes:[l],yaxes:[_],doneFnCompleted:function(S){var E=n._fullData[s],m,b=E.node.groups.slice(),d=[];function u(L){for(var z=E._sankey.graph.nodes,F=0;F<z.length;F++)if(z[F].pointNumber===L)return z[F]}for(var y=0;y<S.length;y++){var f=u(S[y].pointNumber);if(f)if(f.group){for(var P=0;P<f.childrenNodes.length;P++)d.push(f.childrenNodes[P].pointNumber);b[f.pointNumber-E.node._count]=!1}else d.push(f.pointNumber)}m=b.filter(Boolean).concat([d]),o.call("_guiRestyle",n,{"node.groups":[m]},s)}};w.prepFn=function(S,E,m){t(S,E,m,w,v)},e.init(w)}}}}),$q=Ye({"src/traces/sankey/select.js"(X,H){"use strict";H.exports=function(x,A){for(var M=x.cd,e=[],t=M[0].trace,r=t._sankey.graph.nodes,o=0;o<r.length;o++){var a=r[o];if(!a.partOfGroup){var i=[(a.x0+a.x1)/2,(a.y0+a.y1)/2];t.orientation==="v"&&i.reverse(),A&&A.contains(i,!1,o,x)&&e.push({pointNumber:a.pointNumber})}}return e}}}),Qq=Ye({"src/traces/sankey/index.js"(X,H){"use strict";H.exports={attributes:Rk(),supplyDefaults:Uq(),calc:jq(),plot:Ok(),moduleType:"trace",name:"sankey",basePlotModule:Jq(),selectPoints:$q(),categories:["noOpacity"],meta:{}}}}),eH=Ye({"lib/sankey.js"(X,H){"use strict";H.exports=Qq()}}),tH=Ye({"src/traces/indicator/base_plot.js"(X){"use strict";var H=Gu();X.name="indicator",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),Bk=Ye({"src/traces/indicator/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Oo().extendDeep,A=Ou().overrideAll,M=Au(),e=Gf(),t=Wu().attributes,r=Vh(),o=cl().templatedArray,a=p1(),i=Cc().descriptionOnlyNumbers,n=M({editType:"plot",colorEditType:"plot"}),s={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:e.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},c={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},h=o("step",x({},s,{range:c}));H.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:t({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:g({},n,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:i("value")},font:g({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:i("value")},increasing:{symbol:{valType:"string",dflt:a.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:a.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:a.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:a.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:g({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:x({},s,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:e.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:A({range:c,visible:g({},r.visible,{dflt:!0}),tickmode:r.minor.tickmode,nticks:r.nticks,tick0:r.tick0,dtick:r.dtick,tickvals:r.tickvals,ticktext:r.ticktext,ticks:g({},r.ticks,{dflt:"outside"}),ticklen:r.ticklen,tickwidth:r.tickwidth,tickcolor:r.tickcolor,ticklabelstep:r.ticklabelstep,showticklabels:r.showticklabels,labelalias:r.labelalias,tickfont:M({}),tickangle:r.tickangle,tickformat:r.tickformat,tickformatstops:r.tickformatstops,tickprefix:r.tickprefix,showtickprefix:r.showtickprefix,ticksuffix:r.ticksuffix,showticksuffix:r.showticksuffix,separatethousands:r.separatethousands,exponentformat:r.exponentformat,minexponent:r.minexponent,showexponent:r.showexponent,editType:"plot"},"plot"),steps:h,threshold:{line:{color:g({},s.line.color,{}),width:g({},s.line.width,{dflt:1}),editType:"plot"},thickness:g({},s.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}}}),Nk=Ye({"src/traces/indicator/constants.js"(X,H){"use strict";H.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}}}),rH=Ye({"src/traces/indicator/defaults.js"(X,H){"use strict";var g=ta(),x=Bk(),A=Wu().defaults,M=cl(),e=up(),t=Nk(),r=Zg(),o=e1(),a=$m(),i=Qm();function n(c,h,v,p){function T(I,N){return g.coerce(c,h,x,I,N)}A(h,p,T),T("mode"),h._hasNumber=h.mode.indexOf("number")!==-1,h._hasDelta=h.mode.indexOf("delta")!==-1,h._hasGauge=h.mode.indexOf("gauge")!==-1;var l=T("value");h._range=[0,typeof l=="number"?1.5*l:1];var _=new Array(2),w;if(h._hasNumber){T("number.valueformat");var S=g.extendFlat({},p.font);S.size=void 0,g.coerceFont(T,"number.font",S),h.number.font.size===void 0&&(h.number.font.size=t.defaultNumberFontSize,_[0]=!0),T("number.prefix"),T("number.suffix"),w=h.number.font.size}var E;if(h._hasDelta){var m=g.extendFlat({},p.font);m.size=void 0,g.coerceFont(T,"delta.font",m),h.delta.font.size===void 0&&(h.delta.font.size=(h._hasNumber?.5:1)*(w||t.defaultNumberFontSize),_[1]=!0),T("delta.reference",h.value),T("delta.relative"),T("delta.valueformat",h.delta.relative?"2%":""),T("delta.increasing.symbol"),T("delta.increasing.color"),T("delta.decreasing.symbol"),T("delta.decreasing.color"),T("delta.position"),T("delta.prefix"),T("delta.suffix"),E=h.delta.font.size}h._scaleNumbers=(!h._hasNumber||_[0])&&(!h._hasDelta||_[1])||!1;var b=g.extendFlat({},p.font);b.size=.25*(w||E||t.defaultNumberFontSize),g.coerceFont(T,"title.font",b),T("title.text");var d,u,y,f;function P(I,N){return g.coerce(d,u,x.gauge,I,N)}function L(I,N){return g.coerce(y,f,x.gauge.axis,I,N)}if(h._hasGauge){d=c.gauge,d||(d={}),u=M.newContainer(h,"gauge"),P("shape");var z=h._isBullet=h.gauge.shape==="bullet";z||T("title.align","center");var F=h._isAngular=h.gauge.shape==="angular";F||T("align","center"),P("bgcolor",p.paper_bgcolor),P("borderwidth"),P("bordercolor"),P("bar.color"),P("bar.line.color"),P("bar.line.width");var B=t.valueThickness*(h.gauge.shape==="bullet"?.5:1);P("bar.thickness",B),e(d,u,{name:"steps",handleItemDefaults:s}),P("threshold.value"),P("threshold.thickness"),P("threshold.line.width"),P("threshold.line.color"),y={},d&&(y=d.axis||{}),f=M.newContainer(u,"axis"),L("visible"),h._range=L("range",h._range);var O={font:p.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};r(y,f,L,"linear"),i(y,f,L,"linear",O),a(y,f,L,"linear",O),o(y,f,L,O)}else T("title.align","center"),T("align","center"),h._isAngular=h._isBullet=!1;h._length=null}function s(c,h){function v(p,T){return g.coerce(c,h,x.gauge.steps,p,T)}v("color"),v("line.color"),v("line.width"),v("range"),v("thickness")}H.exports={supplyDefaults:n}}}),aH=Ye({"src/traces/indicator/calc.js"(X,H){"use strict";function g(x,A){var M=[],e=A.value;typeof A._lastValue!="number"&&(A._lastValue=A.value);var t=A._lastValue,r=t;return A._hasDelta&&typeof A.delta.reference=="number"&&(r=A.delta.reference),M[0]={y:e,lastY:t,delta:e-r,relativeDelta:(e-r)/r},M}H.exports={calc:g}}}),iH=Ye({"src/traces/indicator/plot.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=(f0(),Hf(fg)).interpolateNumber,M=ta(),e=M.strScale,t=M.strTranslate,r=M.rad2deg,o=oh().MID_SHIFT,a=Bo(),i=Nk(),n=jl(),s=Co(),c=R_(),h=I2(),v=Vh(),p=Fn(),T={left:"start",center:"middle",right:"end"},l={left:0,center:.5,right:1},_=/[yzafpnµmkMGTPEZY]/;function w(z){return z&&z.duration>0}H.exports=function(F,B,O,I){var N=F._fullLayout,U;w(O)&&I&&(U=I()),M.makeTraceGroups(N._indicatorlayer,B,"trace").each(function(W){var Q=W[0],ue=Q.trace,se=g.select(this),he=ue._hasGauge,G=ue._isAngular,$=ue._isBullet,J=ue.domain,Z={w:N._size.w*(J.x[1]-J.x[0]),h:N._size.h*(J.y[1]-J.y[0]),l:N._size.l+N._size.w*J.x[0],r:N._size.r+N._size.w*(1-J.x[1]),t:N._size.t+N._size.h*(1-J.y[1]),b:N._size.b+N._size.h*J.y[0]},re=Z.l+Z.w/2,ne=Z.t+Z.h/2,j=Math.min(Z.w/2,Z.h),ee=i.innerRadius*j,ie,fe,be,Ae=ue.align||"center";if(fe=ne,!he)ie=Z.l+l[Ae]*Z.w,be=function(ce){return y(ce,Z.w,Z.h)};else if(G&&(ie=re,fe=ne+j/2,be=function(ce){return f(ce,.9*ee)}),$){var Be=i.bulletPadding,Ie=1-i.bulletNumberDomainSize+Be;ie=Z.l+(Ie+(1-Ie)*l[Ae])*Z.w,be=function(ce){return y(ce,(i.bulletNumberDomainSize-Be)*Z.w,Z.h)}}m(F,se,W,{numbersX:ie,numbersY:fe,numbersScaler:be,transitionOpts:O,onComplete:U});var Ze,at;he&&(Ze={range:ue.gauge.axis.range,color:ue.gauge.bgcolor,line:{color:ue.gauge.bordercolor,width:0},thickness:1},at={range:ue.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:ue.gauge.bordercolor,width:ue.gauge.borderwidth},thickness:1});var it=se.selectAll("g.angular").data(G?W:[]);it.exit().remove();var et=se.selectAll("g.angularaxis").data(G?W:[]);et.exit().remove(),G&&E(F,se,W,{radius:j,innerRadius:ee,gauge:it,layer:et,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var lt=se.selectAll("g.bullet").data($?W:[]);lt.exit().remove();var Me=se.selectAll("g.bulletaxis").data($?W:[]);Me.exit().remove(),$&&S(F,se,W,{gauge:lt,layer:Me,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var ge=se.selectAll("text.title").data(W);ge.exit().remove(),ge.enter().append("text").classed("title",!0),ge.attr("text-anchor",function(){return $?T.right:T[ue.title.align]}).text(ue.title.text).call(a.font,ue.title.font).call(n.convertToTspans,F),ge.attr("transform",function(){var ce=Z.l+Z.w*l[ue.title.align],ze,tt=i.titlePadding,nt=a.bBox(ge.node());if(he){if(G)if(ue.gauge.axis.visible){var Qe=a.bBox(et.node());ze=Qe.top-tt-nt.bottom}else ze=Z.t+Z.h/2-j/2-nt.bottom-tt;$&&(ze=fe-(nt.top+nt.bottom)/2,ce=Z.l-i.bulletPadding*Z.w)}else ze=ue._numbersTop-tt-nt.bottom;return t(ce,ze)})})};function S(z,F,B,O){var I=B[0].trace,N=O.gauge,U=O.layer,W=O.gaugeBg,Q=O.gaugeOutline,ue=O.size,se=I.domain,he=O.transitionOpts,G=O.onComplete,$,J,Z,re,ne;N.enter().append("g").classed("bullet",!0),N.attr("transform",t(ue.l,ue.t)),U.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),U.selectAll("g.xbulletaxistick,path,text").remove();var j=ue.h,ee=I.gauge.bar.thickness*j,ie=se.x[0],fe=se.x[0]+(se.x[1]-se.x[0])*(I._hasNumber||I._hasDelta?1-i.bulletNumberDomainSize:1);$=u(z,I.gauge.axis),$._id="xbulletaxis",$.domain=[ie,fe],$.setScale(),J=s.calcTicks($),Z=s.makeTransTickFn($),re=s.getTickSigns($)[2],ne=ue.t+ue.h,$.visible&&(s.drawTicks(z,$,{vals:$.ticks==="inside"?s.clipEnds($,J):J,layer:U,path:s.makeTickPath($,ne,re),transFn:Z}),s.drawLabels(z,$,{vals:J,layer:U,transFn:Z,labelFns:s.makeLabelFns($,ne)}));function be(et){et.attr("width",function(lt){return Math.max(0,$.c2p(lt.range[1])-$.c2p(lt.range[0]))}).attr("x",function(lt){return $.c2p(lt.range[0])}).attr("y",function(lt){return .5*(1-lt.thickness)*j}).attr("height",function(lt){return lt.thickness*j})}var Ae=[W].concat(I.gauge.steps),Be=N.selectAll("g.bg-bullet").data(Ae);Be.enter().append("g").classed("bg-bullet",!0).append("rect"),Be.select("rect").call(be).call(b),Be.exit().remove();var Ie=N.selectAll("g.value-bullet").data([I.gauge.bar]);Ie.enter().append("g").classed("value-bullet",!0).append("rect"),Ie.select("rect").attr("height",ee).attr("y",(j-ee)/2).call(b),w(he)?Ie.select("rect").transition().duration(he.duration).ease(he.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()}).attr("width",Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y)))):Ie.select("rect").attr("width",typeof B[0].y=="number"?Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y))):0),Ie.exit().remove();var Ze=B.filter(function(){return I.gauge.threshold.value||I.gauge.threshold.value===0}),at=N.selectAll("g.threshold-bullet").data(Ze);at.enter().append("g").classed("threshold-bullet",!0).append("line"),at.select("line").attr("x1",$.c2p(I.gauge.threshold.value)).attr("x2",$.c2p(I.gauge.threshold.value)).attr("y1",(1-I.gauge.threshold.thickness)/2*j).attr("y2",(1-(1-I.gauge.threshold.thickness)/2)*j).call(p.stroke,I.gauge.threshold.line.color).style("stroke-width",I.gauge.threshold.line.width),at.exit().remove();var it=N.selectAll("g.gauge-outline").data([Q]);it.enter().append("g").classed("gauge-outline",!0).append("rect"),it.select("rect").call(be).call(b),it.exit().remove()}function E(z,F,B,O){var I=B[0].trace,N=O.size,U=O.radius,W=O.innerRadius,Q=O.gaugeBg,ue=O.gaugeOutline,se=[N.l+N.w/2,N.t+N.h/2+U/2],he=O.gauge,G=O.layer,$=O.transitionOpts,J=O.onComplete,Z=Math.PI/2;function re(Ct){var St=I.gauge.axis.range[0],Ot=I.gauge.axis.range[1],jt=(Ct-St)/(Ot-St)*Math.PI-Z;return jt<-Z?-Z:jt>Z?Z:jt}function ne(Ct){return g.svg.arc().innerRadius((W+U)/2-Ct/2*(U-W)).outerRadius((W+U)/2+Ct/2*(U-W)).startAngle(-Z)}function j(Ct){Ct.attr("d",function(St){return ne(St.thickness).startAngle(re(St.range[0])).endAngle(re(St.range[1]))()})}var ee,ie,fe,be;he.enter().append("g").classed("angular",!0),he.attr("transform",t(se[0],se[1])),G.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),G.selectAll("g.xangularaxistick,path,text").remove(),ee=u(z,I.gauge.axis),ee.type="linear",ee.range=I.gauge.axis.range,ee._id="xangularaxis",ee.ticklabeloverflow="allow",ee.setScale();var Ae=function(Ct){return(ee.range[0]-Ct.x)/(ee.range[1]-ee.range[0])*Math.PI+Math.PI},Be={},Ie=s.makeLabelFns(ee,0),Ze=Ie.labelStandoff;Be.xFn=function(Ct){var St=Ae(Ct);return Math.cos(St)*Ze},Be.yFn=function(Ct){var St=Ae(Ct),Ot=Math.sin(St)>0?.2:1;return-Math.sin(St)*(Ze+Ct.fontSize*Ot)+Math.abs(Math.cos(St))*(Ct.fontSize*o)},Be.anchorFn=function(Ct){var St=Ae(Ct),Ot=Math.cos(St);return Math.abs(Ot)<.1?"middle":Ot>0?"start":"end"},Be.heightFn=function(Ct,St,Ot){var jt=Ae(Ct);return-.5*(1+Math.sin(jt))*Ot};var at=function(Ct){return t(se[0]+U*Math.cos(Ct),se[1]-U*Math.sin(Ct))};fe=function(Ct){return at(Ae(Ct))};var it=function(Ct){var St=Ae(Ct);return at(St)+"rotate("+-r(St)+")"};if(ie=s.calcTicks(ee),be=s.getTickSigns(ee)[2],ee.visible){be=ee.ticks==="inside"?-1:1;var et=(ee.linewidth||1)/2;s.drawTicks(z,ee,{vals:ie,layer:G,path:"M"+be*et+",0h"+be*ee.ticklen,transFn:it}),s.drawLabels(z,ee,{vals:ie,layer:G,transFn:fe,labelFns:Be})}var lt=[Q].concat(I.gauge.steps),Me=he.selectAll("g.bg-arc").data(lt);Me.enter().append("g").classed("bg-arc",!0).append("path"),Me.select("path").call(j).call(b),Me.exit().remove();var ge=ne(I.gauge.bar.thickness),ce=he.selectAll("g.value-arc").data([I.gauge.bar]);ce.enter().append("g").classed("value-arc",!0).append("path");var ze=ce.select("path");w($)?(ze.transition().duration($.duration).ease($.easing).each("end",function(){J&&J()}).each("interrupt",function(){J&&J()}).attrTween("d",d(ge,re(B[0].lastY),re(B[0].y))),I._lastValue=B[0].y):ze.attr("d",typeof B[0].y=="number"?ge.endAngle(re(B[0].y)):"M0,0Z"),ze.call(b),ce.exit().remove(),lt=[];var tt=I.gauge.threshold.value;(tt||tt===0)&&lt.push({range:[tt,tt],color:I.gauge.threshold.color,line:{color:I.gauge.threshold.line.color,width:I.gauge.threshold.line.width},thickness:I.gauge.threshold.thickness});var nt=he.selectAll("g.threshold-arc").data(lt);nt.enter().append("g").classed("threshold-arc",!0).append("path"),nt.select("path").call(j).call(b),nt.exit().remove();var Qe=he.selectAll("g.gauge-outline").data([ue]);Qe.enter().append("g").classed("gauge-outline",!0).append("path"),Qe.select("path").call(j).call(b),Qe.exit().remove()}function m(z,F,B,O){var I=B[0].trace,N=O.numbersX,U=O.numbersY,W=I.align||"center",Q=T[W],ue=O.transitionOpts,se=O.onComplete,he=M.ensureSingle(F,"g","numbers"),G,$,J,Z=[];I._hasNumber&&Z.push("number"),I._hasDelta&&(Z.push("delta"),I.delta.position==="left"&&Z.reverse());var re=he.selectAll("text").data(Z);re.enter().append("text"),re.attr("text-anchor",function(){return Q}).attr("class",function(at){return at}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),re.exit().remove();function ne(at,it,et,lt){if(at.match("s")&&et>=0!=lt>=0&&!it(et).slice(-1).match(_)&&!it(lt).slice(-1).match(_)){var Me=at.slice().replace("s","f").replace(/\d+/,function(ce){return parseInt(ce)-1}),ge=u(z,{tickformat:Me});return function(ce){return Math.abs(ce)<1?s.tickText(ge,ce).text:it(ce)}}else return it}function j(){var at=u(z,{tickformat:I.number.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(ce){return s.tickText(at,ce).text},et=I.number.suffix,lt=I.number.prefix,Me=he.select("text.number");function ge(){var ce=typeof B[0].y=="number"?lt+it(B[0].y)+et:"-";Me.text(ce).call(a.font,I.number.font).call(n.convertToTspans,z)}return w(ue)?Me.transition().duration(ue.duration).ease(ue.easing).each("end",function(){ge(),se&&se()}).each("interrupt",function(){ge(),se&&se()}).attrTween("text",function(){var ce=g.select(this),ze=A(B[0].lastY,B[0].y);I._lastValue=B[0].y;var tt=ne(I.number.valueformat,it,B[0].lastY,B[0].y);return function(nt){ce.text(lt+tt(ze(nt))+et)}}):ge(),G=P(lt+it(B[0].y)+et,I.number.font,Q,z),Me}function ee(){var at=u(z,{tickformat:I.delta.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(nt){return s.tickText(at,nt).text},et=I.delta.suffix,lt=I.delta.prefix,Me=function(nt){var Qe=I.delta.relative?nt.relativeDelta:nt.delta;return Qe},ge=function(nt,Qe){return nt===0||typeof nt!="number"||isNaN(nt)?"-":(nt>0?I.delta.increasing.symbol:I.delta.decreasing.symbol)+lt+Qe(nt)+et},ce=function(nt){return nt.delta>=0?I.delta.increasing.color:I.delta.decreasing.color};I._deltaLastValue===void 0&&(I._deltaLastValue=Me(B[0]));var ze=he.select("text.delta");ze.call(a.font,I.delta.font).call(p.fill,ce({delta:I._deltaLastValue}));function tt(){ze.text(ge(Me(B[0]),it)).call(p.fill,ce(B[0])).call(n.convertToTspans,z)}return w(ue)?ze.transition().duration(ue.duration).ease(ue.easing).tween("text",function(){var nt=g.select(this),Qe=Me(B[0]),Ct=I._deltaLastValue,St=ne(I.delta.valueformat,it,Ct,Qe),Ot=A(Ct,Qe);return I._deltaLastValue=Qe,function(jt){nt.text(ge(Ot(jt),St)),nt.call(p.fill,ce({delta:Ot(jt)}))}}).each("end",function(){tt(),se&&se()}).each("interrupt",function(){tt(),se&&se()}):tt(),$=P(ge(Me(B[0]),it),I.delta.font,Q,z),ze}var ie=I.mode+I.align,fe;if(I._hasDelta&&(fe=ee(),ie+=I.delta.position+I.delta.font.size+I.delta.font.family+I.delta.valueformat,ie+=I.delta.increasing.symbol+I.delta.decreasing.symbol,J=$),I._hasNumber&&(j(),ie+=I.number.font.size+I.number.font.family+I.number.valueformat+I.number.suffix+I.number.prefix,J=G),I._hasDelta&&I._hasNumber){var be=[(G.left+G.right)/2,(G.top+G.bottom)/2],Ae=[($.left+$.right)/2,($.top+$.bottom)/2],Be,Ie,Ze=.75*I.delta.font.size;I.delta.position==="left"&&(Be=L(I,"deltaPos",0,-1*(G.width*l[I.align]+$.width*(1-l[I.align])+Ze),ie,Math.min),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:$.left+Be,right:G.right,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="right"&&(Be=L(I,"deltaPos",0,G.width*(1-l[I.align])+$.width*l[I.align]+Ze,ie,Math.max),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:G.left,right:$.right+Be,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="bottom"&&(Be=null,Ie=$.height,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height,bottom:G.bottom+$.height}),I.delta.position==="top"&&(Be=null,Ie=G.top,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height-$.height,bottom:G.bottom}),fe.attr({dx:Be,dy:Ie})}(I._hasNumber||I._hasDelta)&&he.attr("transform",function(){var at=O.numbersScaler(J);ie+=at[2];var it=L(I,"numbersScale",1,at[0],ie,Math.min),et;I._scaleNumbers||(it=1),I._isAngular?et=U-it*J.bottom:et=U-it*(J.top+J.bottom)/2,I._numbersTop=it*J.top+et;var lt=J[W];W==="center"&&(lt=(J.left+J.right)/2);var Me=N-it*lt;return Me=L(I,"numbersTranslate",0,Me,ie,Math.max),t(Me,et)+e(it)})}function b(z){z.each(function(F){p.stroke(g.select(this),F.line.color)}).each(function(F){p.fill(g.select(this),F.color)}).style("stroke-width",function(F){return F.line.width})}function d(z,F,B){return function(){var O=x(F,B);return function(I){return z.endAngle(O(I))()}}}function u(z,F,B){var O=z._fullLayout,I=M.extendFlat({type:"linear",ticks:"outside",range:B,showline:!0},F),N={type:"linear",_id:"x"+F._id},U={letter:"x",font:O.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function W(Q,ue){return M.coerce(I,N,v,Q,ue)}return c(I,N,W,U,O),h(I,N,W,U),N}function y(z,F,B){var O=Math.min(F/z.width,B/z.height);return[O,z,F+"x"+B]}function f(z,F){var B=Math.sqrt(z.width/2*(z.width/2)+z.height*z.height),O=F/B;return[O,z,F]}function P(z,F,B,O){var I=document.createElementNS("http://www.w3.org/2000/svg","text"),N=g.select(I);return N.text(z).attr("x",0).attr("y",0).attr("text-anchor",B).attr("data-unformatted",z).call(n.convertToTspans,O).call(a.font,F),a.bBox(N.node())}function L(z,F,B,O,I,N){var U="_cache"+F;z[U]&&z[U].key===I||(z[U]={key:I,value:B});var W=M.aggNums(N,null,[z[U].value,O],2);return z[U].value=W,W}}}),nH=Ye({"src/traces/indicator/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"indicator",basePlotModule:tH(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:Bk(),supplyDefaults:rH().supplyDefaults,calc:aH().calc,plot:iH(),meta:{}}}}),oH=Ye({"lib/indicator.js"(X,H){"use strict";H.exports=nH()}}),Uk=Ye({"src/traces/table/attributes.js"(X,H){"use strict";var g=Kg(),x=Oo().extendFlat,A=Ou().overrideAll,M=Au(),e=Wu().attributes,t=Cc().descriptionOnlyNumbers,r=H.exports=A({domain:e({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},M({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},M({arrayOk:!0}))}},"calc","from-root")}}),sH=Ye({"src/traces/table/defaults.js"(X,H){"use strict";var g=ta(),x=Uk(),A=Wu().defaults;function M(e,t){for(var r=e.columnorder||[],o=e.header.values.length,a=r.slice(0,o),i=a.slice().sort(function(c,h){return c-h}),n=a.map(function(c){return i.indexOf(c)}),s=n.length;s<o;s++)n.push(s);t("columnorder",n)}H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(r,a,i),i("columnwidth"),i("header.values"),i("header.format"),i("header.align"),i("header.prefix"),i("header.suffix"),i("header.height"),i("header.line.width"),i("header.line.color"),i("header.fill.color"),g.coerceFont(i,"header.font",a.font),M(r,i),i("cells.values"),i("cells.format"),i("cells.align"),i("cells.prefix"),i("cells.suffix"),i("cells.height"),i("cells.line.width"),i("cells.line.color"),i("cells.fill.color"),g.coerceFont(i,"cells.font",a.font),r._length=null}}}),lH=Ye({"src/traces/table/calc.js"(X,H){"use strict";var g=kv().wrap;H.exports=function(){return g({})}}}),jk=Ye({"src/traces/table/constants.js"(X,H){"use strict";H.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"<br>",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}}}),uH=Ye({"src/traces/table/data_preparation_helper.js"(X,H){"use strict";var g=jk(),x=Oo().extendFlat,A=jo(),M=xp().isTypedArray,e=xp().isArrayOrTypedArray;H.exports=function(v,p){var T=o(p.cells.values),l=function(Q){return Q.slice(p.header.values.length,Q.length)},_=o(p.header.values);_.length&&!_[0].length&&(_[0]=[""],_=o(_));var w=_.concat(l(T).map(function(){return a((_[0]||[""]).length)})),S=p.domain,E=Math.floor(v._fullLayout._size.w*(S.x[1]-S.x[0])),m=Math.floor(v._fullLayout._size.h*(S.y[1]-S.y[0])),b=p.header.values.length?w[0].map(function(){return p.header.height}):[g.emptyHeaderHeight],d=T.length?T[0].map(function(){return p.cells.height}):[],u=b.reduce(r,0),y=m-u,f=y+g.uplift,P=s(d,f),L=s(b,u),z=n(L,[]),F=n(P,z),B={},O=p._fullInput.columnorder;e(O)&&(O=Array.from(O)),O=O.concat(l(T.map(function(Q,ue){return ue})));var I=w.map(function(Q,ue){var se=e(p.columnwidth)?p.columnwidth[Math.min(ue,p.columnwidth.length-1)]:p.columnwidth;return A(se)?Number(se):1}),N=I.reduce(r,0);I=I.map(function(Q){return Q/N*E});var U=Math.max(t(p.header.line.width),t(p.cells.line.width)),W={key:p.uid+v._context.staticPlot,translateX:S.x[0]*v._fullLayout._size.w,translateY:v._fullLayout._size.h*(1-S.y[1]),size:v._fullLayout._size,width:E,maxLineWidth:U,height:m,columnOrder:O,groupHeight:m,rowBlocks:F,headerRowBlocks:z,scrollY:0,cells:x({},p.cells,{values:T}),headerCells:x({},p.header,{values:w}),gdColumns:w.map(function(Q){return Q[0]}),gdColumnsOriginalOrder:w.map(function(Q){return Q[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:w.map(function(Q,ue){var se=B[Q];B[Q]=(se||0)+1;var he=Q+"__"+B[Q];return{key:he,label:Q,specIndex:ue,xIndex:O[ue],xScale:i,x:void 0,calcdata:void 0,columnWidth:I[ue]}})};return W.columns.forEach(function(Q){Q.calcdata=W,Q.x=i(Q)}),W};function t(h){if(e(h)){for(var v=0,p=0;p<h.length;p++)v=Math.max(v,t(h[p]));return v}return h}function r(h,v){return h+v}function o(h){var v=h.slice(),p=1/0,T=0,l;for(l=0;l<v.length;l++)M(v[l])?v[l]=Array.from(v[l]):e(v[l])||(v[l]=[v[l]]),p=Math.min(p,v[l].length),T=Math.max(T,v[l].length);if(p!==T)for(l=0;l<v.length;l++){var _=T-v[l].length;_&&(v[l]=v[l].concat(a(_)))}return v}function a(h){for(var v=new Array(h),p=0;p<h;p++)v[p]="";return v}function i(h){return h.calcdata.columns.reduce(function(v,p){return p.xIndex<h.xIndex?v+p.columnWidth:v},0)}function n(h,v){var p=Object.keys(h);return p.map(function(T){return x({},h[T],{auxiliaryBlocks:v})})}function s(h,v){for(var p={},T,l=0,_=0,w=c(),S=0,E=0,m=0;m<h.length;m++)T=h[m],w.rows.push({rowIndex:m,rowHeight:T}),_+=T,(_>=v||m===h.length-1)&&(p[l]=w,w.key=E++,w.firstRowIndex=S,w.lastRowIndex=m,w=c(),l+=_,S=m+1,_=0);return p}function c(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}}}),cH=Ye({"src/traces/table/data_split_helpers.js"(X){"use strict";var H=Oo().extendFlat;X.splitToPanels=function(x){var A=[0,0],M=H({},x,{key:"header",type:"header",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!0,values:x.calcdata.headerCells.values[x.specIndex],rowBlocks:x.calcdata.headerRowBlocks,calcdata:H({},x.calcdata,{cells:x.calcdata.headerCells})}),e=H({},x,{key:"cells1",type:"cells",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks}),t=H({},x,{key:"cells2",type:"cells",page:1,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks});return[e,t,M]},X.splitToCells=function(x){var A=g(x);return(x.values||[]).slice(A[0],A[1]).map(function(M,e){var t=typeof M=="string"&&M.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:e+t,key:A[0]+e,column:x,calcdata:x.calcdata,page:x.page,rowBlocks:x.rowBlocks,value:M}})};function g(x){var A=x.rowBlocks[x.page],M=A?A.rows[0].rowIndex:0,e=A?M+A.rows.length:0;return[M,e]}}}),Vk=Ye({"src/traces/table/plot.js"(X,H){"use strict";var g=jk(),x=_n(),A=ta(),M=A.numberFormat,e=kv(),t=Bo(),r=jl(),o=ta().raiseToTop,a=ta().strTranslate,i=ta().cancelTransition,n=uH(),s=cH(),c=Fn();H.exports=function(ie,fe){var be=!ie._context.staticPlot,Ae=ie._fullLayout._paper.selectAll("."+g.cn.table).data(fe.map(function(Qe){var Ct=e.unwrap(Qe),St=Ct.trace;return n(ie,St)}),e.keyFun);Ae.exit().remove(),Ae.enter().append("g").classed(g.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),Ae.attr("width",function(Qe){return Qe.width+Qe.size.l+Qe.size.r}).attr("height",function(Qe){return Qe.height+Qe.size.t+Qe.size.b}).attr("transform",function(Qe){return a(Qe.translateX,Qe.translateY)});var Be=Ae.selectAll("."+g.cn.tableControlView).data(e.repeat,e.keyFun),Ie=Be.enter().append("g").classed(g.cn.tableControlView,!0).style("box-sizing","content-box");if(be){var Ze="onwheel"in document?"wheel":"mousewheel";Ie.on("mousemove",function(Qe){Be.filter(function(Ct){return Qe===Ct}).call(l,ie)}).on(Ze,function(Qe){if(!Qe.scrollbarState.wheeling){Qe.scrollbarState.wheeling=!0;var Ct=Qe.scrollY+x.event.deltaY,St=Q(ie,Be,null,Ct)(Qe);St||(x.event.stopPropagation(),x.event.preventDefault()),Qe.scrollbarState.wheeling=!1}}).call(l,ie,!0)}Be.attr("transform",function(Qe){return a(Qe.size.l,Qe.size.t)});var at=Be.selectAll("."+g.cn.scrollBackground).data(e.repeat,e.keyFun);at.enter().append("rect").classed(g.cn.scrollBackground,!0).attr("fill","none"),at.attr("width",function(Qe){return Qe.width}).attr("height",function(Qe){return Qe.height}),Be.each(function(Qe){t.setClipUrl(x.select(this),v(ie,Qe),ie)});var it=Be.selectAll("."+g.cn.yColumn).data(function(Qe){return Qe.columns},e.keyFun);it.enter().append("g").classed(g.cn.yColumn,!0),it.exit().remove(),it.attr("transform",function(Qe){return a(Qe.x,0)}),be&&it.call(x.behavior.drag().origin(function(Qe){var Ct=x.select(this);return B(Ct,Qe,-g.uplift),o(this),Qe.calcdata.columnDragInProgress=!0,l(Be.filter(function(St){return Qe.calcdata.key===St.key}),ie),Qe}).on("drag",function(Qe){var Ct=x.select(this),St=function(ur){return(Qe===ur?x.event.x:ur.x)+ur.columnWidth/2};Qe.x=Math.max(-g.overdrag,Math.min(Qe.calcdata.width+g.overdrag-Qe.columnWidth,x.event.x));var Ot=T(it).filter(function(ur){return ur.calcdata.key===Qe.calcdata.key}),jt=Ot.sort(function(ur,ar){return St(ur)-St(ar)});jt.forEach(function(ur,ar){ur.xIndex=ar,ur.x=Qe===ur?ur.x:ur.xScale(ur)}),it.filter(function(ur){return Qe!==ur}).transition().ease(g.transitionEase).duration(g.transitionDuration).attr("transform",function(ur){return a(ur.x,0)}),Ct.call(i).attr("transform",a(Qe.x,-g.uplift))}).on("dragend",function(Qe){var Ct=x.select(this),St=Qe.calcdata;Qe.x=Qe.xScale(Qe),Qe.calcdata.columnDragInProgress=!1,B(Ct,Qe,0),z(ie,St,St.columns.map(function(Ot){return Ot.xIndex}))})),it.each(function(Qe){t.setClipUrl(x.select(this),p(ie,Qe),ie)});var et=it.selectAll("."+g.cn.columnBlock).data(s.splitToPanels,e.keyFun);et.enter().append("g").classed(g.cn.columnBlock,!0).attr("id",function(Qe){return Qe.key}),et.style("cursor",function(Qe){return Qe.dragHandle?"ew-resize":Qe.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var lt=et.filter(I),Me=et.filter(O);be&&Me.call(x.behavior.drag().origin(function(Qe){return x.event.stopPropagation(),Qe}).on("drag",Q(ie,Be,-1)).on("dragend",function(){})),_(ie,Be,lt,et),_(ie,Be,Me,et);var ge=Be.selectAll("."+g.cn.scrollAreaClip).data(e.repeat,e.keyFun);ge.enter().append("clipPath").classed(g.cn.scrollAreaClip,!0).attr("id",function(Qe){return v(ie,Qe)});var ce=ge.selectAll("."+g.cn.scrollAreaClipRect).data(e.repeat,e.keyFun);ce.enter().append("rect").classed(g.cn.scrollAreaClipRect,!0).attr("x",-g.overdrag).attr("y",-g.uplift).attr("fill","none"),ce.attr("width",function(Qe){return Qe.width+2*g.overdrag}).attr("height",function(Qe){return Qe.height+g.uplift});var ze=it.selectAll("."+g.cn.columnBoundary).data(e.repeat,e.keyFun);ze.enter().append("g").classed(g.cn.columnBoundary,!0);var tt=it.selectAll("."+g.cn.columnBoundaryClippath).data(e.repeat,e.keyFun);tt.enter().append("clipPath").classed(g.cn.columnBoundaryClippath,!0),tt.attr("id",function(Qe){return p(ie,Qe)});var nt=tt.selectAll("."+g.cn.columnBoundaryRect).data(e.repeat,e.keyFun);nt.enter().append("rect").classed(g.cn.columnBoundaryRect,!0).attr("fill","none"),nt.attr("width",function(Qe){return Qe.columnWidth+2*h(Qe)}).attr("height",function(Qe){return Qe.calcdata.height+2*h(Qe)+g.uplift}).attr("x",function(Qe){return-h(Qe)}).attr("y",function(Qe){return-h(Qe)}),W(null,Me,Be)};function h(ee){return Math.ceil(ee.calcdata.maxLineWidth/2)}function v(ee,ie){return"clip"+ee._fullLayout._uid+"_scrollAreaBottomClip_"+ie.key}function p(ee,ie){return"clip"+ee._fullLayout._uid+"_columnBoundaryClippath_"+ie.calcdata.key+"_"+ie.specIndex}function T(ee){return[].concat.apply([],ee.map(function(ie){return ie})).map(function(ie){return ie.__data__})}function l(ee,ie,fe){function be(it){var et=it.rowBlocks;return J(et,et.length-1)+(et.length?Z(et[et.length-1],1/0):1)}var Ae=ee.selectAll("."+g.cn.scrollbarKit).data(e.repeat,e.keyFun);Ae.enter().append("g").classed(g.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),Ae.each(function(it){var et=it.scrollbarState;et.totalHeight=be(it),et.scrollableAreaHeight=it.groupHeight-N(it),et.currentlyVisibleHeight=Math.min(et.totalHeight,et.scrollableAreaHeight),et.ratio=et.currentlyVisibleHeight/et.totalHeight,et.barLength=Math.max(et.ratio*et.currentlyVisibleHeight,g.goldenRatio*g.scrollbarWidth),et.barWiggleRoom=et.currentlyVisibleHeight-et.barLength,et.wiggleRoom=Math.max(0,et.totalHeight-et.scrollableAreaHeight),et.topY=et.barWiggleRoom===0?0:it.scrollY/et.wiggleRoom*et.barWiggleRoom,et.bottomY=et.topY+et.barLength,et.dragMultiplier=et.wiggleRoom/et.barWiggleRoom}).attr("transform",function(it){var et=it.width+g.scrollbarWidth/2+g.scrollbarOffset;return a(et,N(it))});var Be=Ae.selectAll("."+g.cn.scrollbar).data(e.repeat,e.keyFun);Be.enter().append("g").classed(g.cn.scrollbar,!0);var Ie=Be.selectAll("."+g.cn.scrollbarSlider).data(e.repeat,e.keyFun);Ie.enter().append("g").classed(g.cn.scrollbarSlider,!0),Ie.attr("transform",function(it){return a(0,it.scrollbarState.topY||0)});var Ze=Ie.selectAll("."+g.cn.scrollbarGlyph).data(e.repeat,e.keyFun);Ze.enter().append("line").classed(g.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",g.scrollbarWidth).attr("stroke-linecap","round").attr("y1",g.scrollbarWidth/2),Ze.attr("y2",function(it){return it.scrollbarState.barLength-g.scrollbarWidth/2}).attr("stroke-opacity",function(it){return it.columnDragInProgress||!it.scrollbarState.barWiggleRoom||fe?0:.4}),Ze.transition().delay(0).duration(0),Ze.transition().delay(g.scrollbarHideDelay).duration(g.scrollbarHideDuration).attr("stroke-opacity",0);var at=Be.selectAll("."+g.cn.scrollbarCaptureZone).data(e.repeat,e.keyFun);at.enter().append("line").classed(g.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",g.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(it){var et=x.event.y,lt=this.getBoundingClientRect(),Me=it.scrollbarState,ge=et-lt.top,ce=x.scale.linear().domain([0,Me.scrollableAreaHeight]).range([0,Me.totalHeight]).clamp(!0);Me.topY<=ge&&ge<=Me.bottomY||Q(ie,ee,null,ce(ge-Me.barLength/2))(it)}).call(x.behavior.drag().origin(function(it){return x.event.stopPropagation(),it.scrollbarState.scrollbarScrollInProgress=!0,it}).on("drag",Q(ie,ee)).on("dragend",function(){})),at.attr("y2",function(it){return it.scrollbarState.scrollableAreaHeight}),ie._context.staticPlot&&(Ze.remove(),at.remove())}function _(ee,ie,fe,be){var Ae=w(fe),Be=S(Ae);d(Be);var Ie=E(Be);y(Ie);var Ze=b(Be),at=m(Ze);u(at),f(at,ie,be,ee),$(Be)}function w(ee){var ie=ee.selectAll("."+g.cn.columnCells).data(e.repeat,e.keyFun);return ie.enter().append("g").classed(g.cn.columnCells,!0),ie.exit().remove(),ie}function S(ee){var ie=ee.selectAll("."+g.cn.columnCell).data(s.splitToCells,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.columnCell,!0),ie.exit().remove(),ie}function E(ee){var ie=ee.selectAll("."+g.cn.cellRect).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("rect").classed(g.cn.cellRect,!0),ie}function m(ee){var ie=ee.selectAll("."+g.cn.cellText).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("text").classed(g.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){x.event.stopPropagation()}),ie}function b(ee){var ie=ee.selectAll("."+g.cn.cellTextHolder).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),ie}function d(ee){ee.each(function(ie,fe){var be=ie.calcdata.cells.font,Ae=ie.column.specIndex,Be={size:F(be.size,Ae,fe),color:F(be.color,Ae,fe),family:F(be.family,Ae,fe),weight:F(be.weight,Ae,fe),style:F(be.style,Ae,fe),variant:F(be.variant,Ae,fe),textcase:F(be.textcase,Ae,fe),lineposition:F(be.lineposition,Ae,fe),shadow:F(be.shadow,Ae,fe)};ie.rowNumber=ie.key,ie.align=F(ie.calcdata.cells.align,Ae,fe),ie.cellBorderWidth=F(ie.calcdata.cells.line.width,Ae,fe),ie.font=Be})}function u(ee){ee.each(function(ie){t.font(x.select(this),ie.font)})}function y(ee){ee.attr("width",function(ie){return ie.column.columnWidth}).attr("stroke-width",function(ie){return ie.cellBorderWidth}).each(function(ie){var fe=x.select(this);c.stroke(fe,F(ie.calcdata.cells.line.color,ie.column.specIndex,ie.rowNumber)),c.fill(fe,F(ie.calcdata.cells.fill.color,ie.column.specIndex,ie.rowNumber))})}function f(ee,ie,fe,be){ee.text(function(Ae){var Be=Ae.column.specIndex,Ie=Ae.rowNumber,Ze=Ae.value,at=typeof Ze=="string",it=at&&Ze.match(/<br>/i),et=!at||it;Ae.mayHaveMarkup=at&&Ze.match(/[<&>]/);var lt=P(Ze);Ae.latex=lt;var Me=lt?"":F(Ae.calcdata.cells.prefix,Be,Ie)||"",ge=lt?"":F(Ae.calcdata.cells.suffix,Be,Ie)||"",ce=lt?null:F(Ae.calcdata.cells.format,Be,Ie)||null,ze=Me+(ce?M(ce)(Ae.value):Ae.value)+ge,tt;Ae.wrappingNeeded=!Ae.wrapped&&!et&&!lt&&(tt=L(ze)),Ae.cellHeightMayIncrease=it||lt||Ae.mayHaveMarkup||(tt===void 0?L(ze):tt),Ae.needsConvertToTspans=Ae.mayHaveMarkup||Ae.wrappingNeeded||Ae.latex;var nt;if(Ae.wrappingNeeded){var Qe=g.wrapSplitCharacter===" "?ze.replace(/<a href=/ig,"<a_href="):ze,Ct=Qe.split(g.wrapSplitCharacter),St=g.wrapSplitCharacter===" "?Ct.map(function(Ot){return Ot.replace(/<a_href=/ig,"<a href=")}):Ct;Ae.fragments=St.map(function(Ot){return{text:Ot,width:null}}),Ae.fragments.push({fragment:g.wrapSpacer,width:null}),nt=St.join(g.lineBreaker)+g.lineBreaker+g.wrapSpacer}else delete Ae.fragments,nt=ze;return nt}).attr("dy",function(Ae){return Ae.needsConvertToTspans?0:"0.75em"}).each(function(Ae){var Be=this,Ie=x.select(Be),Ze=Ae.wrappingNeeded?se:he;Ae.needsConvertToTspans?r.convertToTspans(Ie,be,Ze(fe,Be,ie,be,Ae)):x.select(Be.parentNode).attr("transform",function(at){return a(G(at),g.cellPad)}).attr("text-anchor",function(at){return{left:"start",center:"middle",right:"end"}[at.align]})})}function P(ee){return typeof ee=="string"&&ee.match(g.latexCheck)}function L(ee){return ee.indexOf(g.wrapSplitCharacter)!==-1}function z(ee,ie,fe){var be=ie.gdColumnsOriginalOrder;ie.gdColumns.sort(function(Ae,Be){return fe[be.indexOf(Ae)]-fe[be.indexOf(Be)]}),ie.columnorder=fe,ee.emit("plotly_restyle")}function F(ee,ie,fe){if(A.isArrayOrTypedArray(ee)){var be=ee[Math.min(ie,ee.length-1)];return A.isArrayOrTypedArray(be)?be[Math.min(fe,be.length-1)]:be}else return ee}function B(ee,ie,fe){ee.transition().ease(g.releaseTransitionEase).duration(g.releaseTransitionDuration).attr("transform",a(ie.x,fe))}function O(ee){return ee.type==="cells"}function I(ee){return ee.type==="header"}function N(ee){var ie=ee.rowBlocks.length?ee.rowBlocks[0].auxiliaryBlocks:[];return ie.reduce(function(fe,be){return fe+Z(be,1/0)},0)}function U(ee,ie,fe){for(var be=[],Ae=0,Be=0;Be<ee.length;Be++){for(var Ie=ee[Be],Ze=Ie.rows,at=0,it=0;it<Ze.length;it++)at+=Ze[it].rowHeight;Ie.allRowsHeight=at;var et=Ae+at,lt=ie,Me=lt+fe;lt<et&&Me>Ae&&be.push(Be),Ae+=at}return be}function W(ee,ie,fe){var be=T(ie)[0];if(be!==void 0){var Ae=be.rowBlocks,Be=be.calcdata,Ie=J(Ae,Ae.length),Ze=be.calcdata.groupHeight-N(be),at=Be.scrollY=Math.max(0,Math.min(Ie-Ze,Be.scrollY)),it=U(Ae,at,Ze);it.length===1&&(it[0]===Ae.length-1?it.unshift(it[0]-1):it.push(it[0]+1)),it[0]%2&&it.reverse(),ie.each(function(et,lt){et.page=it[lt],et.scrollY=at}),ie.attr("transform",function(et){var lt=J(et.rowBlocks,et.page)-et.scrollY;return a(0,lt)}),ee&&(ue(ee,fe,ie,it,be.prevPages,be,0),ue(ee,fe,ie,it,be.prevPages,be,1),l(fe,ee))}}function Q(ee,ie,fe,be){return function(Be){var Ie=Be.calcdata?Be.calcdata:Be,Ze=ie.filter(function(lt){return Ie.key===lt.key}),at=fe||Ie.scrollbarState.dragMultiplier,it=Ie.scrollY;Ie.scrollY=be===void 0?Ie.scrollY+at*x.event.dy:be;var et=Ze.selectAll("."+g.cn.yColumn).selectAll("."+g.cn.columnBlock).filter(O);return W(ee,et,Ze),Ie.scrollY===it}}function ue(ee,ie,fe,be,Ae,Be,Ie){var Ze=be[Ie]!==Ae[Ie];Ze&&(clearTimeout(Be.currentRepaint[Ie]),Be.currentRepaint[Ie]=setTimeout(function(){var at=fe.filter(function(it,et){return et===Ie&&be[et]!==Ae[et]});_(ee,ie,at,fe),Ae[Ie]=be[Ie]}))}function se(ee,ie,fe,be){return function(){var Be=x.select(ie.parentNode);Be.each(function(Ie){var Ze=Ie.fragments;Be.selectAll("tspan.line").each(function(ze,tt){Ze[tt].width=this.getComputedTextLength()});var at=Ze[Ze.length-1].width,it=Ze.slice(0,-1),et=[],lt,Me,ge=0,ce=Ie.column.columnWidth-2*g.cellPad;for(Ie.value="";it.length;)lt=it.shift(),Me=lt.width+at,ge+Me>ce&&(Ie.value+=et.join(g.wrapSpacer)+g.lineBreaker,et=[],ge=0),et.push(lt.text),ge+=Me;ge&&(Ie.value+=et.join(g.wrapSpacer)),Ie.wrapped=!0}),Be.selectAll("tspan.line").remove(),f(Be.select("."+g.cn.cellText),fe,ee,be),x.select(ie.parentNode.parentNode).call($)}}function he(ee,ie,fe,be,Ae){return function(){if(!Ae.settledY){var Ie=x.select(ie.parentNode),Ze=ne(Ae),at=Ae.key-Ze.firstRowIndex,it=Ze.rows[at].rowHeight,et=Ae.cellHeightMayIncrease?ie.parentNode.getBoundingClientRect().height+2*g.cellPad:it,lt=Math.max(et,it),Me=lt-Ze.rows[at].rowHeight;Me&&(Ze.rows[at].rowHeight=lt,ee.selectAll("."+g.cn.columnCell).call($),W(null,ee.filter(O),0),l(fe,be,!0)),Ie.attr("transform",function(){var ge=this,ce=ge.parentNode,ze=ce.getBoundingClientRect(),tt=x.select(ge.parentNode).select("."+g.cn.cellRect).node().getBoundingClientRect(),nt=ge.transform.baseVal.consolidate(),Qe=tt.top-ze.top+(nt?nt.matrix.f:g.cellPad);return a(G(Ae,x.select(ge.parentNode).select("."+g.cn.cellTextHolder).node().getBoundingClientRect().width),Qe)}),Ae.settledY=!0}}}function G(ee,ie){switch(ee.align){case"left":return g.cellPad;case"right":return ee.column.columnWidth-(ie||0)-g.cellPad;case"center":return(ee.column.columnWidth-(ie||0))/2;default:return g.cellPad}}function $(ee){ee.attr("transform",function(ie){var fe=ie.rowBlocks[0].auxiliaryBlocks.reduce(function(Ie,Ze){return Ie+Z(Ze,1/0)},0),be=ne(ie),Ae=Z(be,ie.key),Be=Ae+fe;return a(0,Be)}).selectAll("."+g.cn.cellRect).attr("height",function(ie){return j(ne(ie),ie.key).rowHeight})}function J(ee,ie){for(var fe=0,be=ie-1;be>=0;be--)fe+=re(ee[be]);return fe}function Z(ee,ie){for(var fe=0,be=0;be<ee.rows.length&&ee.rows[be].rowIndex<ie;be++)fe+=ee.rows[be].rowHeight;return fe}function re(ee){var ie=ee.allRowsHeight;if(ie!==void 0)return ie;for(var fe=0,be=0;be<ee.rows.length;be++)fe+=ee.rows[be].rowHeight;return ee.allRowsHeight=fe,fe}function ne(ee){return ee.rowBlocks[ee.page]}function j(ee,ie){return ee.rows[ie-ee.firstRowIndex]}}}),fH=Ye({"src/traces/table/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=Vk(),x="table";X.name=x,X.plot=function(A){var M=H(A.calcdata,x)[0];M.length&&g(A,M)},X.clean=function(A,M,e,t){var r=t._has&&t._has(x),o=M._has&&M._has(x);r&&!o&&t._paperdiv.selectAll(".table").remove()}}}),hH=Ye({"src/traces/table/index.js"(X,H){"use strict";H.exports={attributes:Uk(),supplyDefaults:sH(),calc:lH(),plot:Vk(),moduleType:"trace",name:"table",basePlotModule:fH(),categories:["noOpacity"],meta:{}}}}),pH=Ye({"lib/table.js"(X,H){"use strict";H.exports=hH()}}),dH=Ye({"src/traces/carpet/axis_attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Vh(),M=Cc().descriptionWithDates,e=Ou().overrideAll,t=Uh().dash,r=Oo().extendFlat;H.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:g({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:A.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:r({},A.labelalias,{editType:"calc"}),tickfont:g({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:M("tick label")},tickformatstops:e(A.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:x.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:r({},t,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:r({},t,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:x.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}}}),LT=Ye({"src/traces/carpet/attributes.js"(X,H){"use strict";var g=Au(),x=dH(),A=Gf(),M=g({editType:"calc"}),e=Pc().zorder;M.family.dflt='"Open Sans", verdana, arial, sans-serif',M.size.dflt=12,M.color.dflt=A.defaultLine,H.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:x,baxis:x,font:M,color:{valType:"color",dflt:A.defaultLine,editType:"plot"},zorder:e}}}),vH=Ye({"src/traces/carpet/xy_defaults.js"(X,H){"use strict";var g=ta().isArray1D;H.exports=function(A,M,e){var t=e("x"),r=t&&t.length,o=e("y"),a=o&&o.length;if(!r&&!a)return!1;if(M._cheater=!t,(!r||g(t))&&(!a||g(o))){var i=r?t.length:1/0;a&&(i=Math.min(i,o.length)),M.a&&M.a.length&&(i=Math.min(i,M.a.length)),M.b&&M.b.length&&(i=Math.min(i,M.b.length)),M._length=i}else M._length=null;return!0}}}),mH=Ye({"src/traces/carpet/axis_defaults.js"(X,H){"use strict";var g=LT(),x=Fn().addOpacity,A=Hn(),M=ta(),e=Zg(),t=$m(),r=Qm(),o=P2(),a=wv(),i=r1();H.exports=function(c,h,v){var p=v.letter,T=v.font||{},l=g[p+"axis"];function _(U,W){return M.coerce(c,h,l,U,W)}function w(U,W){return M.coerce2(c,h,l,U,W)}v.name&&(h._name=v.name,h._id=v.name),_("autotypenumbers",v.autotypenumbersDflt);var S=_("type");if(S==="-"&&(v.data&&n(h,v.data),h.type==="-"?h.type="linear":S=c.type=h.type),_("smoothing"),_("cheatertype"),_("showticklabels"),_("labelprefix",p+" = "),_("labelsuffix"),_("showtickprefix"),_("showticksuffix"),_("separatethousands"),_("tickformat"),_("exponentformat"),_("minexponent"),_("showexponent"),_("categoryorder"),_("tickmode"),_("tickvals"),_("ticktext"),_("tick0"),_("dtick"),h.tickmode==="array"&&(_("arraytick0"),_("arraydtick")),_("labelpadding"),h._hovertitle=p,S==="date"){var E=A.getComponentMethod("calendars","handleDefaults");E(c,h,"calendar",v.calendar)}a(h,v.fullLayout),h.c2p=M.identity;var m=_("color",v.dfltColor),b=m===c.color?m:T.color,d=_("title.text");d&&(M.coerceFont(_,"title.font",T,{overrideDflt:{size:M.bigFont(T.size),color:b}}),_("title.offset")),_("tickangle");var u=_("autorange",!h.isValidRange(c.range));u&&_("rangemode"),_("range"),h.cleanRange(),_("fixedrange"),e(c,h,_,S),r(c,h,_,S,v),t(c,h,_,S,v),o(c,h,_,{data:v.data,dataAttr:p});var y=w("gridcolor",x(m,.3)),f=w("gridwidth"),P=w("griddash"),L=_("showgrid");L||(delete h.gridcolor,delete h.gridwidth,delete h.griddash);var z=w("startlinecolor",m),F=w("startlinewidth",f),B=_("startline",h.showgrid||!!z||!!F);B||(delete h.startlinecolor,delete h.startlinewidth);var O=w("endlinecolor",m),I=w("endlinewidth",f),N=_("endline",h.showgrid||!!O||!!I);return N||(delete h.endlinecolor,delete h.endlinewidth),L?(_("minorgridcount"),_("minorgridwidth",f),_("minorgriddash",P),_("minorgridcolor",x(y,.06)),h.minorgridcount||(delete h.minorgridwidth,delete h.minorgriddash,delete h.minorgridcolor)):(delete h.gridcolor,delete h.gridwidth,delete h.griddash),h.showticklabels==="none"&&(delete h.tickfont,delete h.tickangle,delete h.showexponent,delete h.exponentformat,delete h.minexponent,delete h.tickformat,delete h.showticksuffix,delete h.showtickprefix),h.showticksuffix||delete h.ticksuffix,h.showtickprefix||delete h.tickprefix,_("tickmode"),h};function n(s,c){if(s.type==="-"){var h=s._id,v=h.charAt(0),p=v+"calendar",T=s[p];s.type=i(c,T,{autotypenumbers:s.autotypenumbers})}}}}),gH=Ye({"src/traces/carpet/ab_defaults.js"(X,H){"use strict";var g=mH(),x=cl();H.exports=function(e,t,r,o,a){var i=o("a");i||(o("da"),o("a0"));var n=o("b");n||(o("db"),o("b0")),A(e,t,r,a)};function A(M,e,t,r){var o=["aaxis","baxis"];o.forEach(function(a){var i=a.charAt(0),n=M[a]||{},s=x.newContainer(e,a),c={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:i+"axis",letter:i,font:e.font,name:a,data:M[i],calendar:e.calendar,dfltColor:r,bgColor:t.paper_bgcolor,autotypenumbersDflt:t.autotypenumbers,fullLayout:t};g(n,s,c),s._categories=s._categories||[],!M[a]&&n.type!=="-"&&(M[a]={type:n.type})})}}}),yH=Ye({"src/traces/carpet/defaults.js"(X,H){"use strict";var g=ta(),x=vH(),A=gH(),M=LT(),e=Gf();H.exports=function(r,o,a,i){function n(h,v){return g.coerce(r,o,M,h,v)}o._clipPathId="clip"+o.uid+"carpet";var s=n("color",e.defaultLine);if(g.coerceFont(n,"font",i.font),n("carpet"),A(r,o,i,n,s),!o.a||!o.b){o.visible=!1;return}o.a.length<3&&(o.aaxis.smoothing=0),o.b.length<3&&(o.baxis.smoothing=0);var c=x(r,o,n);c||(o.visible=!1),o._cheater&&n("cheaterslope"),n("zorder")}}}),qk=Ye({"src/traces/carpet/map_1d_array.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(A,M,e){var t;for(g(A)?A.length>M.length&&(A=A.slice(0,M.length)):A=[],t=0;t<M.length;t++)A[t]=e(M[t]);return A}}}),Hk=Ye({"src/traces/carpet/makepath.js"(X,H){"use strict";H.exports=function(x,A,M){if(x.length===0)return"";var e,t=[],r=M?3:1;for(e=0;e<x.length;e+=r)t.push(x[e]+","+A[e]),M&&e<x.length-r&&(t.push("C"),t.push([x[e+1]+","+A[e+1],x[e+2]+","+A[e+2]+" "].join(" ")));return t.join(M?"":"L")}}}),_H=Ye({"src/traces/carpet/orient_text.js"(X,H){"use strict";H.exports=function(x,A,M,e,t,r){var o=t[0]*x.dpdx(A),a=t[1]*x.dpdy(M),i=1,n=1;if(r){var s=Math.sqrt(t[0]*t[0]+t[1]*t[1]),c=Math.sqrt(r[0]*r[0]+r[1]*r[1]),h=(t[0]*r[0]+t[1]*r[1])/s/c;n=Math.max(0,h)}var v=Math.atan2(a,o)*180/Math.PI;return v<-90?(v+=180,i=-i):v>90&&(v-=180,i=-i),{angle:v,flip:i,p:x.c2p(e,A,M),offsetMultplier:n}}}}),xH=Ye({"src/traces/carpet/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=qk(),M=Hk(),e=_H(),t=jl(),r=ta(),o=r.strRotate,a=r.strTranslate,i=oh();H.exports=function(_,w,S,E){var m=_._context.staticPlot,b=w.xaxis,d=w.yaxis,u=_._fullLayout,y=u._clips;r.makeTraceGroups(E,S,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace,F=z.aaxis,B=z.baxis,O=r.ensureSingle(P,"g","minorlayer"),I=r.ensureSingle(P,"g","majorlayer"),N=r.ensureSingle(P,"g","boundarylayer"),U=r.ensureSingle(P,"g","labellayer");P.style("opacity",z.opacity),s(b,d,I,F,"a",F._gridlines,!0,m),s(b,d,I,B,"b",B._gridlines,!0,m),s(b,d,O,F,"a",F._minorgridlines,!0,m),s(b,d,O,B,"b",B._minorgridlines,!0,m),s(b,d,N,F,"a-boundary",F._boundarylines,m),s(b,d,N,B,"b-boundary",B._boundarylines,m);var W=c(_,b,d,z,L,U,F._labels,"a-label"),Q=c(_,b,d,z,L,U,B._labels,"b-label");h(_,U,z,L,b,d,W,Q),n(z,L,y,b,d)})};function n(l,_,w,S,E){var m,b,d,u,y=w.select("#"+l._clipPathId);y.size()||(y=w.append("clipPath").classed("carpetclip",!0));var f=r.ensureSingle(y,"path","carpetboundary"),P=_.clipsegments,L=[];for(u=0;u<P.length;u++)m=P[u],b=A([],m.x,S.c2p),d=A([],m.y,E.c2p),L.push(M(b,d,m.bicubic));var z="M"+L.join("L")+"Z";y.attr("id",l._clipPathId),f.attr("d",z)}function s(l,_,w,S,E,m,b){var d="const-"+E+"-lines",u=w.selectAll("."+d).data(m);u.enter().append("path").classed(d,!0).style("vector-effect",b?"none":"non-scaling-stroke"),u.each(function(y){var f=y,P=f.x,L=f.y,z=A([],P,l.c2p),F=A([],L,_.c2p),B="M"+M(z,F,f.smoothing),O=g.select(this);O.attr("d",B).style("stroke-width",f.width).style("stroke",f.color).style("stroke-dasharray",x.dashStyle(f.dash,f.width)).style("fill","none")}),u.exit().remove()}function c(l,_,w,S,E,m,b,d){var u=m.selectAll("text."+d).data(b);u.enter().append("text").classed(d,!0);var y=0,f={};return u.each(function(P,L){var z;if(P.axis.tickangle==="auto")z=e(S,_,w,P.xy,P.dxy);else{var F=(P.axis.tickangle+180)*Math.PI/180;z=e(S,_,w,P.xy,[Math.cos(F),Math.sin(F)])}L||(f={angle:z.angle,flip:z.flip});var B=(P.endAnchor?-1:1)*z.flip,O=g.select(this).attr({"text-anchor":B>0?"start":"end","data-notex":1}).call(x.font,P.font).text(P.text).call(t.convertToTspans,l),I=x.bBox(this);O.attr("transform",a(z.p[0],z.p[1])+o(z.angle)+a(P.axis.labelpadding*B,I.height*.3)),y=Math.max(y,I.width+P.axis.labelpadding)}),u.exit().remove(),f.maxExtent=y,f}function h(l,_,w,S,E,m,b,d){var u,y,f,P,L=r.aggNums(Math.min,null,w.a),z=r.aggNums(Math.max,null,w.a),F=r.aggNums(Math.min,null,w.b),B=r.aggNums(Math.max,null,w.b);u=.5*(L+z),y=F,f=w.ab2xy(u,y,!0),P=w.dxyda_rough(u,y),b.angle===void 0&&r.extendFlat(b,e(w,E,m,f,w.dxydb_rough(u,y))),T(l,_,w,S,f,P,w.aaxis,E,m,b,"a-title"),u=L,y=.5*(F+B),f=w.ab2xy(u,y,!0),P=w.dxydb_rough(u,y),d.angle===void 0&&r.extendFlat(d,e(w,E,m,f,w.dxyda_rough(u,y))),T(l,_,w,S,f,P,w.baxis,E,m,d,"b-title")}var v=i.LINE_SPACING,p=(1-i.MID_SHIFT)/v+1;function T(l,_,w,S,E,m,b,d,u,y,f){var P=[];b.title.text&&P.push(b.title.text);var L=_.selectAll("text."+f).data(P),z=y.maxExtent;L.enter().append("text").classed(f,!0),L.each(function(){var F=e(w,d,u,E,m);["start","both"].indexOf(b.showticklabels)===-1&&(z=0);var B=b.title.font.size;z+=B+b.title.offset;var O=y.angle+(y.flip<0?180:0),I=(O-F.angle+450)%360,N=I>90&&I<270,U=g.select(this);U.text(b.title.text).call(t.convertToTspans,l),N&&(z=(-t.lineCount(U)+p)*v*B-z),U.attr("transform",a(F.p[0],F.p[1])+o(F.angle)+a(0,z)).attr("text-anchor","middle").call(x.font,b.title.font)}),L.exit().remove()}}}),bH=Ye({"src/traces/carpet/cheater_basis.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M){var e,t,r,o,a,i,n=[],s=g(x)?x.length:x,c=g(A)?A.length:A,h=g(x)?x:null,v=g(A)?A:null;h&&(r=(h.length-1)/(h[h.length-1]-h[0])/(s-1)),v&&(o=(v.length-1)/(v[v.length-1]-v[0])/(c-1));var p,T=1/0,l=-1/0;for(t=0;t<c;t++)for(n[t]=[],i=v?(v[t]-v[0])*o:t/(c-1),e=0;e<s;e++)a=h?(h[e]-h[0])*r:e/(s-1),p=a-i*M,T=Math.min(p,T),l=Math.max(p,l),n[t][e]=p;var _=1/(l-T),w=-T*_;for(t=0;t<c;t++)for(e=0;e<s;e++)n[t][e]=_*n[t][e]+w;return n}}}),wH=Ye({"src/traces/carpet/array_minmax.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(A){return x(A,0)};function x(A,M){if(!g(A)||M>=10)return null;for(var e=1/0,t=-1/0,r=A.length,o=0;o<r;o++){var a=A[o];if(g(a)){var i=x(a,M+1);i&&(e=Math.min(i[0],e),t=Math.max(i[1],t))}else e=Math.min(a,e),t=Math.max(a,t)}return[e,t]}}}),TH=Ye({"src/traces/carpet/calc_gridlines.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e,t){var r,o,a,i,n,s,c,h,v,p,T,l,_,w,S=M["_"+e],E=M[e+"axis"],m=E._gridlines=[],b=E._minorgridlines=[],d=E._boundarylines=[],u=M["_"+t],y=M[t+"axis"];E.tickmode==="array"&&(E.tickvals=S.slice());var f=M._xctrl,P=M._yctrl,L=f[0].length,z=f.length,F=M._a.length,B=M._b.length;g.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var O=E.smoothing?3:1;function I(U){var W,Q,ue,se,he,G,$,J,Z,re,ne,j,ee=[],ie=[],fe={};if(e==="b")for(Q=M.b2j(U),ue=Math.floor(Math.max(0,Math.min(B-2,Q))),se=Q-ue,fe.length=B,fe.crossLength=F,fe.xy=function(be){return M.evalxy([],be,Q)},fe.dxy=function(be,Ae){return M.dxydi([],be,ue,Ae,se)},W=0;W<F;W++)G=Math.min(F-2,W),$=W-G,J=M.evalxy([],W,Q),y.smoothing&&W>0&&(Z=M.dxydi([],W-1,ue,0,se),ee.push(he[0]+Z[0]/3),ie.push(he[1]+Z[1]/3),re=M.dxydi([],W-1,ue,1,se),ee.push(J[0]-re[0]/3),ie.push(J[1]-re[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;else for(W=M.a2i(U),G=Math.floor(Math.max(0,Math.min(F-2,W))),$=W-G,fe.length=F,fe.crossLength=B,fe.xy=function(be){return M.evalxy([],W,be)},fe.dxy=function(be,Ae){return M.dxydj([],G,be,$,Ae)},Q=0;Q<B;Q++)ue=Math.min(B-2,Q),se=Q-ue,J=M.evalxy([],W,Q),y.smoothing&&Q>0&&(ne=M.dxydj([],G,Q-1,$,0),ee.push(he[0]+ne[0]/3),ie.push(he[1]+ne[1]/3),j=M.dxydj([],G,Q-1,$,1),ee.push(J[0]-j[0]/3),ie.push(J[1]-j[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;return fe.axisLetter=e,fe.axis=E,fe.crossAxis=y,fe.value=U,fe.constvar=t,fe.index=h,fe.x=ee,fe.y=ie,fe.smoothing=y.smoothing,fe}function N(U){var W,Q,ue,se,he,G=[],$=[],J={};if(J.length=S.length,J.crossLength=u.length,e==="b")for(ue=Math.max(0,Math.min(B-2,U)),he=Math.min(1,Math.max(0,U-ue)),J.xy=function(Z){return M.evalxy([],Z,U)},J.dxy=function(Z,re){return M.dxydi([],Z,ue,re,he)},W=0;W<L;W++)G[W]=f[U*O][W],$[W]=P[U*O][W];else for(Q=Math.max(0,Math.min(F-2,U)),se=Math.min(1,Math.max(0,U-Q)),J.xy=function(Z){return M.evalxy([],U,Z)},J.dxy=function(Z,re){return M.dxydj([],Q,Z,se,re)},W=0;W<z;W++)G[W]=f[W][U*O],$[W]=P[W][U*O];return J.axisLetter=e,J.axis=E,J.crossAxis=y,J.value=S[U],J.constvar=t,J.index=U,J.x=G,J.y=$,J.smoothing=y.smoothing,J}if(E.tickmode==="array"){for(i=5e-15,n=[Math.floor((S.length-1-E.arraytick0)/E.arraydtick*(1+i)),Math.ceil(-E.arraytick0/E.arraydtick/(1+i))].sort(function(U,W){return U-W}),s=n[0]-1,c=n[1]+1,h=s;h<c;h++)o=E.arraytick0+E.arraydtick*h,!(o<0||o>S.length-1)&&m.push(x(N(o),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s;h<c;h++)if(a=E.arraytick0+E.arraydtick*h,T=Math.min(a+E.arraydtick,S.length-1),!(a<0||a>S.length-1)&&!(T<0||T>S.length-1))for(l=S[a],_=S[T],r=0;r<E.minorgridcount;r++)w=T-a,!(w<=0)&&(p=l+(_-l)*(r+1)/(E.minorgridcount+1)*(E.arraydtick/w),!(p<S[0]||p>S[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&d.push(x(N(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(N(S.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(i=5e-15,n=[Math.floor((S[S.length-1]-E.tick0)/E.dtick*(1+i)),Math.ceil((S[0]-E.tick0)/E.dtick/(1+i))].sort(function(U,W){return U-W}),s=n[0],c=n[1],h=s;h<=c;h++)v=E.tick0+E.dtick*h,m.push(x(I(v),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s-1;h<c+1;h++)for(v=E.tick0+E.dtick*h,r=0;r<E.minorgridcount;r++)p=v+E.dtick*(r+1)/(E.minorgridcount+1),!(p<S[0]||p>S[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&d.push(x(I(S[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(I(S[S.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}}}),AH=Ye({"src/traces/carpet/calc_labels.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e){var t,r,o,a,i,n=e._labels=[],s=e._gridlines;for(t=0;t<s.length;t++)i=s[t],["start","both"].indexOf(e.showticklabels)!==-1&&(r=g.tickText(e,i.value),x(r,{prefix:o,suffix:a,endAnchor:!0,xy:i.xy(0),dxy:i.dxy(0,0),axis:i.axis,length:i.crossAxis.length,font:i.axis.tickfont,isFirst:t===0,isLast:t===s.length-1}),n.push(r)),["end","both"].indexOf(e.showticklabels)!==-1&&(r=g.tickText(e,i.value),x(r,{endAnchor:!1,xy:i.xy(i.crossLength-1),dxy:i.dxy(i.crossLength-2,1),axis:i.axis,length:i.crossAxis.length,font:i.axis.tickfont,isFirst:t===0,isLast:t===s.length-1}),n.push(r))}}}),SH=Ye({"src/traces/carpet/calc_clippath.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t,r,o,a=[],i=!!M.smoothing,n=!!e.smoothing,s=x[0].length-1,c=x.length-1;for(t=0,r=[],o=[];t<=s;t++)r[t]=x[0][t],o[t]=A[0][t];for(a.push({x:r,y:o,bicubic:i}),t=0,r=[],o=[];t<=c;t++)r[t]=x[t][s],o[t]=A[t][s];for(a.push({x:r,y:o,bicubic:n}),t=s,r=[],o=[];t>=0;t--)r[s-t]=x[c][t],o[s-t]=A[c][t];for(a.push({x:r,y:o,bicubic:i}),t=c,r=[],o=[];t>=0;t--)r[c-t]=x[t][0],o[c-t]=A[t][0];return a.push({x:r,y:o,bicubic:n}),a}}}),MH=Ye({"src/traces/carpet/smooth_fill_2d_array.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e){var t,r,o,a=[],i=[],n=A[0].length,s=A.length;function c(Q,ue){var se=0,he,G=0;return Q>0&&(he=A[ue][Q-1])!==void 0&&(G++,se+=he),Q<n-1&&(he=A[ue][Q+1])!==void 0&&(G++,se+=he),ue>0&&(he=A[ue-1][Q])!==void 0&&(G++,se+=he),ue<s-1&&(he=A[ue+1][Q])!==void 0&&(G++,se+=he),se/Math.max(1,G)}var h=0;for(t=0;t<n;t++)for(r=0;r<s;r++)A[r][t]===void 0&&(a.push(t),i.push(r),A[r][t]=c(t,r)),h=Math.max(h,Math.abs(A[r][t]));if(!a.length)return A;var v,p,T,l,_,w,S,E,m,b,d,u=1e-5,y=0,f=100,P=0,L=a.length;do{for(y=0,o=0;o<L;o++){t=a[o],r=i[o];var z=0,F=0,B,O,I,N,U,W;t===0?(U=Math.min(n-1,2),I=M[U],N=M[1],B=A[r][U],O=A[r][1],F+=O+(O-B)*(M[0]-N)/(N-I),z++):t===n-1&&(U=Math.max(0,n-3),I=M[U],N=M[n-2],B=A[r][U],O=A[r][n-2],F+=O+(O-B)*(M[n-1]-N)/(N-I),z++),(t===0||t===n-1)&&r>0&&r<s-1&&(v=e[r+1]-e[r],p=e[r]-e[r-1],F+=(p*A[r+1][t]+v*A[r-1][t])/(p+v),z++),r===0?(W=Math.min(s-1,2),I=e[W],N=e[1],B=A[W][t],O=A[1][t],F+=O+(O-B)*(e[0]-N)/(N-I),z++):r===s-1&&(W=Math.max(0,s-3),I=e[W],N=e[s-2],B=A[W][t],O=A[s-2][t],F+=O+(O-B)*(e[s-1]-N)/(N-I),z++),(r===0||r===s-1)&&t>0&&t<n-1&&(v=M[t+1]-M[t],p=M[t]-M[t-1],F+=(p*A[r][t+1]+v*A[r][t-1])/(p+v),z++),z?F/=z:(T=M[t+1]-M[t],l=M[t]-M[t-1],_=e[r+1]-e[r],w=e[r]-e[r-1],S=T*l*(T+l),E=_*w*(_+w),F=(S*(w*A[r+1][t]+_*A[r-1][t])+E*(l*A[r][t+1]+T*A[r][t-1]))/(E*(l+T)+S*(w+_))),m=F-A[r][t],b=m/h,y+=b*b,d=z?0:.85,A[r][t]+=m*(1+d)}y=Math.sqrt(y)}while(P++<f&&y>u);return g.log("Smoother converged to",y,"after",P,"iterations"),A}}}),EH=Ye({"src/traces/carpet/constants.js"(X,H){"use strict";H.exports={RELATIVE_CULL_TOLERANCE:1e-6}}}),kH=Ye({"src/traces/carpet/catmull_rom.js"(X,H){"use strict";var g=.5;H.exports=function(A,M,e,t){var r=A[0]-M[0],o=A[1]-M[1],a=e[0]-M[0],i=e[1]-M[1],n=Math.pow(r*r+o*o,g/2),s=Math.pow(a*a+i*i,g/2),c=(s*s*r-n*n*a)*t,h=(s*s*o-n*n*i)*t,v=s*(n+s)*3,p=n*(n+s)*3;return[[M[0]+(v&&c/v),M[1]+(v&&h/v)],[M[0]-(p&&c/p),M[1]-(p&&h/p)]]}}}),CH=Ye({"src/traces/carpet/compute_control_points.js"(X,H){"use strict";var g=kH(),x=ta().ensureArray;function A(M,e,t){var r=-.5*t[0]+1.5*e[0],o=-.5*t[1]+1.5*e[1];return[(2*r+M[0])/3,(2*o+M[1])/3]}H.exports=function(e,t,r,o,a,i){var n,s,c,h,v,p,T,l,_,w,S=r[0].length,E=r.length,m=a?3*S-2:S,b=i?3*E-2:E;for(e=x(e,b),t=x(t,b),c=0;c<b;c++)e[c]=x(e[c],m),t[c]=x(t[c],m);for(s=0,h=0;s<E;s++,h+=i?3:1)for(v=e[h],p=t[h],T=r[s],l=o[s],n=0,c=0;n<S;n++,c+=a?3:1)v[c]=T[n],p[c]=l[n];if(a)for(s=0,h=0;s<E;s++,h+=i?3:1){for(n=1,c=3;n<S-1;n++,c+=3)_=g([r[s][n-1],o[s][n-1]],[r[s][n],o[s][n]],[r[s][n+1],o[s][n+1]],a),e[h][c-1]=_[0][0],t[h][c-1]=_[0][1],e[h][c+1]=_[1][0],t[h][c+1]=_[1][1];w=A([e[h][0],t[h][0]],[e[h][2],t[h][2]],[e[h][3],t[h][3]]),e[h][1]=w[0],t[h][1]=w[1],w=A([e[h][m-1],t[h][m-1]],[e[h][m-3],t[h][m-3]],[e[h][m-4],t[h][m-4]]),e[h][m-2]=w[0],t[h][m-2]=w[1]}if(i)for(c=0;c<m;c++){for(h=3;h<b-3;h+=3)_=g([e[h-3][c],t[h-3][c]],[e[h][c],t[h][c]],[e[h+3][c],t[h+3][c]],i),e[h-1][c]=_[0][0],t[h-1][c]=_[0][1],e[h+1][c]=_[1][0],t[h+1][c]=_[1][1];w=A([e[0][c],t[0][c]],[e[2][c],t[2][c]],[e[3][c],t[3][c]]),e[1][c]=w[0],t[1][c]=w[1],w=A([e[b-1][c],t[b-1][c]],[e[b-3][c],t[b-3][c]],[e[b-4][c],t[b-4][c]]),e[b-2][c]=w[0],t[b-2][c]=w[1]}if(a&&i)for(h=1;h<b;h+=(h+1)%3===0?2:1){for(c=3;c<m-3;c+=3)_=g([e[h][c-3],t[h][c-3]],[e[h][c],t[h][c]],[e[h][c+3],t[h][c+3]],a),e[h][c-1]=.5*(e[h][c-1]+_[0][0]),t[h][c-1]=.5*(t[h][c-1]+_[0][1]),e[h][c+1]=.5*(e[h][c+1]+_[1][0]),t[h][c+1]=.5*(t[h][c+1]+_[1][1]);w=A([e[h][0],t[h][0]],[e[h][2],t[h][2]],[e[h][3],t[h][3]]),e[h][1]=.5*(e[h][1]+w[0]),t[h][1]=.5*(t[h][1]+w[1]),w=A([e[h][m-1],t[h][m-1]],[e[h][m-3],t[h][m-3]],[e[h][m-4],t[h][m-4]]),e[h][m-2]=.5*(e[h][m-2]+w[0]),t[h][m-2]=.5*(t[h][m-2]+w[1])}return[e,t]}}}),LH=Ye({"src/traces/carpet/create_spline_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A,M,e){var t=x-2,r=A-2;return M&&e?function(o,a,i){o||(o=[]);var n,s,c,h,v,p,T=Math.max(0,Math.min(Math.floor(a),t)),l=Math.max(0,Math.min(Math.floor(i),r)),_=Math.max(0,Math.min(1,a-T)),w=Math.max(0,Math.min(1,i-l));T*=3,l*=3;var S=_*_,E=S*_,m=1-_,b=m*m,d=b*m,u=w*w,y=u*w,f=1-w,P=f*f,L=P*f;for(p=0;p<g.length;p++)v=g[p],n=d*v[l][T]+3*(b*_*v[l][T+1]+m*S*v[l][T+2])+E*v[l][T+3],s=d*v[l+1][T]+3*(b*_*v[l+1][T+1]+m*S*v[l+1][T+2])+E*v[l+1][T+3],c=d*v[l+2][T]+3*(b*_*v[l+2][T+1]+m*S*v[l+2][T+2])+E*v[l+2][T+3],h=d*v[l+3][T]+3*(b*_*v[l+3][T+1]+m*S*v[l+3][T+2])+E*v[l+3][T+3],o[p]=L*n+3*(P*w*s+f*u*c)+y*h;return o}:M?function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_,w;n*=3;var S=c*c,E=S*c,m=1-c,b=m*m,d=b*m,u=1-h;for(_=0;_<g.length;_++)w=g[_],v=u*w[s][n]+h*w[s+1][n],p=u*w[s][n+1]+h*w[s+1][n+1],T=u*w[s][n+2]+h*w[s+1][n+1],l=u*w[s][n+3]+h*w[s+1][n+1],o[_]=d*v+3*(b*c*p+m*S*T)+E*l;return o}:e?function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_,w;s*=3;var S=h*h,E=S*h,m=1-h,b=m*m,d=b*m,u=1-c;for(_=0;_<g.length;_++)w=g[_],v=u*w[s][n]+c*w[s][n+1],p=u*w[s+1][n]+c*w[s+1][n+1],T=u*w[s+2][n]+c*w[s+2][n+1],l=u*w[s+3][n]+c*w[s+3][n+1],o[_]=d*v+3*(b*h*p+m*S*T)+E*l;return o}:function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_=1-h,w=1-c;for(T=0;T<g.length;T++)l=g[T],v=w*l[s][n]+c*l[s][n+1],p=w*l[s+1][n]+c*l[s+1][n+1],o[T]=_*v+h*p;return o}}}}),PH=Ye({"src/traces/carpet/create_i_derivative_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A){return x&&A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3,t*=3;var v=r*r,p=1-r,T=p*p,l=p*r*2,_=-3*T,w=3*(T-l),S=3*(l-v),E=3*v,m=o*o,b=m*o,d=1-o,u=d*d,y=u*d;for(h=0;h<g.length;h++)c=g[h],a=_*c[t][e]+w*c[t][e+1]+S*c[t][e+2]+E*c[t][e+3],i=_*c[t+1][e]+w*c[t+1][e+1]+S*c[t+1][e+2]+E*c[t+1][e+3],n=_*c[t+2][e]+w*c[t+2][e+1]+S*c[t+2][e+2]+E*c[t+2][e+3],s=_*c[t+3][e]+w*c[t+3][e+1]+S*c[t+3][e+2]+E*c[t+3][e+3],M[h]=y*a+3*(u*o*i+d*m*n)+b*s;return M}:x?function(M,e,t,r,o){M||(M=[]);var a,i,n,s;e*=3;var c=r*r,h=1-r,v=h*h,p=h*r*2,T=-3*v,l=3*(v-p),_=3*(p-c),w=3*c,S=1-o;for(n=0;n<g.length;n++)s=g[n],a=T*s[t][e]+l*s[t][e+1]+_*s[t][e+2]+w*s[t][e+3],i=T*s[t+1][e]+l*s[t+1][e+1]+_*s[t+1][e+2]+w*s[t+1][e+3],M[n]=S*a+o*i;return M}:A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;t*=3;var v=o*o,p=v*o,T=1-o,l=T*T,_=l*T;for(c=0;c<g.length;c++)h=g[c],a=h[t][e+1]-h[t][e],i=h[t+1][e+1]-h[t+1][e],n=h[t+2][e+1]-h[t+2][e],s=h[t+3][e+1]-h[t+3][e],M[c]=_*a+3*(l*o*i+T*v*n)+p*s;return M}:function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c=1-o;for(n=0;n<g.length;n++)s=g[n],a=s[t][e+1]-s[t][e],i=s[t+1][e+1]-s[t+1][e],M[n]=c*a+o*i;return M}}}}),IH=Ye({"src/traces/carpet/create_j_derivative_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A){return x&&A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3,t*=3;var v=r*r,p=v*r,T=1-r,l=T*T,_=l*T,w=o*o,S=1-o,E=S*S,m=S*o*2,b=-3*E,d=3*(E-m),u=3*(m-w),y=3*w;for(h=0;h<g.length;h++)c=g[h],a=b*c[t][e]+d*c[t+1][e]+u*c[t+2][e]+y*c[t+3][e],i=b*c[t][e+1]+d*c[t+1][e+1]+u*c[t+2][e+1]+y*c[t+3][e+1],n=b*c[t][e+2]+d*c[t+1][e+2]+u*c[t+2][e+2]+y*c[t+3][e+2],s=b*c[t][e+3]+d*c[t+1][e+3]+u*c[t+2][e+3]+y*c[t+3][e+3],M[h]=_*a+3*(l*r*i+T*v*n)+p*s;return M}:x?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3;var v=o*o,p=v*o,T=1-o,l=T*T,_=l*T;for(c=0;c<g.length;c++)h=g[c],a=h[t+1][e]-h[t][e],i=h[t+1][e+1]-h[t][e+1],n=h[t+1][e+2]-h[t][e+2],s=h[t+1][e+3]-h[t][e+3],M[c]=_*a+3*(l*o*i+T*v*n)+p*s;return M}:A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s;t*=3;var c=1-r,h=o*o,v=1-o,p=v*v,T=v*o*2,l=-3*p,_=3*(p-T),w=3*(T-h),S=3*h;for(n=0;n<g.length;n++)s=g[n],a=l*s[t][e]+_*s[t+1][e]+w*s[t+2][e]+S*s[t+3][e],i=l*s[t][e+1]+_*s[t+1][e+1]+w*s[t+2][e+1]+S*s[t+3][e+1],M[n]=c*a+r*i;return M}:function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c=1-r;for(n=0;n<g.length;n++)s=g[n],a=s[t+1][e]-s[t][e],i=s[t+1][e+1]-s[t][e+1],M[n]=c*a+r*i;return M}}}}),RH=Ye({"src/traces/carpet/set_convert.js"(X,H){"use strict";var g=EH(),x=v2().findBin,A=CH(),M=LH(),e=PH(),t=IH();H.exports=function(o){var a=o._a,i=o._b,n=a.length,s=i.length,c=o.aaxis,h=o.baxis,v=a[0],p=a[n-1],T=i[0],l=i[s-1],_=a[a.length-1]-a[0],w=i[i.length-1]-i[0],S=_*g.RELATIVE_CULL_TOLERANCE,E=w*g.RELATIVE_CULL_TOLERANCE;v-=S,p+=S,T-=E,l+=E,o.isVisible=function(m,b){return m>v&&m<p&&b>T&&b<l},o.isOccluded=function(m,b){return m<v||m>p||b<T||b>l},o.setScale=function(){var m=o._x,b=o._y,d=A(o._xctrl,o._yctrl,m,b,c.smoothing,h.smoothing);o._xctrl=d[0],o._yctrl=d[1],o.evalxy=M([o._xctrl,o._yctrl],n,s,c.smoothing,h.smoothing),o.dxydi=e([o._xctrl,o._yctrl],c.smoothing,h.smoothing),o.dxydj=t([o._xctrl,o._yctrl],c.smoothing,h.smoothing)},o.i2a=function(m){var b=Math.max(0,Math.floor(m[0]),n-2),d=m[0]-b;return(1-d)*a[b]+d*a[b+1]},o.j2b=function(m){var b=Math.max(0,Math.floor(m[1]),n-2),d=m[1]-b;return(1-d)*i[b]+d*i[b+1]},o.ij2ab=function(m){return[o.i2a(m[0]),o.j2b(m[1])]},o.a2i=function(m){var b=Math.max(0,Math.min(x(m,a),n-2)),d=a[b],u=a[b+1];return Math.max(0,Math.min(n-1,b+(m-d)/(u-d)))},o.b2j=function(m){var b=Math.max(0,Math.min(x(m,i),s-2)),d=i[b],u=i[b+1];return Math.max(0,Math.min(s-1,b+(m-d)/(u-d)))},o.ab2ij=function(m){return[o.a2i(m[0]),o.b2j(m[1])]},o.i2c=function(m,b){return o.evalxy([],m,b)},o.ab2xy=function(m,b,d){if(!d&&(m<a[0]||m>a[n-1]|b<i[0]||b>i[s-1]))return[!1,!1];var u=o.a2i(m),y=o.b2j(b),f=o.evalxy([],u,y);if(d){var P=0,L=0,z=[],F,B,O,I;m<a[0]?(F=0,B=0,P=(m-a[0])/(a[1]-a[0])):m>a[n-1]?(F=n-2,B=1,P=(m-a[n-1])/(a[n-1]-a[n-2])):(F=Math.max(0,Math.min(n-2,Math.floor(u))),B=u-F),b<i[0]?(O=0,I=0,L=(b-i[0])/(i[1]-i[0])):b>i[s-1]?(O=s-2,I=1,L=(b-i[s-1])/(i[s-1]-i[s-2])):(O=Math.max(0,Math.min(s-2,Math.floor(y))),I=y-O),P&&(o.dxydi(z,F,O,B,I),f[0]+=z[0]*P,f[1]+=z[1]*P),L&&(o.dxydj(z,F,O,B,I),f[0]+=z[0]*L,f[1]+=z[1]*L)}return f},o.c2p=function(m,b,d){return[b.c2p(m[0]),d.c2p(m[1])]},o.p2x=function(m,b,d){return[b.p2c(m[0]),d.p2c(m[1])]},o.dadi=function(m){var b=Math.max(0,Math.min(a.length-2,m));return a[b+1]-a[b]},o.dbdj=function(m){var b=Math.max(0,Math.min(i.length-2,m));return i[b+1]-i[b]},o.dxyda=function(m,b,d,u){var y=o.dxydi(null,m,b,d,u),f=o.dadi(m,d);return[y[0]/f,y[1]/f]},o.dxydb=function(m,b,d,u){var y=o.dxydj(null,m,b,d,u),f=o.dbdj(b,u);return[y[0]/f,y[1]/f]},o.dxyda_rough=function(m,b,d){var u=_*(d||.1),y=o.ab2xy(m+u,b,!0),f=o.ab2xy(m-u,b,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dxydb_rough=function(m,b,d){var u=w*(d||.1),y=o.ab2xy(m,b+u,!0),f=o.ab2xy(m,b-u,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dpdx=function(m){return m._m},o.dpdy=function(m){return m._m}}}}),DH=Ye({"src/traces/carpet/calc.js"(X,H){"use strict";var g=Co(),x=ta().isArray1D,A=bH(),M=wH(),e=TH(),t=AH(),r=SH(),o=X2(),a=MH(),i=Z2(),n=RH();H.exports=function(c,h){var v=g.getFromId(c,h.xaxis),p=g.getFromId(c,h.yaxis),T=h.aaxis,l=h.baxis,_=h.x,w=h.y,S=[];_&&x(_)&&S.push("x"),w&&x(w)&&S.push("y"),S.length&&i(h,T,l,"a","b",S);var E=h._a=h._a||h.a,m=h._b=h._b||h.b;_=h._x||h.x,w=h._y||h.y;var b={};if(h._cheater){var d=T.cheatertype==="index"?E.length:E,u=l.cheatertype==="index"?m.length:m;_=A(d,u,h.cheaterslope)}h._x=_=o(_),h._y=w=o(w),a(_,E,m),a(w,E,m),n(h),h.setScale();var y=M(_),f=M(w),P=.5*(y[1]-y[0]),L=.5*(y[1]+y[0]),z=.5*(f[1]-f[0]),F=.5*(f[1]+f[0]),B=1.3;return y=[L-P*B,L+P*B],f=[F-z*B,F+z*B],h._extremes[v._id]=g.findExtremes(v,y,{padded:!0}),h._extremes[p._id]=g.findExtremes(p,f,{padded:!0}),e(h,"a","b"),e(h,"b","a"),t(h,T),t(h,l),b.clipsegments=r(h._xctrl,h._yctrl,T,l),b.x=_,b.y=w,b.a=E,b.b=m,[b]}}}),zH=Ye({"src/traces/carpet/index.js"(X,H){"use strict";H.exports={attributes:LT(),supplyDefaults:yH(),plot:xH(),calc:DH(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}}}),FH=Ye({"lib/carpet.js"(X,H){"use strict";H.exports=zH()}}),Gk=Ye({"src/traces/scattercarpet/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Pl(),M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=tu(),r=Oo().extendFlat,o=x.marker,a=x.line,i=o.line;H.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:r({},x.mode,{dflt:"markers"}),text:r({},x.text,{}),texttemplate:e({editType:"plot"},{keys:["a","b","text"]}),hovertext:r({},x.hovertext,{}),line:{color:a.color,width:a.width,dash:a.dash,backoff:a.backoff,shape:r({},a.shape,{values:["linear","spline"]}),smoothing:a.smoothing,editType:"calc"},connectgaps:x.connectgaps,fill:r({},x.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:g(),marker:r({symbol:o.symbol,opacity:o.opacity,maxdisplayed:o.maxdisplayed,angle:o.angle,angleref:o.angleref,standoff:o.standoff,size:o.size,sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,line:r({width:i.width,editType:"calc"},t("marker.line")),gradient:o.gradient,editType:"calc"},t("marker")),textfont:x.textfont,textposition:x.textposition,selected:x.selected,unselected:x.unselected,hoverinfo:r({},A.hoverinfo,{flags:["a","b","text","name"]}),hoveron:x.hoveron,hovertemplate:M(),zorder:x.zorder}}}),OH=Ye({"src/traces/scattercarpet/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=Gk();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}v("carpet"),s.xaxis="x",s.yaxis="y";var p=v("a"),T=v("b"),l=Math.min(p.length,T.length);if(!l){s.visible=!1;return}s._length=l,v("text"),v("texttemplate"),v("hovertext");var _=l<x.PTS_LINESONLY?"lines+markers":"lines";v("mode",_),A.hasMarkers(s)&&M(n,s,c,h,v,{gradient:!0}),A.hasLines(s)&&(e(n,s,c,h,v,{backoff:!0}),t(n,s,v),v("connectgaps")),A.hasText(s)&&r(n,s,h,v);var w=[];(A.hasMarkers(s)||A.hasText(s))&&(v("marker.maxdisplayed"),w.push("points")),v("fill"),s.fill!=="none"&&(o(n,s,c,v),A.hasLines(s)||t(n,s,v)),(s.fill==="tonext"||s.fill==="toself")&&w.push("fills");var S=v("hoveron",w.join("+")||"points");S!=="fills"&&v("hovertemplate"),v("zorder"),g.coerceSelectionMarkerOpacity(s,v)}}}),BH=Ye({"src/traces/scattercarpet/format_labels.js"(X,H){"use strict";H.exports=function(x,A){var M={},e=A._carpet,t=e.ab2ij([x.a,x.b]),r=Math.floor(t[0]),o=t[0]-r,a=Math.floor(t[1]),i=t[1]-a,n=e.evalxy([],r,a,o,i);return M.yLabel=n[1].toFixed(3),M}}}),PT=Ye({"src/traces/carpet/lookup_carpetid.js"(X,H){"use strict";H.exports=function(g,x){for(var A=g._fullData.length,M,e=0;e<A;e++){var t=g._fullData[e];if(t.index!==x.index&&t.type==="carpet"&&(M||(M=t),t.carpet===x.carpet))return t}return M}}}),NH=Ye({"src/traces/scattercarpet/calc.js"(X,H){"use strict";var g=jo(),x=Fd(),A=Av(),M=Od(),e=Bd().calcMarkerSize,t=PT();H.exports=function(o,a){var i=a._carpetTrace=t(o,a);if(!(!i||!i.visible||i.visible==="legendonly")){var n;a.xaxis=i.xaxis,a.yaxis=i.yaxis;var s=a._length,c=new Array(s),h,v,p=!1;for(n=0;n<s;n++)if(h=a.a[n],v=a.b[n],g(h)&&g(v)){var T=i.ab2xy(+h,+v,!0),l=i.isVisible(+h,+v);l||(p=!0),c[n]={x:T[0],y:T[1],a:h,b:v,vis:l}}else c[n]={x:!1,y:!1};return a._needsCull=p,c[0].carpet=i,c[0].trace=a,e(a,s),x(o,a),A(c,a),M(c,a),c}}}}),UH=Ye({"src/traces/scattercarpet/plot.js"(X,H){"use strict";var g=o1(),x=Co(),A=Bo();H.exports=function(e,t,r,o){var a,i,n,s=r[0][0].carpet,c=x.getFromId(e,s.xaxis||"x"),h=x.getFromId(e,s.yaxis||"y"),v={xaxis:c,yaxis:h,plot:t.plot};for(a=0;a<r.length;a++)i=r[a][0].trace,i._xA=c,i._yA=h;for(g(e,v,r,o),a=0;a<r.length;a++)i=r[a][0].trace,n=o.selectAll("g.trace"+i.uid+" .js-line"),A.setClipUrl(n,r[a][0].carpet._clipPathId,e)}}}),jH=Ye({"src/traces/scattercarpet/hover.js"(X,H){"use strict";var g=l1(),x=ta().fillText;H.exports=function(M,e,t,r){var o=g(M,e,t,r);if(!o||o[0].index===!1)return;var a=o[0];if(a.index===void 0){var i=1-a.y0/M.ya._length,n=M.xa._length,s=n*i/2,c=n-s;return a.x0=Math.max(Math.min(a.x0,c),s),a.x1=Math.max(Math.min(a.x1,c),s),o}var h=a.cd[a.index];a.a=h.a,a.b=h.b,a.xLabelVal=void 0,a.yLabelVal=void 0;var v=a.trace,p=v._carpet,T=v._module.formatLabels(h,v);a.yLabel=T.yLabel,delete a.text;var l=[];function _(E,m){var b;E.labelprefix&&E.labelprefix.length>0?b=E.labelprefix.replace(/ = $/,""):b=E._hovertitle,l.push(b+": "+m.toFixed(3)+E.labelsuffix)}if(!v.hovertemplate){var w=h.hi||v.hoverinfo,S=w.split("+");S.indexOf("all")!==-1&&(S=["a","b","text"]),S.indexOf("a")!==-1&&_(p.aaxis,h.a),S.indexOf("b")!==-1&&_(p.baxis,h.b),l.push("y: "+a.yLabel),S.indexOf("text")!==-1&&x(h,v,l),a.extraText=l.join("<br>")}return o}}}),VH=Ye({"src/traces/scattercarpet/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=e[t];return x.a=r.a,x.b=r.b,x.y=r.y,x}}}),qH=Ye({"src/traces/scattercarpet/index.js"(X,H){"use strict";H.exports={attributes:Gk(),supplyDefaults:OH(),colorbar:cp(),formatLabels:BH(),calc:NH(),plot:UH(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:jH(),selectPoints:u1(),eventData:VH(),moduleType:"trace",name:"scattercarpet",basePlotModule:Pf(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}}}),HH=Ye({"lib/scattercarpet.js"(X,H){"use strict";H.exports=qH()}}),Wk=Ye({"src/traces/contourcarpet/attributes.js"(X,H){"use strict";var g=h1(),x=U_(),A=tu(),M=Oo().extendFlat,e=x.contours;H.exports=M({carpet:{valType:"string",editType:"calc"},z:g.z,a:g.x,a0:g.x0,da:g.dx,b:g.y,b0:g.y0,db:g.dy,text:g.text,hovertext:g.hovertext,transpose:g.transpose,atype:g.xtype,btype:g.ytype,fillcolor:x.fillcolor,autocontour:x.autocontour,ncontours:x.ncontours,contours:{type:e.type,start:e.start,end:e.end,size:e.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:e.showlines,showlabels:e.showlabels,labelfont:e.labelfont,labelformat:e.labelformat,operation:e.operation,value:e.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:x.line.color,width:x.line.width,dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},zorder:x.zorder},A("",{cLetter:"z",autoColorDflt:!1}))}}),Zk=Ye({"src/traces/contourcarpet/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Wk(),M=bM(),e=o3(),t=s3();H.exports=function(o,a,i,n){function s(p,T){return g.coerce(o,a,A,p,T)}function c(p){return g.coerce2(o,a,A,p)}if(s("carpet"),o.a&&o.b){var h=x(o,a,s,n,"a","b");if(!h){a.visible=!1;return}s("text");var v=s("contours.type")==="constraint";v?M(o,a,s,n,i,{hasHover:!1}):(e(o,a,s,c),t(o,a,s,n,{hasHover:!1}))}else a._defaultColor=i,a._length=null;s("zorder")}}}),GH=Ye({"src/traces/contourcarpet/calc.js"(X,H){"use strict";var g=jp(),x=ta(),A=Z2(),M=X2(),e=Y2(),t=K2(),r=nM(),o=Zk(),a=PT(),i=hM();H.exports=function(c,h){var v=h._carpetTrace=a(c,h);if(!(!v||!v.visible||v.visible==="legendonly")){if(!h.a||!h.b){var p=c.data[v.index],T=c.data[h.index];T.a||(T.a=p.a),T.b||(T.b=p.b),o(T,h,h._defaultColor,c._fullLayout)}var l=n(c,h);return i(h,h._z),l}};function n(s,c){var h=c._carpetTrace,v=h.aaxis,p=h.baxis,T,l,_,w,S,E,m;v._minDtick=0,p._minDtick=0,x.isArray1D(c.z)&&A(c,v,p,"a","b",["z"]),T=c._a=c._a||c.a,w=c._b=c._b||c.b,T=T?v.makeCalcdata(c,"_a"):[],w=w?p.makeCalcdata(c,"_b"):[],l=c.a0||0,_=c.da||1,S=c.b0||0,E=c.db||1,m=c._z=M(c._z||c.z,c.transpose),c._emptypoints=t(m),e(m,c._emptypoints);var b=x.maxRowLength(m),d=c.xtype==="scaled"?"":T,u=r(c,d,l,_,b,v),y=c.ytype==="scaled"?"":w,f=r(c,y,S,E,m.length,p),P={a:u,b:f,z:m};return c.contours.type==="levels"&&c.contours.coloring!=="none"&&g(s,c,{vals:m,containerStr:"",cLetter:"z"}),[P]}}}),WH=Ye({"src/traces/carpet/axis_aligned_line.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M,e){var t,r,o,a,i,n,s,c,h,v,p,T,l,_=g(M)?"a":"b",w=_==="a"?x.aaxis:x.baxis,S=w.smoothing,E=_==="a"?x.a2i:x.b2j,m=_==="a"?M:e,b=_==="a"?e:M,d=_==="a"?A.a.length:A.b.length,u=_==="a"?A.b.length:A.a.length,y=Math.floor(_==="a"?x.b2j(b):x.a2i(b)),f=_==="a"?function(ue){return x.evalxy([],ue,y)}:function(ue){return x.evalxy([],y,ue)};S&&(o=Math.max(0,Math.min(u-2,y)),a=y-o,r=_==="a"?function(ue,se){return x.dxydi([],ue,o,se,a)}:function(ue,se){return x.dxydj([],o,ue,a,se)});var P=E(m[0]),L=E(m[1]),z=P<L?1:-1,F=(L-P)*1e-8,B=z>0?Math.floor:Math.ceil,O=z>0?Math.ceil:Math.floor,I=z>0?Math.min:Math.max,N=z>0?Math.max:Math.min,U=B(P+F),W=O(L-F);s=f(P);var Q=[[s]];for(t=U;t*z<W*z;t+=z)i=[],p=N(P,t),T=I(L,t+z),l=T-p,n=Math.max(0,Math.min(d-2,Math.floor(.5*(p+T)))),c=f(T),S&&(h=r(n,p-n),v=r(n,T-n),i.push([s[0]+h[0]/3*l,s[1]+h[1]/3*l]),i.push([c[0]-v[0]/3*l,c[1]-v[1]/3*l])),i.push(c),Q.push(i),s=c;return Q}}}),ZH=Ye({"src/traces/contourcarpet/plot.js"(X,H){"use strict";var g=_n(),x=qk(),A=Hk(),M=Bo(),e=ta(),t=dM(),r=vM(),o=l3(),a=V_(),i=gM(),n=mM(),s=yM(),c=PT(),h=WH();H.exports=function(d,u,y,f){var P=u.xaxis,L=u.yaxis;e.makeTraceGroups(f,y,"contour").each(function(z){var F=g.select(this),B=z[0],O=B.trace,I=O._carpetTrace=c(d,O),N=d.calcdata[I.index][0];if(!I.visible||I.visible==="legendonly")return;var U=B.a,W=B.b,Q=O.contours,ue=n(Q,u,B),se=Q.type==="constraint",he=Q._operation,G=se?he==="="?"lines":"fill":Q.coloring;function $(Be){var Ie=I.ab2xy(Be[0],Be[1],!0);return[P.c2p(Ie[0]),L.c2p(Ie[1])]}var J=[[U[0],W[W.length-1]],[U[U.length-1],W[W.length-1]],[U[U.length-1],W[0]],[U[0],W[0]]];t(ue);var Z=(U[U.length-1]-U[0])*1e-8,re=(W[W.length-1]-W[0])*1e-8;r(ue,Z,re);var ne=ue;Q.type==="constraint"&&(ne=i(ue,he)),v(ue,$);var j,ee,ie,fe,be=[];for(fe=N.clipsegments.length-1;fe>=0;fe--)j=N.clipsegments[fe],ee=x([],j.x,P.c2p),ie=x([],j.y,L.c2p),ee.reverse(),ie.reverse(),be.push(A(ee,ie,j.bicubic));var Ae="M"+be.join("L")+"Z";S(F,N.clipsegments,P,L,se,G),E(O,F,P,L,ne,J,$,I,N,G,Ae),p(F,ue,d,B,Q,u,I),M.setClipUrl(F,I._clipPathId,d)})};function v(b,d){var u,y,f,P,L,z,F,B,O;for(u=0;u<b.length;u++){for(P=b[u],L=P.pedgepaths=[],z=P.ppaths=[],y=0;y<P.edgepaths.length;y++){for(O=P.edgepaths[y],F=[],f=0;f<O.length;f++)F[f]=d(O[f]);L.push(F)}for(y=0;y<P.paths.length;y++){for(O=P.paths[y],B=[],f=0;f<O.length;f++)B[f]=d(O[f]);z.push(B)}}}function p(b,d,u,y,f,P,L){var z=u._context.staticPlot,F=e.ensureSingle(b,"g","contourlines"),B=f.showlines!==!1,O=f.showlabels,I=B&&O,N=o.createLines(F,B||O,d,z),U=o.createLineClip(F,I,u,y.trace.uid),W=b.selectAll("g.contourlabels").data(O?[0]:[]);if(W.exit().remove(),W.enter().append("g").classed("contourlabels",!0),O){var Q=P.xaxis,ue=P.yaxis,se=Q._length,he=ue._length,G=[[[0,0],[se,0],[se,he],[0,he]]],$=[];e.clearLocationCache();var J=o.labelFormatter(u,y),Z=M.tester.append("text").attr("data-notex",1).call(M.font,f.labelfont),re={left:0,right:se,center:se/2,top:0,bottom:he,middle:he/2},ne=Math.sqrt(se*se+he*he),j=a.LABELDISTANCE*ne/Math.max(1,d.length/a.LABELINCREASE);N.each(function(ee){var ie=o.calcTextOpts(ee.level,J,Z,u);g.select(this).selectAll("path").each(function(fe){var be=this,Ae=e.getVisibleSegment(be,re,ie.height/2);if(Ae&&(T(be,fe,ee,Ae,L,ie.height),!(Ae.len<(ie.width+ie.height)*a.LABELMIN)))for(var Be=Math.min(Math.ceil(Ae.len/j),a.LABELMAX),Ie=0;Ie<Be;Ie++){var Ze=o.findBestTextLocation(be,Ae,ie,$,re);if(!Ze)break;o.addLabelData(Ze,ie,$,G)}})}),Z.remove(),o.drawLabels(W,$,u,U,I?G:null)}O&&!B&&N.remove()}function T(b,d,u,y,f,P){for(var L,z=0;z<u.pedgepaths.length;z++)d===u.pedgepaths[z]&&(L=u.edgepaths[z]);if(!L)return;var F=f.a[0],B=f.a[f.a.length-1],O=f.b[0],I=f.b[f.b.length-1];function N(se,he){var G=0,$,J=.1;return(Math.abs(se[0]-F)<J||Math.abs(se[0]-B)<J)&&($=_(f.dxydb_rough(se[0],se[1],J)),G=Math.max(G,P*w(he,$)/2)),(Math.abs(se[1]-O)<J||Math.abs(se[1]-I)<J)&&($=_(f.dxyda_rough(se[0],se[1],J)),G=Math.max(G,P*w(he,$)/2)),G}var U=l(b,0,1),W=l(b,y.total,y.total-1),Q=N(L[0],U),ue=y.total-N(L[L.length-1],W);y.min<Q&&(y.min=Q),y.max>ue&&(y.max=ue),y.len=y.max-y.min}function l(b,d,u){var y=b.getPointAtLength(d),f=b.getPointAtLength(u),P=f.x-y.x,L=f.y-y.y,z=Math.sqrt(P*P+L*L);return[P/z,L/z]}function _(b){var d=Math.sqrt(b[0]*b[0]+b[1]*b[1]);return[b[0]/d,b[1]/d]}function w(b,d){var u=Math.abs(b[0]*d[0]+b[1]*d[1]),y=Math.sqrt(1-u*u);return y/u}function S(b,d,u,y,f,P){var L,z,F,B,O=e.ensureSingle(b,"g","contourbg"),I=O.selectAll("path").data(P==="fill"&&!f?[0]:[]);I.enter().append("path"),I.exit().remove();var N=[];for(B=0;B<d.length;B++)L=d[B],z=x([],L.x,u.c2p),F=x([],L.y,y.c2p),N.push(A(z,F,L.bicubic));I.attr("d","M"+N.join("L")+"Z").style("stroke","none")}function E(b,d,u,y,f,P,L,z,F,B,O){var I=B==="fill";I&&s(f,b.contours);var N=e.ensureSingle(d,"g","contourfill"),U=N.selectAll("path").data(I?f:[]);U.enter().append("path"),U.exit().remove(),U.each(function(W){var Q=(W.prefixBoundary?O:"")+m(b,W,P,L,z,F,u,y);Q?g.select(this).attr("d",Q).style("stroke","none"):g.select(this).remove()})}function m(b,d,u,y,f,P,L,z){var F,B="",O=d.edgepaths.map(function(ie,fe){return fe}),I=!0,N,U,W,Q,ue,se,he=Math.abs(u[0][0]-u[2][0])*1e-4,G=Math.abs(u[0][1]-u[2][1])*1e-4;function $(ie){return Math.abs(ie[1]-u[0][1])<G}function J(ie){return Math.abs(ie[1]-u[2][1])<G}function Z(ie){return Math.abs(ie[0]-u[0][0])<he}function re(ie){return Math.abs(ie[0]-u[2][0])<he}function ne(ie,fe){var be,Ae,Be,Ie,Ze="";for($(ie)&&!re(ie)||J(ie)&&!Z(ie)?(Ie=f.aaxis,Be=h(f,P,[ie[0],fe[0]],.5*(ie[1]+fe[1]))):(Ie=f.baxis,Be=h(f,P,.5*(ie[0]+fe[0]),[ie[1],fe[1]])),be=1;be<Be.length;be++)for(Ze+=Ie.smoothing?"C":"L",Ae=0;Ae<Be[be].length;Ae++){var at=Be[be][Ae];Ze+=[L.c2p(at[0]),z.c2p(at[1])]+" "}return Ze}for(F=0,N=null;O.length;){var j=d.edgepaths[F][0];for(N&&(B+=ne(N,j)),se=M.smoothopen(d.edgepaths[F].map(y),d.smoothing),B+=I?se:se.replace(/^M/,"L"),O.splice(O.indexOf(F),1),N=d.edgepaths[F][d.edgepaths[F].length-1],Q=-1,W=0;W<4;W++){if(!N){e.log("Missing end?",F,d);break}for($(N)&&!re(N)?U=u[1]:Z(N)?U=u[0]:J(N)?U=u[3]:re(N)&&(U=u[2]),ue=0;ue<d.edgepaths.length;ue++){var ee=d.edgepaths[ue][0];Math.abs(N[0]-U[0])<he?Math.abs(N[0]-ee[0])<he&&(ee[1]-N[1])*(U[1]-ee[1])>=0&&(U=ee,Q=ue):Math.abs(N[1]-U[1])<G?Math.abs(N[1]-ee[1])<G&&(ee[0]-N[0])*(U[0]-ee[0])>=0&&(U=ee,Q=ue):e.log("endpt to newendpt is not vert. or horz.",N,U,ee)}if(Q>=0)break;B+=ne(N,U),N=U}if(Q===d.edgepaths.length){e.log("unclosed perimeter path");break}F=Q,I=O.indexOf(F)===-1,I&&(F=O[0],B+=ne(N,U)+"Z",N=null)}for(F=0;F<d.paths.length;F++)B+=M.smoothclosed(d.paths[F].map(y),d.smoothing);return B}}}),XH=Ye({"src/traces/contourcarpet/index.js"(X,H){"use strict";H.exports={attributes:Wk(),supplyDefaults:Zk(),colorbar:c3(),calc:GH(),plot:ZH(),style:u3(),moduleType:"trace",name:"contourcarpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}}}),YH=Ye({"lib/contourcarpet.js"(X,H){"use strict";H.exports=XH()}}),IT=Ye({"src/traces/ohlc/attributes.js"(X,H){"use strict";var g=ta().extendFlat,x=Pc(),A=Cc().axisHoverFormat,M=Uh().dash,e=Yy(),t=p1(),r=t.INCREASING.COLOR,o=t.DECREASING.COLOR,a=x.line;function i(n){return{line:{color:g({},a.color,{dflt:n}),width:a.width,dash:M,editType:"style"},editType:"style"}}H.exports={xperiod:x.xperiod,xperiod0:x.xperiod0,xperiodalignment:x.xperiodalignment,xhoverformat:A("x"),yhoverformat:A("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:g({},a.width,{}),dash:g({},M,{}),editType:"style"},increasing:i(r),decreasing:i(o),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:g({},e.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:x.zorder}}}),Xk=Ye({"src/traces/ohlc/ohlc_defaults.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports=function(M,e,t,r){var o=t("x"),a=t("open"),i=t("high"),n=t("low"),s=t("close");t("hoverlabel.split");var c=g.getComponentMethod("calendars","handleTraceDefaults");if(c(M,e,["x"],r),!!(a&&i&&n&&s)){var h=Math.min(a.length,i.length,n.length,s.length);return o&&(h=Math.min(h,x.minRowLength(o))),e._length=h,h}}}}),KH=Ye({"src/traces/ohlc/defaults.js"(X,H){"use strict";var g=ta(),x=Xk(),A=Qd(),M=IT();H.exports=function(r,o,a,i){function n(c,h){return g.coerce(r,o,M,c,h)}var s=x(r,o,n,i);if(!s){o.visible=!1;return}A(r,o,i,n,{x:!0}),n("xhoverformat"),n("yhoverformat"),n("line.width"),n("line.dash"),e(r,o,n,"increasing"),e(r,o,n,"decreasing"),n("text"),n("hovertext"),n("tickwidth"),i._requestRangeslider[o.xaxis]=!0,n("zorder")};function e(t,r,o,a){o(a+".line.color"),o(a+".line.width",r.line.width),o(a+".line.dash",r.line.dash)}}}),Yk=Ye({"src/traces/ohlc/calc.js"(X,H){"use strict";var g=ta(),x=g._,A=Co(),M=tv(),e=ks().BADNUM;function t(i,n){var s=A.getFromId(i,n.xaxis),c=A.getFromId(i,n.yaxis),h=a(i,s,n),v=n._minDiff;n._minDiff=null;var p=n._origX;n._origX=null;var T=n._xcalc;n._xcalc=null;var l=o(i,n,p,T,c,r);return n._extremes[s._id]=A.findExtremes(s,T,{vpad:v/2}),l.length?(g.extendFlat(l[0].t,{wHover:v/2,tickLen:h}),l):[{t:{empty:!0}}]}function r(i,n,s,c){return{o:i,h:n,l:s,c}}function o(i,n,s,c,h,v){for(var p=h.makeCalcdata(n,"open"),T=h.makeCalcdata(n,"high"),l=h.makeCalcdata(n,"low"),_=h.makeCalcdata(n,"close"),w=g.isArrayOrTypedArray(n.text),S=g.isArrayOrTypedArray(n.hovertext),E=!0,m=null,b=!!n.xperiodalignment,d=[],u=0;u<c.length;u++){var y=c[u],f=p[u],P=T[u],L=l[u],z=_[u];if(y!==e&&f!==e&&P!==e&&L!==e&&z!==e){z===f?m!==null&&z!==m&&(E=z>m):E=z>f,m=z;var F=v(f,P,L,z);F.pos=y,F.yc=(f+z)/2,F.i=u,F.dir=E?"increasing":"decreasing",F.x=F.pos,F.y=[L,P],b&&(F.orig_p=s[u]),w&&(F.tx=n.text[u]),S&&(F.htx=n.hovertext[u]),d.push(F)}else d.push({pos:y,empty:!0})}return n._extremes[h._id]=A.findExtremes(h,g.concat(l,T),{padded:!0}),d.length&&(d[0].t={labels:{open:x(i,"open:")+" ",high:x(i,"high:")+" ",low:x(i,"low:")+" ",close:x(i,"close:")+" "}}),d}function a(i,n,s){var c=s._minDiff;if(!c){var h=i._fullData,v=[];c=1/0;var p;for(p=0;p<h.length;p++){var T=h[p];if(T.type==="ohlc"&&T.visible===!0&&T.xaxis===n._id){v.push(T);var l=n.makeCalcdata(T,"x");T._origX=l;var _=M(s,n,"x",l).vals;T._xcalc=_;var w=g.distinctVals(_).minDiff;w&&isFinite(w)&&(c=Math.min(c,w))}}for(c===1/0&&(c=1),p=0;p<v.length;p++)v[p]._minDiff=c}return c*s.tickwidth}H.exports={calc:t,calcCommon:o}}}),JH=Ye({"src/traces/ohlc/plot.js"(X,H){"use strict";var g=_n(),x=ta();H.exports=function(M,e,t,r){var o=e.yaxis,a=e.xaxis,i=!!a.rangebreaks;x.makeTraceGroups(r,t,"trace ohlc").each(function(n){var s=g.select(this),c=n[0],h=c.t,v=c.trace;if(v.visible!==!0||h.empty){s.remove();return}var p=h.tickLen,T=s.selectAll("path").data(x.identity);T.enter().append("path"),T.exit().remove(),T.attr("d",function(l){if(l.empty)return"M0,0Z";var _=a.c2p(l.pos-p,!0),w=a.c2p(l.pos+p,!0),S=i?(_+w)/2:a.c2p(l.pos,!0),E=o.c2p(l.o,!0),m=o.c2p(l.h,!0),b=o.c2p(l.l,!0),d=o.c2p(l.c,!0);return"M"+_+","+E+"H"+S+"M"+S+","+m+"V"+b+"M"+w+","+d+"H"+S})})}}}),$H=Ye({"src/traces/ohlc/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn();H.exports=function(e,t,r){var o=r||g.select(e).selectAll("g.ohlclayer").selectAll("g.trace");o.style("opacity",function(a){return a[0].trace.opacity}),o.each(function(a){var i=a[0].trace;g.select(this).selectAll("path").each(function(n){if(!n.empty){var s=i[n.dir].line;g.select(this).style("fill","none").call(A.stroke,s.color).call(x.dashLine,s.dash,s.width).style("opacity",i.selectedpoints&&!n.selected?.3:1)}})})}}}),Kk=Ye({"src/traces/ohlc/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=ta().fillText,t=p1(),r={increasing:t.INCREASING.SYMBOL,decreasing:t.DECREASING.SYMBOL};function o(s,c,h,v){var p=s.cd,T=p[0].trace;return T.hoverlabel.split?i(s,c,h,v):n(s,c,h,v)}function a(s,c,h,v){var p=s.cd,T=s.xa,l=p[0].trace,_=p[0].t,w=l.type,S=w==="ohlc"?"l":"min",E=w==="ohlc"?"h":"max",m,b,d=_.bPos||0,u=function(W){return W.pos+d-c},y=_.bdPos||_.tickLen,f=_.wHover,P=Math.min(1,y/Math.abs(T.r2c(T.range[1])-T.r2c(T.range[0])));m=s.maxHoverDistance-P,b=s.maxSpikeDistance-P;function L(W){var Q=u(W);return A.inbox(Q-f,Q+f,m)}function z(W){var Q=W[S],ue=W[E];return Q===ue||A.inbox(Q-h,ue-h,m)}function F(W){return(L(W)+z(W))/2}var B=A.getDistanceFunction(v,L,z,F);if(A.getClosest(p,B,s),s.index===!1)return null;var O=p[s.index];if(O.empty)return null;var I=O.dir,N=l[I],U=N.line.color;return M.opacity(U)&&N.line.width?s.color=U:s.color=N.fillcolor,s.x0=T.c2p(O.pos+d-y,!0),s.x1=T.c2p(O.pos+d+y,!0),s.xLabelVal=O.orig_p!==void 0?O.orig_p:O.pos,s.spikeDistance=F(O)*b/m,s.xSpike=T.c2p(O.pos,!0),s}function i(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=[],S=a(s,c,h,v);if(!S)return[];var E=S.index,m=p[E],b=m.hi||l.hoverinfo,d=b.split("+"),u=b==="all",y=u||d.indexOf("y")!==-1;if(!y)return[];for(var f=["high","open","close","low"],P={},L=0;L<f.length;L++){var z=f[L],F=l[z][S.index],B=T.c2p(F,!0),O;F in P?(O=P[F],O.yLabel+="<br>"+_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat)):(O=x.extendFlat({},S),O.y0=O.y1=B,O.yLabelVal=F,O.yLabel=_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat),O.name="",w.push(O),P[F]=O)}return w}function n(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=a(s,c,h,v);if(!w)return[];var S=w.index,E=p[S],m=w.index=E.i,b=E.dir;function d(F){return _.labels[F]+g.hoverLabelText(T,l[F][m],l.yhoverformat)}var u=E.hi||l.hoverinfo,y=u.split("+"),f=u==="all",P=f||y.indexOf("y")!==-1,L=f||y.indexOf("text")!==-1,z=P?[d("open"),d("high"),d("low"),d("close")+"  "+r[b]]:[];return L&&e(E,l,z),w.extraText=z.join("<br>"),w.y0=w.y1=T.c2p(E.yc,!0),[w]}H.exports={hoverPoints:o,hoverSplit:i,hoverOnPoints:n}}}),Jk=Ye({"src/traces/ohlc/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a=M[0].t.bPos||0;if(A===!1)for(o=0;o<M.length;o++)M[o].selected=0;else for(o=0;o<M.length;o++){var i=M[o];A.contains([e.c2p(i.pos+a),t.c2p(i.yc)],null,i.i,x)?(r.push({pointNumber:i.i,x:e.c2d(i.pos),y:t.c2d(i.yc)}),i.selected=1):i.selected=0}return r}}}),QH=Ye({"src/traces/ohlc/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"ohlc",basePlotModule:Pf(),categories:["cartesian","svg","showLegend"],meta:{},attributes:IT(),supplyDefaults:KH(),calc:Yk().calc,plot:JH(),style:$H(),hoverPoints:Kk().hoverPoints,selectPoints:Jk()}}}),eG=Ye({"lib/ohlc.js"(X,H){"use strict";H.exports=QH()}}),$k=Ye({"src/traces/candlestick/attributes.js"(X,H){"use strict";var g=ta().extendFlat,x=Cc().axisHoverFormat,A=IT(),M=F_();function e(t){return{line:{color:g({},M.line.color,{dflt:t}),width:M.line.width,editType:"style"},fillcolor:M.fillcolor,editType:"style"}}H.exports={xperiod:A.xperiod,xperiod0:A.xperiod0,xperiodalignment:A.xperiodalignment,xhoverformat:x("x"),yhoverformat:x("y"),x:A.x,open:A.open,high:A.high,low:A.low,close:A.close,line:{width:g({},M.line.width,{}),editType:"style"},increasing:e(A.increasing.line.color.dflt),decreasing:e(A.decreasing.line.color.dflt),text:A.text,hovertext:A.hovertext,whiskerwidth:g({},M.whiskerwidth,{dflt:0}),hoverlabel:A.hoverlabel,zorder:M.zorder}}}),tG=Ye({"src/traces/candlestick/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xk(),M=Qd(),e=$k();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,e,h,v)}var c=A(o,a,s,n);if(!c){a.visible=!1;return}M(o,a,n,s,{x:!0}),s("xhoverformat"),s("yhoverformat"),s("line.width"),t(o,a,s,"increasing"),t(o,a,s,"decreasing"),s("text"),s("hovertext"),s("whiskerwidth"),n._requestRangeslider[a.xaxis]=!0,s("zorder")};function t(r,o,a,i){var n=a(i+".line.color");a(i+".line.width",o.line.width),a(i+".fillcolor",x.addOpacity(n,.5))}}}),rG=Ye({"src/traces/candlestick/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=tv(),M=Yk().calcCommon;H.exports=function(t,r){var o=t._fullLayout,a=x.getFromId(t,r.xaxis),i=x.getFromId(t,r.yaxis),n=a.makeCalcdata(r,"x"),s=A(r,a,"x",n).vals,c=M(t,r,n,s,i,e);return c.length?(g.extendFlat(c[0].t,{num:o._numBoxes,dPos:g.distinctVals(s).minDiff/2,posLetter:"x",valLetter:"y"}),o._numBoxes++,c):[{t:{empty:!0}}]};function e(t,r,o,a){return{min:o,q1:Math.min(t,a),med:a,q3:Math.max(t,a),max:r}}}}),aG=Ye({"src/traces/candlestick/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"candlestick",basePlotModule:Pf(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:$k(),layoutAttributes:O_(),supplyLayoutDefaults:V2().supplyLayoutDefaults,crossTraceCalc:q2().crossTraceCalc,supplyDefaults:tG(),calc:rG(),plot:H2().plot,layerName:"boxlayer",style:G2().style,hoverPoints:Kk().hoverPoints,selectPoints:Jk()}}}),iG=Ye({"lib/candlestick.js"(X,H){"use strict";H.exports=aG()}}),Qk=Ye({"src/plots/polar/set_convert.js"(X,H){"use strict";var g=ta(),x=wv(),A=g.deg2rad,M=g.rad2deg;H.exports=function(i,n,s){switch(x(i,s),i._id){case"x":case"radialaxis":e(i,n);break;case"angularaxis":o(i,n);break}};function e(a,i){var n=i._subplot;a.setGeometry=function(){var s=a._rl[0],c=a._rl[1],h=n.innerRadius,v=(n.radius-h)/(c-s),p=h/v,T=s>c?function(l){return l<=0}:function(l){return l>=0};a.c2g=function(l){var _=a.c2l(l)-s;return(T(_)?_:0)+p},a.g2c=function(l){return a.l2c(l+s-p)},a.g2p=function(l){return l*v},a.c2p=function(l){return a.g2p(a.c2g(l))}}}function t(a,i){return i==="degrees"?A(a):a}function r(a,i){return i==="degrees"?M(a):a}function o(a,i){var n=a.type;if(n==="linear"){var s=a.d2c,c=a.c2d;a.d2c=function(h,v){return t(s(h),v)},a.c2d=function(h,v){return c(r(h,v))}}a.makeCalcdata=function(h,v){var p=h[v],T=h._length,l,_,w=function(d){return a.d2c(d,h.thetaunit)};if(p)for(l=new Array(T),_=0;_<T;_++)l[_]=w(p[_]);else{var S=v+"0",E="d"+v,m=S in h?w(h[S]):0,b=h[E]?w(h[E]):(a.period||2*Math.PI)/T;for(l=new Array(T),_=0;_<T;_++)l[_]=m+_*b}return l},a.setGeometry=function(){var h=i.sector,v=h.map(A),p={clockwise:-1,counterclockwise:1}[a.direction],T=A(a.rotation),l=function(u){return p*u+T},_=function(u){return(u-T)/p},w,S,E,m;switch(n){case"linear":S=w=g.identity,m=A,E=M,a.range=g.isFullCircle(v)?[h[0],h[0]+360]:v.map(_).map(M);break;case"category":var b=a._categories.length,d=a.period?Math.max(a.period,b):b;d===0&&(d=1),S=m=function(u){return u*2*Math.PI/d},w=E=function(u){return u*d/Math.PI/2},a.range=[0,d];break}a.c2g=function(u){return l(S(u))},a.g2c=function(u){return w(_(u))},a.t2g=function(u){return l(m(u))},a.g2t=function(u){return E(_(u))}}}}}),RT=Ye({"src/plots/polar/constants.js"(X,H){"use strict";H.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}}}),DT=Ye({"src/plots/polar/helpers.js"(X,H){"use strict";var g=ta(),x=C_().tester,A=g.findIndexOfMin,M=g.isAngleInsideSector,e=g.angleDelta,t=g.angleDist;function r(_,w,S,E,m){if(!M(w,E))return!1;var b,d;S[0]<S[1]?(b=S[0],d=S[1]):(b=S[1],d=S[0]);var u=x(s(b,E[0],E[1],m)),y=x(s(d,E[0],E[1],m)),f=[_*Math.cos(w),_*Math.sin(w)];return y.contains(f)&&!u.contains(f)}function o(_,w,S,E){var m,b,d=E[0],u=E[1],y=v(Math.sin(w)-Math.sin(_)),f=v(Math.cos(w)-Math.cos(_)),P=Math.tan(S),L=v(1/P),z=y/f,F=u-z*d;return L?y&&f?(m=F/(P-z),b=P*m):f?(m=u*L,b=u):(m=d,b=d*P):y&&f?(m=0,b=F):f?(m=0,b=u):m=b=NaN,[m,b]}function a(_,w,S,E){var m=-w*S,b=w*w+1,d=2*(w*m-S),u=m*m+S*S-_*_,y=Math.sqrt(d*d-4*b*u),f=(-d+y)/(2*b),P=(-d-y)/(2*b);return[[f,w*f+m+E],[P,w*P+m+E]]}function i(_,w){var S=w.length,E=new Array(S+1),m;for(m=0;m<S;m++){var b=w[m];E[m]=[_*Math.cos(b),_*Math.sin(b)]}return E[m]=E[0].slice(),E}function n(_,w,S,E){var m=E.length,b=[],d,u;function y(N){return[_*Math.cos(N),_*Math.sin(N)]}function f(N,U,W){return o(N,U,W,y(N))}function P(N){return g.mod(N,m)}function L(N){return M(N,[w,S])}var z=A(E,function(N){return L(N)?t(N,w):1/0}),F=f(E[z],E[P(z-1)],w);for(b.push(F),d=z,u=0;u<m;d++,u++){var B=E[P(d)];if(!L(B))break;b.push(y(B))}var O=A(E,function(N){return L(N)?t(N,S):1/0}),I=f(E[O],E[P(O+1)],S);return b.push(I),b.push([0,0]),b.push(b[0].slice()),b}function s(_,w,S,E){return g.isFullCircle([w,S])?i(_,E):n(_,w,S,E)}function c(_,w,S,E){for(var m=1/0,b=1/0,d=s(_,w,S,E),u=0;u<d.length;u++){var y=d[u];m=Math.min(m,y[0]),b=Math.min(b,-y[1])}return[m,b]}function h(_,w){var S=function(b){var d=e(b,_);return d>0?d:1/0},E=A(w,S),m=g.mod(E+1,w.length);return[w[E],w[m]]}function v(_){return Math.abs(_)>1e-10?_:0}function p(_,w,S){w=w||0,S=S||0;for(var E=_.length,m=new Array(E),b=0;b<E;b++){var d=_[b];m[b]=[w+d[0],S-d[1]]}return m}function T(_,w,S,E,m,b){var d=s(_,w,S,E);return"M"+p(d,m,b).join("L")}function l(_,w,S,E,m,b,d){var u,y;_<w?(u=_,y=w):(u=w,y=_);var f=p(s(u,S,E,m),b,d),P=p(s(y,S,E,m),b,d);return"M"+P.reverse().join("L")+"M"+f.join("L")}H.exports={isPtInsidePolygon:r,findPolygonOffset:c,findEnclosingVertexAngles:h,findIntersectionXY:o,findXYatLength:a,clampTiny:v,pathPolygon:T,pathPolygonAnnulus:l}}}),eC=Ye({"src/plots/smith/helpers.js"(X,H){"use strict";function g(r){return r<0?-1:r>0?1:0}function x(r){var o=r[0],a=r[1];if(!isFinite(o)||!isFinite(a))return[1,0];var i=(o+1)*(o+1)+a*a;return[(o*o+a*a-1)/i,2*a/i]}function A(r,o){var a=o[0],i=o[1];return[a*r.radius+r.cx,-i*r.radius+r.cy]}function M(r,o){return o*r.radius}function e(r,o,a,i){var n=A(r,x([a,o])),s=n[0],c=n[1],h=A(r,x([i,o])),v=h[0],p=h[1];if(o===0)return["M"+s+","+c,"L"+v+","+p].join(" ");var T=M(r,1/Math.abs(o));return["M"+s+","+c,"A"+T+","+T+" 0 0,"+(o<0?1:0)+" "+v+","+p].join(" ")}function t(r,o,a,i){var n=M(r,1/(o+1)),s=A(r,x([o,a])),c=s[0],h=s[1],v=A(r,x([o,i])),p=v[0],T=v[1];if(g(a)!==g(i)){var l=A(r,x([o,0])),_=l[0],w=l[1];return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(0<a?0:1)+" "+_+","+w,"A"+n+","+n+" 0 0,"+(i<0?0:1)+p+","+T].join(" ")}return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(i<a?0:1)+" "+p+","+T].join(" ")}H.exports={smith:x,reactanceArc:e,resistanceArc:t,smithTransform:A}}}),tC=Ye({"src/plots/polar/polar.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strRotate,t=M.strTranslate,r=Fn(),o=Bo(),a=Gu(),i=Co(),n=wv(),s=Qk(),c=Yd().doAutoRange,h=CS(),v=bp(),p=Lc(),T=Xg(),l=ff().prepSelect,_=ff().selectOnClick,w=ff().clearOutline,S=Kd(),E=M_(),m=k_().redrawReglTraces,b=oh().MID_SHIFT,d=RT(),u=DT(),y=eC(),f=y.smith,P=y.reactanceArc,L=y.resistanceArc,z=y.smithTransform,F=M._,B=M.mod,O=M.deg2rad,I=M.rad2deg;function N(he,G,$){this.isSmith=$||!1,this.id=G,this.gd=he,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var J=he._fullLayout,Z="clip"+J._uid+G;this.clipIds.forTraces=Z+"-for-traces",this.clipPaths.forTraces=J._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=J["_"+($?"smith":"polar")+"layer"].append("g").attr("class",G),this.getHole=function(re){return this.isSmith?0:re.hole},this.getSector=function(re){return this.isSmith?[0,360]:re.sector},this.getRadial=function(re){return this.isSmith?re.realaxis:re.radialaxis},this.getAngular=function(re){return this.isSmith?re.imaginaryaxis:re.angularaxis},$||(this.radialTickLayout=null,this.angularTickLayout=null)}var U=N.prototype;H.exports=function(G,$,J){return new N(G,$,J)},U.plot=function(he,G){for(var $=this,J=G[$.id],Z=!1,re=0;re<he.length;re++){var ne=he[re][0].trace;if(ne.cliponaxis===!1){Z=!0;break}}$._hasClipOnAxisFalse=Z,$.updateLayers(G,J),$.updateLayout(G,J),a.generalUpdatePerTraceModule($.gd,$,he,J),$.updateFx(G,J),$.isSmith&&(delete J.realaxis.range,delete J.imaginaryaxis.range)},U.updateLayers=function(he,G){var $=this,J=$.isSmith,Z=$.layers,re=$.getRadial(G),ne=$.getAngular(G),j=d.layerNames,ee=j.indexOf("frontplot"),ie=j.slice(0,ee),fe=ne.layer==="below traces",be=re.layer==="below traces";fe&&ie.push("angular-line"),be&&ie.push("radial-line"),fe&&ie.push("angular-axis"),be&&ie.push("radial-axis"),ie.push("frontplot"),fe||ie.push("angular-line"),be||ie.push("radial-line"),fe||ie.push("angular-axis"),be||ie.push("radial-axis");var Ae=(J?"smith":"polar")+"sublayer",Be=$.framework.selectAll("."+Ae).data(ie,String);Be.enter().append("g").attr("class",function(Ie){return Ae+" "+Ie}).each(function(Ie){var Ze=Z[Ie]=g.select(this);switch(Ie){case"frontplot":J||Ze.append("g").classed("barlayer",!0),Ze.append("g").classed("scatterlayer",!0);break;case"backplot":Ze.append("g").classed("maplayer",!0);break;case"plotbg":Z.bg=Ze.append("path");break;case"radial-grid":Ze.style("fill","none");break;case"angular-grid":Ze.style("fill","none");break;case"radial-line":Ze.append("line").style("fill","none");break;case"angular-line":Ze.append("path").style("fill","none");break}}),Be.order()},U.updateLayout=function(he,G){var $=this,J=$.layers,Z=he._size,re=$.getRadial(G),ne=$.getAngular(G),j=G.domain.x,ee=G.domain.y;$.xOffset=Z.l+Z.w*j[0],$.yOffset=Z.t+Z.h*(1-ee[1]);var ie=$.xLength=Z.w*(j[1]-j[0]),fe=$.yLength=Z.h*(ee[1]-ee[0]),be=$.getSector(G);$.sectorInRad=be.map(O);var Ae=$.sectorBBox=Q(be),Be=Ae[2]-Ae[0],Ie=Ae[3]-Ae[1],Ze=fe/ie,at=Math.abs(Ie/Be),it,et,lt,Me,ge;Ze>at?(it=ie,et=ie*at,ge=(fe-et)/Z.h/2,lt=[j[0],j[1]],Me=[ee[0]+ge,ee[1]-ge]):(it=fe/at,et=fe,ge=(ie-it)/Z.w/2,lt=[j[0]+ge,j[1]-ge],Me=[ee[0],ee[1]]),$.xLength2=it,$.yLength2=et,$.xDomain2=lt,$.yDomain2=Me;var ce=$.xOffset2=Z.l+Z.w*lt[0],ze=$.yOffset2=Z.t+Z.h*(1-Me[1]),tt=$.radius=it/Be,nt=$.innerRadius=$.getHole(G)*tt,Qe=$.cx=ce-tt*Ae[0],Ct=$.cy=ze+tt*Ae[3],St=$.cxx=Qe-ce,Ot=$.cyy=Ct-ze,jt=re.side,ur;jt==="counterclockwise"?(ur=jt,jt="top"):jt==="clockwise"&&(ur=jt,jt="bottom"),$.radialAxis=$.mockAxis(he,G,re,{_id:"x",side:jt,_trueSide:ur,domain:[nt/Z.w,tt/Z.w]}),$.angularAxis=$.mockAxis(he,G,ne,{side:"right",domain:[0,Math.PI],autorange:!1}),$.doAutoRange(he,G),$.updateAngularAxis(he,G),$.updateRadialAxis(he,G),$.updateRadialAxisTitle(he,G),$.xaxis=$.mockCartesianAxis(he,G,{_id:"x",domain:lt}),$.yaxis=$.mockCartesianAxis(he,G,{_id:"y",domain:Me});var ar=$.pathSubplot();$.clipPaths.forTraces.select("path").attr("d",ar).attr("transform",t(St,Ot)),J.frontplot.attr("transform",t(ce,ze)).call(o.setClipUrl,$._hasClipOnAxisFalse?null:$.clipIds.forTraces,$.gd),J.bg.attr("d",ar).attr("transform",t(Qe,Ct)).call(r.fill,G.bgcolor)},U.mockAxis=function(he,G,$,J){var Z=M.extendFlat({},$,J);return s(Z,G,he),Z},U.mockCartesianAxis=function(he,G,$){var J=this,Z=J.isSmith,re=$._id,ne=M.extendFlat({type:"linear"},$);n(ne,he);var j={x:[0,2],y:[1,3]};return ne.setRange=function(){var ee=J.sectorBBox,ie=j[re],fe=J.radialAxis._rl,be=(fe[1]-fe[0])/(1-J.getHole(G));ne.range=[ee[ie[0]]*be,ee[ie[1]]*be]},ne.isPtWithinRange=re==="x"&&!Z?function(ee){return J.isPtInside(ee)}:function(){return!0},ne.setRange(),ne.setScale(),ne},U.doAutoRange=function(he,G){var $=this,J=$.gd,Z=$.radialAxis,re=$.getRadial(G);c(J,Z);var ne=Z.range;if(re.range=ne.slice(),re._input.range=ne.slice(),Z._rl=[Z.r2l(ne[0],null,"gregorian"),Z.r2l(ne[1],null,"gregorian")],Z.minallowed!==void 0){var j=Z.r2l(Z.minallowed);Z._rl[0]>Z._rl[1]?Z._rl[1]=Math.max(Z._rl[1],j):Z._rl[0]=Math.max(Z._rl[0],j)}if(Z.maxallowed!==void 0){var ee=Z.r2l(Z.maxallowed);Z._rl[0]<Z._rl[1]?Z._rl[1]=Math.min(Z._rl[1],ee):Z._rl[0]=Math.min(Z._rl[0],ee)}},U.updateRadialAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getRadial(G),fe=B($.getSector(G)[0],360),be=$.radialAxis,Ae=ne<re,Be=$.isSmith;Be||($.fillViewInitialKey("radialaxis.angle",ie.angle),$.fillViewInitialKey("radialaxis.range",be.range.slice()),be.setGeometry()),be.tickangle==="auto"&&fe>90&&fe<=270&&(be.tickangle=180);var Ie=Be?function(tt){var nt=z($,f([tt.x,0]));return t(nt[0]-j,nt[1]-ee)}:function(tt){return t(be.l2p(tt.x)+ne,0)},Ze=Be?function(tt){return L($,tt.x,-1/0,1/0)}:function(tt){return $.pathArc(be.r2p(tt.x)+ne)},at=W(ie);if($.radialTickLayout!==at&&(Z["radial-axis"].selectAll(".xtick").remove(),$.radialTickLayout=at),Ae){be.setScale();var it=0,et=Be?(be.tickvals||[]).filter(function(tt){return tt>=0}).map(function(tt){return i.tickText(be,tt,!0,!1)}):i.calcTicks(be),lt=Be?et:i.clipEnds(be,et),Me=i.getTickSigns(be)[2];Be&&((be.ticks==="top"&&be.side==="bottom"||be.ticks==="bottom"&&be.side==="top")&&(Me=-Me),be.ticks==="top"&&be.side==="top"&&(it=-be.ticklen),be.ticks==="bottom"&&be.side==="bottom"&&(it=be.ticklen)),i.drawTicks(J,be,{vals:et,layer:Z["radial-axis"],path:i.makeTickPath(be,0,Me),transFn:Ie,crisp:!1}),i.drawGrid(J,be,{vals:lt,layer:Z["radial-grid"],path:Ze,transFn:M.noop,crisp:!1}),i.drawLabels(J,be,{vals:et,layer:Z["radial-axis"],transFn:Ie,labelFns:i.makeLabelFns(be,it)})}var ge=$.radialAxisAngle=$.vangles?I(ue(O(ie.angle),$.vangles)):ie.angle,ce=t(j,ee),ze=ce+e(-ge);se(Z["radial-axis"],Ae&&(ie.showticklabels||ie.ticks),{transform:ze}),se(Z["radial-grid"],Ae&&ie.showgrid,{transform:Be?"":ce}),se(Z["radial-line"].select("line"),Ae&&ie.showline,{x1:Be?-re:ne,y1:0,x2:re,y2:0,transform:ze}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateRadialAxisTitle=function(he,G,$){if(!this.isSmith){var J=this,Z=J.gd,re=J.radius,ne=J.cx,j=J.cy,ee=J.getRadial(G),ie=J.id+"title",fe=0;if(ee.title){var be=o.bBox(J.layers["radial-axis"].node()).height,Ae=ee.title.font.size,Be=ee.side;fe=Be==="top"?Ae:Be==="counterclockwise"?-(be+Ae*.4):be+Ae*.8}var Ie=$!==void 0?$:J.radialAxisAngle,Ze=O(Ie),at=Math.cos(Ze),it=Math.sin(Ze),et=ne+re/2*at+fe*it,lt=j-re/2*it+fe*at;J.layers["radial-axis-title"]=T.draw(Z,ie,{propContainer:ee,propName:J.id+".radialaxis.title",placeholder:F(Z,"Click to enter radial axis title"),attributes:{x:et,y:lt,"text-anchor":"middle"},transform:{rotate:-Ie}})}},U.updateAngularAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getAngular(G),fe=$.angularAxis,be=$.isSmith;be||($.fillViewInitialKey("angularaxis.rotation",ie.rotation),fe.setGeometry(),fe.setScale());var Ae=be?function(nt){var Qe=z($,f([0,nt.x]));return Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2}:function(nt){return fe.t2g(nt.x)};fe.type==="linear"&&fe.thetaunit==="radians"&&(fe.tick0=I(fe.tick0),fe.dtick=I(fe.dtick));var Be=function(nt){return t(j+re*Math.cos(nt),ee-re*Math.sin(nt))},Ie=be?function(nt){var Qe=z($,f([0,nt.x]));return t(Qe[0],Qe[1])}:function(nt){return Be(Ae(nt))},Ze=be?function(nt){var Qe=z($,f([0,nt.x])),Ct=Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2;return t(Qe[0],Qe[1])+e(-I(Ct))}:function(nt){var Qe=Ae(nt);return Be(Qe)+e(-I(Qe))},at=be?function(nt){return P($,nt.x,0,1/0)}:function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe),St=Math.sin(Qe);return"M"+[j+ne*Ct,ee-ne*St]+"L"+[j+re*Ct,ee-re*St]},it=i.makeLabelFns(fe,0),et=it.labelStandoff,lt={};lt.xFn=function(nt){var Qe=Ae(nt);return Math.cos(Qe)*et},lt.yFn=function(nt){var Qe=Ae(nt),Ct=Math.sin(Qe)>0?.2:1;return-Math.sin(Qe)*(et+nt.fontSize*Ct)+Math.abs(Math.cos(Qe))*(nt.fontSize*b)},lt.anchorFn=function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe);return Math.abs(Ct)<.1?"middle":Ct>0?"start":"end"},lt.heightFn=function(nt,Qe,Ct){var St=Ae(nt);return-.5*(1+Math.sin(St))*Ct};var Me=W(ie);$.angularTickLayout!==Me&&(Z["angular-axis"].selectAll("."+fe._id+"tick").remove(),$.angularTickLayout=Me);var ge=be?[1/0].concat(fe.tickvals||[]).map(function(nt){return i.tickText(fe,nt,!0,!1)}):i.calcTicks(fe);be&&(ge[0].text="\u221E",ge[0].fontSize*=1.75);var ce;if(G.gridshape==="linear"?(ce=ge.map(Ae),M.angleDelta(ce[0],ce[1])<0&&(ce=ce.slice().reverse())):ce=null,$.vangles=ce,fe.type==="category"&&(ge=ge.filter(function(nt){return M.isAngleInsideSector(Ae(nt),$.sectorInRad)})),fe.visible){var ze=fe.ticks==="inside"?-1:1,tt=(fe.linewidth||1)/2;i.drawTicks(J,fe,{vals:ge,layer:Z["angular-axis"],path:"M"+ze*tt+",0h"+ze*fe.ticklen,transFn:Ze,crisp:!1}),i.drawGrid(J,fe,{vals:ge,layer:Z["angular-grid"],path:at,transFn:M.noop,crisp:!1}),i.drawLabels(J,fe,{vals:ge,layer:Z["angular-axis"],repositionOnUpdate:!0,transFn:Ie,labelFns:lt})}se(Z["angular-line"].select("path"),ie.showline,{d:$.pathSubplot(),transform:t(j,ee)}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateFx=function(he,G){if(!this.gd._context.staticPlot){var $=!this.isSmith;$&&(this.updateAngularDrag(he),this.updateRadialDrag(he,G,0),this.updateRadialDrag(he,G,1)),this.updateHoverAndMainDrag(he)}},U.updateHoverAndMainDrag=function(he){var G=this,$=G.isSmith,J=G.gd,Z=G.layers,re=he._zoomlayer,ne=d.MINZOOM,j=d.OFFEDGE,ee=G.radius,ie=G.innerRadius,fe=G.cx,be=G.cy,Ae=G.cxx,Be=G.cyy,Ie=G.sectorInRad,Ze=G.vangles,at=G.radialAxis,it=u.clampTiny,et=u.findXYatLength,lt=u.findEnclosingVertexAngles,Me=d.cornerHalfWidth,ge=d.cornerLen/2,ce,ze,tt=h.makeDragger(Z,"path","maindrag",he.dragmode===!1?"none":"crosshair");g.select(tt).attr("d",G.pathSubplot()).attr("transform",t(fe,be)),tt.onmousemove=function(Gt){p.hover(J,Gt,G.id),J._fullLayout._lasthover=tt,J._fullLayout._hoversubplot=G.id},tt.onmouseout=function(Gt){J._dragging||v.unhover(J,Gt)};var nt={element:tt,gd:J,subplot:G.id,plotinfo:{id:G.id,xaxis:G.xaxis,yaxis:G.yaxis},xaxes:[G.xaxis],yaxes:[G.yaxis]},Qe,Ct,St,Ot,jt,ur,ar,Cr,vr;function _r(Gt,Kt){return Math.sqrt(Gt*Gt+Kt*Kt)}function yt(Gt,Kt){return _r(Gt-Ae,Kt-Be)}function Fe(Gt,Kt){return Math.atan2(Be-Kt,Gt-Ae)}function Ke(Gt,Kt){return[Gt*Math.cos(Kt),Gt*Math.sin(-Kt)]}function Ne(Gt,Kt){if(Gt===0)return G.pathSector(2*Me);var sr=ge/Gt,sa=Kt-sr,Aa=Kt+sr,La=Math.max(0,Math.min(Gt,ee)),ka=La-Me,Ga=La+Me;return"M"+Ke(ka,sa)+"A"+[ka,ka]+" 0,0,0 "+Ke(ka,Aa)+"L"+Ke(Ga,Aa)+"A"+[Ga,Ga]+" 0,0,1 "+Ke(Ga,sa)+"Z"}function Ee(Gt,Kt,sr){if(Gt===0)return G.pathSector(2*Me);var sa=Ke(Gt,Kt),Aa=Ke(Gt,sr),La=it((sa[0]+Aa[0])/2),ka=it((sa[1]+Aa[1])/2),Ga,Ma;if(La&&ka){var Ua=ka/La,ni=-1/Ua,Wt=et(Me,Ua,La,ka);Ga=et(ge,ni,Wt[0][0],Wt[0][1]),Ma=et(ge,ni,Wt[1][0],Wt[1][1])}else{var zt,Vt;ka?(zt=ge,Vt=Me):(zt=Me,Vt=ge),Ga=[[La-zt,ka-Vt],[La+zt,ka-Vt]],Ma=[[La-zt,ka+Vt],[La+zt,ka+Vt]]}return"M"+Ga.join("L")+"L"+Ma.reverse().join("L")+"Z"}function Ve(){St=null,Ot=null,jt=G.pathSubplot(),ur=!1;var Gt=J._fullLayout[G.id];ar=x(Gt.bgcolor).getLuminance(),Cr=h.makeZoombox(re,ar,fe,be,jt),Cr.attr("fill-rule","evenodd"),vr=h.makeCorners(re,fe,be),w(J)}function ke(Gt,Kt){return Kt=Math.max(Math.min(Kt,ee),ie),Gt<j?Gt=0:ee-Gt<j?Gt=ee:Kt<j?Kt=0:ee-Kt<j&&(Kt=ee),Math.abs(Kt-Gt)>ne?(Gt<Kt?(St=Gt,Ot=Kt):(St=Kt,Ot=Gt),!0):(St=null,Ot=null,!1)}function Te(Gt,Kt){Gt=Gt||jt,Kt=Kt||"M0,0Z",Cr.attr("d",Gt),vr.attr("d",Kt),h.transitionZoombox(Cr,vr,ur,ar),ur=!0;var sr={};It(sr),J.emit("plotly_relayouting",sr)}function Le(Gt,Kt){Gt=Gt*ce,Kt=Kt*ze;var sr=Qe+Gt,sa=Ct+Kt,Aa=yt(Qe,Ct),La=Math.min(yt(sr,sa),ee),ka=Fe(Qe,Ct),Ga,Ma;ke(Aa,La)&&(Ga=jt+G.pathSector(Ot),St&&(Ga+=G.pathSector(St)),Ma=Ne(St,ka)+Ne(Ot,ka)),Te(Ga,Ma)}function rt(Gt,Kt,sr,sa){var Aa=u.findIntersectionXY(sr,sa,sr,[Gt-Ae,Be-Kt]);return _r(Aa[0],Aa[1])}function dt(Gt,Kt){var sr=Qe+Gt,sa=Ct+Kt,Aa=Fe(Qe,Ct),La=Fe(sr,sa),ka=lt(Aa,Ze),Ga=lt(La,Ze),Ma=rt(Qe,Ct,ka[0],ka[1]),Ua=Math.min(rt(sr,sa,Ga[0],Ga[1]),ee),ni,Wt;ke(Ma,Ua)&&(ni=jt+G.pathSector(Ot),St&&(ni+=G.pathSector(St)),Wt=[Ee(St,ka[0],ka[1]),Ee(Ot,ka[0],ka[1])].join(" ")),Te(ni,Wt)}function xt(){if(h.removeZoombox(J),!(St===null||Ot===null)){var Gt={};It(Gt),h.showDoubleClickNotifier(J),A.call("_guiRelayout",J,Gt)}}function It(Gt){var Kt=at._rl,sr=(Kt[1]-Kt[0])/(1-ie/ee)/ee,sa=[Kt[0]+(St-ie)*sr,Kt[0]+(Ot-ie)*sr];Gt[G.id+".radialaxis.range"]=sa}function Bt(Gt,Kt){var sr=J._fullLayout.clickmode;if(h.removeZoombox(J),Gt===2){var sa={};for(var Aa in G.viewInitial)sa[G.id+"."+Aa]=G.viewInitial[Aa];J.emit("plotly_doubleclick",null),A.call("_guiRelayout",J,sa)}sr.indexOf("select")>-1&&Gt===1&&_(Kt,J,[G.xaxis],[G.yaxis],G.id,nt),sr.indexOf("event")>-1&&p.click(J,Kt,G.id)}nt.prepFn=function(Gt,Kt,sr){var sa=J._fullLayout.dragmode,Aa=tt.getBoundingClientRect();J._fullLayout._calcInverseTransform(J);var La=J._fullLayout._invTransform;ce=J._fullLayout._invScaleX,ze=J._fullLayout._invScaleY;var ka=M.apply3DTransform(La)(Kt-Aa.left,sr-Aa.top);if(Qe=ka[0],Ct=ka[1],Ze){var Ga=u.findPolygonOffset(ee,Ie[0],Ie[1],Ze);Qe+=Ae+Ga[0],Ct+=Be+Ga[1]}switch(sa){case"zoom":nt.clickFn=Bt,$||(Ze?nt.moveFn=dt:nt.moveFn=Le,nt.doneFn=xt,Ve(Gt,Kt,sr));break;case"select":case"lasso":l(Gt,Kt,sr,nt,sa);break}},v.init(nt)},U.updateRadialDrag=function(he,G,$){var J=this,Z=J.gd,re=J.layers,ne=J.radius,j=J.innerRadius,ee=J.cx,ie=J.cy,fe=J.radialAxis,be=d.radialDragBoxSize,Ae=be/2;if(!fe.visible)return;var Be=O(J.radialAxisAngle),Ie=fe._rl,Ze=Ie[0],at=Ie[1],it=Ie[$],et=.75*(Ie[1]-Ie[0])/(1-J.getHole(G))/ne,lt,Me,ge;$?(lt=ee+(ne+Ae)*Math.cos(Be),Me=ie-(ne+Ae)*Math.sin(Be),ge="radialdrag"):(lt=ee+(j-Ae)*Math.cos(Be),Me=ie-(j-Ae)*Math.sin(Be),ge="radialdrag-inner");var ce=h.makeRectDragger(re,ge,"crosshair",-Ae,-Ae,be,be),ze={element:ce,gd:Z};he.dragmode===!1&&(ze.dragmode=!1),se(g.select(ce),fe.visible&&j<ne,{transform:t(lt,Me)});var tt,nt,Qe;function Ct(ar,Cr){if(tt)tt(ar,Cr);else{var vr=[ar,-Cr],_r=[Math.cos(Be),Math.sin(Be)],yt=Math.abs(M.dot(vr,_r)/Math.sqrt(M.dot(vr,vr)));isNaN(yt)||(tt=yt<.5?jt:ur)}var Fe={};St(Fe),Z.emit("plotly_relayouting",Fe)}function St(ar){nt!==null?ar[J.id+".radialaxis.angle"]=nt:Qe!==null&&(ar[J.id+".radialaxis.range["+$+"]"]=Qe)}function Ot(){nt!==null?A.call("_guiRelayout",Z,J.id+".radialaxis.angle",nt):Qe!==null&&A.call("_guiRelayout",Z,J.id+".radialaxis.range["+$+"]",Qe)}function jt(ar,Cr){if($!==0){var vr=lt+ar,_r=Me+Cr;nt=Math.atan2(ie-_r,vr-ee),J.vangles&&(nt=ue(nt,J.vangles)),nt=I(nt);var yt=t(ee,ie)+e(-nt);re["radial-axis"].attr("transform",yt),re["radial-line"].select("line").attr("transform",yt);var Fe=J.gd._fullLayout,Ke=Fe[J.id];J.updateRadialAxisTitle(Fe,Ke,nt)}}function ur(ar,Cr){var vr=M.dot([ar,-Cr],[Math.cos(Be),Math.sin(Be)]);if(Qe=it-et*vr,et>0!=($?Qe>Ze:Qe<at)){Qe=null;return}var _r=Z._fullLayout,yt=_r[J.id];fe.range[$]=Qe,fe._rl[$]=Qe,J.updateRadialAxis(_r,yt),J.xaxis.setRange(),J.xaxis.setScale(),J.yaxis.setRange(),J.yaxis.setScale();var Fe=!1;for(var Ke in J.traceHash){var Ne=J.traceHash[Ke],Ee=M.filterVisible(Ne),Ve=Ne[0][0].trace._module;Ve.plot(Z,J,Ee,yt),A.traceIs(Ke,"gl")&&Ee.length&&(Fe=!0)}Fe&&(E(Z),m(Z))}ze.prepFn=function(){tt=null,nt=null,Qe=null,ze.moveFn=Ct,ze.doneFn=Ot,w(Z)},ze.clampFn=function(ar,Cr){return Math.sqrt(ar*ar+Cr*Cr)<d.MINDRAG&&(ar=0,Cr=0),[ar,Cr]},v.init(ze)},U.updateAngularDrag=function(he){var G=this,$=G.gd,J=G.layers,Z=G.radius,re=G.angularAxis,ne=G.cx,j=G.cy,ee=G.cxx,ie=G.cyy,fe=d.angularDragBoxSize,be=h.makeDragger(J,"path","angulardrag",he.dragmode===!1?"none":"move"),Ae={element:be,gd:$};he.dragmode===!1?Ae.dragmode=!1:g.select(be).attr("d",G.pathAnnulus(Z,Z+fe)).attr("transform",t(ne,j)).call(S,"move");function Be(Qe,Ct){return Math.atan2(ie+fe-Ct,Qe-ee-fe)}var Ie=J.frontplot.select(".scatterlayer").selectAll(".trace"),Ze=Ie.selectAll(".point"),at=Ie.selectAll(".textpoint"),it,et,lt,Me,ge,ce;function ze(Qe,Ct){var St=G.gd._fullLayout,Ot=St[G.id],jt=it+Qe*he._invScaleX,ur=et+Ct*he._invScaleY,ar=Be(jt,ur),Cr=I(ar-ce);if(Me=lt+Cr,J.frontplot.attr("transform",t(G.xOffset2,G.yOffset2)+e([-Cr,ee,ie])),G.vangles){ge=G.radialAxisAngle+Cr;var vr=t(ne,j)+e(-Cr),_r=t(ne,j)+e(-ge);J.bg.attr("transform",vr),J["radial-grid"].attr("transform",vr),J["radial-axis"].attr("transform",_r),J["radial-line"].select("line").attr("transform",_r),G.updateRadialAxisTitle(St,Ot,ge)}else G.clipPaths.forTraces.select("path").attr("transform",t(ee,ie)+e(Cr));Ze.each(function(){var ke=g.select(this),Te=o.getTranslate(ke);ke.attr("transform",t(Te.x,Te.y)+e([Cr]))}),at.each(function(){var ke=g.select(this),Te=ke.select("text"),Le=o.getTranslate(ke);ke.attr("transform",e([Cr,Te.attr("x"),Te.attr("y")])+t(Le.x,Le.y))}),re.rotation=M.modHalf(Me,360),G.updateAngularAxis(St,Ot),G._hasClipOnAxisFalse&&!M.isFullCircle(G.sectorInRad)&&Ie.call(o.hideOutsideRangePoints,G);var yt=!1;for(var Fe in G.traceHash)if(A.traceIs(Fe,"gl")){var Ke=G.traceHash[Fe],Ne=M.filterVisible(Ke),Ee=Ke[0][0].trace._module;Ee.plot($,G,Ne,Ot),Ne.length&&(yt=!0)}yt&&(E($),m($));var Ve={};tt(Ve),$.emit("plotly_relayouting",Ve)}function tt(Qe){Qe[G.id+".angularaxis.rotation"]=Me,G.vangles&&(Qe[G.id+".radialaxis.angle"]=ge)}function nt(){at.select("text").attr("transform",null);var Qe={};tt(Qe),A.call("_guiRelayout",$,Qe)}Ae.prepFn=function(Qe,Ct,St){var Ot=he[G.id];lt=Ot.angularaxis.rotation;var jt=be.getBoundingClientRect();it=Ct-jt.left,et=St-jt.top,$._fullLayout._calcInverseTransform($);var ur=M.apply3DTransform(he._invTransform)(it,et);it=ur[0],et=ur[1],ce=Be(it,et),Ae.moveFn=ze,Ae.doneFn=nt,w($)},G.vangles&&!M.isFullCircle(G.sectorInRad)&&(Ae.prepFn=M.noop,S(g.select(be),null)),v.init(Ae)},U.isPtInside=function(he){if(this.isSmith)return!0;var G=this.sectorInRad,$=this.vangles,J=this.angularAxis.c2g(he.theta),Z=this.radialAxis,re=Z.c2l(he.r),ne=Z._rl,j=$?u.isPtInsidePolygon:M.isPtInsideSector;return j(re,J,ne,G,$)},U.pathArc=function(he){var G=this.sectorInRad,$=this.vangles,J=$?u.pathPolygon:M.pathArc;return J(he,G[0],G[1],$)},U.pathSector=function(he){var G=this.sectorInRad,$=this.vangles,J=$?u.pathPolygon:M.pathSector;return J(he,G[0],G[1],$)},U.pathAnnulus=function(he,G){var $=this.sectorInRad,J=this.vangles,Z=J?u.pathPolygonAnnulus:M.pathAnnulus;return Z(he,G,$[0],$[1],J)},U.pathSubplot=function(){var he=this.innerRadius,G=this.radius;return he?this.pathAnnulus(he,G):this.pathSector(G)},U.fillViewInitialKey=function(he,G){he in this.viewInitial||(this.viewInitial[he]=G)};function W(he){var G=he.ticks+String(he.ticklen)+String(he.showticklabels);return"side"in he&&(G+=he.side),G}function Q(he){var G=he[0],$=he[1],J=$-G,Z=B(G,360),re=Z+J,ne=Math.cos(O(Z)),j=Math.sin(O(Z)),ee=Math.cos(O(re)),ie=Math.sin(O(re)),fe,be,Ae,Be;return Z<=90&&re>=90||Z>90&&re>=450?Be=1:j<=0&&ie<=0?Be=0:Be=Math.max(j,ie),Z<=180&&re>=180||Z>180&&re>=540?fe=-1:ne>=0&&ee>=0?fe=0:fe=Math.min(ne,ee),Z<=270&&re>=270||Z>270&&re>=630?be=-1:j>=0&&ie>=0?be=0:be=Math.min(j,ie),re>=360?Ae=1:ne<=0&&ee<=0?Ae=0:Ae=Math.max(ne,ee),[fe,be,Ae,Be]}function ue(he,G){var $=function(Z){return M.angleDist(he,Z)},J=M.findIndexOfMin(G,$);return G[J]}function se(he,G,$){return G?(he.attr("display",null),he.attr($)):he&&he.attr("display","none"),he}}}),rC=Ye({"src/plots/polar/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,ticklabelstep:x.ticklabelstep,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickfont:x.tickfont,tickangle:x.tickangle,tickformat:x.tickformat,tickformatstops:x.tickformatstops,layer:x.layer},"plot","from-root"),o={visible:M({},x.visible,{dflt:!0}),type:M({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},autorange:M({},x.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:M({},x.minallowed,{editType:"plot"}),maxallowed:M({},x.maxallowed,{editType:"plot"}),range:M({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:x.categoryorder,categoryarray:x.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:x.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:M({},x.title.text,{editType:"plot",dflt:""}),font:M({},x.title.font,{editType:"plot"}),editType:"plot"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(o,t,r);var a={visible:M({},x.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:x.autotypenumbers,categoryorder:x.categoryorder,categoryarray:x.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(a,t,r),H.exports={domain:A({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:g.background},radialaxis:o,angularaxis:a,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),nG=Ye({"src/plots/polar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Zg(),r=e1(),o=$m(),a=Qm(),i=P2(),n=I_(),s=cS(),c=r1(),h=rC(),v=Qk(),p=RT(),T=p.axisNames;function l(w,S,E,m){var b=E("bgcolor");m.bgColor=x.combine(b,m.paper_bgcolor);var d=E("sector");E("hole");var u=e(m.fullData,p.name,m.id),y=m.layoutOut,f;function P(be,Ae){return E(f+"."+be,Ae)}for(var L=0;L<T.length;L++){f=T[L],g.isPlainObject(w[f])||(w[f]={});var z=w[f],F=A.newContainer(S,f);F._id=F._name=f,F._attr=m.id+"."+f,F._traceIndices=u.map(function(be){return be.index});var B=p.axisName2dataArray[f],O=_(z,F,P,u,B,m);i(z,F,P,{axData:u,dataAttr:B});var I=P("visible");switch(v(F,S,y),P("uirevision",S.uirevision),F._m=1,f){case"radialaxis":P("minallowed"),P("maxallowed");var N=P("range"),U=F.getAutorangeDflt(N),W=P("autorange",U),Q;N&&(N[0]===null&&N[1]===null||(N[0]===null||N[1]===null)&&(W==="reversed"||W===!0)||N[0]!==null&&(W==="min"||W==="max reversed")||N[1]!==null&&(W==="max"||W==="min reversed"))&&(N=void 0,delete F.range,F.autorange=!0,Q=!0),Q||(U=F.getAutorangeDflt(N),W=P("autorange",U)),z.autorange=W,W&&(s(P,W,N),(O==="linear"||O==="-")&&P("rangemode"),F.isReversed()&&(F._m=-1)),F.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(O==="date"){g.log("Polar plots do not support date angular axes yet.");for(var ue=0;ue<u.length;ue++)u[ue].visible=!1;O=z.type=F.type="linear"}P(O==="linear"?"thetaunit":"period");var se=P("direction");P("rotation",{counterclockwise:0,clockwise:90}[se]);break}if(a(z,F,P,F.type,{tickSuffixDflt:F.thetaunit==="degrees"?"\xB0":void 0}),I){var he,G,$,J,Z,re,ne,j,ee,ie,fe=m.font||{};he=P("color"),G=he===z.color?he:fe.color,$=fe.size,J=fe.family,Z=fe.weight,re=fe.style,ne=fe.variant,j=fe.textcase,ee=fe.lineposition,ie=fe.shadow,t(z,F,P,F.type),o(z,F,P,F.type,{font:{weight:Z,style:re,variant:ne,textcase:j,lineposition:ee,shadow:ie,color:G,size:$,family:J},noAutotickangles:f==="angularaxis",noTicklabelshift:!0,noTicklabelstandoff:!0}),r(z,F,P,{outerTicks:!0}),n(z,F,P,{dfltColor:he,bgColor:m.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:h[f]}),P("layer"),f==="radialaxis"&&(P("side"),P("angle",d[0]),P("title.text"),g.coerceFont(P,"title.font",{weight:Z,style:re,variant:ne,textcase:j,lineposition:ee,shadow:ie,color:G,size:g.bigFont($),family:J}))}O!=="category"&&P("hoverformat"),F._input=z}S.angularaxis.type==="category"&&E("gridshape")}function _(w,S,E,m,b,d){var u=E("autotypenumbers",d.autotypenumbersDflt),y=E("type");if(y==="-"){for(var f,P=0;P<m.length;P++)if(m[P].visible){f=m[P];break}f&&f[b]&&(S.type=c(f[b],"gregorian",{noMultiCategory:!0,autotypenumbers:u})),S.type==="-"?S.type="linear":w.type=S.type}return S.type}H.exports=function(S,E,m){M(S,E,m,{type:p.name,attributes:h,handleDefaults:l,font:E.font,autotypenumbersDflt:E.autotypenumbers,paper_bgcolor:E.paper_bgcolor,fullData:m,layoutOut:E})}}}),zT=Ye({"src/plots/polar/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=tC(),M=RT(),e=M.attr,t=M.name,r=x(t),o={};o[e]={valType:"subplotid",dflt:t,editType:"calc"};function a(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[t],v=0;v<h.length;v++){var p=h[v],T=g(c,t,p),l=s[p]._subplot;l||(l=A(n,p),s[p]._subplot=l),l.plot(T,s,n._promises)}}function i(n,s,c,h){for(var v=h._subplots[t]||[],p=h._has&&h._has("gl"),T=s._has&&s._has("gl"),l=p&&!T,_=0;_<v.length;_++){var w=v[_],S=h[w]._subplot;if(!s[w]&&S){S.framework.remove(),S.layers["radial-axis-title"].remove();for(var E in S.clipPaths)S.clipPaths[E].remove()}l&&S._scene&&(S._scene.destroy(),S._scene=null)}}H.exports={attr:e,name:t,idRoot:t,idRegex:r,attrRegex:r,attributes:o,layoutAttributes:rC(),supplyLayoutDefaults:nG(),plot:a,clean:i,toSVG:Pf().toSVG}}}),Ex=Ye({"src/traces/scatterpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=Oo().extendFlat,M=$d(),e=Pc(),t=Pl(),r=e.line;H.exports={mode:e.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:e.text,texttemplate:x({editType:"plot"},{keys:["r","theta","text"]}),hovertext:e.hovertext,line:{color:r.color,width:r.width,dash:r.dash,backoff:r.backoff,shape:A({},r.shape,{values:["linear","spline"]}),smoothing:r.smoothing,editType:"calc"},connectgaps:e.connectgaps,marker:e.marker,cliponaxis:A({},e.cliponaxis,{dflt:!1}),textposition:e.textposition,textfont:e.textfont,fill:A({},e.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:M(),hoverinfo:A({},t.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:e.hoveron,hovertemplate:g(),selected:e.selected,unselected:e.unselected}}}),FT=Ye({"src/traces/scatterpolar/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=n1(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=Ex();function i(s,c,h,v){function p(_,w){return g.coerce(s,c,a,_,w)}var T=n(s,c,v,p);if(!T){c.visible=!1;return}p("thetaunit"),p("mode",T<o?"lines+markers":"lines"),p("text"),p("hovertext"),c.hoveron!=="fills"&&p("hovertemplate"),x.hasMarkers(c)&&A(s,c,h,v,p,{gradient:!0}),x.hasLines(c)&&(M(s,c,h,v,p,{backoff:!0}),e(s,c,p),p("connectgaps")),x.hasText(c)&&(p("texttemplate"),t(s,c,v,p));var l=[];(x.hasMarkers(c)||x.hasText(c))&&(p("cliponaxis"),p("marker.maxdisplayed"),l.push("points")),p("fill"),c.fill!=="none"&&(r(s,c,h,p),x.hasLines(c)||e(s,c,p)),(c.fill==="tonext"||c.fill==="toself")&&l.push("fills"),p("hoveron",l.join("+")||"points"),g.coerceSelectionMarkerOpacity(c,p)}function n(s,c,h,v){var p=v("r"),T=v("theta");g.isTypedArray(p)&&(c.r=p=Array.from(p)),g.isTypedArray(T)&&(c.theta=T=Array.from(T));var l;if(p)T?l=Math.min(p.length,T.length):(l=p.length,v("theta0"),v("dtheta"));else{if(!T)return 0;l=c.theta.length,v("r0"),v("dr")}return c._length=l,l}H.exports={handleRThetaDefaults:n,supplyDefaults:i}}}),OT=Ye({"src/traces/scatterpolar/format_labels.js"(X,H){"use strict";var g=ta(),x=Co();H.exports=function(M,e,t){var r={},o=t[e.subplot]._subplot,a,i;o?(a=o.radialAxis,i=o.angularAxis):(o=t[e.subplot],a=o.radialaxis,i=o.angularaxis);var n=a.c2l(M.r);r.rLabel=x.tickText(a,n,!0).text;var s=i.thetaunit==="degrees"?g.rad2deg(M.theta):M.theta;return r.thetaLabel=x.tickText(i,s,!0).text,r}}}),oG=Ye({"src/traces/scatterpolar/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Co(),M=Fd(),e=Av(),t=Od(),r=Bd().calcMarkerSize;H.exports=function(a,i){for(var n=a._fullLayout,s=i.subplot,c=n[s].radialaxis,h=n[s].angularaxis,v=c.makeCalcdata(i,"r"),p=h.makeCalcdata(i,"theta"),T=i._length,l=new Array(T),_=0;_<T;_++){var w=v[_],S=p[_],E=l[_]={};g(w)&&g(S)?(E.r=w,E.theta=S):E.r=x}var m=r(i,T);return i._extremes.x=A.findExtremes(c,v,{ppad:m}),M(a,i),e(l,i),t(l,i),l}}}),sG=Ye({"src/traces/scatterpolar/plot.js"(X,H){"use strict";var g=o1(),x=ks().BADNUM;H.exports=function(M,e,t){for(var r=e.layers.frontplot.select("g.scatterlayer"),o=e.xaxis,a=e.yaxis,i={xaxis:o,yaxis:a,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},n=e.radialAxis,s=e.angularAxis,c=0;c<t.length;c++)for(var h=t[c],v=0;v<h.length;v++){v===0&&(h[0].trace._xA=o,h[0].trace._yA=a);var p=h[v],T=p.r;if(T===x)p.x=p.y=x;else{var l=n.c2g(T),_=s.c2g(p.theta);p.x=l*Math.cos(_),p.y=l*Math.sin(_)}}g(M,i,t,r)}}}),BT=Ye({"src/traces/scatterpolar/hover.js"(X,H){"use strict";var g=l1();function x(M,e,t,r){var o=g(M,e,t,r);if(!(!o||o[0].index===!1)){var a=o[0];if(a.index===void 0)return o;var i=M.subplot,n=a.cd[a.index],s=a.trace;if(i.isPtInside(n))return a.xLabelVal=void 0,a.yLabelVal=void 0,A(n,s,i,a),a.hovertemplate=s.hovertemplate,o}}function A(M,e,t,r){var o=t.radialAxis,a=t.angularAxis;o._hovertitle="r",a._hovertitle="\u03B8";var i={};i[e.subplot]={_subplot:t};var n=e._module.formatLabels(M,e,i);r.rLabel=n.rLabel,r.thetaLabel=n.thetaLabel;var s=M.hi||e.hoverinfo,c=[];function h(p,T){c.push(p._hovertitle+": "+T)}if(!e.hovertemplate){var v=s.split("+");v.indexOf("all")!==-1&&(v=["r","theta","text"]),v.indexOf("r")!==-1&&h(o,r.rLabel),v.indexOf("theta")!==-1&&h(a,r.thetaLabel),v.indexOf("text")!==-1&&r.text&&(c.push(r.text),delete r.text),r.extraText=c.join("<br>")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),lG=Ye({"src/traces/scatterpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:zT(),categories:["polar","symbols","showLegend","scatter-like"],attributes:Ex(),supplyDefaults:FT().supplyDefaults,colorbar:cp(),formatLabels:OT(),calc:oG(),plot:sG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:BT().hoverPoints,selectPoints:u1(),meta:{}}}}),uG=Ye({"lib/scatterpolar.js"(X,H){"use strict";H.exports=lG()}}),aC=Ye({"src/traces/scatterpolargl/attributes.js"(X,H){"use strict";var g=Ex(),x=yx(),A=xs().texttemplateAttrs;H.exports={mode:g.mode,r:g.r,theta:g.theta,r0:g.r0,dr:g.dr,theta0:g.theta0,dtheta:g.dtheta,thetaunit:g.thetaunit,text:g.text,texttemplate:A({editType:"plot"},{keys:["r","theta","text"]}),hovertext:g.hovertext,hovertemplate:g.hovertemplate,line:{color:x.line.color,width:x.line.width,dash:x.line.dash,editType:"calc"},connectgaps:x.connectgaps,marker:x.marker,fill:x.fill,fillcolor:x.fillcolor,textposition:x.textposition,textfont:x.textfont,hoverinfo:g.hoverinfo,selected:g.selected,unselected:g.unselected}}}),cG=Ye({"src/traces/scatterpolargl/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=FT().handleRThetaDefaults,M=md(),e=Dd(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=aC();H.exports=function(n,s,c,h){function v(T,l){return g.coerce(n,s,a,T,l)}var p=A(n,s,h,v);if(!p){s.visible=!1;return}v("thetaunit"),v("mode",p<o?"lines+markers":"lines"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate"),x.hasMarkers(s)&&M(n,s,c,h,v,{noAngleRef:!0,noStandOff:!0}),x.hasLines(s)&&(e(n,s,c,h,v),v("connectgaps")),x.hasText(s)&&(v("texttemplate"),t(n,s,h,v,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),v("fill"),s.fill!=="none"&&r(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)}}}),fG=Ye({"src/traces/scatterpolargl/format_labels.js"(X,H){"use strict";var g=OT();H.exports=function(A,M,e){var t=A.i;return"r"in A||(A.r=M._r[t]),"theta"in A||(A.theta=M._theta[t]),g(A,M,e)}}}),hG=Ye({"src/traces/scatterpolargl/calc.js"(X,H){"use strict";var g=Fd(),x=Bd().calcMarkerSize,A=m0(),M=Co(),e=mg().TOO_MANY_POINTS;H.exports=function(r,o){var a=r._fullLayout,i=o.subplot,n=a[i].radialaxis,s=a[i].angularaxis,c=o._r=n.makeCalcdata(o,"r"),h=o._theta=s.makeCalcdata(o,"theta"),v=o._length,p={};v<c.length&&(c=c.slice(0,v)),v<h.length&&(h=h.slice(0,v)),p.r=c,p.theta=h,g(r,o);var T=p.opts=A.style(r,o),l;return v<e?l=x(o,v):T.marker&&(l=2*(T.marker.sizeAvg||Math.max(T.marker.size,3))),o._extremes.x=M.findExtremes(n,c,{ppad:l}),[{x:!1,y:!1,t:p,trace:o}]}}}),pG=Ye({"src/traces/scatterpolargl/hover.js"(X,H){"use strict";var g=hT(),x=BT().makeHoverPointText;function A(M,e,t,r){var o=M.cd,a=o[0].t,i=a.r,n=a.theta,s=g.hoverPoints(M,e,t,r);if(!(!s||s[0].index===!1)){var c=s[0];if(c.index===void 0)return s;var h=M.subplot,v=c.cd[c.index],p=c.trace;if(v.r=i[c.index],v.theta=n[c.index],!!h.isPtInside(v))return c.xLabelVal=void 0,c.yLabelVal=void 0,x(v,p,h,c),s}}H.exports={hoverPoints:A}}}),dG=Ye({"src/traces/scatterpolargl/base_index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:zT(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:aC(),supplyDefaults:cG(),colorbar:cp(),formatLabels:fG(),calc:hG(),hoverPoints:pG().hoverPoints,selectPoints:O5(),meta:{}}}}),vG=Ye({"src/traces/scatterpolargl/plot.js"(X,H){"use strict";var g=dT(),x=jo(),A=lk(),M=z5(),e=m0(),t=ta(),r=mg().TOO_MANY_POINTS,o={};H.exports=function(i,n,s){if(s.length){var c=n.radialAxis,h=n.angularAxis,v=M(i,n);return s.forEach(function(p){if(!(!p||!p[0]||!p[0].trace)){var T=p[0],l=T.trace,_=T.t,w=l._length,S=_.r,E=_.theta,m=_.opts,b,d=S.slice(),u=E.slice();for(b=0;b<S.length;b++)n.isPtInside({r:S[b],theta:E[b]})||(d[b]=NaN,u[b]=NaN);var y=new Array(w*2),f=Array(w),P=Array(w);for(b=0;b<w;b++){var L=d[b],z,F;if(x(L)){var B=c.c2g(L),O=h.c2g(u[b],l.thetaunit);z=B*Math.cos(O),F=B*Math.sin(O)}else z=F=NaN;f[b]=y[b*2]=z,P[b]=y[b*2+1]=F}_.tree=g(y),m.marker&&w>=r&&(m.marker.cluster=_.tree),m.marker&&(m.markerSel.positions=m.markerUnsel.positions=m.marker.positions=y),m.line&&y.length>1&&t.extendFlat(m.line,e.linePositions(i,l,y)),m.text&&(t.extendFlat(m.text,{positions:y},e.textPosition(i,l,m.text,m.marker)),t.extendFlat(m.textSel,{positions:y},e.textPosition(i,l,m.text,m.markerSel)),t.extendFlat(m.textUnsel,{positions:y},e.textPosition(i,l,m.text,m.markerUnsel))),m.fill&&!v.fill2d&&(v.fill2d=!0),m.marker&&!v.scatter2d&&(v.scatter2d=!0),m.line&&!v.line2d&&(v.line2d=!0),m.text&&!v.glText&&(v.glText=!0),v.lineOptions.push(m.line),v.fillOptions.push(m.fill),v.markerOptions.push(m.marker),v.markerSelectedOptions.push(m.markerSel),v.markerUnselectedOptions.push(m.markerUnsel),v.textOptions.push(m.text),v.textSelectedOptions.push(m.textSel),v.textUnselectedOptions.push(m.textUnsel),v.selectBatch.push([]),v.unselectBatch.push([]),_.x=f,_.y=P,_.rawx=f,_.rawy=P,_.r=S,_.theta=E,_.positions=y,_._scene=v,_.index=v.count,v.count++}}),A(i,n,s)}},H.exports.reglPrecompiled=o}}),mG=Ye({"src/traces/scatterpolargl/index.js"(X,H){"use strict";var g=dG();g.plot=vG(),H.exports=g}}),gG=Ye({"lib/scatterpolargl.js"(X,H){"use strict";H.exports=mG()}}),iC=Ye({"src/traces/barpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=Oo().extendFlat,A=Ex(),M=Sv();H.exports={r:A.r,theta:A.theta,r0:A.r0,dr:A.dr,theta0:A.theta0,dtheta:A.dtheta,thetaunit:A.thetaunit,base:x({},M.base,{}),offset:x({},M.offset,{}),width:x({},M.width,{}),text:x({},M.text,{}),hovertext:x({},M.hovertext,{}),marker:e(),hoverinfo:A.hoverinfo,hovertemplate:g(),selected:M.selected,unselected:M.unselected};function e(){var t=x({},M.marker);return delete t.cornerradius,t}}}),nC=Ye({"src/traces/barpolar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}}}),yG=Ye({"src/traces/barpolar/defaults.js"(X,H){"use strict";var g=ta(),x=FT().handleRThetaDefaults,A=U2(),M=iC();H.exports=function(t,r,o,a){function i(s,c){return g.coerce(t,r,M,s,c)}var n=x(t,r,a,i);if(!n){r.visible=!1;return}i("thetaunit"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),A(t,r,i,o,a),g.coerceSelectionMarkerOpacity(r,i)}}}),_G=Ye({"src/traces/barpolar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=nC();H.exports=function(A,M,e){var t={},r;function o(n,s){return g.coerce(A[r]||{},M[r],x,n,s)}for(var a=0;a<e.length;a++){var i=e[a];i.type==="barpolar"&&i.visible===!0&&(r=i.subplot,t[r]||(o("barmode"),o("bargap"),t[r]=1))}}}}),oC=Ye({"src/traces/barpolar/calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=ta().isArrayOrTypedArray,M=z_(),e=$g().setGroupPositions,t=Od(),r=Hn().traceIs,o=ta().extendFlat;function a(n,s){for(var c=n._fullLayout,h=s.subplot,v=c[h].radialaxis,p=c[h].angularaxis,T=v.makeCalcdata(s,"r"),l=p.makeCalcdata(s,"theta"),_=s._length,w=new Array(_),S=T,E=l,m=0;m<_;m++)w[m]={p:E[m],s:S[m]};function b(d){var u=s[d];u!==void 0&&(s["_"+d]=A(u)?p.makeCalcdata(s,d):p.d2c(u,s.thetaunit))}return p.type==="linear"&&(b("width"),b("offset")),g(s,"marker")&&x(n,s,{vals:s.marker.color,containerStr:"marker",cLetter:"c"}),g(s,"marker.line")&&x(n,s,{vals:s.marker.line.color,containerStr:"marker.line",cLetter:"c"}),M(w,s),t(w,s),w}function i(n,s,c){for(var h=n.calcdata,v=[],p=0;p<h.length;p++){var T=h[p],l=T[0].trace;l.visible===!0&&r(l,"bar")&&l.subplot===c&&v.push(T)}var _=o({},s.radialaxis,{_id:"x"}),w=s.angularaxis;e(n,w,_,v,{mode:s.barmode,norm:s.barnorm,gap:s.bargap,groupgap:s.bargroupgap})}H.exports={calc:a,crossTraceCalc:i}}}),xG=Ye({"src/traces/barpolar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=Bo(),e=DT();H.exports=function(o,a,i){var n=o._context.staticPlot,s=a.xaxis,c=a.yaxis,h=a.radialAxis,v=a.angularAxis,p=t(a),T=a.layers.frontplot.select("g.barlayer");A.makeTraceGroups(T,i,"trace bars").each(function(){var l=g.select(this),_=A.ensureSingle(l,"g","points"),w=_.selectAll("g.point").data(A.identity);w.enter().append("g").style("vector-effect",n?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),w.exit().remove(),w.each(function(S){var E=g.select(this),m=S.rp0=h.c2p(S.s0),b=S.rp1=h.c2p(S.s1),d=S.thetag0=v.c2g(S.p0),u=S.thetag1=v.c2g(S.p1),y;if(!x(m)||!x(b)||!x(d)||!x(u)||m===b||d===u)y="M0,0Z";else{var f=h.c2g(S.s1),P=(d+u)/2;S.ct=[s.c2p(f*Math.cos(P)),c.c2p(f*Math.sin(P))],y=p(m,b,d,u)}A.ensureSingle(E,"path").attr("d",y)}),M.setClipUrl(l,a._hasClipOnAxisFalse?a.clipIds.forTraces:null,o)})};function t(r){var o=r.cxx,a=r.cyy;return r.vangles?function(i,n,s,c){var h,v;A.angleDelta(s,c)>0?(h=s,v=c):(h=c,v=s);var p=e.findEnclosingVertexAngles(h,r.vangles)[0],T=e.findEnclosingVertexAngles(v,r.vangles)[1],l=[p,(h+v)/2,T];return e.pathPolygonAnnulus(i,n,h,v,l,o,a)}:function(i,n,s,c){return A.pathAnnulus(i,n,s,c,o,a)}}}}),bG=Ye({"src/traces/barpolar/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=c1().getTraceColor,M=x.fillText,e=BT().makeHoverPointText,t=DT().isPtInsidePolygon;H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.subplot,h=c.radialAxis,v=c.angularAxis,p=c.vangles,T=p?t:x.isPtInsideSector,l=o.maxHoverDistance,_=v._period||2*Math.PI,w=Math.abs(h.g2p(Math.sqrt(a*a+i*i))),S=Math.atan2(i,a);h.range[0]>h.range[1]&&(S+=Math.PI);var E=function(u){return T(w,S,[u.rp0,u.rp1],[u.thetag0,u.thetag1],p)?l+Math.min(1,Math.abs(u.thetag1-u.thetag0)/_)-1+(u.rp1-w)/(u.rp1-u.rp0)-1:1/0};if(g.getClosest(n,E,o),o.index!==!1){var m=o.index,b=n[m];o.x0=o.x1=b.ct[0],o.y0=o.y1=b.ct[1];var d=x.extendFlat({},b,{r:b.s,theta:b.p});return M(b,s,o),e(d,s,c,o),o.hovertemplate=s.hovertemplate,o.color=A(s,b),o.xLabelVal=o.yLabelVal=void 0,b.s<0&&(o.idealAlign="left"),[o]}}}}),wG=Ye({"src/traces/barpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"barpolar",basePlotModule:zT(),categories:["polar","bar","showLegend"],attributes:iC(),layoutAttributes:nC(),supplyDefaults:yG(),supplyLayoutDefaults:_G(),calc:oC().calc,crossTraceCalc:oC().crossTraceCalc,plot:xG(),colorbar:cp(),formatLabels:OT(),style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:bG(),selectPoints:f1(),meta:{}}}}),TG=Ye({"lib/barpolar.js"(X,H){"use strict";H.exports=wG()}}),sC=Ye({"src/plots/smith/constants.js"(X,H){"use strict";H.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}}}),lC=Ye({"src/plots/smith/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({ticklen:x.ticklen,tickwidth:M({},x.tickwidth,{dflt:2}),tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,tickfont:x.tickfont,tickformat:x.tickformat,hoverformat:x.hoverformat,layer:x.layer},"plot","from-root"),o=M({visible:M({},x.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:M({},x.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},t,r),a=M({visible:M({},x.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:x.ticks,editType:"calc"},t,r);H.exports={domain:A({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:g.background},realaxis:o,imaginaryaxis:a,editType:"calc"}}}),AG=Ye({"src/plots/smith/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Qm(),r=$m(),o=I_(),a=wv(),i=lC(),n=sC(),s=n.axisNames,c=v(function(p){return g.isTypedArray(p)&&(p=Array.from(p)),p.slice().reverse().map(function(T){return-T}).concat([0]).concat(p)},String);function h(p,T,l,_){var w=l("bgcolor");_.bgColor=x.combine(w,_.paper_bgcolor);var S=e(_.fullData,n.name,_.id),E=_.layoutOut,m;function b(U,W){return l(m+"."+U,W)}for(var d=0;d<s.length;d++){m=s[d],g.isPlainObject(p[m])||(p[m]={});var u=p[m],y=A.newContainer(T,m);y._id=y._name=m,y._attr=_.id+"."+m,y._traceIndices=S.map(function(U){return U.index});var f=b("visible");if(y.type="linear",a(y,E),t(u,y,b,y.type),f){var P=m==="realaxis";if(P&&b("side"),P)b("tickvals");else{var L=c(T.realaxis.tickvals||i.realaxis.tickvals.dflt);b("tickvals",L)}g.isTypedArray(y.tickvals)&&(y.tickvals=Array.from(y.tickvals));var z,F,B,O,I=_.font||{};f&&(z=b("color"),F=z===u.color?z:I.color,B=I.size,O=I.family),r(u,y,b,y.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!P,noExp:!0,font:{color:F,size:B,family:O}}),g.coerce2(p,T,i,m+".ticklen"),g.coerce2(p,T,i,m+".tickwidth"),g.coerce2(p,T,i,m+".tickcolor",T.color);var N=b("ticks");N||(delete T[m].ticklen,delete T[m].tickwidth,delete T[m].tickcolor),o(u,y,b,{dfltColor:z,bgColor:_.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i[m]}),b("layer")}b("hoverformat"),delete y.type,y._input=u}}H.exports=function(T,l,_){M(T,l,_,{noUirevision:!0,type:n.name,attributes:i,handleDefaults:h,font:l.font,paper_bgcolor:l.paper_bgcolor,fullData:_,layoutOut:l})};function v(p,T){var l={};return function(_){var w=T?T(_):_;if(w in l)return l[w];var S=p(_);return l[w]=S,S}}}}),SG=Ye({"src/plots/smith/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=tC(),M=sC(),e=M.attr,t=M.name,r=x(t),o={};o[e]={valType:"subplotid",dflt:t,editType:"calc"};function a(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[t],v=0;v<h.length;v++){var p=h[v],T=g(c,t,p),l=s[p]._subplot;l||(l=A(n,p,!0),s[p]._subplot=l),l.plot(T,s,n._promises)}}function i(n,s,c,h){for(var v=h._subplots[t]||[],p=0;p<v.length;p++){var T=v[p],l=h[T]._subplot;if(!s[T]&&l){l.framework.remove();for(var _ in l.clipPaths)l.clipPaths[_].remove()}}}H.exports={attr:e,name:t,idRoot:t,idRegex:r,attrRegex:r,attributes:o,layoutAttributes:lC(),supplyLayoutDefaults:AG(),plot:a,clean:i,toSVG:Pf().toSVG}}}),uC=Ye({"src/traces/scattersmith/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=Oo().extendFlat,M=$d(),e=Pc(),t=Pl(),r=e.line;H.exports={mode:e.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:e.text,texttemplate:x({editType:"plot"},{keys:["real","imag","text"]}),hovertext:e.hovertext,line:{color:r.color,width:r.width,dash:r.dash,backoff:r.backoff,shape:A({},r.shape,{values:["linear","spline"]}),smoothing:r.smoothing,editType:"calc"},connectgaps:e.connectgaps,marker:e.marker,cliponaxis:A({},e.cliponaxis,{dflt:!1}),textposition:e.textposition,textfont:e.textfont,fill:A({},e.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:M(),hoverinfo:A({},t.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:e.hoveron,hovertemplate:g(),selected:e.selected,unselected:e.unselected}}}),MG=Ye({"src/traces/scattersmith/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=n1(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=uC();H.exports=function(s,c,h,v){function p(_,w){return g.coerce(s,c,a,_,w)}var T=i(s,c,v,p);if(!T){c.visible=!1;return}p("mode",T<o?"lines+markers":"lines"),p("text"),p("hovertext"),c.hoveron!=="fills"&&p("hovertemplate"),x.hasMarkers(c)&&A(s,c,h,v,p,{gradient:!0}),x.hasLines(c)&&(M(s,c,h,v,p,{backoff:!0}),e(s,c,p),p("connectgaps")),x.hasText(c)&&(p("texttemplate"),t(s,c,v,p));var l=[];(x.hasMarkers(c)||x.hasText(c))&&(p("cliponaxis"),p("marker.maxdisplayed"),l.push("points")),p("fill"),c.fill!=="none"&&(r(s,c,h,p),x.hasLines(c)||e(s,c,p)),(c.fill==="tonext"||c.fill==="toself")&&l.push("fills"),p("hoveron",l.join("+")||"points"),g.coerceSelectionMarkerOpacity(c,p)};function i(n,s,c,h){var v=h("real"),p=h("imag"),T;return v&&p&&(T=Math.min(v.length,p.length)),g.isTypedArray(v)&&(s.real=v=Array.from(v)),g.isTypedArray(p)&&(s.imag=p=Array.from(p)),s._length=T,T}}}),EG=Ye({"src/traces/scattersmith/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot;return t.realLabel=g.tickText(r.radialAxis,A.real,!0).text,t.imagLabel=g.tickText(r.angularAxis,A.imag,!0).text,t}}}),kG=Ye({"src/traces/scattersmith/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Fd(),M=Av(),e=Od(),t=Bd().calcMarkerSize;H.exports=function(o,a){for(var i=o._fullLayout,n=a.subplot,s=i[n].realaxis,c=i[n].imaginaryaxis,h=s.makeCalcdata(a,"real"),v=c.makeCalcdata(a,"imag"),p=a._length,T=new Array(p),l=0;l<p;l++){var _=h[l],w=v[l],S=T[l]={};g(_)&&g(w)?(S.real=_,S.imag=w):S.real=x}return t(a,p),A(o,a),M(T,a),e(T,a),T}}}),CG=Ye({"src/traces/scattersmith/plot.js"(X,H){"use strict";var g=o1(),x=ks().BADNUM,A=eC(),M=A.smith;H.exports=function(t,r,o){for(var a=r.layers.frontplot.select("g.scatterlayer"),i=r.xaxis,n=r.yaxis,s={xaxis:i,yaxis:n,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},c=0;c<o.length;c++)for(var h=o[c],v=0;v<h.length;v++){v===0&&(h[0].trace._xA=i,h[0].trace._yA=n);var p=h[v],T=p.real;if(T===x)p.x=p.y=x;else{var l=M([T,p.imag]);p.x=l[0],p.y=l[1]}}g(t,s,o,a)}}}),LG=Ye({"src/traces/scattersmith/hover.js"(X,H){"use strict";var g=l1();function x(M,e,t,r){var o=g(M,e,t,r);if(!(!o||o[0].index===!1)){var a=o[0];if(a.index===void 0)return o;var i=M.subplot,n=a.cd[a.index],s=a.trace;if(i.isPtInside(n))return a.xLabelVal=void 0,a.yLabelVal=void 0,A(n,s,i,a),a.hovertemplate=s.hovertemplate,o}}function A(M,e,t,r){var o=t.radialAxis,a=t.angularAxis;o._hovertitle="real",a._hovertitle="imag";var i={};i[e.subplot]={_subplot:t};var n=e._module.formatLabels(M,e,i);r.realLabel=n.realLabel,r.imagLabel=n.imagLabel;var s=M.hi||e.hoverinfo,c=[];function h(p,T){c.push(p._hovertitle+": "+T)}if(!e.hovertemplate){var v=s.split("+");v.indexOf("all")!==-1&&(v=["real","imag","text"]),v.indexOf("real")!==-1&&h(o,r.realLabel),v.indexOf("imag")!==-1&&h(a,r.imagLabel),v.indexOf("text")!==-1&&r.text&&(c.push(r.text),delete r.text),r.extraText=c.join("<br>")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),PG=Ye({"src/traces/scattersmith/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scattersmith",basePlotModule:SG(),categories:["smith","symbols","showLegend","scatter-like"],attributes:uC(),supplyDefaults:MG(),colorbar:cp(),formatLabels:EG(),calc:kG(),plot:CG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:LG().hoverPoints,selectPoints:u1(),meta:{}}}}),IG=Ye({"lib/scattersmith.js"(X,H){"use strict";H.exports=PG()}}),Tp=Ye({"node_modules/world-calendars/dist/main.js"(X,H){var g=Wf();function x(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}g(x.prototype,{instance:function(o,a){o=(o||"gregorian").toLowerCase(),a=a||"";var i=this._localCals[o+"-"+a];if(!i&&this.calendars[o]&&(i=new this.calendars[o](a),this._localCals[o+"-"+a]=i),!i)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,o);return i},newDate:function(o,a,i,n,s){return n=(o!=null&&o.year?o.calendar():typeof n=="string"?this.instance(n,s):n)||this.instance(),n.newDate(o,a,i)},substituteDigits:function(o){return function(a){return(a+"").replace(/[0-9]/g,function(i){return o[i]})}},substituteChineseDigits:function(o,a){return function(i){for(var n="",s=0;i>0;){var c=i%10;n=(c===0?"":o[c]+a[s])+n,s++,i=Math.floor(i/10)}return n.indexOf(o[1]+a[1])===0&&(n=n.substr(1)),n||o[0]}}});function A(o,a,i,n){if(this._calendar=o,this._year=a,this._month=i,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function M(o,a){return o=""+o,"000000".substring(0,a-o.length)+o}g(A.prototype,{newDate:function(o,a,i){return this._calendar.newDate(o??this,a,i)},year:function(o){return arguments.length===0?this._year:this.set(o,"y")},month:function(o){return arguments.length===0?this._month:this.set(o,"m")},day:function(o){return arguments.length===0?this._day:this.set(o,"d")},date:function(o,a,i){if(!this._calendar.isValid(o,a,i))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=o,this._month=a,this._day=i,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(o,a){return this._calendar.add(this,o,a)},set:function(o,a){return this._calendar.set(this,o,a)},compareTo:function(o){if(this._calendar.name!==o._calendar.name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,o._calendar.local.name);var a=this._year!==o._year?this._year-o._year:this._month!==o._month?this.monthOfYear()-o.monthOfYear():this._day-o._day;return a===0?0:a<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(o){return this._calendar.fromJD(o)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(o){return this._calendar.fromJSDate(o)},toString:function(){return(this.year()<0?"-":"")+M(Math.abs(this.year()),4)+"-"+M(this.month(),2)+"-"+M(this.day(),2)}});function e(){this.shortYearCutoff="+10"}g(e.prototype,{_validateLevel:0,newDate:function(o,a,i){return o==null?this.today():(o.year&&(this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),i=o.day(),a=o.month(),o=o.year()),new A(this,o,a,i))},today:function(){return this.fromJSDate(new Date)},epoch:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return a.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return(a.year()<0?"-":"")+M(Math.abs(a.year()),4)},monthsInYear:function(o){return this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),12},monthOfYear:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return(i.month()+this.monthsInYear(i)-this.firstMonth)%this.monthsInYear(i)+this.minMonth},fromMonthOfYear:function(o,a){var i=(a+this.firstMonth-2*this.minMonth)%this.monthsInYear(o)+this.minMonth;return this._validate(o,i,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth),i},daysInYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return this.leapYear(a)?366:365},dayOfYear:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(o,a,i){return this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),{}},add:function(o,a,i){return this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate),this._correctAdd(o,this._add(o,a,i),a,i)},_add:function(o,a,i){if(this._validateLevel++,i==="d"||i==="w"){var n=o.toJD()+a*(i==="w"?this.daysInWeek():1),s=o.calendar().fromJD(n);return this._validateLevel--,[s.year(),s.month(),s.day()]}try{var c=o.year()+(i==="y"?a:0),h=o.monthOfYear()+(i==="m"?a:0),s=o.day(),v=function(l){for(;h<l.minMonth;)c--,h+=l.monthsInYear(c);for(var _=l.monthsInYear(c);h>_-1+l.minMonth;)c++,h-=_,_=l.monthsInYear(c)};i==="y"?(o.month()!==this.fromMonthOfYear(c,h)&&(h=this.newDate(c,o.month(),this.minDay).monthOfYear()),h=Math.min(h,this.monthsInYear(c)),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h)))):i==="m"&&(v(this),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h))));var p=[c,this.fromMonthOfYear(c,h),s];return this._validateLevel--,p}catch(T){throw this._validateLevel--,T}},_correctAdd:function(o,a,i,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(a[0]===0||o.year()>0!=a[0]>0)){var s={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],c=i<0?-1:1;a=this._add(o,i*s[0]+c*s[1],s[2])}return o.date(a[0],a[1],a[2])},set:function(o,a,i){this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate);var n=i==="y"?a:o.year(),s=i==="m"?a:o.month(),c=i==="d"?a:o.day();return(i==="y"||i==="m")&&(c=Math.min(c,this.daysInMonth(n,s))),o.date(n,s,c)},isValid:function(o,a,i){this._validateLevel++;var n=this.hasYearZero||o!==0;if(n){var s=this.newDate(o,a,this.minDay);n=a>=this.minMonth&&a-this.minMonth<this.monthsInYear(s)&&i>=this.minDay&&i-this.minDay<this.daysInMonth(s)}return this._validateLevel--,n},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return r.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(o){return this.fromJD(r.instance().fromJSDate(o).toJD())},_validate:function(o,a,i,n){if(o.year){if(this._validateLevel===0&&this.name!==o.calendar().name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this.local.name).replace(/\{1\}/,o.calendar().local.name);return o}try{if(this._validateLevel++,this._validateLevel===1&&!this.isValid(o,a,i))throw n.replace(/\{0\}/,this.local.name);var s=this.newDate(o,a,i);return this._validateLevel--,s}catch(c){throw this._validateLevel--,c}}});function t(o){this.local=this.regionalOptions[o]||this.regionalOptions[""]}t.prototype=new e,g(t.prototype,{name:"Gregorian",jdEpoch:17214255e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Gregorian",epochs:["BCE","CE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(i){var a=this._validate(i,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),i=a.year()+(a.year()<0?1:0);return i%4===0&&(i%100!==0||i%400===0)},weekOfYear:function(o,a,i){var n=this.newDate(o,a,i);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return this.daysPerMonth[i.month()-1]+(i.month()===2&&this.leapYear(i.year())?1:0)},weekDay:function(o,a,i){return(this.dayOfWeek(o,a,i)||7)<6},toJD:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);o=n.year(),a=n.month(),i=n.day(),o<0&&o++,a<3&&(a+=12,o--);var s=Math.floor(o/100),c=2-s+Math.floor(s/4);return Math.floor(365.25*(o+4716))+Math.floor(30.6001*(a+1))+i+c-1524.5},fromJD:function(o){var a=Math.floor(o+.5),i=Math.floor((a-186721625e-2)/36524.25);i=a+1+i-Math.floor(i/4);var n=i+1524,s=Math.floor((n-122.1)/365.25),c=Math.floor(365.25*s),h=Math.floor((n-c)/30.6001),v=n-c-Math.floor(h*30.6001),p=h-(h>13.5?13:1),T=s-(p>2.5?4716:4715);return T<=0&&T--,this.newDate(T,p,v)},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),s=new Date(n.year(),n.month()-1,n.day());return s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0),s.setHours(s.getHours()>12?s.getHours()+2:0),s},fromJSDate:function(o){return this.newDate(o.getFullYear(),o.getMonth()+1,o.getDate())}});var r=H.exports=new x;r.cdate=A,r.baseCalendar=e,r.calendars.gregorian=t}}),RG=Ye({"node_modules/world-calendars/dist/plus.js"(){var X=Wf(),H=Tp();X(H.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"}),H.local=H.regionalOptions[""],X(H.cdate.prototype,{formatDate:function(g,x){return typeof g!="string"&&(x=g,g=""),this._calendar.formatDate(g||"",this,x)}}),X(H.baseCalendar.prototype,{UNIX_EPOCH:H.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:H.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(g,x,A){if(typeof g!="string"&&(A=x,x=g,g=""),!x)return"";if(x.calendar()!==this)throw H.local.invalidFormat||H.regionalOptions[""].invalidFormat;g=g||this.local.dateFormat,A=A||{};for(var M=A.dayNamesShort||this.local.dayNamesShort,e=A.dayNames||this.local.dayNames,t=A.monthNumbers||this.local.monthNumbers,r=A.monthNamesShort||this.local.monthNamesShort,o=A.monthNames||this.local.monthNames,a=A.calculateWeek||this.local.calculateWeek,i=function(S,E){for(var m=1;w+m<g.length&&g.charAt(w+m)===S;)m++;return w+=m-1,Math.floor(m/(E||1))>1},n=function(S,E,m,b){var d=""+E;if(i(S,b))for(;d.length<m;)d="0"+d;return d},s=function(S,E,m,b){return i(S)?b[E]:m[E]},c=this,h=function(S){return typeof t=="function"?t.call(c,S,i("m")):T(n("m",S.month(),2))},v=function(S,E){return E?typeof o=="function"?o.call(c,S):o[S.month()-c.minMonth]:typeof r=="function"?r.call(c,S):r[S.month()-c.minMonth]},p=this.local.digits,T=function(S){return A.localNumbers&&p?p(S):S},l="",_=!1,w=0;w<g.length;w++)if(_)g.charAt(w)==="'"&&!i("'")?_=!1:l+=g.charAt(w);else switch(g.charAt(w)){case"d":l+=T(n("d",x.day(),2));break;case"D":l+=s("D",x.dayOfWeek(),M,e);break;case"o":l+=n("o",x.dayOfYear(),3);break;case"w":l+=n("w",x.weekOfYear(),2);break;case"m":l+=h(x);break;case"M":l+=v(x,i("M"));break;case"y":l+=i("y",2)?x.year():(x.year()%100<10?"0":"")+x.year()%100;break;case"Y":i("Y",2),l+=x.formatYear();break;case"J":l+=x.toJD();break;case"@":l+=(x.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case"!":l+=(x.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case"'":i("'")?l+="'":_=!0;break;default:l+=g.charAt(w)}return l},parseDate:function(g,x,A){if(x==null)throw H.local.invalidArguments||H.regionalOptions[""].invalidArguments;if(x=typeof x=="object"?x.toString():x+"",x==="")return null;g=g||this.local.dateFormat,A=A||{};var M=A.shortYearCutoff||this.shortYearCutoff;M=typeof M!="string"?M:this.today().year()%100+parseInt(M,10);for(var e=A.dayNamesShort||this.local.dayNamesShort,t=A.dayNames||this.local.dayNames,r=A.parseMonth||this.local.parseMonth,o=A.monthNumbers||this.local.monthNumbers,a=A.monthNamesShort||this.local.monthNamesShort,i=A.monthNames||this.local.monthNames,n=-1,s=-1,c=-1,h=-1,v=-1,p=!1,T=!1,l=function(P,L){for(var z=1;u+z<g.length&&g.charAt(u+z)===P;)z++;return u+=z-1,Math.floor(z/(L||1))>1},_=function(P,L){var z=l(P,L),F=[2,3,z?4:2,z?4:2,10,11,20]["oyYJ@!".indexOf(P)+1],B=new RegExp("^-?\\d{1,"+F+"}"),O=x.substring(d).match(B);if(!O)throw(H.local.missingNumberAt||H.regionalOptions[""].missingNumberAt).replace(/\{0\}/,d);return d+=O[0].length,parseInt(O[0],10)},w=this,S=function(){if(typeof o=="function"){l("m");var P=o.call(w,x.substring(d));return d+=P.length,P}return _("m")},E=function(P,L,z,F){for(var B=l(P,F)?z:L,O=0;O<B.length;O++)if(x.substr(d,B[O].length).toLowerCase()===B[O].toLowerCase())return d+=B[O].length,O+w.minMonth;throw(H.local.unknownNameAt||H.regionalOptions[""].unknownNameAt).replace(/\{0\}/,d)},m=function(){if(typeof i=="function"){var P=l("M")?i.call(w,x.substring(d)):a.call(w,x.substring(d));return d+=P.length,P}return E("M",a,i)},b=function(){if(x.charAt(d)!==g.charAt(u))throw(H.local.unexpectedLiteralAt||H.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,d);d++},d=0,u=0;u<g.length;u++)if(T)g.charAt(u)==="'"&&!l("'")?T=!1:b();else switch(g.charAt(u)){case"d":h=_("d");break;case"D":E("D",e,t);break;case"o":v=_("o");break;case"w":_("w");break;case"m":c=S();break;case"M":c=m();break;case"y":var y=u;p=!l("y",2),u=y,s=_("y",2);break;case"Y":s=_("Y",2);break;case"J":n=_("J")+.5,x.charAt(d)==="."&&(d++,_("J"));break;case"@":n=_("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":n=_("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":d=x.length;break;case"'":l("'")?b():T=!0;break;default:b()}if(d<x.length)throw H.local.unexpectedText||H.regionalOptions[""].unexpectedText;if(s===-1?s=this.today().year():s<100&&p&&(s+=M===-1?1900:this.today().year()-this.today().year()%100-(s<=M?0:100)),typeof c=="string"&&(c=r.call(this,s,c)),v>-1){c=1,h=v;for(var f=this.daysInMonth(s,c);h>f;f=this.daysInMonth(s,c))c++,h-=f}return n>-1?this.fromJD(n):this.newDate(s,c,h)},determineDate:function(g,x,A,M,e){A&&typeof A!="object"&&(e=M,M=A,A=null),typeof M!="string"&&(e=M,M="");var t=this,r=function(o){try{return t.parseDate(M,o,e)}catch{}o=o.toLowerCase();for(var a=(o.match(/^c/)&&A?A.newDate():null)||t.today(),i=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,n=i.exec(o);n;)a.add(parseInt(n[1],10),n[2]||"d"),n=i.exec(o);return a};return x=x?x.newDate():null,g=g==null?x:typeof g=="string"?r(g):typeof g=="number"?isNaN(g)||g===1/0||g===-1/0?x:t.today().add(g,"d"):t.newDate(g),g}})}}),DG=Ye({"node_modules/world-calendars/dist/calendars/chinese.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(n){this.local=this.regionalOptions[n||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(n,s){if(typeof n=="string"){var c=n.match(M);return c?c[0]:""}var h=this._validateYear(n),v=n.month(),p=""+this.toChineseMonth(h,v);return s&&p.length<2&&(p="0"+p),this.isIntercalaryMonth(h,v)&&(p+="i"),p},monthNames:function(n){if(typeof n=="string"){var s=n.match(e);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},monthNamesShort:function(n){if(typeof n=="string"){var s=n.match(t);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},parseMonth:function(n,s){n=this._validateYear(n);var c=parseInt(s),h;if(isNaN(c))s[0]==="\u95F0"&&(h=!0,s=s.substring(1)),s[s.length-1]==="\u6708"&&(s=s.substring(0,s.length-1)),c=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(s);else{var v=s[s.length-1];h=v==="i"||v==="I"}var p=this.toMonthIndex(n,c,h);return p},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(n,s){if(n.year&&(n=n.year()),typeof n!="number"||n<1888||n>2111)throw s.replace(/\{0\}/,this.local.name);return n},toMonthIndex:function(n,s,c){var h=this.intercalaryMonth(n),v=c&&s!==h;if(v||s<1||s>12)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p;return h?!c&&s<=h?p=s-1:p=s:p=s-1,p},toChineseMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n),h=c?12:11;if(s<0||s>h)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var v;return c?s<c?v=s+1:v=s:v=s+1,v},intercalaryMonth:function(n){n=this._validateYear(n);var s=r[n-r[0]],c=s>>13;return c},isIntercalaryMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n);return!!c&&c===s},leapYear:function(n){return this.intercalaryMonth(n)!==0},weekOfYear:function(n,s,c){var h=this._validateYear(n,X.local.invalidyear),v=o[h-o[0]],p=v>>9&4095,T=v>>5&15,l=v&31,_;_=g.newDate(p,T,l),_.add(4-(_.dayOfWeek()||7),"d");var w=this.toJD(n,s,c)-_.toJD();return 1+Math.floor(w/7)},monthsInYear:function(n){return this.leapYear(n)?13:12},daysInMonth:function(n,s){n.year&&(s=n.month(),n=n.year()),n=this._validateYear(n);var c=r[n-r[0]],h=c>>13,v=h?12:11;if(s>v)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p=c&1<<12-s?30:29;return p},weekDay:function(n,s,c){return(this.dayOfWeek(n,s,c)||7)<6},toJD:function(n,s,c){var h=this._validate(n,p,c,X.local.invalidDate);n=this._validateYear(h.year()),s=h.month(),c=h.day();var v=this.isIntercalaryMonth(n,s),p=this.toChineseMonth(n,s),T=i(n,p,c,v);return g.toJD(T.year,T.month,T.day)},fromJD:function(n){var s=g.fromJD(n),c=a(s.year(),s.month(),s.day()),h=this.toMonthIndex(c.year,c.month,c.isIntercalary);return this.newDate(c.year,h,c.day)},fromString:function(n){var s=n.match(A),c=this._validateYear(+s[1]),h=+s[2],v=!!s[3],p=this.toMonthIndex(c,h,v),T=+s[4];return this.newDate(c,p,T)},add:function(n,s,c){var h=n.year(),v=n.month(),p=this.isIntercalaryMonth(h,v),T=this.toChineseMonth(h,v),l=Object.getPrototypeOf(x.prototype).add.call(this,n,s,c);if(c==="y"){var _=l.year(),w=l.month(),S=this.isIntercalaryMonth(_,T),E=p&&S?this.toMonthIndex(_,T,!0):this.toMonthIndex(_,T,!1);E!==w&&l.month(E)}return l}});var A=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,M=/^\d?\d[iI]?/m,e=/^闰?十?[一二三四五六七八九]?月/m,t=/^闰?十?[一二三四五六七八九]?/m;X.calendars.chinese=x;var r=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],o=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function a(n,s,c,h){var v,p;if(typeof n=="object")v=n,p=s||{};else{var T=typeof n=="number"&&n>=1888&&n<=2111;if(!T)throw new Error("Solar year outside range 1888-2111");var l=typeof s=="number"&&s>=1&&s<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var _=typeof c=="number"&&c>=1&&c<=31;if(!_)throw new Error("Solar day outside range 1 - 31");v={year:n,month:s,day:c},p=h||{}}var w=o[v.year-o[0]],S=v.year<<9|v.month<<5|v.day;p.year=S>=w?v.year:v.year-1,w=o[p.year-o[0]];var E=w>>9&4095,m=w>>5&15,b=w&31,d,u=new Date(E,m-1,b),y=new Date(v.year,v.month-1,v.day);d=Math.round((y-u)/(24*3600*1e3));var f=r[p.year-r[0]],P;for(P=0;P<13;P++){var L=f&1<<12-P?30:29;if(d<L)break;d-=L}var z=f>>13;return!z||P<z?(p.isIntercalary=!1,p.month=1+P):P===z?(p.isIntercalary=!0,p.month=P):(p.isIntercalary=!1,p.month=P),p.day=1+d,p}function i(n,s,c,h,v){var p,T;if(typeof n=="object")T=n,p=s||{};else{var l=typeof n=="number"&&n>=1888&&n<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var _=typeof s=="number"&&s>=1&&s<=12;if(!_)throw new Error("Lunar month outside range 1 - 12");var w=typeof c=="number"&&c>=1&&c<=30;if(!w)throw new Error("Lunar day outside range 1 - 30");var S;typeof h=="object"?(S=!1,p=h):(S=!!h,p=v||{}),T={year:n,month:s,day:c,isIntercalary:S}}var E;E=T.day-1;var m=r[T.year-r[0]],b=m>>13,d;b&&(T.month>b||T.isIntercalary)?d=T.month:d=T.month-1;for(var u=0;u<d;u++){var y=m&1<<12-u?30:29;E+=y}var f=o[T.year-o[0]],P=f>>9&4095,L=f>>5&15,z=f&31,F=new Date(P,L-1,z+E);return p.year=F.getFullYear(),p.month=1+F.getMonth(),p.day=F.getDate(),p}}}),zG=Ye({"node_modules/world-calendars/dist/calendars/coptic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.coptic=g}}),FG=Ye({"node_modules/world-calendars/dist/calendars/discworld.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),!1},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),13},daysInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),400},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/8)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return(t.day()+1)%8},weekDay:function(A,M,e){var t=this.dayOfWeek(A,M,e);return t>=2&&t<=6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{century:x[Math.floor((t.year()-1)/100)+1]||""}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return A=t.year()+(t.year()<0?1:0),M=t.month(),e=t.day(),e+(M>1?16:0)+(M>2?(M-2)*32:0)+(A-1)*400+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A+.5)-Math.floor(this.jdEpoch)-1;var M=Math.floor(A/400)+1;A-=(M-1)*400,A+=A>15?16:0;var e=Math.floor(A/32)+1,t=A-(e-1)*32+1;return this.newDate(M<=0?M-1:M,e,t)}});var x={20:"Fruitbat",21:"Anchovy"};X.calendars.discworld=g}}),OG=Ye({"node_modules/world-calendars/dist/calendars/ethiopian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.ethiopian=g}}),BG=Ye({"node_modules/world-calendars/dist/calendars/hebrew.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this._leapYear(M.year())},_leapYear:function(A){return A=A<0?A+1:A,x(A*7+1,19)<7},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),this._leapYear(A.year?A.year():A)?13:12},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return A=M.year(),this.toJD(A===-1?1:A+1,7,1)-this.toJD(A,7,1)},daysInMonth:function(A,M){return A.year&&(M=A.month(),A=A.year()),this._validate(A,M,this.minDay,X.local.invalidMonth),M===12&&this.leapYear(A)||M===8&&x(this.daysInYear(A),10)===5?30:M===9&&x(this.daysInYear(A),10)===3?29:this.daysPerMonth[M-1]},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{yearType:(this.leapYear(t)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(t)%10-3]}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A<=0?A+1:A,o=this.jdEpoch+this._delay1(r)+this._delay2(r)+e+1;if(M<7){for(var a=7;a<=this.monthsInYear(A);a++)o+=this.daysInMonth(A,a);for(var a=1;a<M;a++)o+=this.daysInMonth(A,a)}else for(var a=7;a<M;a++)o+=this.daysInMonth(A,a);return o},_delay1:function(A){var M=Math.floor((235*A-234)/19),e=12084+13753*M,t=M*29+Math.floor(e/25920);return x(3*(t+1),7)<3&&t++,t},_delay2:function(A){var M=this._delay1(A-1),e=this._delay1(A),t=this._delay1(A+1);return t-e===356?2:e-M===382?1:0},fromJD:function(A){A=Math.floor(A)+.5;for(var M=Math.floor((A-this.jdEpoch)*98496/35975351)-1;A>=this.toJD(M===-1?1:M+1,7,1);)M++;for(var e=A<this.toJD(M,1,1)?7:1;A>this.toJD(M,e,this.daysInMonth(M,e));)e++;var t=A-this.toJD(M,e,1)+1;return this.newDate(M,e,t)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.hebrew=g}}),NG=Ye({"node_modules/world-calendars/dist/calendars/islamic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);return(A.year()*11+14)%30<11},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){return this.leapYear(x)?355:354},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===12&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==5},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x=x<=0?x+1:x,M+Math.ceil(29.5*(A-1))+(x-1)*354+Math.floor((3+11*x)/30)+this.jdEpoch-1},fromJD:function(x){x=Math.floor(x)+.5;var A=Math.floor((30*(x-this.jdEpoch)+10646)/10631);A=A<=0?A-1:A;var M=Math.min(12,Math.ceil((x-29-this.toJD(A,1,1))/29.5)+1),e=x-this.toJD(A,M,1)+1;return this.newDate(A,M,e)}}),X.calendars.islamic=g}}),UG=Ye({"node_modules/world-calendars/dist/calendars/julian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()<0?A.year()+1:A.year();return M%4===0},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(4-(e.dayOfWeek()||7),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===2&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x<0&&x++,A<=2&&(x--,A+=12),Math.floor(365.25*(x+4716))+Math.floor(30.6001*(A+1))+M-1524.5},fromJD:function(x){var A=Math.floor(x+.5),M=A+1524,e=Math.floor((M-122.1)/365.25),t=Math.floor(365.25*e),r=Math.floor((M-t)/30.6001),o=r-Math.floor(r<14?1:13),a=e-Math.floor(o>2?4716:4715),i=M-t-Math.floor(30.6001*r);return a<=0&&a--,this.newDate(a,o,i)}}),X.calendars.julian=g}}),jG=Ye({"node_modules/world-calendars/dist/calendars/mayan.js"(){var X=Tp(),H=Wf();function g(M){this.local=this.regionalOptions[M||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),!1},formatYear:function(M){var e=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear);M=e.year();var t=Math.floor(M/400);M=M%400,M+=M<0?400:0;var r=Math.floor(M/20);return t+"."+r+"."+M%20},forYear:function(M){if(M=M.split("."),M.length<3)throw"Invalid Mayan year";for(var e=0,t=0;t<M.length;t++){var r=parseInt(M[t],10);if(Math.abs(r)>19||t>0&&r<0)throw"Invalid Mayan year";e=e*20+r}return e},monthsInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),18},weekOfYear:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),0},daysInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),360},daysInMonth:function(M,e){return this._validate(M,e,this.minDay,X.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()},weekDay:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),!0},extraInfo:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate),o=r.toJD(),a=this._toHaab(o),i=this._toTzolkin(o);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[i[0]-1],tzolkinDay:i[0],tzolkinTrecena:i[1]}},_toHaab:function(M){M-=this.jdEpoch;var e=x(M+8+17*20,365);return[Math.floor(e/20)+1,x(e,20)]},_toTzolkin:function(M){return M-=this.jdEpoch,[A(M+20,20),A(M+4,13)]},toJD:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()+r.month()*20+r.year()*360+this.jdEpoch},fromJD:function(M){M=Math.floor(M)+.5-this.jdEpoch;var e=Math.floor(M/360);M=M%360,M+=M<0?360:0;var t=Math.floor(M/20),r=M%20;return this.newDate(e,t,r)}});function x(M,e){return M-e*Math.floor(M/e)}function A(M,e){return x(M-1,e)+1}X.calendars.mayan=g}}),VG=Ye({"node_modules/world-calendars/dist/calendars/nanakshahi.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar;var x=X.instance("gregorian");H(g.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear);return x.leapYear(M.year()+(M.year()<1?1:0)+1469)},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(1-(t.dayOfWeek()||7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidMonth),r=t.year();r<0&&r++;for(var o=t.day(),a=1;a<t.month();a++)o+=this.daysPerMonth[a-1];return o+x.toJD(r+1468,3,13)},fromJD:function(A){A=Math.floor(A+.5);for(var M=Math.floor((A-(this.jdEpoch-1))/366);A>=this.toJD(M+1,1,1);)M++;for(var e=A-Math.floor(this.toJD(M,1,1)+.5)+1,t=1;e>this.daysInMonth(M,t);)e-=this.daysInMonth(M,t),t++;return this.newDate(M,t,e)}}),X.calendars.nanakshahi=g}}),qG=Ye({"node_modules/world-calendars/dist/calendars/nepali.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(x){return this.daysInYear(x)!==this.daysPerYear},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);if(x=A.year(),typeof this.NEPALI_CALENDAR_DATA[x]>"u")return this.daysPerYear;for(var M=0,e=this.minMonth;e<=12;e++)M+=this.NEPALI_CALENDAR_DATA[x][e];return M},daysInMonth:function(x,A){return x.year&&(A=x.month(),x=x.year()),this._validate(x,A,this.minDay,X.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[x]>"u"?this.daysPerMonth[A-1]:this.NEPALI_CALENDAR_DATA[x][A]},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);x=e.year(),A=e.month(),M=e.day();var t=X.instance(),r=0,o=A,a=x;this._createMissingCalendarData(x);var i=x-(o>9||o===9&&M>=this.NEPALI_CALENDAR_DATA[a][0]?56:57);for(A!==9&&(r=M,o--);o!==9;)o<=0&&(o=12,a--),r+=this.NEPALI_CALENDAR_DATA[a][o],o--;return A===9?(r+=M-this.NEPALI_CALENDAR_DATA[a][0],r<0&&(r+=t.daysInYear(i))):r+=this.NEPALI_CALENDAR_DATA[a][9]-this.NEPALI_CALENDAR_DATA[a][0],t.newDate(i,1,1).add(r,"d").toJD()},fromJD:function(x){var A=X.instance(),M=A.fromJD(x),e=M.year(),t=M.dayOfYear(),r=e+56;this._createMissingCalendarData(r);for(var o=9,a=this.NEPALI_CALENDAR_DATA[r][0],i=this.NEPALI_CALENDAR_DATA[r][o]-a+1;t>i;)o++,o>12&&(o=1,r++),i+=this.NEPALI_CALENDAR_DATA[r][o];var n=this.NEPALI_CALENDAR_DATA[r][o]-(i-t);return this.newDate(r,o,n)},_createMissingCalendarData:function(x){var A=this.daysPerMonth.slice(0);A.unshift(17);for(var M=x-1;M<x+2;M++)typeof this.NEPALI_CALENDAR_DATA[M]>"u"&&(this.NEPALI_CALENDAR_DATA[M]=A)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),X.calendars.nepali=g}}),HG=Ye({"node_modules/world-calendars/dist/calendars/persian.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Ch\xE6harshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Ch\xE6","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return((M.year()-(M.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-((t.dayOfWeek()+1)%7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A-(A>=0?474:473),o=474+x(r,2820);return e+(M<=7?(M-1)*31:(M-1)*30+6)+Math.floor((o*682-110)/2816)+(o-1)*365+Math.floor(r/2820)*1029983+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A)+.5;var M=A-this.toJD(475,1,1),e=Math.floor(M/1029983),t=x(M,1029983),r=2820;if(t!==1029982){var o=Math.floor(t/366),a=x(t,366);r=Math.floor((2134*o+2816*a+2815)/1028522)+o+1}var i=r+2820*e+474;i=i<=0?i-1:i;var n=A-this.toJD(i,1,1)+1,s=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),c=A-this.toJD(i,s,1)+1;return this.newDate(i,s,c)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.persian=g,X.calendars.jalali=g}}),GG=Ye({"node_modules/world-calendars/dist/calendars/taiwan.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)},_g2tYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)}}),X.calendars.taiwan=x}}),WG=Ye({"node_modules/world-calendars/dist/calendars/thai.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)},_g2tYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)}}),X.calendars.thai=x}}),ZG=Ye({"node_modules/world-calendars/dist/calendars/ummalqura.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this.daysInYear(M.year())===355},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){for(var M=0,e=1;e<=12;e++)M+=this.daysInMonth(A,e);return M},daysInMonth:function(A,M){for(var e=this._validate(A,M,this.minDay,X.local.invalidMonth),t=e.toJD()-24e5+.5,r=0,o=0;o<x.length;o++){if(x[o]>t)return x[r]-x[r-1];r++}return 30},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate),r=12*(t.year()-1)+t.month()-15292,o=t.day()+x[r-1]-1;return o+24e5-.5},fromJD:function(A){for(var M=A-24e5+.5,e=0,t=0;t<x.length&&!(x[t]>M);t++)e++;var r=e+15292,o=Math.floor((r-1)/12),a=o+1,i=r-12*o,n=M-x[e-1]+1;return this.newDate(a,i,n)},isValid:function(A,M,e){var t=X.baseCalendar.prototype.isValid.apply(this,arguments);return t&&(A=A.year!=null?A.year:A,t=A>=1276&&A<=1500),t},_validate:function(A,M,e,t){var r=X.baseCalendar.prototype._validate.apply(this,arguments);if(r.year<1276||r.year>1500)throw t.replace(/\{0\}/,this.local.name);return r}}),X.calendars.ummalqura=g;var x=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]}}),XG=Ye({"src/components/calendars/calendars.js"(X,H){"use strict";H.exports=Tp(),RG(),DG(),zG(),FG(),OG(),BG(),NG(),UG(),jG(),VG(),qG(),HG(),GG(),WG(),ZG()}}),YG=Ye({"src/components/calendars/index.js"(X,H){"use strict";var g=XG(),x=ta(),A=ks(),M=A.EPOCHJD,e=A.ONEDAY,t={valType:"enumerated",values:x.sortObjectKeys(g.calendars),editType:"calc",dflt:"gregorian"},r=function(m,b,d,u){var y={};return y[d]=t,x.coerce(m,b,y,d,u)},o=function(m,b,d,u){for(var y=0;y<d.length;y++)r(m,b,d[y]+"calendar",u.calendar)},a={chinese:"2000-01-01",coptic:"2000-01-01",discworld:"2000-01-01",ethiopian:"2000-01-01",hebrew:"5000-01-01",islamic:"1000-01-01",julian:"2000-01-01",mayan:"5000-01-01",nanakshahi:"1000-01-01",nepali:"2000-01-01",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-01",thai:"2000-01-01",ummalqura:"1400-01-01"},i={chinese:"2000-01-02",coptic:"2000-01-03",discworld:"2000-01-03",ethiopian:"2000-01-05",hebrew:"5000-01-01",islamic:"1000-01-02",julian:"2000-01-03",mayan:"5000-01-01",nanakshahi:"1000-01-05",nepali:"2000-01-05",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-04",thai:"2000-01-04",ummalqura:"1400-01-06"},n={chinese:["2000-01-01","2001-01-01"],coptic:["1700-01-01","1701-01-01"],discworld:["1800-01-01","1801-01-01"],ethiopian:["2000-01-01","2001-01-01"],hebrew:["5700-01-01","5701-01-01"],islamic:["1400-01-01","1401-01-01"],julian:["2000-01-01","2001-01-01"],mayan:["5200-01-01","5201-01-01"],nanakshahi:["0500-01-01","0501-01-01"],nepali:["2000-01-01","2001-01-01"],persian:["1400-01-01","1401-01-01"],jalali:["1400-01-01","1401-01-01"],taiwan:["0100-01-01","0101-01-01"],thai:["2500-01-01","2501-01-01"],ummalqura:["1400-01-01","1401-01-01"]},s="##",c={d:{0:"dd","-":"d"},e:{0:"d","-":"d"},a:{0:"D","-":"D"},A:{0:"DD","-":"DD"},j:{0:"oo","-":"o"},W:{0:"ww","-":"w"},m:{0:"mm","-":"m"},b:{0:"M","-":"M"},B:{0:"MM","-":"MM"},y:{0:"yy","-":"yy"},Y:{0:"yyyy","-":"yyyy"},U:s,w:s,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};function h(m,b,d){for(var u=Math.floor((b+.05)/e)+M,y=p(d).fromJD(u),f=0,P,L,z,F,B;(f=m.indexOf("%",f))!==-1;)P=m.charAt(f+1),P==="0"||P==="-"||P==="_"?(z=3,L=m.charAt(f+2),P==="_"&&(P="-")):(L=P,P="0",z=2),F=c[L],F?(F===s?B=s:B=y.formatDate(F[P]),m=m.substr(0,f)+B+m.substr(f+z),f+=B.length):f+=z;return m}var v={};function p(m){var b=v[m];return b||(b=v[m]=g.instance(m),b)}function T(m){return x.extendFlat({},t,{description:m})}function l(m){return"Sets the calendar system to use with `"+m+"` date data."}var _={xcalendar:T(l("x"))},w=x.extendFlat({},_,{ycalendar:T(l("y"))}),S=x.extendFlat({},w,{zcalendar:T(l("z"))}),E=T(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));H.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:w,bar:w,box:w,heatmap:w,contour:w,histogram:w,histogram2d:w,histogram2dcontour:w,scatter3d:S,surface:S,mesh3d:S,scattergl:w,ohlc:_,candlestick:_},layout:{calendar:T(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:E},yaxis:{calendar:E},scene:{xaxis:{calendar:E},yaxis:{calendar:E},zaxis:{calendar:E}},polar:{radialaxis:{calendar:E}}}},layoutAttributes:t,handleDefaults:r,handleTraceDefaults:o,CANONICAL_SUNDAY:i,CANONICAL_TICK:a,DFLTRANGE:n,getCal:p,worldCalFmt:h}}}),KG=Ye({"lib/calendars.js"(X,H){"use strict";H.exports=YG()}}),JG=Ye({"lib/index.js"(X,H){var g=qB();g.register([ZB(),KB(),e7(),n7(),u7(),p7(),m7(),E7(),F7(),Z7(),a4(),c9(),m9(),rN(),fN(),_N(),MN(),qN(),ZN(),YN(),QN(),iU(),uU(),pU(),kU(),PU(),hV(),EV(),UV(),WV(),rq(),oq(),dq(),Eq(),Pq(),Nq(),eH(),oH(),pH(),FH(),HH(),YH(),eG(),iG(),uG(),gG(),TG(),IG(),KG()]),H.exports=g}});return JG()})();return window.Plotly=le,le})});var GW=typeof global=="object"&&global&&global.Object===Object&&global,yb=GW;var WW=typeof self=="object"&&self&&self.Object===Object&&self,ZW=yb||WW||Function("return this")(),Kl=ZW;var XW=Kl.Symbol,yf=XW;var VC=Object.prototype,YW=VC.hasOwnProperty,KW=VC.toString,t_=yf?yf.toStringTag:void 0;function JW(le){var me=YW.call(le,t_),Xe=le[t_];try{le[t_]=void 0;var Mt=!0}catch{}var rr=KW.call(le);return Mt&&(me?le[t_]=Xe:delete le[t_]),rr}var qC=JW;var $W=Object.prototype,QW=$W.toString;function eZ(le){return QW.call(le)}var HC=eZ;var tZ="[object Null]",rZ="[object Undefined]",GC=yf?yf.toStringTag:void 0;function aZ(le){return le==null?le===void 0?rZ:tZ:GC&&GC in Object(le)?qC(le):HC(le)}var ac=aZ;function iZ(le){return le!=null&&typeof le=="object"}var ul=iZ;var nZ="[object Symbol]";function oZ(le){return typeof le=="symbol"||ul(le)&&ac(le)==nZ}var _f=oZ;var sZ=NaN;function lZ(le){return typeof le=="number"?le:_f(le)?sZ:+le}var bA=lZ;function uZ(le,me){for(var Xe=-1,Mt=le==null?0:le.length,rr=Array(Mt);++Xe<Mt;)rr[Xe]=me(le[Xe],Xe,le);return rr}var nl=uZ;var cZ=Array.isArray,mo=cZ;var fZ=1/0,WC=yf?yf.prototype:void 0,ZC=WC?WC.toString:void 0;function XC(le){if(typeof le=="string")return le;if(mo(le))return nl(le,XC)+"";if(_f(le))return ZC?ZC.call(le):"";var me=le+"";return me=="0"&&1/le==-fZ?"-0":me}var Vf=XC;function hZ(le,me){return function(Xe,Mt){var rr;if(Xe===void 0&&Mt===void 0)return me;if(Xe!==void 0&&(rr=Xe),Mt!==void 0){if(rr===void 0)return Mt;typeof Xe=="string"||typeof Mt=="string"?(Xe=Vf(Xe),Mt=Vf(Mt)):(Xe=bA(Xe),Mt=bA(Mt)),rr=le(Xe,Mt)}return rr}}var bm=hZ;var pZ=bm(function(le,me){return le+me},0),YC=pZ;var dZ=/\s/;function vZ(le){for(var me=le.length;me--&&dZ.test(le.charAt(me)););return me}var _b=vZ;var mZ=/^\s+/;function gZ(le){return le&&le.slice(0,_b(le)+1).replace(mZ,"")}var xb=gZ;function yZ(le){var me=typeof le;return le!=null&&(me=="object"||me=="function")}var ll=yZ;var KC=NaN,_Z=/^[-+]0x[0-9a-f]+$/i,xZ=/^0b[01]+$/i,bZ=/^0o[0-7]+$/i,wZ=parseInt;function TZ(le){if(typeof le=="number")return le;if(_f(le))return KC;if(ll(le)){var me=typeof le.valueOf=="function"?le.valueOf():le;le=ll(me)?me+"":me}if(typeof le!="string")return le===0?le:+le;le=xb(le);var Xe=xZ.test(le);return Xe||bZ.test(le)?wZ(le.slice(2),Xe?2:8):_Z.test(le)?KC:+le}var mh=TZ;var JC=1/0,AZ=17976931348623157e292;function SZ(le){if(!le)return le===0?le:0;if(le=mh(le),le===JC||le===-JC){var me=le<0?-1:1;return me*AZ}return le===le?le:0}var sd=SZ;function MZ(le){var me=sd(le),Xe=me%1;return me===me?Xe?me-Xe:me:0}var Eo=MZ;var EZ="Expected a function";function kZ(le,me){if(typeof me!="function")throw new TypeError(EZ);return le=Eo(le),function(){if(--le<1)return me.apply(this,arguments)}}var $C=kZ;function CZ(le){return le}var ic=CZ;var LZ="[object AsyncFunction]",PZ="[object Function]",IZ="[object GeneratorFunction]",RZ="[object Proxy]";function DZ(le){if(!ll(le))return!1;var me=ac(le);return me==PZ||me==IZ||me==LZ||me==RZ}var tp=DZ;var zZ=Kl["__core-js_shared__"],W0=zZ;var QC=function(){var le=/[^.]+$/.exec(W0&&W0.keys&&W0.keys.IE_PROTO||"");return le?"Symbol(src)_1."+le:""}();function FZ(le){return!!QC&&QC in le}var eL=FZ;var OZ=Function.prototype,BZ=OZ.toString;function NZ(le){if(le!=null){try{return BZ.call(le)}catch{}try{return le+""}catch{}}return""}var jv=NZ;var UZ=/[\\^$.*+?()[\]{}|]/g,jZ=/^\[object .+?Constructor\]$/,VZ=Function.prototype,qZ=Object.prototype,HZ=VZ.toString,GZ=qZ.hasOwnProperty,WZ=RegExp("^"+HZ.call(GZ).replace(UZ,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ZZ(le){if(!ll(le)||eL(le))return!1;var me=tp(le)?WZ:jZ;return me.test(jv(le))}var bb=ZZ;function XZ(le,me){return le?.[me]}var tL=XZ;function YZ(le,me){var Xe=tL(le,me);return bb(Xe)?Xe:void 0}var ld=YZ;var KZ=ld(Kl,"WeakMap"),Ug=KZ;var JZ=Ug&&new Ug,Z0=JZ;var $Z=Z0?function(le,me){return Z0.set(le,me),le}:ic,wb=$Z;var rL=Object.create,QZ=function(){function le(){}return function(me){if(!ll(me))return{};if(rL)return rL(me);le.prototype=me;var Xe=new le;return le.prototype=void 0,Xe}}(),Td=QZ;function eX(le){return function(){var me=arguments;switch(me.length){case 0:return new le;case 1:return new le(me[0]);case 2:return new le(me[0],me[1]);case 3:return new le(me[0],me[1],me[2]);case 4:return new le(me[0],me[1],me[2],me[3]);case 5:return new le(me[0],me[1],me[2],me[3],me[4]);case 6:return new le(me[0],me[1],me[2],me[3],me[4],me[5]);case 7:return new le(me[0],me[1],me[2],me[3],me[4],me[5],me[6])}var Xe=Td(le.prototype),Mt=le.apply(Xe,me);return ll(Mt)?Mt:Xe}}var Vv=eX;var tX=1;function rX(le,me,Xe){var Mt=me&tX,rr=Vv(le);function Nr(){var xa=this&&this!==Kl&&this instanceof Nr?rr:le;return xa.apply(Mt?Xe:this,arguments)}return Nr}var aL=rX;function aX(le,me,Xe){switch(Xe.length){case 0:return le.call(me);case 1:return le.call(me,Xe[0]);case 2:return le.call(me,Xe[0],Xe[1]);case 3:return le.call(me,Xe[0],Xe[1],Xe[2])}return le.apply(me,Xe)}var sf=aX;var iX=Math.max;function nX(le,me,Xe,Mt){for(var rr=-1,Nr=le.length,xa=Xe.length,Ha=-1,Za=me.length,un=iX(Nr-xa,0),Ji=Array(Za+un),gn=!Mt;++Ha<Za;)Ji[Ha]=me[Ha];for(;++rr<xa;)(gn||rr<Nr)&&(Ji[Xe[rr]]=le[rr]);for(;un--;)Ji[Ha++]=le[rr++];return Ji}var Tb=nX;var oX=Math.max;function sX(le,me,Xe,Mt){for(var rr=-1,Nr=le.length,xa=-1,Ha=Xe.length,Za=-1,un=me.length,Ji=oX(Nr-Ha,0),gn=Array(Ji+un),wo=!Mt;++rr<Ji;)gn[rr]=le[rr];for(var ps=rr;++Za<un;)gn[ps+Za]=me[Za];for(;++xa<Ha;)(wo||rr<Nr)&&(gn[ps+Xe[xa]]=le[rr++]);return gn}var Ab=sX;function lX(le,me){for(var Xe=le.length,Mt=0;Xe--;)le[Xe]===me&&++Mt;return Mt}var iL=lX;function uX(){}var wm=uX;var cX=4294967295;function Sb(le){this.__wrapped__=le,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=cX,this.__views__=[]}Sb.prototype=Td(wm.prototype);Sb.prototype.constructor=Sb;var dl=Sb;function fX(){}var X0=fX;var hX=Z0?function(le){return Z0.get(le)}:X0,Y0=hX;var pX={},Tm=pX;var dX=Object.prototype,vX=dX.hasOwnProperty;function mX(le){for(var me=le.name+"",Xe=Tm[me],Mt=vX.call(Tm,me)?Xe.length:0;Mt--;){var rr=Xe[Mt],Nr=rr.func;if(Nr==null||Nr==le)return rr.name}return me}var K0=mX;function Mb(le,me){this.__wrapped__=le,this.__actions__=[],this.__chain__=!!me,this.__index__=0,this.__values__=void 0}Mb.prototype=Td(wm.prototype);Mb.prototype.constructor=Mb;var Ip=Mb;function gX(le,me){var Xe=-1,Mt=le.length;for(me||(me=Array(Mt));++Xe<Mt;)me[Xe]=le[Xe];return me}var Wc=gX;function yX(le){if(le instanceof dl)return le.clone();var me=new Ip(le.__wrapped__,le.__chain__);return me.__actions__=Wc(le.__actions__),me.__index__=le.__index__,me.__values__=le.__values__,me}var Eb=yX;var _X=Object.prototype,xX=_X.hasOwnProperty;function kb(le){if(ul(le)&&!mo(le)&&!(le instanceof dl)){if(le instanceof Ip)return le;if(xX.call(le,"__wrapped__"))return Eb(le)}return new Ip(le)}kb.prototype=wm.prototype;kb.prototype.constructor=kb;var ua=kb;function bX(le){var me=K0(le),Xe=ua[me];if(typeof Xe!="function"||!(me in dl.prototype))return!1;if(le===Xe)return!0;var Mt=Y0(Xe);return!!Mt&&le===Mt[0]}var r_=bX;var wX=800,TX=16,AX=Date.now;function SX(le){var me=0,Xe=0;return function(){var Mt=AX(),rr=TX-(Mt-Xe);if(Xe=Mt,rr>0){if(++me>=wX)return arguments[0]}else me=0;return le.apply(void 0,arguments)}}var Cb=SX;var MX=Cb(wb),Lb=MX;var EX=/\{\n\/\* \[wrapped with (.+)\] \*/,kX=/,? & /;function CX(le){var me=le.match(EX);return me?me[1].split(kX):[]}var nL=CX;var LX=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;function PX(le,me){var Xe=me.length;if(!Xe)return le;var Mt=Xe-1;return me[Mt]=(Xe>1?"& ":"")+me[Mt],me=me.join(Xe>2?", ":" "),le.replace(LX,`{
/* [wrapped with `+me+`] */
`)}var oL=PX;function IX(le){return function(){return le}}var J0=IX;var RX=function(){try{var le=ld(Object,"defineProperty");return le({},"",{}),le}catch{}}(),$0=RX;var DX=$0?function(le,me){return $0(le,"toString",{configurable:!0,enumerable:!1,value:J0(me),writable:!0})}:ic,sL=DX;var zX=Cb(sL),Q0=zX;function FX(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt&&me(le[Xe],Xe,le)!==!1;);return le}var zh=FX;function OX(le,me,Xe,Mt){for(var rr=le.length,Nr=Xe+(Mt?1:-1);Mt?Nr--:++Nr<rr;)if(me(le[Nr],Nr,le))return Nr;return-1}var Am=OX;function BX(le){return le!==le}var Pb=BX;function NX(le,me,Xe){for(var Mt=Xe-1,rr=le.length;++Mt<rr;)if(le[Mt]===me)return Mt;return-1}var lL=NX;function UX(le,me,Xe){return me===me?lL(le,me,Xe):Am(le,Pb,Xe)}var Ad=UX;function jX(le,me){var Xe=le==null?0:le.length;return!!Xe&&Ad(le,me,0)>-1}var Sm=jX;var VX=1,qX=2,HX=8,GX=16,WX=32,ZX=64,XX=128,YX=256,KX=512,JX=[["ary",XX],["bind",VX],["bindKey",qX],["curry",HX],["curryRight",GX],["flip",KX],["partial",WX],["partialRight",ZX],["rearg",YX]];function $X(le,me){return zh(JX,function(Xe){var Mt="_."+Xe[0];me&Xe[1]&&!Sm(le,Mt)&&le.push(Mt)}),le.sort()}var uL=$X;function QX(le,me,Xe){var Mt=me+"";return Q0(le,oL(Mt,uL(nL(Mt),Xe)))}var Ib=QX;var eY=1,tY=2,rY=4,aY=8,cL=32,fL=64;function iY(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&aY,gn=Ji?xa:void 0,wo=Ji?void 0:xa,ps=Ji?Nr:void 0,Qn=Ji?void 0:Nr;me|=Ji?cL:fL,me&=~(Ji?fL:cL),me&rY||(me&=~(eY|tY));var Ye=[le,me,rr,ps,gn,Qn,wo,Ha,Za,un],Ps=Xe.apply(void 0,Ye);return r_(le)&&Lb(Ps,Ye),Ps.placeholder=Mt,Ib(Ps,le,me)}var Rb=iY;function nY(le){var me=le;return me.placeholder}var Sd=nY;var oY=9007199254740991,sY=/^(?:0|[1-9]\d*)$/;function lY(le,me){var Xe=typeof le;return me=me??oY,!!me&&(Xe=="number"||Xe!="symbol"&&sY.test(le))&&le>-1&&le%1==0&&le<me}var rp=lY;var uY=Math.min;function cY(le,me){for(var Xe=le.length,Mt=uY(me.length,Xe),rr=Wc(le);Mt--;){var Nr=me[Mt];le[Mt]=rp(Nr,Xe)?rr[Nr]:void 0}return le}var hL=cY;var pL="__lodash_placeholder__";function fY(le,me){for(var Xe=-1,Mt=le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe];(xa===me||xa===pL)&&(le[Xe]=pL,Nr[rr++]=Xe)}return Nr}var Yp=fY;var hY=1,pY=2,dY=8,vY=16,mY=128,gY=512;function dL(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&mY,gn=me&hY,wo=me&pY,ps=me&(dY|vY),Qn=me&gY,Ye=wo?void 0:Vv(le);function Ps(){for(var Ml=arguments.length,Ul=Array(Ml),Hf=Ml;Hf--;)Ul[Hf]=arguments[Hf];if(ps)var xh=Sd(Ps),Bp=iL(Ul,xh);if(Mt&&(Ul=Tb(Ul,Mt,rr,ps)),Nr&&(Ul=Ab(Ul,Nr,xa,ps)),Ml-=Bp,ps&&Ml<un){var _n=Yp(Ul,xh);return Rb(le,me,dL,Ps.placeholder,Xe,Ul,_n,Ha,Za,un-Ml)}var $p=gn?Xe:this,Np=wo?$p[le]:le;return Ml=Ul.length,Ha?Ul=hL(Ul,Ha):Qn&&Ml>1&&Ul.reverse(),Ji&&Za<Ml&&(Ul.length=Za),this&&this!==Kl&&this instanceof Ps&&(Np=Ye||Vv(Np)),Np.apply($p,Ul)}return Ps}var ey=dL;function yY(le,me,Xe){var Mt=Vv(le);function rr(){for(var Nr=arguments.length,xa=Array(Nr),Ha=Nr,Za=Sd(rr);Ha--;)xa[Ha]=arguments[Ha];var un=Nr<3&&xa[0]!==Za&&xa[Nr-1]!==Za?[]:Yp(xa,Za);if(Nr-=un.length,Nr<Xe)return Rb(le,me,ey,rr.placeholder,void 0,xa,un,void 0,void 0,Xe-Nr);var Ji=this&&this!==Kl&&this instanceof rr?Mt:le;return sf(Ji,this,xa)}return rr}var vL=yY;var _Y=1;function xY(le,me,Xe,Mt){var rr=me&_Y,Nr=Vv(le);function xa(){for(var Ha=-1,Za=arguments.length,un=-1,Ji=Mt.length,gn=Array(Ji+Za),wo=this&&this!==Kl&&this instanceof xa?Nr:le;++un<Ji;)gn[un]=Mt[un];for(;Za--;)gn[un++]=arguments[++Ha];return sf(wo,rr?Xe:this,gn)}return xa}var mL=xY;var gL="__lodash_placeholder__",wA=1,bY=2,wY=4,yL=8,a_=128,_L=256,TY=Math.min;function AY(le,me){var Xe=le[1],Mt=me[1],rr=Xe|Mt,Nr=rr<(wA|bY|a_),xa=Mt==a_&&Xe==yL||Mt==a_&&Xe==_L&&le[7].length<=me[8]||Mt==(a_|_L)&&me[7].length<=me[8]&&Xe==yL;if(!(Nr||xa))return le;Mt&wA&&(le[2]=me[2],rr|=Xe&wA?0:wY);var Ha=me[3];if(Ha){var Za=le[3];le[3]=Za?Tb(Za,Ha,me[4]):Ha,le[4]=Za?Yp(le[3],gL):me[4]}return Ha=me[5],Ha&&(Za=le[5],le[5]=Za?Ab(Za,Ha,me[6]):Ha,le[6]=Za?Yp(le[5],gL):me[6]),Ha=me[7],Ha&&(le[7]=Ha),Mt&a_&&(le[8]=le[8]==null?me[8]:TY(le[8],me[8])),le[9]==null&&(le[9]=me[9]),le[0]=me[0],le[1]=rr,le}var xL=AY;var SY="Expected a function",bL=1,MY=2,TA=8,AA=16,SA=32,wL=64,TL=Math.max;function EY(le,me,Xe,Mt,rr,Nr,xa,Ha){var Za=me&MY;if(!Za&&typeof le!="function")throw new TypeError(SY);var un=Mt?Mt.length:0;if(un||(me&=~(SA|wL),Mt=rr=void 0),xa=xa===void 0?xa:TL(Eo(xa),0),Ha=Ha===void 0?Ha:Eo(Ha),un-=rr?rr.length:0,me&wL){var Ji=Mt,gn=rr;Mt=rr=void 0}var wo=Za?void 0:Y0(le),ps=[le,me,Xe,Mt,rr,Ji,gn,Nr,xa,Ha];if(wo&&xL(ps,wo),le=ps[0],me=ps[1],Xe=ps[2],Mt=ps[3],rr=ps[4],Ha=ps[9]=ps[9]===void 0?Za?0:le.length:TL(ps[9]-un,0),!Ha&&me&(TA|AA)&&(me&=~(TA|AA)),!me||me==bL)var Qn=aL(le,me,Xe);else me==TA||me==AA?Qn=vL(le,me,Ha):(me==SA||me==(bL|SA))&&!rr.length?Qn=mL(le,me,Xe,Mt):Qn=ey.apply(void 0,ps);var Ye=wo?wb:Lb;return Ib(Ye(Qn,ps),le,me)}var ap=EY;var kY=128;function CY(le,me,Xe){return me=Xe?void 0:me,me=le&&me==null?le.length:me,ap(le,kY,void 0,void 0,void 0,void 0,me)}var Db=CY;function LY(le,me,Xe){me=="__proto__"&&$0?$0(le,me,{configurable:!0,enumerable:!0,value:Xe,writable:!0}):le[me]=Xe}var ip=LY;function PY(le,me){return le===me||le!==le&&me!==me}var qf=PY;var IY=Object.prototype,RY=IY.hasOwnProperty;function DY(le,me,Xe){var Mt=le[me];(!(RY.call(le,me)&&qf(Mt,Xe))||Xe===void 0&&!(me in le))&&ip(le,me,Xe)}var vv=DY;function zY(le,me,Xe,Mt){var rr=!Xe;Xe||(Xe={});for(var Nr=-1,xa=me.length;++Nr<xa;){var Ha=me[Nr],Za=Mt?Mt(Xe[Ha],le[Ha],Ha,Xe,le):void 0;Za===void 0&&(Za=le[Ha]),rr?ip(Xe,Ha,Za):vv(Xe,Ha,Za)}return Xe}var gh=zY;var AL=Math.max;function FY(le,me,Xe){return me=AL(me===void 0?le.length-1:me,0),function(){for(var Mt=arguments,rr=-1,Nr=AL(Mt.length-me,0),xa=Array(Nr);++rr<Nr;)xa[rr]=Mt[me+rr];rr=-1;for(var Ha=Array(me+1);++rr<me;)Ha[rr]=Mt[rr];return Ha[me]=Xe(xa),sf(le,this,Ha)}}var zb=FY;function OY(le,me){return Q0(zb(le,me,ic),le+"")}var ko=OY;var BY=9007199254740991;function NY(le){return typeof le=="number"&&le>-1&&le%1==0&&le<=BY}var Mm=NY;function UY(le){return le!=null&&Mm(le.length)&&!tp(le)}var gc=UY;function jY(le,me,Xe){if(!ll(Xe))return!1;var Mt=typeof me;return(Mt=="number"?gc(Xe)&&rp(me,Xe.length):Mt=="string"&&me in Xe)?qf(Xe[me],le):!1}var nc=jY;function VY(le){return ko(function(me,Xe){var Mt=-1,rr=Xe.length,Nr=rr>1?Xe[rr-1]:void 0,xa=rr>2?Xe[2]:void 0;for(Nr=le.length>3&&typeof Nr=="function"?(rr--,Nr):void 0,xa&&nc(Xe[0],Xe[1],xa)&&(Nr=rr<3?void 0:Nr,rr=1),me=Object(me);++Mt<rr;){var Ha=Xe[Mt];Ha&&le(me,Ha,Mt,Nr)}return me})}var Md=VY;var qY=Object.prototype;function HY(le){var me=le&&le.constructor,Xe=typeof me=="function"&&me.prototype||qY;return le===Xe}var mv=HY;function GY(le,me){for(var Xe=-1,Mt=Array(le);++Xe<le;)Mt[Xe]=me(Xe);return Mt}var ty=GY;var WY="[object Arguments]";function ZY(le){return ul(le)&&ac(le)==WY}var MA=ZY;var SL=Object.prototype,XY=SL.hasOwnProperty,YY=SL.propertyIsEnumerable,KY=MA(function(){return arguments}())?MA:function(le){return ul(le)&&XY.call(le,"callee")&&!YY.call(le,"callee")},dd=KY;function JY(){return!1}var ry=JY;var kL=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ML=kL&&typeof module=="object"&&module&&!module.nodeType&&module,$Y=ML&&ML.exports===kL,EL=$Y?Kl.Buffer:void 0,QY=EL?EL.isBuffer:void 0,eK=QY||ry,Kp=eK;var tK="[object Arguments]",rK="[object Array]",aK="[object Boolean]",iK="[object Date]",nK="[object Error]",oK="[object Function]",sK="[object Map]",lK="[object Number]",uK="[object Object]",cK="[object RegExp]",fK="[object Set]",hK="[object String]",pK="[object WeakMap]",dK="[object ArrayBuffer]",vK="[object DataView]",mK="[object Float32Array]",gK="[object Float64Array]",yK="[object Int8Array]",_K="[object Int16Array]",xK="[object Int32Array]",bK="[object Uint8Array]",wK="[object Uint8ClampedArray]",TK="[object Uint16Array]",AK="[object Uint32Array]",lf={};lf[mK]=lf[gK]=lf[yK]=lf[_K]=lf[xK]=lf[bK]=lf[wK]=lf[TK]=lf[AK]=!0;lf[tK]=lf[rK]=lf[dK]=lf[aK]=lf[vK]=lf[iK]=lf[nK]=lf[oK]=lf[sK]=lf[lK]=lf[uK]=lf[cK]=lf[fK]=lf[hK]=lf[pK]=!1;function SK(le){return ul(le)&&Mm(le.length)&&!!lf[ac(le)]}var CL=SK;function MK(le){return function(me){return le(me)}}var uf=MK;var LL=typeof exports=="object"&&exports&&!exports.nodeType&&exports,i_=LL&&typeof module=="object"&&module&&!module.nodeType&&module,EK=i_&&i_.exports===LL,EA=EK&&yb.process,kK=function(){try{var le=i_&&i_.require&&i_.require("util").types;return le||EA&&EA.binding&&EA.binding("util")}catch{}}(),np=kK;var PL=np&&np.isTypedArray,CK=PL?uf(PL):CL,Ed=CK;var LK=Object.prototype,PK=LK.hasOwnProperty;function IK(le,me){var Xe=mo(le),Mt=!Xe&&dd(le),rr=!Xe&&!Mt&&Kp(le),Nr=!Xe&&!Mt&&!rr&&Ed(le),xa=Xe||Mt||rr||Nr,Ha=xa?ty(le.length,String):[],Za=Ha.length;for(var un in le)(me||PK.call(le,un))&&!(xa&&(un=="length"||rr&&(un=="offset"||un=="parent")||Nr&&(un=="buffer"||un=="byteLength"||un=="byteOffset")||rp(un,Za)))&&Ha.push(un);return Ha}var Fb=IK;function RK(le,me){return function(Xe){return le(me(Xe))}}var Ob=RK;var DK=Ob(Object.keys,Object),IL=DK;var zK=Object.prototype,FK=zK.hasOwnProperty;function OK(le){if(!mv(le))return IL(le);var me=[];for(var Xe in Object(le))FK.call(le,Xe)&&Xe!="constructor"&&me.push(Xe);return me}var ay=OK;function BK(le){return gc(le)?Fb(le):ay(le)}var Gl=BK;var NK=Object.prototype,UK=NK.hasOwnProperty,jK=Md(function(le,me){if(mv(me)||gc(me)){gh(me,Gl(me),le);return}for(var Xe in me)UK.call(me,Xe)&&vv(le,Xe,me[Xe])}),RL=jK;function VK(le){var me=[];if(le!=null)for(var Xe in Object(le))me.push(Xe);return me}var DL=VK;var qK=Object.prototype,HK=qK.hasOwnProperty;function GK(le){if(!ll(le))return DL(le);var me=mv(le),Xe=[];for(var Mt in le)Mt=="constructor"&&(me||!HK.call(le,Mt))||Xe.push(Mt);return Xe}var zL=GK;function WK(le){return gc(le)?Fb(le,!0):zL(le)}var yc=WK;var ZK=Md(function(le,me){gh(me,yc(me),le)}),n_=ZK;var XK=Md(function(le,me,Xe,Mt){gh(me,yc(me),le,Mt)}),Em=XK;var YK=Md(function(le,me,Xe,Mt){gh(me,Gl(me),le,Mt)}),FL=YK;var KK=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,JK=/^\w*$/;function $K(le,me){if(mo(le))return!1;var Xe=typeof le;return Xe=="number"||Xe=="symbol"||Xe=="boolean"||le==null||_f(le)?!0:JK.test(le)||!KK.test(le)||me!=null&&le in Object(me)}var iy=$K;var QK=ld(Object,"create"),qv=QK;function eJ(){this.__data__=qv?qv(null):{},this.size=0}var OL=eJ;function tJ(le){var me=this.has(le)&&delete this.__data__[le];return this.size-=me?1:0,me}var BL=tJ;var rJ="__lodash_hash_undefined__",aJ=Object.prototype,iJ=aJ.hasOwnProperty;function nJ(le){var me=this.__data__;if(qv){var Xe=me[le];return Xe===rJ?void 0:Xe}return iJ.call(me,le)?me[le]:void 0}var NL=nJ;var oJ=Object.prototype,sJ=oJ.hasOwnProperty;function lJ(le){var me=this.__data__;return qv?me[le]!==void 0:sJ.call(me,le)}var UL=lJ;var uJ="__lodash_hash_undefined__";function cJ(le,me){var Xe=this.__data__;return this.size+=this.has(le)?0:1,Xe[le]=qv&&me===void 0?uJ:me,this}var jL=cJ;function ny(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}ny.prototype.clear=OL;ny.prototype.delete=BL;ny.prototype.get=NL;ny.prototype.has=UL;ny.prototype.set=jL;var kA=ny;function fJ(){this.__data__=[],this.size=0}var VL=fJ;function hJ(le,me){for(var Xe=le.length;Xe--;)if(qf(le[Xe][0],me))return Xe;return-1}var km=hJ;var pJ=Array.prototype,dJ=pJ.splice;function vJ(le){var me=this.__data__,Xe=km(me,le);if(Xe<0)return!1;var Mt=me.length-1;return Xe==Mt?me.pop():dJ.call(me,Xe,1),--this.size,!0}var qL=vJ;function mJ(le){var me=this.__data__,Xe=km(me,le);return Xe<0?void 0:me[Xe][1]}var HL=mJ;function gJ(le){return km(this.__data__,le)>-1}var GL=gJ;function yJ(le,me){var Xe=this.__data__,Mt=km(Xe,le);return Mt<0?(++this.size,Xe.push([le,me])):Xe[Mt][1]=me,this}var WL=yJ;function oy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}oy.prototype.clear=VL;oy.prototype.delete=qL;oy.prototype.get=HL;oy.prototype.has=GL;oy.prototype.set=WL;var Cm=oy;var _J=ld(Kl,"Map"),Lm=_J;function xJ(){this.size=0,this.__data__={hash:new kA,map:new(Lm||Cm),string:new kA}}var ZL=xJ;function bJ(le){var me=typeof le;return me=="string"||me=="number"||me=="symbol"||me=="boolean"?le!=="__proto__":le===null}var XL=bJ;function wJ(le,me){var Xe=le.__data__;return XL(me)?Xe[typeof me=="string"?"string":"hash"]:Xe.map}var Pm=wJ;function TJ(le){var me=Pm(this,le).delete(le);return this.size-=me?1:0,me}var YL=TJ;function AJ(le){return Pm(this,le).get(le)}var KL=AJ;function SJ(le){return Pm(this,le).has(le)}var JL=SJ;function MJ(le,me){var Xe=Pm(this,le),Mt=Xe.size;return Xe.set(le,me),this.size+=Xe.size==Mt?0:1,this}var $L=MJ;function sy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}sy.prototype.clear=ZL;sy.prototype.delete=YL;sy.prototype.get=KL;sy.prototype.has=JL;sy.prototype.set=$L;var jg=sy;var EJ="Expected a function";function CA(le,me){if(typeof le!="function"||me!=null&&typeof me!="function")throw new TypeError(EJ);var Xe=function(){var Mt=arguments,rr=me?me.apply(this,Mt):Mt[0],Nr=Xe.cache;if(Nr.has(rr))return Nr.get(rr);var xa=le.apply(this,Mt);return Xe.cache=Nr.set(rr,xa)||Nr,xa};return Xe.cache=new(CA.Cache||jg),Xe}CA.Cache=jg;var Bb=CA;var kJ=500;function CJ(le){var me=Bb(le,function(Mt){return Xe.size===kJ&&Xe.clear(),Mt}),Xe=me.cache;return me}var QL=CJ;var LJ=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,PJ=/\\(\\)?/g,IJ=QL(function(le){var me=[];return le.charCodeAt(0)===46&&me.push(""),le.replace(LJ,function(Xe,Mt,rr,Nr){me.push(rr?Nr.replace(PJ,"$1"):Mt||Xe)}),me}),Nb=IJ;function RJ(le){return le==null?"":Vf(le)}var ws=RJ;function DJ(le,me){return mo(le)?le:iy(le,me)?[le]:Nb(ws(le))}var Rp=DJ;var zJ=1/0;function FJ(le){if(typeof le=="string"||_f(le))return le;var me=le+"";return me=="0"&&1/le==-zJ?"-0":me}var yh=FJ;function OJ(le,me){me=Rp(me,le);for(var Xe=0,Mt=me.length;le!=null&&Xe<Mt;)le=le[yh(me[Xe++])];return Xe&&Xe==Mt?le:void 0}var ud=OJ;function BJ(le,me,Xe){var Mt=le==null?void 0:ud(le,me);return Mt===void 0?Xe:Mt}var ly=BJ;function NJ(le,me){for(var Xe=-1,Mt=me.length,rr=Array(Mt),Nr=le==null;++Xe<Mt;)rr[Xe]=Nr?void 0:ly(le,me[Xe]);return rr}var uy=NJ;function UJ(le,me){for(var Xe=-1,Mt=me.length,rr=le.length;++Xe<Mt;)le[rr+Xe]=me[Xe];return le}var Dp=UJ;var eP=yf?yf.isConcatSpreadable:void 0;function jJ(le){return mo(le)||dd(le)||!!(eP&&le&&le[eP])}var tP=jJ;function rP(le,me,Xe,Mt,rr){var Nr=-1,xa=le.length;for(Xe||(Xe=tP),rr||(rr=[]);++Nr<xa;){var Ha=le[Nr];me>0&&Xe(Ha)?me>1?rP(Ha,me-1,Xe,Mt,rr):Dp(rr,Ha):Mt||(rr[rr.length]=Ha)}return rr}var wu=rP;function VJ(le){var me=le==null?0:le.length;return me?wu(le,1):[]}var Ub=VJ;function qJ(le){return Q0(zb(le,void 0,Ub),le+"")}var op=qJ;var HJ=op(uy),aP=HJ;var GJ=Ob(Object.getPrototypeOf,Object),Im=GJ;var WJ="[object Object]",ZJ=Function.prototype,XJ=Object.prototype,iP=ZJ.toString,YJ=XJ.hasOwnProperty,KJ=iP.call(Object);function JJ(le){if(!ul(le)||ac(le)!=WJ)return!1;var me=Im(le);if(me===null)return!0;var Xe=YJ.call(me,"constructor")&&me.constructor;return typeof Xe=="function"&&Xe instanceof Xe&&iP.call(Xe)==KJ}var gv=JJ;var $J="[object DOMException]",QJ="[object Error]";function e$(le){if(!ul(le))return!1;var me=ac(le);return me==QJ||me==$J||typeof le.message=="string"&&typeof le.name=="string"&&!gv(le)}var cy=e$;var t$=ko(function(le,me){try{return sf(le,void 0,me)}catch(Xe){return cy(Xe)?Xe:new Error(Xe)}}),jb=t$;var r$="Expected a function";function a$(le,me){var Xe;if(typeof me!="function")throw new TypeError(r$);return le=Eo(le),function(){return--le>0&&(Xe=me.apply(this,arguments)),le<=1&&(me=void 0),Xe}}var Vb=a$;var i$=1,n$=32,LA=ko(function(le,me,Xe){var Mt=i$;if(Xe.length){var rr=Yp(Xe,Sd(LA));Mt|=n$}return ap(le,Mt,me,Xe,rr)});LA.placeholder={};var qb=LA;var o$=op(function(le,me){return zh(me,function(Xe){Xe=yh(Xe),ip(le,Xe,qb(le[Xe],le))}),le}),nP=o$;var s$=1,l$=2,u$=32,PA=ko(function(le,me,Xe){var Mt=s$|l$;if(Xe.length){var rr=Yp(Xe,Sd(PA));Mt|=u$}return ap(me,Mt,le,Xe,rr)});PA.placeholder={};var oP=PA;function c$(le,me,Xe){var Mt=-1,rr=le.length;me<0&&(me=-me>rr?0:rr+me),Xe=Xe>rr?rr:Xe,Xe<0&&(Xe+=rr),rr=me>Xe?0:Xe-me>>>0,me>>>=0;for(var Nr=Array(rr);++Mt<rr;)Nr[Mt]=le[Mt+me];return Nr}var Lf=c$;function f$(le,me,Xe){var Mt=le.length;return Xe=Xe===void 0?Mt:Xe,!me&&Xe>=Mt?le:Lf(le,me,Xe)}var zp=f$;var h$="\\ud800-\\udfff",p$="\\u0300-\\u036f",d$="\\ufe20-\\ufe2f",v$="\\u20d0-\\u20ff",m$=p$+d$+v$,g$="\\ufe0e\\ufe0f",y$="\\u200d",_$=RegExp("["+y$+h$+m$+g$+"]");function x$(le){return _$.test(le)}var kd=x$;function b$(le){return le.split("")}var sP=b$;var lP="\\ud800-\\udfff",w$="\\u0300-\\u036f",T$="\\ufe20-\\ufe2f",A$="\\u20d0-\\u20ff",S$=w$+T$+A$,M$="\\ufe0e\\ufe0f",E$="["+lP+"]",IA="["+S$+"]",RA="\\ud83c[\\udffb-\\udfff]",k$="(?:"+IA+"|"+RA+")",uP="[^"+lP+"]",cP="(?:\\ud83c[\\udde6-\\uddff]){2}",fP="[\\ud800-\\udbff][\\udc00-\\udfff]",C$="\\u200d",hP=k$+"?",pP="["+M$+"]?",L$="(?:"+C$+"(?:"+[uP,cP,fP].join("|")+")"+pP+hP+")*",P$=pP+hP+L$,I$="(?:"+[uP+IA+"?",IA,cP,fP,E$].join("|")+")",R$=RegExp(RA+"(?="+RA+")|"+I$+P$,"g");function D$(le){return le.match(R$)||[]}var dP=D$;function z$(le){return kd(le)?dP(le):sP(le)}var Fh=z$;function F$(le){return function(me){me=ws(me);var Xe=kd(me)?Fh(me):void 0,Mt=Xe?Xe[0]:me.charAt(0),rr=Xe?zp(Xe,1).join(""):me.slice(1);return Mt[le]()+rr}}var Hb=F$;var O$=Hb("toUpperCase"),fy=O$;function B$(le){return fy(ws(le).toLowerCase())}var Gb=B$;function N$(le,me,Xe,Mt){var rr=-1,Nr=le==null?0:le.length;for(Mt&&Nr&&(Xe=le[++rr]);++rr<Nr;)Xe=me(Xe,le[rr],rr,le);return Xe}var hy=N$;function U$(le){return function(me){return le?.[me]}}var py=U$;var j$={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},V$=py(j$),vP=V$;var q$=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,H$="\\u0300-\\u036f",G$="\\ufe20-\\ufe2f",W$="\\u20d0-\\u20ff",Z$=H$+G$+W$,X$="["+Z$+"]",Y$=RegExp(X$,"g");function K$(le){return le=ws(le),le&&le.replace(q$,vP).replace(Y$,"")}var Wb=K$;var J$=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function $$(le){return le.match(J$)||[]}var mP=$$;var Q$=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function eQ(le){return Q$.test(le)}var gP=eQ;var wP="\\ud800-\\udfff",tQ="\\u0300-\\u036f",rQ="\\ufe20-\\ufe2f",aQ="\\u20d0-\\u20ff",iQ=tQ+rQ+aQ,TP="\\u2700-\\u27bf",AP="a-z\\xdf-\\xf6\\xf8-\\xff",nQ="\\xac\\xb1\\xd7\\xf7",oQ="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",sQ="\\u2000-\\u206f",lQ=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",SP="A-Z\\xc0-\\xd6\\xd8-\\xde",uQ="\\ufe0e\\ufe0f",MP=nQ+oQ+sQ+lQ,EP="['\u2019]",yP="["+MP+"]",cQ="["+iQ+"]",kP="\\d+",fQ="["+TP+"]",CP="["+AP+"]",LP="[^"+wP+MP+kP+TP+AP+SP+"]",hQ="\\ud83c[\\udffb-\\udfff]",pQ="(?:"+cQ+"|"+hQ+")",dQ="[^"+wP+"]",PP="(?:\\ud83c[\\udde6-\\uddff]){2}",IP="[\\ud800-\\udbff][\\udc00-\\udfff]",dy="["+SP+"]",vQ="\\u200d",_P="(?:"+CP+"|"+LP+")",mQ="(?:"+dy+"|"+LP+")",xP="(?:"+EP+"(?:d|ll|m|re|s|t|ve))?",bP="(?:"+EP+"(?:D|LL|M|RE|S|T|VE))?",RP=pQ+"?",DP="["+uQ+"]?",gQ="(?:"+vQ+"(?:"+[dQ,PP,IP].join("|")+")"+DP+RP+")*",yQ="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",_Q="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",xQ=DP+RP+gQ,bQ="(?:"+[fQ,PP,IP].join("|")+")"+xQ,wQ=RegExp([dy+"?"+CP+"+"+xP+"(?="+[yP,dy,"$"].join("|")+")",mQ+"+"+bP+"(?="+[yP,dy+_P,"$"].join("|")+")",dy+"?"+_P+"+"+xP,dy+"+"+bP,_Q,yQ,kP,bQ].join("|"),"g");function TQ(le){return le.match(wQ)||[]}var zP=TQ;function AQ(le,me,Xe){return le=ws(le),me=Xe?void 0:me,me===void 0?gP(le)?zP(le):mP(le):le.match(me)||[]}var Zb=AQ;var SQ="['\u2019]",MQ=RegExp(SQ,"g");function EQ(le){return function(me){return hy(Zb(Wb(me).replace(MQ,"")),le,"")}}var Cd=EQ;var kQ=Cd(function(le,me,Xe){return me=me.toLowerCase(),le+(Xe?Gb(me):me)}),FP=kQ;function CQ(){if(!arguments.length)return[];var le=arguments[0];return mo(le)?le:[le]}var OP=CQ;var LQ=Kl.isFinite,PQ=Math.min;function IQ(le){var me=Math[le];return function(Xe,Mt){if(Xe=mh(Xe),Mt=Mt==null?0:PQ(Eo(Mt),292),Mt&&LQ(Xe)){var rr=(ws(Xe)+"e").split("e"),Nr=me(rr[0]+"e"+(+rr[1]+Mt));return rr=(ws(Nr)+"e").split("e"),+(rr[0]+"e"+(+rr[1]-Mt))}return me(Xe)}}var vy=IQ;var RQ=vy("ceil"),BP=RQ;function DQ(le){var me=ua(le);return me.__chain__=!0,me}var Xb=DQ;var zQ=Math.ceil,FQ=Math.max;function OQ(le,me,Xe){(Xe?nc(le,me,Xe):me===void 0)?me=1:me=FQ(Eo(me),0);var Mt=le==null?0:le.length;if(!Mt||me<1)return[];for(var rr=0,Nr=0,xa=Array(zQ(Mt/me));rr<Mt;)xa[Nr++]=Lf(le,rr,rr+=me);return xa}var NP=OQ;function BQ(le,me,Xe){return le===le&&(Xe!==void 0&&(le=le<=Xe?le:Xe),me!==void 0&&(le=le>=me?le:me)),le}var cd=BQ;function NQ(le,me,Xe){return Xe===void 0&&(Xe=me,me=void 0),Xe!==void 0&&(Xe=mh(Xe),Xe=Xe===Xe?Xe:0),me!==void 0&&(me=mh(me),me=me===me?me:0),cd(mh(le),me,Xe)}var UP=NQ;function UQ(){this.__data__=new Cm,this.size=0}var jP=UQ;function jQ(le){var me=this.__data__,Xe=me.delete(le);return this.size=me.size,Xe}var VP=jQ;function VQ(le){return this.__data__.get(le)}var qP=VQ;function qQ(le){return this.__data__.has(le)}var HP=qQ;var HQ=200;function GQ(le,me){var Xe=this.__data__;if(Xe instanceof Cm){var Mt=Xe.__data__;if(!Lm||Mt.length<HQ-1)return Mt.push([le,me]),this.size=++Xe.size,this;Xe=this.__data__=new jg(Mt)}return Xe.set(le,me),this.size=Xe.size,this}var GP=GQ;function my(le){var me=this.__data__=new Cm(le);this.size=me.size}my.prototype.clear=jP;my.prototype.delete=VP;my.prototype.get=qP;my.prototype.has=HP;my.prototype.set=GP;var yv=my;function WQ(le,me){return le&&gh(me,Gl(me),le)}var Yb=WQ;function ZQ(le,me){return le&&gh(me,yc(me),le)}var WP=ZQ;var KP=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ZP=KP&&typeof module=="object"&&module&&!module.nodeType&&module,XQ=ZP&&ZP.exports===KP,XP=XQ?Kl.Buffer:void 0,YP=XP?XP.allocUnsafe:void 0;function YQ(le,me){if(me)return le.slice();var Xe=le.length,Mt=YP?YP(Xe):new le.constructor(Xe);return le.copy(Mt),Mt}var Kb=YQ;function KQ(le,me){for(var Xe=-1,Mt=le==null?0:le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe];me(xa,Xe,le)&&(Nr[rr++]=xa)}return Nr}var Fp=KQ;function JQ(){return[]}var gy=JQ;var $Q=Object.prototype,QQ=$Q.propertyIsEnumerable,JP=Object.getOwnPropertySymbols,eee=JP?function(le){return le==null?[]:(le=Object(le),Fp(JP(le),function(me){return QQ.call(le,me)}))}:gy,yy=eee;function tee(le,me){return gh(le,yy(le),me)}var $P=tee;var ree=Object.getOwnPropertySymbols,aee=ree?function(le){for(var me=[];le;)Dp(me,yy(le)),le=Im(le);return me}:gy,Jb=aee;function iee(le,me){return gh(le,Jb(le),me)}var QP=iee;function nee(le,me,Xe){var Mt=me(le);return mo(le)?Mt:Dp(Mt,Xe(le))}var $b=nee;function oee(le){return $b(le,Gl,yy)}var o_=oee;function see(le){return $b(le,yc,Jb)}var _y=see;var lee=ld(Kl,"DataView"),Qb=lee;var uee=ld(Kl,"Promise"),ew=uee;var cee=ld(Kl,"Set"),Rm=cee;var e6="[object Map]",fee="[object Object]",t6="[object Promise]",r6="[object Set]",a6="[object WeakMap]",i6="[object DataView]",hee=jv(Qb),pee=jv(Lm),dee=jv(ew),vee=jv(Rm),mee=jv(Ug),Vg=ac;(Qb&&Vg(new Qb(new ArrayBuffer(1)))!=i6||Lm&&Vg(new Lm)!=e6||ew&&Vg(ew.resolve())!=t6||Rm&&Vg(new Rm)!=r6||Ug&&Vg(new Ug)!=a6)&&(Vg=function(le){var me=ac(le),Xe=me==fee?le.constructor:void 0,Mt=Xe?jv(Xe):"";if(Mt)switch(Mt){case hee:return i6;case pee:return e6;case dee:return t6;case vee:return r6;case mee:return a6}return me});var Oh=Vg;var gee=Object.prototype,yee=gee.hasOwnProperty;function _ee(le){var me=le.length,Xe=new le.constructor(me);return me&&typeof le[0]=="string"&&yee.call(le,"index")&&(Xe.index=le.index,Xe.input=le.input),Xe}var n6=_ee;var xee=Kl.Uint8Array,xy=xee;function bee(le){var me=new le.constructor(le.byteLength);return new xy(me).set(new xy(le)),me}var by=bee;function wee(le,me){var Xe=me?by(le.buffer):le.buffer;return new le.constructor(Xe,le.byteOffset,le.byteLength)}var o6=wee;var Tee=/\w*$/;function Aee(le){var me=new le.constructor(le.source,Tee.exec(le));return me.lastIndex=le.lastIndex,me}var s6=Aee;var l6=yf?yf.prototype:void 0,u6=l6?l6.valueOf:void 0;function See(le){return u6?Object(u6.call(le)):{}}var c6=See;function Mee(le,me){var Xe=me?by(le.buffer):le.buffer;return new le.constructor(Xe,le.byteOffset,le.length)}var tw=Mee;var Eee="[object Boolean]",kee="[object Date]",Cee="[object Map]",Lee="[object Number]",Pee="[object RegExp]",Iee="[object Set]",Ree="[object String]",Dee="[object Symbol]",zee="[object ArrayBuffer]",Fee="[object DataView]",Oee="[object Float32Array]",Bee="[object Float64Array]",Nee="[object Int8Array]",Uee="[object Int16Array]",jee="[object Int32Array]",Vee="[object Uint8Array]",qee="[object Uint8ClampedArray]",Hee="[object Uint16Array]",Gee="[object Uint32Array]";function Wee(le,me,Xe){var Mt=le.constructor;switch(me){case zee:return by(le);case Eee:case kee:return new Mt(+le);case Fee:return o6(le,Xe);case Oee:case Bee:case Nee:case Uee:case jee:case Vee:case qee:case Hee:case Gee:return tw(le,Xe);case Cee:return new Mt;case Lee:case Ree:return new Mt(le);case Pee:return s6(le);case Iee:return new Mt;case Dee:return c6(le)}}var f6=Wee;function Zee(le){return typeof le.constructor=="function"&&!mv(le)?Td(Im(le)):{}}var rw=Zee;var Xee="[object Map]";function Yee(le){return ul(le)&&Oh(le)==Xee}var h6=Yee;var p6=np&&np.isMap,Kee=p6?uf(p6):h6,aw=Kee;var Jee="[object Set]";function $ee(le){return ul(le)&&Oh(le)==Jee}var d6=$ee;var v6=np&&np.isSet,Qee=v6?uf(v6):d6,iw=Qee;var ete=1,tte=2,rte=4,m6="[object Arguments]",ate="[object Array]",ite="[object Boolean]",nte="[object Date]",ote="[object Error]",g6="[object Function]",ste="[object GeneratorFunction]",lte="[object Map]",ute="[object Number]",y6="[object Object]",cte="[object RegExp]",fte="[object Set]",hte="[object String]",pte="[object Symbol]",dte="[object WeakMap]",vte="[object ArrayBuffer]",mte="[object DataView]",gte="[object Float32Array]",yte="[object Float64Array]",_te="[object Int8Array]",xte="[object Int16Array]",bte="[object Int32Array]",wte="[object Uint8Array]",Tte="[object Uint8ClampedArray]",Ate="[object Uint16Array]",Ste="[object Uint32Array]",Zc={};Zc[m6]=Zc[ate]=Zc[vte]=Zc[mte]=Zc[ite]=Zc[nte]=Zc[gte]=Zc[yte]=Zc[_te]=Zc[xte]=Zc[bte]=Zc[lte]=Zc[ute]=Zc[y6]=Zc[cte]=Zc[fte]=Zc[hte]=Zc[pte]=Zc[wte]=Zc[Tte]=Zc[Ate]=Zc[Ste]=!0;Zc[ote]=Zc[g6]=Zc[dte]=!1;function nw(le,me,Xe,Mt,rr,Nr){var xa,Ha=me&ete,Za=me&tte,un=me&rte;if(Xe&&(xa=rr?Xe(le,Mt,rr,Nr):Xe(le)),xa!==void 0)return xa;if(!ll(le))return le;var Ji=mo(le);if(Ji){if(xa=n6(le),!Ha)return Wc(le,xa)}else{var gn=Oh(le),wo=gn==g6||gn==ste;if(Kp(le))return Kb(le,Ha);if(gn==y6||gn==m6||wo&&!rr){if(xa=Za||wo?{}:rw(le),!Ha)return Za?QP(le,WP(xa,le)):$P(le,Yb(xa,le))}else{if(!Zc[gn])return rr?le:{};xa=f6(le,gn,Ha)}}Nr||(Nr=new yv);var ps=Nr.get(le);if(ps)return ps;Nr.set(le,xa),iw(le)?le.forEach(function(Ps){xa.add(nw(Ps,me,Xe,Ps,le,Nr))}):aw(le)&&le.forEach(function(Ps,Ml){xa.set(Ml,nw(Ps,me,Xe,Ml,le,Nr))});var Qn=un?Za?_y:o_:Za?yc:Gl,Ye=Ji?void 0:Qn(le);return zh(Ye||le,function(Ps,Ml){Ye&&(Ml=Ps,Ps=le[Ml]),vv(xa,Ml,nw(Ps,me,Xe,Ml,le,Nr))}),xa}var sp=nw;var Mte=4;function Ete(le){return sp(le,Mte)}var _6=Ete;var kte=1,Cte=4;function Lte(le){return sp(le,kte|Cte)}var x6=Lte;var Pte=1,Ite=4;function Rte(le,me){return me=typeof me=="function"?me:void 0,sp(le,Pte|Ite,me)}var b6=Rte;var Dte=4;function zte(le,me){return me=typeof me=="function"?me:void 0,sp(le,Dte,me)}var w6=zte;function Fte(){return new Ip(this.value(),this.__chain__)}var T6=Fte;function Ote(le){for(var me=-1,Xe=le==null?0:le.length,Mt=0,rr=[];++me<Xe;){var Nr=le[me];Nr&&(rr[Mt++]=Nr)}return rr}var A6=Ote;function Bte(){var le=arguments.length;if(!le)return[];for(var me=Array(le-1),Xe=arguments[0],Mt=le;Mt--;)me[Mt-1]=arguments[Mt];return Dp(mo(Xe)?Wc(Xe):[Xe],wu(me,1))}var S6=Bte;var Nte="__lodash_hash_undefined__";function Ute(le){return this.__data__.set(le,Nte),this}var M6=Ute;function jte(le){return this.__data__.has(le)}var E6=jte;function ow(le){var me=-1,Xe=le==null?0:le.length;for(this.__data__=new jg;++me<Xe;)this.add(le[me])}ow.prototype.add=ow.prototype.push=M6;ow.prototype.has=E6;var Dm=ow;function Vte(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt;)if(me(le[Xe],Xe,le))return!0;return!1}var wy=Vte;function qte(le,me){return le.has(me)}var Hv=qte;var Hte=1,Gte=2;function Wte(le,me,Xe,Mt,rr,Nr){var xa=Xe&Hte,Ha=le.length,Za=me.length;if(Ha!=Za&&!(xa&&Za>Ha))return!1;var un=Nr.get(le),Ji=Nr.get(me);if(un&&Ji)return un==me&&Ji==le;var gn=-1,wo=!0,ps=Xe&Gte?new Dm:void 0;for(Nr.set(le,me),Nr.set(me,le);++gn<Ha;){var Qn=le[gn],Ye=me[gn];if(Mt)var Ps=xa?Mt(Ye,Qn,gn,me,le,Nr):Mt(Qn,Ye,gn,le,me,Nr);if(Ps!==void 0){if(Ps)continue;wo=!1;break}if(ps){if(!wy(me,function(Ml,Ul){if(!Hv(ps,Ul)&&(Qn===Ml||rr(Qn,Ml,Xe,Mt,Nr)))return ps.push(Ul)})){wo=!1;break}}else if(!(Qn===Ye||rr(Qn,Ye,Xe,Mt,Nr))){wo=!1;break}}return Nr.delete(le),Nr.delete(me),wo}var sw=Wte;function Zte(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt,rr){Xe[++me]=[rr,Mt]}),Xe}var Ty=Zte;function Xte(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=Mt}),Xe}var zm=Xte;var Yte=1,Kte=2,Jte="[object Boolean]",$te="[object Date]",Qte="[object Error]",ere="[object Map]",tre="[object Number]",rre="[object RegExp]",are="[object Set]",ire="[object String]",nre="[object Symbol]",ore="[object ArrayBuffer]",sre="[object DataView]",k6=yf?yf.prototype:void 0,DA=k6?k6.valueOf:void 0;function lre(le,me,Xe,Mt,rr,Nr,xa){switch(Xe){case sre:if(le.byteLength!=me.byteLength||le.byteOffset!=me.byteOffset)return!1;le=le.buffer,me=me.buffer;case ore:return!(le.byteLength!=me.byteLength||!Nr(new xy(le),new xy(me)));case Jte:case $te:case tre:return qf(+le,+me);case Qte:return le.name==me.name&&le.message==me.message;case rre:case ire:return le==me+"";case ere:var Ha=Ty;case are:var Za=Mt&Yte;if(Ha||(Ha=zm),le.size!=me.size&&!Za)return!1;var un=xa.get(le);if(un)return un==me;Mt|=Kte,xa.set(le,me);var Ji=sw(Ha(le),Ha(me),Mt,rr,Nr,xa);return xa.delete(le),Ji;case nre:if(DA)return DA.call(le)==DA.call(me)}return!1}var C6=lre;var ure=1,cre=Object.prototype,fre=cre.hasOwnProperty;function hre(le,me,Xe,Mt,rr,Nr){var xa=Xe&ure,Ha=o_(le),Za=Ha.length,un=o_(me),Ji=un.length;if(Za!=Ji&&!xa)return!1;for(var gn=Za;gn--;){var wo=Ha[gn];if(!(xa?wo in me:fre.call(me,wo)))return!1}var ps=Nr.get(le),Qn=Nr.get(me);if(ps&&Qn)return ps==me&&Qn==le;var Ye=!0;Nr.set(le,me),Nr.set(me,le);for(var Ps=xa;++gn<Za;){wo=Ha[gn];var Ml=le[wo],Ul=me[wo];if(Mt)var Hf=xa?Mt(Ul,Ml,wo,me,le,Nr):Mt(Ml,Ul,wo,le,me,Nr);if(!(Hf===void 0?Ml===Ul||rr(Ml,Ul,Xe,Mt,Nr):Hf)){Ye=!1;break}Ps||(Ps=wo=="constructor")}if(Ye&&!Ps){var xh=le.constructor,Bp=me.constructor;xh!=Bp&&"constructor"in le&&"constructor"in me&&!(typeof xh=="function"&&xh instanceof xh&&typeof Bp=="function"&&Bp instanceof Bp)&&(Ye=!1)}return Nr.delete(le),Nr.delete(me),Ye}var L6=hre;var pre=1,P6="[object Arguments]",I6="[object Array]",lw="[object Object]",dre=Object.prototype,R6=dre.hasOwnProperty;function vre(le,me,Xe,Mt,rr,Nr){var xa=mo(le),Ha=mo(me),Za=xa?I6:Oh(le),un=Ha?I6:Oh(me);Za=Za==P6?lw:Za,un=un==P6?lw:un;var Ji=Za==lw,gn=un==lw,wo=Za==un;if(wo&&Kp(le)){if(!Kp(me))return!1;xa=!0,Ji=!1}if(wo&&!Ji)return Nr||(Nr=new yv),xa||Ed(le)?sw(le,me,Xe,Mt,rr,Nr):C6(le,me,Za,Xe,Mt,rr,Nr);if(!(Xe&pre)){var ps=Ji&&R6.call(le,"__wrapped__"),Qn=gn&&R6.call(me,"__wrapped__");if(ps||Qn){var Ye=ps?le.value():le,Ps=Qn?me.value():me;return Nr||(Nr=new yv),rr(Ye,Ps,Xe,Mt,Nr)}}return wo?(Nr||(Nr=new yv),L6(le,me,Xe,Mt,rr,Nr)):!1}var D6=vre;function z6(le,me,Xe,Mt,rr){return le===me?!0:le==null||me==null||!ul(le)&&!ul(me)?le!==le&&me!==me:D6(le,me,Xe,Mt,z6,rr)}var Fm=z6;var mre=1,gre=2;function yre(le,me,Xe,Mt){var rr=Xe.length,Nr=rr,xa=!Mt;if(le==null)return!Nr;for(le=Object(le);rr--;){var Ha=Xe[rr];if(xa&&Ha[2]?Ha[1]!==le[Ha[0]]:!(Ha[0]in le))return!1}for(;++rr<Nr;){Ha=Xe[rr];var Za=Ha[0],un=le[Za],Ji=Ha[1];if(xa&&Ha[2]){if(un===void 0&&!(Za in le))return!1}else{var gn=new yv;if(Mt)var wo=Mt(un,Ji,Za,le,me,gn);if(!(wo===void 0?Fm(Ji,un,mre|gre,Mt,gn):wo))return!1}}return!0}var Ay=yre;function _re(le){return le===le&&!ll(le)}var uw=_re;function xre(le){for(var me=Gl(le),Xe=me.length;Xe--;){var Mt=me[Xe],rr=le[Mt];me[Xe]=[Mt,rr,uw(rr)]}return me}var Sy=xre;function bre(le,me){return function(Xe){return Xe==null?!1:Xe[le]===me&&(me!==void 0||le in Object(Xe))}}var cw=bre;function wre(le){var me=Sy(le);return me.length==1&&me[0][2]?cw(me[0][0],me[0][1]):function(Xe){return Xe===le||Ay(Xe,le,me)}}var fw=wre;function Tre(le,me){return le!=null&&me in Object(le)}var F6=Tre;function Are(le,me,Xe){me=Rp(me,le);for(var Mt=-1,rr=me.length,Nr=!1;++Mt<rr;){var xa=yh(me[Mt]);if(!(Nr=le!=null&&Xe(le,xa)))break;le=le[xa]}return Nr||++Mt!=rr?Nr:(rr=le==null?0:le.length,!!rr&&Mm(rr)&&rp(xa,rr)&&(mo(le)||dd(le)))}var hw=Are;function Sre(le,me){return le!=null&&hw(le,me,F6)}var My=Sre;var Mre=1,Ere=2;function kre(le,me){return iy(le)&&uw(me)?cw(yh(le),me):function(Xe){var Mt=ly(Xe,le);return Mt===void 0&&Mt===me?My(Xe,le):Fm(me,Mt,Mre|Ere)}}var pw=kre;function Cre(le){return function(me){return me?.[le]}}var Ey=Cre;function Lre(le){return function(me){return ud(me,le)}}var O6=Lre;function Pre(le){return iy(le)?Ey(yh(le)):O6(le)}var dw=Pre;function Ire(le){return typeof le=="function"?le:le==null?ic:typeof le=="object"?mo(le)?pw(le[0],le[1]):fw(le):dw(le)}var io=Ire;var Rre="Expected a function";function Dre(le){var me=le==null?0:le.length,Xe=io;return le=me?nl(le,function(Mt){if(typeof Mt[1]!="function")throw new TypeError(Rre);return[Xe(Mt[0]),Mt[1]]}):[],ko(function(Mt){for(var rr=-1;++rr<me;){var Nr=le[rr];if(sf(Nr[0],this,Mt))return sf(Nr[1],this,Mt)}})}var B6=Dre;function zre(le,me,Xe){var Mt=Xe.length;if(le==null)return!Mt;for(le=Object(le);Mt--;){var rr=Xe[Mt],Nr=me[rr],xa=le[rr];if(xa===void 0&&!(rr in le)||!Nr(xa))return!1}return!0}var vw=zre;function Fre(le){var me=Gl(le);return function(Xe){return vw(Xe,le,me)}}var N6=Fre;var Ore=1;function Bre(le){return N6(sp(le,Ore))}var U6=Bre;function Nre(le,me){return me==null||vw(le,me,Gl(me))}var j6=Nre;function Ure(le,me,Xe,Mt){for(var rr=-1,Nr=le==null?0:le.length;++rr<Nr;){var xa=le[rr];me(Mt,xa,Xe(xa),le)}return Mt}var V6=Ure;function jre(le){return function(me,Xe,Mt){for(var rr=-1,Nr=Object(me),xa=Mt(me),Ha=xa.length;Ha--;){var Za=xa[le?Ha:++rr];if(Xe(Nr[Za],Za,Nr)===!1)break}return me}}var mw=jre;var Vre=mw(),ky=Vre;function qre(le,me){return le&&ky(le,me,Gl)}var lp=qre;function Hre(le,me){return function(Xe,Mt){if(Xe==null)return Xe;if(!gc(Xe))return le(Xe,Mt);for(var rr=Xe.length,Nr=me?rr:-1,xa=Object(Xe);(me?Nr--:++Nr<rr)&&Mt(xa[Nr],Nr,xa)!==!1;);return Xe}}var gw=Hre;var Gre=gw(lp),Op=Gre;function Wre(le,me,Xe,Mt){return Op(le,function(rr,Nr,xa){me(Mt,rr,Xe(rr),xa)}),Mt}var q6=Wre;function Zre(le,me){return function(Xe,Mt){var rr=mo(Xe)?V6:q6,Nr=me?me():{};return rr(Xe,le,io(Mt,2),Nr)}}var Om=Zre;var Xre=Object.prototype,Yre=Xre.hasOwnProperty,Kre=Om(function(le,me,Xe){Yre.call(le,Xe)?++le[Xe]:ip(le,Xe,1)}),H6=Kre;function Jre(le,me){var Xe=Td(le);return me==null?Xe:Yb(Xe,me)}var G6=Jre;var $re=8;function zA(le,me,Xe){me=Xe?void 0:me;var Mt=ap(le,$re,void 0,void 0,void 0,void 0,void 0,me);return Mt.placeholder=zA.placeholder,Mt}zA.placeholder={};var W6=zA;var Qre=16;function FA(le,me,Xe){me=Xe?void 0:me;var Mt=ap(le,Qre,void 0,void 0,void 0,void 0,void 0,me);return Mt.placeholder=FA.placeholder,Mt}FA.placeholder={};var Z6=FA;var eae=function(){return Kl.Date.now()},Cy=eae;var tae="Expected a function",rae=Math.max,aae=Math.min;function iae(le,me,Xe){var Mt,rr,Nr,xa,Ha,Za,un=0,Ji=!1,gn=!1,wo=!0;if(typeof le!="function")throw new TypeError(tae);me=mh(me)||0,ll(Xe)&&(Ji=!!Xe.leading,gn="maxWait"in Xe,Nr=gn?rae(mh(Xe.maxWait)||0,me):Nr,wo="trailing"in Xe?!!Xe.trailing:wo);function ps(_n){var $p=Mt,Np=rr;return Mt=rr=void 0,un=_n,xa=le.apply(Np,$p),xa}function Qn(_n){return un=_n,Ha=setTimeout(Ml,me),Ji?ps(_n):xa}function Ye(_n){var $p=_n-Za,Np=_n-un,Zy=me-$p;return gn?aae(Zy,Nr-Np):Zy}function Ps(_n){var $p=_n-Za,Np=_n-un;return Za===void 0||$p>=me||$p<0||gn&&Np>=Nr}function Ml(){var _n=Cy();if(Ps(_n))return Ul(_n);Ha=setTimeout(Ml,Ye(_n))}function Ul(_n){return Ha=void 0,wo&&Mt?ps(_n):(Mt=rr=void 0,xa)}function Hf(){Ha!==void 0&&clearTimeout(Ha),un=0,Mt=Za=rr=Ha=void 0}function xh(){return Ha===void 0?xa:Ul(Cy())}function Bp(){var _n=Cy(),$p=Ps(_n);if(Mt=arguments,rr=this,Za=_n,$p){if(Ha===void 0)return Qn(Za);if(gn)return clearTimeout(Ha),Ha=setTimeout(Ml,me),ps(Za)}return Ha===void 0&&(Ha=setTimeout(Ml,me)),xa}return Bp.cancel=Hf,Bp.flush=xh,Bp}var yw=iae;function nae(le,me){return le==null||le!==le?me:le}var X6=nae;var Y6=Object.prototype,oae=Y6.hasOwnProperty,sae=ko(function(le,me){le=Object(le);var Xe=-1,Mt=me.length,rr=Mt>2?me[2]:void 0;for(rr&&nc(me[0],me[1],rr)&&(Mt=1);++Xe<Mt;)for(var Nr=me[Xe],xa=yc(Nr),Ha=-1,Za=xa.length;++Ha<Za;){var un=xa[Ha],Ji=le[un];(Ji===void 0||qf(Ji,Y6[un])&&!oae.call(le,un))&&(le[un]=Nr[un])}return le}),K6=sae;function lae(le,me,Xe){(Xe!==void 0&&!qf(le[me],Xe)||Xe===void 0&&!(me in le))&&ip(le,me,Xe)}var s_=lae;function uae(le){return ul(le)&&gc(le)}var eu=uae;function cae(le,me){if(!(me==="constructor"&&typeof le[me]=="function")&&me!="__proto__")return le[me]}var l_=cae;function fae(le){return gh(le,yc(le))}var _w=fae;function hae(le,me,Xe,Mt,rr,Nr,xa){var Ha=l_(le,Xe),Za=l_(me,Xe),un=xa.get(Za);if(un){s_(le,Xe,un);return}var Ji=Nr?Nr(Ha,Za,Xe+"",le,me,xa):void 0,gn=Ji===void 0;if(gn){var wo=mo(Za),ps=!wo&&Kp(Za),Qn=!wo&&!ps&&Ed(Za);Ji=Za,wo||ps||Qn?mo(Ha)?Ji=Ha:eu(Ha)?Ji=Wc(Ha):ps?(gn=!1,Ji=Kb(Za,!0)):Qn?(gn=!1,Ji=tw(Za,!0)):Ji=[]:gv(Za)||dd(Za)?(Ji=Ha,dd(Ha)?Ji=_w(Ha):(!ll(Ha)||tp(Ha))&&(Ji=rw(Za))):gn=!1}gn&&(xa.set(Za,Ji),rr(Ji,Za,Mt,Nr,xa),xa.delete(Za)),s_(le,Xe,Ji)}var J6=hae;function $6(le,me,Xe,Mt,rr){le!==me&&ky(me,function(Nr,xa){if(rr||(rr=new yv),ll(Nr))J6(le,me,xa,Xe,$6,Mt,rr);else{var Ha=Mt?Mt(l_(le,xa),Nr,xa+"",le,me,rr):void 0;Ha===void 0&&(Ha=Nr),s_(le,xa,Ha)}},yc)}var Ly=$6;function Q6(le,me,Xe,Mt,rr,Nr){return ll(le)&&ll(me)&&(Nr.set(me,le),Ly(le,me,void 0,Q6,Nr),Nr.delete(me)),le}var eI=Q6;var pae=Md(function(le,me,Xe,Mt){Ly(le,me,Xe,Mt)}),xw=pae;var dae=ko(function(le){return le.push(void 0,eI),sf(xw,void 0,le)}),tI=dae;var vae="Expected a function";function mae(le,me,Xe){if(typeof le!="function")throw new TypeError(vae);return setTimeout(function(){le.apply(void 0,Xe)},me)}var bw=mae;var gae=ko(function(le,me){return bw(le,1,me)}),rI=gae;var yae=ko(function(le,me,Xe){return bw(le,mh(me)||0,Xe)}),aI=yae;function _ae(le,me,Xe){for(var Mt=-1,rr=le==null?0:le.length;++Mt<rr;)if(Xe(me,le[Mt]))return!0;return!1}var Py=_ae;var xae=200;function bae(le,me,Xe,Mt){var rr=-1,Nr=Sm,xa=!0,Ha=le.length,Za=[],un=me.length;if(!Ha)return Za;Xe&&(me=nl(me,uf(Xe))),Mt?(Nr=Py,xa=!1):me.length>=xae&&(Nr=Hv,xa=!1,me=new Dm(me));e:for(;++rr<Ha;){var Ji=le[rr],gn=Xe==null?Ji:Xe(Ji);if(Ji=Mt||Ji!==0?Ji:0,xa&&gn===gn){for(var wo=un;wo--;)if(me[wo]===gn)continue e;Za.push(Ji)}else Nr(me,gn,Mt)||Za.push(Ji)}return Za}var _v=bae;var wae=ko(function(le,me){return eu(le)?_v(le,wu(me,1,eu,!0)):[]}),iI=wae;function Tae(le){var me=le==null?0:le.length;return me?le[me-1]:void 0}var cf=Tae;var Aae=ko(function(le,me){var Xe=cf(me);return eu(Xe)&&(Xe=void 0),eu(le)?_v(le,wu(me,1,eu,!0),io(Xe,2)):[]}),nI=Aae;var Sae=ko(function(le,me){var Xe=cf(me);return eu(Xe)&&(Xe=void 0),eu(le)?_v(le,wu(me,1,eu,!0),void 0,Xe):[]}),oI=Sae;var Mae=bm(function(le,me){return le/me},1),sI=Mae;function Eae(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),Lf(le,me<0?0:me,Mt)):[]}var lI=Eae;function kae(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,0,me<0?0:me)):[]}var uI=kae;function Cae(le,me,Xe,Mt){for(var rr=le.length,Nr=Mt?rr:-1;(Mt?Nr--:++Nr<rr)&&me(le[Nr],Nr,le););return Xe?Lf(le,Mt?0:Nr,Mt?Nr+1:rr):Lf(le,Mt?Nr+1:0,Mt?rr:Nr)}var Bm=Cae;function Lae(le,me){return le&&le.length?Bm(le,io(me,3),!0,!0):[]}var cI=Lae;function Pae(le,me){return le&&le.length?Bm(le,io(me,3),!0):[]}var fI=Pae;function Iae(le){return typeof le=="function"?le:ic}var _h=Iae;function Rae(le,me){var Xe=mo(le)?zh:Op;return Xe(le,_h(me))}var u_=Rae;function Dae(le,me){for(var Xe=le==null?0:le.length;Xe--&&me(le[Xe],Xe,le)!==!1;);return le}var hI=Dae;var zae=mw(!0),ww=zae;function Fae(le,me){return le&&ww(le,me,Gl)}var Iy=Fae;var Oae=gw(Iy,!0),Tw=Oae;function Bae(le,me){var Xe=mo(le)?hI:Tw;return Xe(le,_h(me))}var c_=Bae;function Nae(le,me,Xe){le=ws(le),me=Vf(me);var Mt=le.length;Xe=Xe===void 0?Mt:cd(Eo(Xe),0,Mt);var rr=Xe;return Xe-=me.length,Xe>=0&&le.slice(Xe,rr)==me}var pI=Nae;function Uae(le,me){return nl(me,function(Xe){return[Xe,le[Xe]]})}var dI=Uae;function jae(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=[Mt,Mt]}),Xe}var vI=jae;var Vae="[object Map]",qae="[object Set]";function Hae(le){return function(me){var Xe=Oh(me);return Xe==Vae?Ty(me):Xe==qae?vI(me):dI(me,le(me))}}var Aw=Hae;var Gae=Aw(Gl),f_=Gae;var Wae=Aw(yc),h_=Wae;var Zae={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Xae=py(Zae),mI=Xae;var gI=/[&<>"']/g,Yae=RegExp(gI.source);function Kae(le){return le=ws(le),le&&Yae.test(le)?le.replace(gI,mI):le}var Sw=Kae;var yI=/[\\^$.*+?()[\]{}|]/g,Jae=RegExp(yI.source);function $ae(le){return le=ws(le),le&&Jae.test(le)?le.replace(yI,"\\$&"):le}var _I=$ae;function Qae(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt;)if(!me(le[Xe],Xe,le))return!1;return!0}var Mw=Qae;function eie(le,me){var Xe=!0;return Op(le,function(Mt,rr,Nr){return Xe=!!me(Mt,rr,Nr),Xe}),Xe}var xI=eie;function tie(le,me,Xe){var Mt=mo(le)?Mw:xI;return Xe&&nc(le,me,Xe)&&(me=void 0),Mt(le,io(me,3))}var bI=tie;var rie=4294967295;function aie(le){return le?cd(Eo(le),0,rie):0}var Ew=aie;function iie(le,me,Xe,Mt){var rr=le.length;for(Xe=Eo(Xe),Xe<0&&(Xe=-Xe>rr?0:rr+Xe),Mt=Mt===void 0||Mt>rr?rr:Eo(Mt),Mt<0&&(Mt+=rr),Mt=Xe>Mt?0:Ew(Mt);Xe<Mt;)le[Xe++]=me;return le}var wI=iie;function nie(le,me,Xe,Mt){var rr=le==null?0:le.length;return rr?(Xe&&typeof Xe!="number"&&nc(le,me,Xe)&&(Xe=0,Mt=rr),wI(le,me,Xe,Mt)):[]}var TI=nie;function oie(le,me){var Xe=[];return Op(le,function(Mt,rr,Nr){me(Mt,rr,Nr)&&Xe.push(Mt)}),Xe}var kw=oie;function sie(le,me){var Xe=mo(le)?Fp:kw;return Xe(le,io(me,3))}var AI=sie;function lie(le){return function(me,Xe,Mt){var rr=Object(me);if(!gc(me)){var Nr=io(Xe,3);me=Gl(me),Xe=function(Ha){return Nr(rr[Ha],Ha,rr)}}var xa=le(me,Xe,Mt);return xa>-1?rr[Nr?me[xa]:xa]:void 0}}var Cw=lie;var uie=Math.max;function cie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=uie(Mt+rr,0)),Am(le,io(me,3),rr)}var Lw=cie;var fie=Cw(Lw),SI=fie;function hie(le,me,Xe){var Mt;return Xe(le,function(rr,Nr,xa){if(me(rr,Nr,xa))return Mt=Nr,!1}),Mt}var Pw=hie;function pie(le,me){return Pw(le,io(me,3),lp)}var MI=pie;var die=Math.max,vie=Math.min;function mie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt-1;return Xe!==void 0&&(rr=Eo(Xe),rr=Xe<0?die(Mt+rr,0):vie(rr,Mt-1)),Am(le,io(me,3),rr,!0)}var Iw=mie;var gie=Cw(Iw),EI=gie;function yie(le,me){return Pw(le,io(me,3),Iy)}var kI=yie;function _ie(le){return le&&le.length?le[0]:void 0}var p_=_ie;function xie(le,me){var Xe=-1,Mt=gc(le)?Array(le.length):[];return Op(le,function(rr,Nr,xa){Mt[++Xe]=me(rr,Nr,xa)}),Mt}var Rw=xie;function bie(le,me){var Xe=mo(le)?nl:Rw;return Xe(le,io(me,3))}var Nm=bie;function wie(le,me){return wu(Nm(le,me),1)}var CI=wie;var Tie=1/0;function Aie(le,me){return wu(Nm(le,me),Tie)}var LI=Aie;function Sie(le,me,Xe){return Xe=Xe===void 0?1:Eo(Xe),wu(Nm(le,me),Xe)}var PI=Sie;var Mie=1/0;function Eie(le){var me=le==null?0:le.length;return me?wu(le,Mie):[]}var II=Eie;function kie(le,me){var Xe=le==null?0:le.length;return Xe?(me=me===void 0?1:Eo(me),wu(le,me)):[]}var RI=kie;var Cie=512;function Lie(le){return ap(le,Cie)}var DI=Lie;var Pie=vy("floor"),zI=Pie;var Iie="Expected a function",Rie=8,Die=32,zie=128,Fie=256;function Oie(le){return op(function(me){var Xe=me.length,Mt=Xe,rr=Ip.prototype.thru;for(le&&me.reverse();Mt--;){var Nr=me[Mt];if(typeof Nr!="function")throw new TypeError(Iie);if(rr&&!xa&&K0(Nr)=="wrapper")var xa=new Ip([],!0)}for(Mt=xa?Mt:Xe;++Mt<Xe;){Nr=me[Mt];var Ha=K0(Nr),Za=Ha=="wrapper"?Y0(Nr):void 0;Za&&r_(Za[0])&&Za[1]==(zie|Rie|Die|Fie)&&!Za[4].length&&Za[9]==1?xa=xa[K0(Za[0])].apply(xa,Za[3]):xa=Nr.length==1&&r_(Nr)?xa[Ha]():xa.thru(Nr)}return function(){var un=arguments,Ji=un[0];if(xa&&un.length==1&&mo(Ji))return xa.plant(Ji).value();for(var gn=0,wo=Xe?me[gn].apply(this,un):Ji;++gn<Xe;)wo=me[gn].call(this,wo);return wo}})}var Dw=Oie;var Bie=Dw(),FI=Bie;var Nie=Dw(!0),OI=Nie;function Uie(le,me){return le==null?le:ky(le,_h(me),yc)}var BI=Uie;function jie(le,me){return le==null?le:ww(le,_h(me),yc)}var NI=jie;function Vie(le,me){return le&&lp(le,_h(me))}var UI=Vie;function qie(le,me){return le&&Iy(le,_h(me))}var jI=qie;function Hie(le){for(var me=-1,Xe=le==null?0:le.length,Mt={};++me<Xe;){var rr=le[me];Mt[rr[0]]=rr[1]}return Mt}var VI=Hie;function Gie(le,me){return Fp(me,function(Xe){return tp(le[Xe])})}var Um=Gie;function Wie(le){return le==null?[]:Um(le,Gl(le))}var qI=Wie;function Zie(le){return le==null?[]:Um(le,yc(le))}var HI=Zie;var Xie=Object.prototype,Yie=Xie.hasOwnProperty,Kie=Om(function(le,me,Xe){Yie.call(le,Xe)?le[Xe].push(me):ip(le,Xe,[me])}),GI=Kie;function Jie(le,me){return le>me}var Ry=Jie;function $ie(le){return function(me,Xe){return typeof me=="string"&&typeof Xe=="string"||(me=mh(me),Xe=mh(Xe)),le(me,Xe)}}var jm=$ie;var Qie=jm(Ry),WI=Qie;var ene=jm(function(le,me){return le>=me}),ZI=ene;var tne=Object.prototype,rne=tne.hasOwnProperty;function ane(le,me){return le!=null&&rne.call(le,me)}var XI=ane;function ine(le,me){return le!=null&&hw(le,me,XI)}var YI=ine;var nne=Math.max,one=Math.min;function sne(le,me,Xe){return le>=one(me,Xe)&&le<nne(me,Xe)}var KI=sne;function lne(le,me,Xe){return me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),le=mh(le),KI(le,me,Xe)}var JI=lne;var une="[object String]";function cne(le){return typeof le=="string"||!mo(le)&&ul(le)&&ac(le)==une}var Vm=cne;function fne(le,me){return nl(me,function(Xe){return le[Xe]})}var Dy=fne;function hne(le){return le==null?[]:Dy(le,Gl(le))}var Ld=hne;var pne=Math.max;function dne(le,me,Xe,Mt){le=gc(le)?le:Ld(le),Xe=Xe&&!Mt?Eo(Xe):0;var rr=le.length;return Xe<0&&(Xe=pne(rr+Xe,0)),Vm(le)?Xe<=rr&&le.indexOf(me,Xe)>-1:!!rr&&Ad(le,me,Xe)>-1}var $I=dne;var vne=Math.max;function mne(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=vne(Mt+rr,0)),Ad(le,me,rr)}var QI=mne;function gne(le){var me=le==null?0:le.length;return me?Lf(le,0,-1):[]}var eR=gne;var yne=Math.min;function _ne(le,me,Xe){for(var Mt=Xe?Py:Sm,rr=le[0].length,Nr=le.length,xa=Nr,Ha=Array(Nr),Za=1/0,un=[];xa--;){var Ji=le[xa];xa&&me&&(Ji=nl(Ji,uf(me))),Za=yne(Ji.length,Za),Ha[xa]=!Xe&&(me||rr>=120&&Ji.length>=120)?new Dm(xa&&Ji):void 0}Ji=le[0];var gn=-1,wo=Ha[0];e:for(;++gn<rr&&un.length<Za;){var ps=Ji[gn],Qn=me?me(ps):ps;if(ps=Xe||ps!==0?ps:0,!(wo?Hv(wo,Qn):Mt(un,Qn,Xe))){for(xa=Nr;--xa;){var Ye=Ha[xa];if(!(Ye?Hv(Ye,Qn):Mt(le[xa],Qn,Xe)))continue e}wo&&wo.push(Qn),un.push(ps)}}return un}var zy=_ne;function xne(le){return eu(le)?le:[]}var Fy=xne;var bne=ko(function(le){var me=nl(le,Fy);return me.length&&me[0]===le[0]?zy(me):[]}),tR=bne;var wne=ko(function(le){var me=cf(le),Xe=nl(le,Fy);return me===cf(Xe)?me=void 0:Xe.pop(),Xe.length&&Xe[0]===le[0]?zy(Xe,io(me,2)):[]}),rR=wne;var Tne=ko(function(le){var me=cf(le),Xe=nl(le,Fy);return me=typeof me=="function"?me:void 0,me&&Xe.pop(),Xe.length&&Xe[0]===le[0]?zy(Xe,void 0,me):[]}),aR=Tne;function Ane(le,me,Xe,Mt){return lp(le,function(rr,Nr,xa){me(Mt,Xe(rr),Nr,xa)}),Mt}var iR=Ane;function Sne(le,me){return function(Xe,Mt){return iR(Xe,le,me(Mt),{})}}var zw=Sne;var Mne=Object.prototype,Ene=Mne.toString,kne=zw(function(le,me,Xe){me!=null&&typeof me.toString!="function"&&(me=Ene.call(me)),le[me]=Xe},J0(ic)),nR=kne;var oR=Object.prototype,Cne=oR.hasOwnProperty,Lne=oR.toString,Pne=zw(function(le,me,Xe){me!=null&&typeof me.toString!="function"&&(me=Lne.call(me)),Cne.call(le,me)?le[me].push(Xe):le[me]=[Xe]},io),sR=Pne;function Ine(le,me){return me.length<2?le:ud(le,Lf(me,0,-1))}var Fw=Ine;function Rne(le,me,Xe){me=Rp(me,le),le=Fw(le,me);var Mt=le==null?le:le[yh(cf(me))];return Mt==null?void 0:sf(Mt,le,Xe)}var xv=Rne;var Dne=ko(xv),lR=Dne;var zne=ko(function(le,me,Xe){var Mt=-1,rr=typeof me=="function",Nr=gc(le)?Array(le.length):[];return Op(le,function(xa){Nr[++Mt]=rr?sf(me,xa,Xe):xv(xa,me,Xe)}),Nr}),uR=zne;var Fne="[object ArrayBuffer]";function One(le){return ul(le)&&ac(le)==Fne}var cR=One;var fR=np&&np.isArrayBuffer,Bne=fR?uf(fR):cR,hR=Bne;var Nne="[object Boolean]";function Une(le){return le===!0||le===!1||ul(le)&&ac(le)==Nne}var pR=Une;var jne="[object Date]";function Vne(le){return ul(le)&&ac(le)==jne}var dR=Vne;var vR=np&&np.isDate,qne=vR?uf(vR):dR,mR=qne;function Hne(le){return ul(le)&&le.nodeType===1&&!gv(le)}var gR=Hne;var Gne="[object Map]",Wne="[object Set]",Zne=Object.prototype,Xne=Zne.hasOwnProperty;function Yne(le){if(le==null)return!0;if(gc(le)&&(mo(le)||typeof le=="string"||typeof le.splice=="function"||Kp(le)||Ed(le)||dd(le)))return!le.length;var me=Oh(le);if(me==Gne||me==Wne)return!le.size;if(mv(le))return!ay(le).length;for(var Xe in le)if(Xne.call(le,Xe))return!1;return!0}var yR=Yne;function Kne(le,me){return Fm(le,me)}var _R=Kne;function Jne(le,me,Xe){Xe=typeof Xe=="function"?Xe:void 0;var Mt=Xe?Xe(le,me):void 0;return Mt===void 0?Fm(le,me,void 0,Xe):!!Mt}var xR=Jne;var $ne=Kl.isFinite;function Qne(le){return typeof le=="number"&&$ne(le)}var bR=Qne;function eoe(le){return typeof le=="number"&&le==Eo(le)}var Ow=eoe;function toe(le,me){return le===me||Ay(le,me,Sy(me))}var wR=toe;function roe(le,me,Xe){return Xe=typeof Xe=="function"?Xe:void 0,Ay(le,me,Sy(me),Xe)}var TR=roe;var aoe="[object Number]";function ioe(le){return typeof le=="number"||ul(le)&&ac(le)==aoe}var Bw=ioe;function noe(le){return Bw(le)&&le!=+le}var AR=noe;var ooe=W0?tp:ry,SR=ooe;var soe="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.";function loe(le){if(SR(le))throw new Error(soe);return bb(le)}var MR=loe;function uoe(le){return le==null}var ER=uoe;function coe(le){return le===null}var kR=coe;var foe="[object RegExp]";function hoe(le){return ul(le)&&ac(le)==foe}var CR=hoe;var LR=np&&np.isRegExp,poe=LR?uf(LR):CR,Oy=poe;var PR=9007199254740991;function doe(le){return Ow(le)&&le>=-PR&&le<=PR}var IR=doe;function voe(le){return le===void 0}var RR=voe;var moe="[object WeakMap]";function goe(le){return ul(le)&&Oh(le)==moe}var DR=goe;var yoe="[object WeakSet]";function _oe(le){return ul(le)&&ac(le)==yoe}var zR=_oe;var xoe=1;function boe(le){return io(typeof le=="function"?le:sp(le,xoe))}var FR=boe;var woe=Array.prototype,Toe=woe.join;function Aoe(le,me){return le==null?"":Toe.call(le,me)}var OR=Aoe;var Soe=Cd(function(le,me,Xe){return le+(Xe?"-":"")+me.toLowerCase()}),BR=Soe;var Moe=Om(function(le,me,Xe){ip(le,Xe,me)}),NR=Moe;function Eoe(le,me,Xe){for(var Mt=Xe+1;Mt--;)if(le[Mt]===me)return Mt;return Mt}var UR=Eoe;var koe=Math.max,Coe=Math.min;function Loe(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt;return Xe!==void 0&&(rr=Eo(Xe),rr=rr<0?koe(Mt+rr,0):Coe(rr,Mt-1)),me===me?UR(le,me,rr):Am(le,Pb,rr,!0)}var jR=Loe;var Poe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toLowerCase()}),VR=Poe;var Ioe=Hb("toLowerCase"),qR=Ioe;function Roe(le,me){return le<me}var By=Roe;var Doe=jm(By),HR=Doe;var zoe=jm(function(le,me){return le<=me}),GR=zoe;function Foe(le,me){var Xe={};return me=io(me,3),lp(le,function(Mt,rr,Nr){ip(Xe,me(Mt,rr,Nr),Mt)}),Xe}var WR=Foe;function Ooe(le,me){var Xe={};return me=io(me,3),lp(le,function(Mt,rr,Nr){ip(Xe,rr,me(Mt,rr,Nr))}),Xe}var ZR=Ooe;var Boe=1;function Noe(le){return fw(sp(le,Boe))}var XR=Noe;var Uoe=1;function joe(le,me){return pw(le,sp(me,Uoe))}var YR=joe;function Voe(le,me,Xe){for(var Mt=-1,rr=le.length;++Mt<rr;){var Nr=le[Mt],xa=me(Nr);if(xa!=null&&(Ha===void 0?xa===xa&&!_f(xa):Xe(xa,Ha)))var Ha=xa,Za=Nr}return Za}var qm=Voe;function qoe(le){return le&&le.length?qm(le,ic,Ry):void 0}var KR=qoe;function Hoe(le,me){return le&&le.length?qm(le,io(me,2),Ry):void 0}var JR=Hoe;function Goe(le,me){for(var Xe,Mt=-1,rr=le.length;++Mt<rr;){var Nr=me(le[Mt]);Nr!==void 0&&(Xe=Xe===void 0?Nr:Xe+Nr)}return Xe}var Ny=Goe;var Woe=NaN;function Zoe(le,me){var Xe=le==null?0:le.length;return Xe?Ny(le,me)/Xe:Woe}var Nw=Zoe;function Xoe(le){return Nw(le,ic)}var $R=Xoe;function Yoe(le,me){return Nw(le,io(me,2))}var QR=Yoe;var Koe=Md(function(le,me,Xe){Ly(le,me,Xe)}),eD=Koe;var Joe=ko(function(le,me){return function(Xe){return xv(Xe,le,me)}}),tD=Joe;var $oe=ko(function(le,me){return function(Xe){return xv(le,Xe,me)}}),rD=$oe;function Qoe(le){return le&&le.length?qm(le,ic,By):void 0}var aD=Qoe;function ese(le,me){return le&&le.length?qm(le,io(me,2),By):void 0}var iD=ese;function tse(le,me,Xe){var Mt=Gl(me),rr=Um(me,Mt),Nr=!(ll(Xe)&&"chain"in Xe)||!!Xe.chain,xa=tp(le);return zh(rr,function(Ha){var Za=me[Ha];le[Ha]=Za,xa&&(le.prototype[Ha]=function(){var un=this.__chain__;if(Nr||un){var Ji=le(this.__wrapped__),gn=Ji.__actions__=Wc(this.__actions__);return gn.push({func:Za,args:arguments,thisArg:le}),Ji.__chain__=un,Ji}return Za.apply(le,Dp([this.value()],arguments))})}),le}var Uw=tse;var rse=bm(function(le,me){return le*me},1),nD=rse;var ase="Expected a function";function ise(le){if(typeof le!="function")throw new TypeError(ase);return function(){var me=arguments;switch(me.length){case 0:return!le.call(this);case 1:return!le.call(this,me[0]);case 2:return!le.call(this,me[0],me[1]);case 3:return!le.call(this,me[0],me[1],me[2])}return!le.apply(this,me)}}var Gv=ise;function nse(le){for(var me,Xe=[];!(me=le.next()).done;)Xe.push(me.value);return Xe}var oD=nse;var ose="[object Map]",sse="[object Set]",OA=yf?yf.iterator:void 0;function lse(le){if(!le)return[];if(gc(le))return Vm(le)?Fh(le):Wc(le);if(OA&&le[OA])return oD(le[OA]());var me=Oh(le),Xe=me==ose?Ty:me==sse?zm:Ld;return Xe(le)}var jw=lse;function use(){this.__values__===void 0&&(this.__values__=jw(this.value()));var le=this.__index__>=this.__values__.length,me=le?void 0:this.__values__[this.__index__++];return{done:le,value:me}}var sD=use;function cse(le,me){var Xe=le.length;if(Xe)return me+=me<0?Xe:0,rp(me,Xe)?le[me]:void 0}var Vw=cse;function fse(le,me){return le&&le.length?Vw(le,Eo(me)):void 0}var lD=fse;function hse(le){return le=Eo(le),ko(function(me){return Vw(me,le)})}var uD=hse;function pse(le,me){return me=Rp(me,le),le=Fw(le,me),le==null||delete le[yh(cf(me))]}var Uy=pse;function dse(le){return gv(le)?void 0:le}var cD=dse;var vse=1,mse=2,gse=4,yse=op(function(le,me){var Xe={};if(le==null)return Xe;var Mt=!1;me=nl(me,function(Nr){return Nr=Rp(Nr,le),Mt||(Mt=Nr.length>1),Nr}),gh(le,_y(le),Xe),Mt&&(Xe=sp(Xe,vse|mse|gse,cD));for(var rr=me.length;rr--;)Uy(Xe,me[rr]);return Xe}),fD=yse;function _se(le,me,Xe,Mt){if(!ll(le))return le;me=Rp(me,le);for(var rr=-1,Nr=me.length,xa=Nr-1,Ha=le;Ha!=null&&++rr<Nr;){var Za=yh(me[rr]),un=Xe;if(Za==="__proto__"||Za==="constructor"||Za==="prototype")return le;if(rr!=xa){var Ji=Ha[Za];un=Mt?Mt(Ji,Za,Ha):void 0,un===void 0&&(un=ll(Ji)?Ji:rp(me[rr+1])?[]:{})}vv(Ha,Za,un),Ha=Ha[Za]}return le}var bv=_se;function xse(le,me,Xe){for(var Mt=-1,rr=me.length,Nr={};++Mt<rr;){var xa=me[Mt],Ha=ud(le,xa);Xe(Ha,xa)&&bv(Nr,Rp(xa,le),Ha)}return Nr}var qw=xse;function bse(le,me){if(le==null)return{};var Xe=nl(_y(le),function(Mt){return[Mt]});return me=io(me),qw(le,Xe,function(Mt,rr){return me(Mt,rr[0])})}var Hw=bse;function wse(le,me){return Hw(le,Gv(io(me)))}var hD=wse;function Tse(le){return Vb(2,le)}var pD=Tse;function Ase(le,me){var Xe=le.length;for(le.sort(me);Xe--;)le[Xe]=le[Xe].value;return le}var dD=Ase;function Sse(le,me){if(le!==me){var Xe=le!==void 0,Mt=le===null,rr=le===le,Nr=_f(le),xa=me!==void 0,Ha=me===null,Za=me===me,un=_f(me);if(!Ha&&!un&&!Nr&&le>me||Nr&&xa&&Za&&!Ha&&!un||Mt&&xa&&Za||!Xe&&Za||!rr)return 1;if(!Mt&&!Nr&&!un&&le<me||un&&Xe&&rr&&!Mt&&!Nr||Ha&&Xe&&rr||!xa&&rr||!Za)return-1}return 0}var Gw=Sse;function Mse(le,me,Xe){for(var Mt=-1,rr=le.criteria,Nr=me.criteria,xa=rr.length,Ha=Xe.length;++Mt<xa;){var Za=Gw(rr[Mt],Nr[Mt]);if(Za){if(Mt>=Ha)return Za;var un=Xe[Mt];return Za*(un=="desc"?-1:1)}}return le.index-me.index}var vD=Mse;function Ese(le,me,Xe){me.length?me=nl(me,function(Nr){return mo(Nr)?function(xa){return ud(xa,Nr.length===1?Nr[0]:Nr)}:Nr}):me=[ic];var Mt=-1;me=nl(me,uf(io));var rr=Rw(le,function(Nr,xa,Ha){var Za=nl(me,function(un){return un(Nr)});return{criteria:Za,index:++Mt,value:Nr}});return dD(rr,function(Nr,xa){return vD(Nr,xa,Xe)})}var Ww=Ese;function kse(le,me,Xe,Mt){return le==null?[]:(mo(me)||(me=me==null?[]:[me]),Xe=Mt?void 0:Xe,mo(Xe)||(Xe=Xe==null?[]:[Xe]),Ww(le,me,Xe))}var mD=kse;function Cse(le){return op(function(me){return me=nl(me,uf(io)),ko(function(Xe){var Mt=this;return le(me,function(rr){return sf(rr,Mt,Xe)})})})}var jy=Cse;var Lse=jy(nl),gD=Lse;var Pse=ko,yD=Pse;var Ise=Math.min,Rse=yD(function(le,me){me=me.length==1&&mo(me[0])?nl(me[0],uf(io)):nl(wu(me,1),uf(io));var Xe=me.length;return ko(function(Mt){for(var rr=-1,Nr=Ise(Mt.length,Xe);++rr<Nr;)Mt[rr]=me[rr].call(this,Mt[rr]);return sf(le,this,Mt)})}),_D=Rse;var Dse=jy(Mw),xD=Dse;var zse=jy(wy),bD=zse;var Fse=9007199254740991,Ose=Math.floor;function Bse(le,me){var Xe="";if(!le||me<1||me>Fse)return Xe;do me%2&&(Xe+=le),me=Ose(me/2),me&&(le+=le);while(me);return Xe}var d_=Bse;var Nse=Ey("length"),wD=Nse;var AD="\\ud800-\\udfff",Use="\\u0300-\\u036f",jse="\\ufe20-\\ufe2f",Vse="\\u20d0-\\u20ff",qse=Use+jse+Vse,Hse="\\ufe0e\\ufe0f",Gse="["+AD+"]",BA="["+qse+"]",NA="\\ud83c[\\udffb-\\udfff]",Wse="(?:"+BA+"|"+NA+")",SD="[^"+AD+"]",MD="(?:\\ud83c[\\udde6-\\uddff]){2}",ED="[\\ud800-\\udbff][\\udc00-\\udfff]",Zse="\\u200d",kD=Wse+"?",CD="["+Hse+"]?",Xse="(?:"+Zse+"(?:"+[SD,MD,ED].join("|")+")"+CD+kD+")*",Yse=CD+kD+Xse,Kse="(?:"+[SD+BA+"?",BA,MD,ED,Gse].join("|")+")",TD=RegExp(NA+"(?="+NA+")|"+Kse+Yse,"g");function Jse(le){for(var me=TD.lastIndex=0;TD.test(le);)++me;return me}var LD=Jse;function $se(le){return kd(le)?LD(le):wD(le)}var Pd=$se;var Qse=Math.ceil;function ele(le,me){me=me===void 0?" ":Vf(me);var Xe=me.length;if(Xe<2)return Xe?d_(me,le):me;var Mt=d_(me,Qse(le/Pd(me)));return kd(me)?zp(Fh(Mt),0,le).join(""):Mt.slice(0,le)}var qg=ele;var tle=Math.ceil,rle=Math.floor;function ale(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;if(!me||Mt>=me)return le;var rr=(me-Mt)/2;return qg(rle(rr),Xe)+le+qg(tle(rr),Xe)}var PD=ale;function ile(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt<me?le+qg(me-Mt,Xe):le}var ID=ile;function nle(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt<me?qg(me-Mt,Xe)+le:le}var RD=nle;var ole=/^\s+/,sle=Kl.parseInt;function lle(le,me,Xe){return Xe||me==null?me=0:me&&(me=+me),sle(ws(le).replace(ole,""),me||0)}var DD=lle;var ule=32,UA=ko(function(le,me){var Xe=Yp(me,Sd(UA));return ap(le,ule,void 0,me,Xe)});UA.placeholder={};var Zw=UA;var cle=64,jA=ko(function(le,me){var Xe=Yp(me,Sd(jA));return ap(le,cle,void 0,me,Xe)});jA.placeholder={};var zD=jA;var fle=Om(function(le,me,Xe){le[Xe?0:1].push(me)},function(){return[[],[]]}),FD=fle;function hle(le,me){return qw(le,me,function(Xe,Mt){return My(le,Mt)})}var OD=hle;var ple=op(function(le,me){return le==null?{}:OD(le,me)}),BD=ple;function dle(le){for(var me,Xe=this;Xe instanceof wm;){var Mt=Eb(Xe);Mt.__index__=0,Mt.__values__=void 0,me?rr.__wrapped__=Mt:me=Mt;var rr=Mt;Xe=Xe.__wrapped__}return rr.__wrapped__=le,me}var ND=dle;function vle(le){return function(me){return le==null?void 0:ud(le,me)}}var UD=vle;function mle(le,me,Xe,Mt){for(var rr=Xe-1,Nr=le.length;++rr<Nr;)if(Mt(le[rr],me))return rr;return-1}var jD=mle;var gle=Array.prototype,VD=gle.splice;function yle(le,me,Xe,Mt){var rr=Mt?jD:Ad,Nr=-1,xa=me.length,Ha=le;for(le===me&&(me=Wc(me)),Xe&&(Ha=nl(le,uf(Xe)));++Nr<xa;)for(var Za=0,un=me[Nr],Ji=Xe?Xe(un):un;(Za=rr(Ha,Ji,Za,Mt))>-1;)Ha!==le&&VD.call(Ha,Za,1),VD.call(le,Za,1);return le}var Vy=yle;function _le(le,me){return le&&le.length&&me&&me.length?Vy(le,me):le}var Xw=_le;var xle=ko(Xw),qD=xle;function ble(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,io(Xe,2)):le}var HD=ble;function wle(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,void 0,Xe):le}var GD=wle;var Tle=Array.prototype,Ale=Tle.splice;function Sle(le,me){for(var Xe=le?me.length:0,Mt=Xe-1;Xe--;){var rr=me[Xe];if(Xe==Mt||rr!==Nr){var Nr=rr;rp(rr)?Ale.call(le,rr,1):Uy(le,rr)}}return le}var Yw=Sle;var Mle=op(function(le,me){var Xe=le==null?0:le.length,Mt=uy(le,me);return Yw(le,nl(me,function(rr){return rp(rr,Xe)?+rr:rr}).sort(Gw)),Mt}),WD=Mle;var Ele=Math.floor,kle=Math.random;function Cle(le,me){return le+Ele(kle()*(me-le+1))}var qy=Cle;var Lle=parseFloat,Ple=Math.min,Ile=Math.random;function Rle(le,me,Xe){if(Xe&&typeof Xe!="boolean"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe===void 0&&(typeof me=="boolean"?(Xe=me,me=void 0):typeof le=="boolean"&&(Xe=le,le=void 0)),le===void 0&&me===void 0?(le=0,me=1):(le=sd(le),me===void 0?(me=le,le=0):me=sd(me)),le>me){var Mt=le;le=me,me=Mt}if(Xe||le%1||me%1){var rr=Ile();return Ple(le+rr*(me-le+Lle("1e-"+((rr+"").length-1))),me)}return qy(le,me)}var ZD=Rle;var Dle=Math.ceil,zle=Math.max;function Fle(le,me,Xe,Mt){for(var rr=-1,Nr=zle(Dle((me-le)/(Xe||1)),0),xa=Array(Nr);Nr--;)xa[Mt?Nr:++rr]=le,le+=Xe;return xa}var XD=Fle;function Ole(le){return function(me,Xe,Mt){return Mt&&typeof Mt!="number"&&nc(me,Xe,Mt)&&(Xe=Mt=void 0),me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),Mt=Mt===void 0?me<Xe?1:-1:sd(Mt),XD(me,Xe,Mt,le)}}var Kw=Ole;var Ble=Kw(),YD=Ble;var Nle=Kw(!0),KD=Nle;var Ule=256,jle=op(function(le,me){return ap(le,Ule,void 0,void 0,void 0,me)}),JD=jle;function Vle(le,me,Xe,Mt,rr){return rr(le,function(Nr,xa,Ha){Xe=Mt?(Mt=!1,Nr):me(Xe,Nr,xa,Ha)}),Xe}var Jw=Vle;function qle(le,me,Xe){var Mt=mo(le)?hy:Jw,rr=arguments.length<3;return Mt(le,io(me,4),Xe,rr,Op)}var $D=qle;function Hle(le,me,Xe,Mt){var rr=le==null?0:le.length;for(Mt&&rr&&(Xe=le[--rr]);rr--;)Xe=me(Xe,le[rr],rr,le);return Xe}var QD=Hle;function Gle(le,me,Xe){var Mt=mo(le)?QD:Jw,rr=arguments.length<3;return Mt(le,io(me,4),Xe,rr,Tw)}var ez=Gle;function Wle(le,me){var Xe=mo(le)?Fp:kw;return Xe(le,Gv(io(me,3)))}var tz=Wle;function Zle(le,me){var Xe=[];if(!(le&&le.length))return Xe;var Mt=-1,rr=[],Nr=le.length;for(me=io(me,3);++Mt<Nr;){var xa=le[Mt];me(xa,Mt,le)&&(Xe.push(xa),rr.push(Mt))}return Yw(le,rr),Xe}var rz=Zle;function Xle(le,me,Xe){return(Xe?nc(le,me,Xe):me===void 0)?me=1:me=Eo(me),d_(ws(le),me)}var az=Xle;function Yle(){var le=arguments,me=ws(le[0]);return le.length<3?me:me.replace(le[1],le[2])}var iz=Yle;var Kle="Expected a function";function Jle(le,me){if(typeof le!="function")throw new TypeError(Kle);return me=me===void 0?me:Eo(me),ko(le,me)}var nz=Jle;function $le(le,me,Xe){me=Rp(me,le);var Mt=-1,rr=me.length;for(rr||(rr=1,le=void 0);++Mt<rr;){var Nr=le?.[yh(me[Mt])];Nr===void 0&&(Mt=rr,Nr=Xe),le=tp(Nr)?Nr.call(le):Nr}return le}var oz=$le;var Qle=Array.prototype,eue=Qle.reverse;function tue(le){return le==null?le:eue.call(le)}var v_=tue;var rue=vy("round"),sz=rue;function aue(le){var me=le.length;return me?le[qy(0,me-1)]:void 0}var $w=aue;function iue(le){return $w(Ld(le))}var lz=iue;function nue(le){var me=mo(le)?$w:lz;return me(le)}var uz=nue;function oue(le,me){var Xe=-1,Mt=le.length,rr=Mt-1;for(me=me===void 0?Mt:me;++Xe<me;){var Nr=qy(Xe,rr),xa=le[Nr];le[Nr]=le[Xe],le[Xe]=xa}return le.length=me,le}var Hm=oue;function sue(le,me){return Hm(Wc(le),cd(me,0,le.length))}var cz=sue;function lue(le,me){var Xe=Ld(le);return Hm(Xe,cd(me,0,Xe.length))}var fz=lue;function uue(le,me,Xe){(Xe?nc(le,me,Xe):me===void 0)?me=1:me=Eo(me);var Mt=mo(le)?cz:fz;return Mt(le,me)}var hz=uue;function cue(le,me,Xe){return le==null?le:bv(le,me,Xe)}var pz=cue;function fue(le,me,Xe,Mt){return Mt=typeof Mt=="function"?Mt:void 0,le==null?le:bv(le,me,Xe,Mt)}var dz=fue;function hue(le){return Hm(Wc(le))}var vz=hue;function pue(le){return Hm(Ld(le))}var mz=pue;function due(le){var me=mo(le)?vz:mz;return me(le)}var gz=due;var vue="[object Map]",mue="[object Set]";function gue(le){if(le==null)return 0;if(gc(le))return Vm(le)?Pd(le):le.length;var me=Oh(le);return me==vue||me==mue?le.size:ay(le).length}var yz=gue;function yue(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(Xe&&typeof Xe!="number"&&nc(le,me,Xe)?(me=0,Xe=Mt):(me=me==null?0:Eo(me),Xe=Xe===void 0?Mt:Eo(Xe)),Lf(le,me,Xe)):[]}var _z=yue;var _ue=Cd(function(le,me,Xe){return le+(Xe?"_":"")+me.toLowerCase()}),xz=_ue;function xue(le,me){var Xe;return Op(le,function(Mt,rr,Nr){return Xe=me(Mt,rr,Nr),!Xe}),!!Xe}var bz=xue;function bue(le,me,Xe){var Mt=mo(le)?wy:bz;return Xe&&nc(le,me,Xe)&&(me=void 0),Mt(le,io(me,3))}var wz=bue;var wue=ko(function(le,me){if(le==null)return[];var Xe=me.length;return Xe>1&&nc(le,me[0],me[1])?me=[]:Xe>2&&nc(me[0],me[1],me[2])&&(me=[me[0]]),Ww(le,wu(me,1),[])}),Tz=wue;var Tue=4294967295,Aue=Tue-1,Sue=Math.floor,Mue=Math.min;function Eue(le,me,Xe,Mt){var rr=0,Nr=le==null?0:le.length;if(Nr===0)return 0;me=Xe(me);for(var xa=me!==me,Ha=me===null,Za=_f(me),un=me===void 0;rr<Nr;){var Ji=Sue((rr+Nr)/2),gn=Xe(le[Ji]),wo=gn!==void 0,ps=gn===null,Qn=gn===gn,Ye=_f(gn);if(xa)var Ps=Mt||Qn;else un?Ps=Qn&&(Mt||wo):Ha?Ps=Qn&&wo&&(Mt||!ps):Za?Ps=Qn&&wo&&!ps&&(Mt||!Ye):ps||Ye?Ps=!1:Ps=Mt?gn<=me:gn<me;Ps?rr=Ji+1:Nr=Ji}return Mue(Nr,Aue)}var Hy=Eue;var kue=4294967295,Cue=kue>>>1;function Lue(le,me,Xe){var Mt=0,rr=le==null?Mt:le.length;if(typeof me=="number"&&me===me&&rr<=Cue){for(;Mt<rr;){var Nr=Mt+rr>>>1,xa=le[Nr];xa!==null&&!_f(xa)&&(Xe?xa<=me:xa<me)?Mt=Nr+1:rr=Nr}return rr}return Hy(le,me,ic,Xe)}var Gm=Lue;function Pue(le,me){return Gm(le,me)}var Az=Pue;function Iue(le,me,Xe){return Hy(le,me,io(Xe,2))}var Sz=Iue;function Rue(le,me){var Xe=le==null?0:le.length;if(Xe){var Mt=Gm(le,me);if(Mt<Xe&&qf(le[Mt],me))return Mt}return-1}var Mz=Rue;function Due(le,me){return Gm(le,me,!0)}var Ez=Due;function zue(le,me,Xe){return Hy(le,me,io(Xe,2),!0)}var kz=zue;function Fue(le,me){var Xe=le==null?0:le.length;if(Xe){var Mt=Gm(le,me,!0)-1;if(qf(le[Mt],me))return Mt}return-1}var Cz=Fue;function Oue(le,me){for(var Xe=-1,Mt=le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe],Ha=me?me(xa):xa;if(!Xe||!qf(Ha,Za)){var Za=Ha;Nr[rr++]=xa===0?0:xa}}return Nr}var Qw=Oue;function Bue(le){return le&&le.length?Qw(le):[]}var Lz=Bue;function Nue(le,me){return le&&le.length?Qw(le,io(me,2)):[]}var Pz=Nue;var Uue=4294967295;function jue(le,me,Xe){return Xe&&typeof Xe!="number"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe=Xe===void 0?Uue:Xe>>>0,Xe?(le=ws(le),le&&(typeof me=="string"||me!=null&&!Oy(me))&&(me=Vf(me),!me&&kd(le))?zp(Fh(le),0,Xe):le.split(me,Xe)):[]}var Iz=jue;var Vue="Expected a function",que=Math.max;function Hue(le,me){if(typeof le!="function")throw new TypeError(Vue);return me=me==null?0:que(Eo(me),0),ko(function(Xe){var Mt=Xe[me],rr=zp(Xe,0,me);return Mt&&Dp(rr,Mt),sf(le,this,rr)})}var Rz=Hue;var Gue=Cd(function(le,me,Xe){return le+(Xe?" ":"")+fy(me)}),Dz=Gue;function Wue(le,me,Xe){return le=ws(le),Xe=Xe==null?0:cd(Eo(Xe),0,le.length),me=Vf(me),le.slice(Xe,Xe+me.length)==me}var zz=Wue;function Zue(){return{}}var Fz=Zue;function Xue(){return""}var Oz=Xue;function Yue(){return!0}var Bz=Yue;var Kue=bm(function(le,me){return le-me},0),Nz=Kue;function Jue(le){return le&&le.length?Ny(le,ic):0}var Uz=Jue;function $ue(le,me){return le&&le.length?Ny(le,io(me,2)):0}var jz=$ue;function Que(le){var me=le==null?0:le.length;return me?Lf(le,1,me):[]}var Vz=Que;function ece(le,me,Xe){return le&&le.length?(me=Xe||me===void 0?1:Eo(me),Lf(le,0,me<0?0:me)):[]}var qz=ece;function tce(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,me<0?0:me,Mt)):[]}var Hz=tce;function rce(le,me){return le&&le.length?Bm(le,io(me,3),!1,!0):[]}var Gz=rce;function ace(le,me){return le&&le.length?Bm(le,io(me,3)):[]}var Wz=ace;function ice(le,me){return me(le),le}var Zz=ice;var Xz=Object.prototype,nce=Xz.hasOwnProperty;function oce(le,me,Xe,Mt){return le===void 0||qf(le,Xz[Xe])&&!nce.call(Mt,Xe)?me:le}var VA=oce;var sce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"};function lce(le){return"\\"+sce[le]}var Yz=lce;var uce=/<%=([\s\S]+?)%>/g,e2=uce;var cce=/<%-([\s\S]+?)%>/g,Kz=cce;var fce=/<%([\s\S]+?)%>/g,Jz=fce;var hce={escape:Kz,evaluate:Jz,interpolate:e2,variable:"",imports:{_:{escape:Sw}}},m_=hce;var pce="Invalid `variable` option passed into `_.template`",dce=/\b__p \+= '';/g,vce=/\b(__p \+=) '' \+/g,mce=/(__e\(.*?\)|\b__t\)) \+\n'';/g,gce=/[()=,{}\[\]\/\s]/,yce=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,t2=/($^)/,_ce=/['\n\r\u2028\u2029\\]/g,xce=Object.prototype,$z=xce.hasOwnProperty;function bce(le,me,Xe){var Mt=m_.imports._.templateSettings||m_;Xe&&nc(le,me,Xe)&&(me=void 0),le=ws(le),me=Em({},me,Mt,VA);var rr=Em({},me.imports,Mt.imports,VA),Nr=Gl(rr),xa=Dy(rr,Nr),Ha,Za,un=0,Ji=me.interpolate||t2,gn="__p += '",wo=RegExp((me.escape||t2).source+"|"+Ji.source+"|"+(Ji===e2?yce:t2).source+"|"+(me.evaluate||t2).source+"|$","g"),ps=$z.call(me,"sourceURL")?"//# sourceURL="+(me.sourceURL+"").replace(/\s/g," ")+`
`:"";le.replace(wo,function(Ps,Ml,Ul,Hf,xh,Bp){return Ul||(Ul=Hf),gn+=le.slice(un,Bp).replace(_ce,Yz),Ml&&(Ha=!0,gn+=`' +
__e(`+Ml+`) +
'`),xh&&(Za=!0,gn+=`';
`+xh+`;
__p += '`),Ul&&(gn+=`' +
((__t = (`+Ul+`)) == null ? '' : __t) +
'`),un=Bp+Ps.length,Ps}),gn+=`';
`;var Qn=$z.call(me,"variable")&&me.variable;if(!Qn)gn=`with (obj) {
`+gn+`
}
`;else if(gce.test(Qn))throw new Error(pce);gn=(Za?gn.replace(dce,""):gn).replace(vce,"$1").replace(mce,"$1;"),gn="function("+(Qn||"obj")+`) {
`+(Qn?"":`obj || (obj = {});
`)+"var __t, __p = ''"+(Ha?", __e = _.escape":"")+(Za?`, __j = Array.prototype.join;
function print() { __p += __j.call(arguments, '') }
`:`;
`)+gn+`return __p
}`;var Ye=jb(function(){return Function(Nr,ps+"return "+gn).apply(void 0,xa)});if(Ye.source=gn,cy(Ye))throw Ye;return Ye}var Qz=bce;var wce="Expected a function";function Tce(le,me,Xe){var Mt=!0,rr=!0;if(typeof le!="function")throw new TypeError(wce);return ll(Xe)&&(Mt="leading"in Xe?!!Xe.leading:Mt,rr="trailing"in Xe?!!Xe.trailing:rr),yw(le,me,{leading:Mt,maxWait:me,trailing:rr})}var e8=Tce;function Ace(le,me){return me(le)}var Wv=Ace;var Sce=9007199254740991,qA=4294967295,Mce=Math.min;function Ece(le,me){if(le=Eo(le),le<1||le>Sce)return[];var Xe=qA,Mt=Mce(le,qA);me=_h(me),le-=qA;for(var rr=ty(Mt,me);++Xe<le;)me(Xe);return rr}var t8=Ece;function kce(){return this}var r8=kce;function Cce(le,me){var Xe=le;return Xe instanceof dl&&(Xe=Xe.value()),hy(me,function(Mt,rr){return rr.func.apply(rr.thisArg,Dp([Mt],rr.args))},Xe)}var r2=Cce;function Lce(){return r2(this.__wrapped__,this.__actions__)}var Wm=Lce;function Pce(le){return ws(le).toLowerCase()}var a8=Pce;function Ice(le){return mo(le)?nl(le,yh):_f(le)?[le]:Wc(Nb(ws(le)))}var i8=Ice;var n8=9007199254740991;function Rce(le){return le?cd(Eo(le),-n8,n8):le===0?le:0}var o8=Rce;function Dce(le){return ws(le).toUpperCase()}var s8=Dce;function zce(le,me,Xe){var Mt=mo(le),rr=Mt||Kp(le)||Ed(le);if(me=io(me,4),Xe==null){var Nr=le&&le.constructor;rr?Xe=Mt?new Nr:[]:ll(le)?Xe=tp(Nr)?Td(Im(le)):{}:Xe={}}return(rr?zh:lp)(le,function(xa,Ha,Za){return me(Xe,xa,Ha,Za)}),Xe}var l8=zce;function Fce(le,me){for(var Xe=le.length;Xe--&&Ad(me,le[Xe],0)>-1;);return Xe}var a2=Fce;function Oce(le,me){for(var Xe=-1,Mt=le.length;++Xe<Mt&&Ad(me,le[Xe],0)>-1;);return Xe}var i2=Oce;function Bce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return xb(le);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=Fh(me),Nr=i2(Mt,rr),xa=a2(Mt,rr)+1;return zp(Mt,Nr,xa).join("")}var u8=Bce;function Nce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.slice(0,_b(le)+1);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=a2(Mt,Fh(me))+1;return zp(Mt,0,rr).join("")}var c8=Nce;var Uce=/^\s+/;function jce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.replace(Uce,"");if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=i2(Mt,Fh(me));return zp(Mt,rr).join("")}var f8=jce;var Vce=30,qce="...",Hce=/\w*$/;function Gce(le,me){var Xe=Vce,Mt=qce;if(ll(me)){var rr="separator"in me?me.separator:rr;Xe="length"in me?Eo(me.length):Xe,Mt="omission"in me?Vf(me.omission):Mt}le=ws(le);var Nr=le.length;if(kd(le)){var xa=Fh(le);Nr=xa.length}if(Xe>=Nr)return le;var Ha=Xe-Pd(Mt);if(Ha<1)return Mt;var Za=xa?zp(xa,0,Ha).join(""):le.slice(0,Ha);if(rr===void 0)return Za+Mt;if(xa&&(Ha+=Za.length-Ha),Oy(rr)){if(le.slice(Ha).search(rr)){var un,Ji=Za;for(rr.global||(rr=RegExp(rr.source,ws(Hce.exec(rr))+"g")),rr.lastIndex=0;un=rr.exec(Ji);)var gn=un.index;Za=Za.slice(0,gn===void 0?Ha:gn)}}else if(le.indexOf(Vf(rr),Ha)!=Ha){var wo=Za.lastIndexOf(rr);wo>-1&&(Za=Za.slice(0,wo))}return Za+Mt}var h8=Gce;function Wce(le){return Db(le,1)}var p8=Wce;var Zce={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},Xce=py(Zce),d8=Xce;var v8=/&(?:amp|lt|gt|quot|#39);/g,Yce=RegExp(v8.source);function Kce(le){return le=ws(le),le&&Yce.test(le)?le.replace(v8,d8):le}var m8=Kce;var Jce=1/0,$ce=Rm&&1/zm(new Rm([,-0]))[1]==Jce?function(le){return new Rm(le)}:X0,g8=$ce;var Qce=200;function efe(le,me,Xe){var Mt=-1,rr=Sm,Nr=le.length,xa=!0,Ha=[],Za=Ha;if(Xe)xa=!1,rr=Py;else if(Nr>=Qce){var un=me?null:g8(le);if(un)return zm(un);xa=!1,rr=Hv,Za=new Dm}else Za=me?[]:Ha;e:for(;++Mt<Nr;){var Ji=le[Mt],gn=me?me(Ji):Ji;if(Ji=Xe||Ji!==0?Ji:0,xa&&gn===gn){for(var wo=Za.length;wo--;)if(Za[wo]===gn)continue e;me&&Za.push(gn),Ha.push(Ji)}else rr(Za,gn,Xe)||(Za!==Ha&&Za.push(gn),Ha.push(Ji))}return Ha}var Jp=efe;var tfe=ko(function(le){return Jp(wu(le,1,eu,!0))}),y8=tfe;var rfe=ko(function(le){var me=cf(le);return eu(me)&&(me=void 0),Jp(wu(le,1,eu,!0),io(me,2))}),_8=rfe;var afe=ko(function(le){var me=cf(le);return me=typeof me=="function"?me:void 0,Jp(wu(le,1,eu,!0),void 0,me)}),x8=afe;function ife(le){return le&&le.length?Jp(le):[]}var b8=ife;function nfe(le,me){return le&&le.length?Jp(le,io(me,2)):[]}var w8=nfe;function ofe(le,me){return me=typeof me=="function"?me:void 0,le&&le.length?Jp(le,void 0,me):[]}var T8=ofe;var sfe=0;function lfe(le){var me=++sfe;return ws(le)+me}var A8=lfe;function ufe(le,me){return le==null?!0:Uy(le,me)}var S8=ufe;var cfe=Math.max;function ffe(le){if(!(le&&le.length))return[];var me=0;return le=Fp(le,function(Xe){if(eu(Xe))return me=cfe(Xe.length,me),!0}),ty(me,function(Xe){return nl(le,Ey(Xe))})}var Gy=ffe;function hfe(le,me){if(!(le&&le.length))return[];var Xe=Gy(le);return me==null?Xe:nl(Xe,function(Mt){return sf(me,void 0,Mt)})}var n2=hfe;function pfe(le,me,Xe,Mt){return bv(le,me,Xe(ud(le,me)),Mt)}var o2=pfe;function dfe(le,me,Xe){return le==null?le:o2(le,me,_h(Xe))}var M8=dfe;function vfe(le,me,Xe,Mt){return Mt=typeof Mt=="function"?Mt:void 0,le==null?le:o2(le,me,_h(Xe),Mt)}var E8=vfe;var mfe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toUpperCase()}),k8=mfe;function gfe(le){return le==null?[]:Dy(le,yc(le))}var C8=gfe;var yfe=ko(function(le,me){return eu(le)?_v(le,me):[]}),L8=yfe;function _fe(le,me){return Zw(_h(me),le)}var P8=_fe;var xfe=op(function(le){var me=le.length,Xe=me?le[0]:0,Mt=this.__wrapped__,rr=function(Nr){return uy(Nr,le)};return me>1||this.__actions__.length||!(Mt instanceof dl)||!rp(Xe)?this.thru(rr):(Mt=Mt.slice(Xe,+Xe+(me?1:0)),Mt.__actions__.push({func:Wv,args:[rr],thisArg:void 0}),new Ip(Mt,this.__chain__).thru(function(Nr){return me&&!Nr.length&&Nr.push(void 0),Nr}))}),I8=xfe;function bfe(){return Xb(this)}var R8=bfe;function wfe(){var le=this.__wrapped__;if(le instanceof dl){var me=le;return this.__actions__.length&&(me=new dl(this)),me=me.reverse(),me.__actions__.push({func:Wv,args:[v_],thisArg:void 0}),new Ip(me,this.__chain__)}return this.thru(v_)}var D8=wfe;function Tfe(le,me,Xe){var Mt=le.length;if(Mt<2)return Mt?Jp(le[0]):[];for(var rr=-1,Nr=Array(Mt);++rr<Mt;)for(var xa=le[rr],Ha=-1;++Ha<Mt;)Ha!=rr&&(Nr[rr]=_v(Nr[rr]||xa,le[Ha],me,Xe));return Jp(wu(Nr,1),me,Xe)}var Wy=Tfe;var Afe=ko(function(le){return Wy(Fp(le,eu))}),z8=Afe;var Sfe=ko(function(le){var me=cf(le);return eu(me)&&(me=void 0),Wy(Fp(le,eu),io(me,2))}),F8=Sfe;var Mfe=ko(function(le){var me=cf(le);return me=typeof me=="function"?me:void 0,Wy(Fp(le,eu),void 0,me)}),O8=Mfe;var Efe=ko(Gy),B8=Efe;function kfe(le,me,Xe){for(var Mt=-1,rr=le.length,Nr=me.length,xa={};++Mt<rr;){var Ha=Mt<Nr?me[Mt]:void 0;Xe(xa,le[Mt],Ha)}return xa}var s2=kfe;function Cfe(le,me){return s2(le||[],me||[],vv)}var N8=Cfe;function Lfe(le,me){return s2(le||[],me||[],bv)}var U8=Lfe;var Pfe=ko(function(le){var me=le.length,Xe=me>1?le[me-1]:void 0;return Xe=typeof Xe=="function"?(le.pop(),Xe):void 0,n2(le,Xe)}),j8=Pfe;var is={chunk:NP,compact:A6,concat:S6,difference:iI,differenceBy:nI,differenceWith:oI,drop:lI,dropRight:uI,dropRightWhile:cI,dropWhile:fI,fill:TI,findIndex:Lw,findLastIndex:Iw,first:p_,flatten:Ub,flattenDeep:II,flattenDepth:RI,fromPairs:VI,head:p_,indexOf:QI,initial:eR,intersection:tR,intersectionBy:rR,intersectionWith:aR,join:OR,last:cf,lastIndexOf:jR,nth:lD,pull:qD,pullAll:Xw,pullAllBy:HD,pullAllWith:GD,pullAt:WD,remove:rz,reverse:v_,slice:_z,sortedIndex:Az,sortedIndexBy:Sz,sortedIndexOf:Mz,sortedLastIndex:Ez,sortedLastIndexBy:kz,sortedLastIndexOf:Cz,sortedUniq:Lz,sortedUniqBy:Pz,tail:Vz,take:qz,takeRight:Hz,takeRightWhile:Gz,takeWhile:Wz,union:y8,unionBy:_8,unionWith:x8,uniq:b8,uniqBy:w8,uniqWith:T8,unzip:Gy,unzipWith:n2,without:L8,xor:z8,xorBy:F8,xorWith:O8,zip:B8,zipObject:N8,zipObjectDeep:U8,zipWith:j8};var Hu={countBy:H6,each:u_,eachRight:c_,every:bI,filter:AI,find:SI,findLast:EI,flatMap:CI,flatMapDeep:LI,flatMapDepth:PI,forEach:u_,forEachRight:c_,groupBy:GI,includes:$I,invokeMap:uR,keyBy:NR,map:Nm,orderBy:mD,partition:FD,reduce:$D,reduceRight:ez,reject:tz,sample:uz,sampleSize:hz,shuffle:gz,size:yz,some:wz,sortBy:Tz};var HA={now:Cy};var xf={after:$C,ary:Db,before:Vb,bind:qb,bindKey:oP,curry:W6,curryRight:Z6,debounce:yw,defer:rI,delay:aI,flip:DI,memoize:Bb,negate:Gv,once:pD,overArgs:_D,partial:Zw,partialRight:zD,rearg:JD,rest:nz,spread:Rz,throttle:e8,unary:p8,wrap:P8};var Es={castArray:OP,clone:_6,cloneDeep:x6,cloneDeepWith:b6,cloneWith:w6,conformsTo:j6,eq:qf,gt:WI,gte:ZI,isArguments:dd,isArray:mo,isArrayBuffer:hR,isArrayLike:gc,isArrayLikeObject:eu,isBoolean:pR,isBuffer:Kp,isDate:mR,isElement:gR,isEmpty:yR,isEqual:_R,isEqualWith:xR,isError:cy,isFinite:bR,isFunction:tp,isInteger:Ow,isLength:Mm,isMap:aw,isMatch:wR,isMatchWith:TR,isNaN:AR,isNative:MR,isNil:ER,isNull:kR,isNumber:Bw,isObject:ll,isObjectLike:ul,isPlainObject:gv,isRegExp:Oy,isSafeInteger:IR,isSet:iw,isString:Vm,isSymbol:_f,isTypedArray:Ed,isUndefined:RR,isWeakMap:DR,isWeakSet:zR,lt:HR,lte:GR,toArray:jw,toFinite:sd,toInteger:Eo,toLength:Ew,toNumber:mh,toPlainObject:_w,toSafeInteger:o8,toString:ws};var _p={add:YC,ceil:BP,divide:sI,floor:zI,max:KR,maxBy:JR,mean:$R,meanBy:QR,min:aD,minBy:iD,multiply:nD,round:sz,subtract:Nz,sum:Uz,sumBy:jz};var g_={clamp:UP,inRange:JI,random:ZD};var Js={assign:RL,assignIn:n_,assignInWith:Em,assignWith:FL,at:aP,create:G6,defaults:K6,defaultsDeep:tI,entries:f_,entriesIn:h_,extend:n_,extendWith:Em,findKey:MI,findLastKey:kI,forIn:BI,forInRight:NI,forOwn:UI,forOwnRight:jI,functions:qI,functionsIn:HI,get:ly,has:YI,hasIn:My,invert:nR,invertBy:sR,invoke:lR,keys:Gl,keysIn:yc,mapKeys:WR,mapValues:ZR,merge:eD,mergeWith:xw,omit:fD,omitBy:hD,pick:BD,pickBy:Hw,result:oz,set:pz,setWith:dz,toPairs:f_,toPairsIn:h_,transform:l8,unset:S8,update:M8,updateWith:E8,values:Ld,valuesIn:C8};var Id={at:I8,chain:Xb,commit:T6,lodash:ua,next:sD,plant:ND,reverse:D8,tap:Zz,thru:Wv,toIterator:r8,toJSON:Wm,value:Wm,valueOf:Wm,wrapperChain:R8};var du={camelCase:FP,capitalize:Gb,deburr:Wb,endsWith:pI,escape:Sw,escapeRegExp:_I,kebabCase:BR,lowerCase:VR,lowerFirst:qR,pad:PD,padEnd:ID,padStart:RD,parseInt:DD,repeat:az,replace:iz,snakeCase:xz,split:Iz,startCase:Dz,startsWith:zz,template:Qz,templateSettings:m_,toLower:a8,toUpper:s8,trim:u8,trimEnd:c8,trimStart:f8,truncate:h8,unescape:m8,upperCase:k8,upperFirst:fy,words:Zb};var Tu={attempt:jb,bindAll:nP,cond:B6,conforms:U6,constant:J0,defaultTo:X6,flow:FI,flowRight:OI,identity:ic,iteratee:FR,matches:XR,matchesProperty:YR,method:tD,methodOf:rD,mixin:Uw,noop:X0,nthArg:uD,over:gD,overEvery:xD,overSome:bD,property:dw,propertyOf:UD,range:YD,rangeRight:KD,stubArray:gy,stubFalse:ry,stubObject:Fz,stubString:Oz,stubTrue:Bz,times:t8,toPath:i8,uniqueId:A8};function Ife(){var le=new dl(this.__wrapped__);return le.__actions__=Wc(this.__actions__),le.__dir__=this.__dir__,le.__filtered__=this.__filtered__,le.__iteratees__=Wc(this.__iteratees__),le.__takeCount__=this.__takeCount__,le.__views__=Wc(this.__views__),le}var V8=Ife;function Rfe(){if(this.__filtered__){var le=new dl(this);le.__dir__=-1,le.__filtered__=!0}else le=this.clone(),le.__dir__*=-1;return le}var q8=Rfe;var Dfe=Math.max,zfe=Math.min;function Ffe(le,me,Xe){for(var Mt=-1,rr=Xe.length;++Mt<rr;){var Nr=Xe[Mt],xa=Nr.size;switch(Nr.type){case"drop":le+=xa;break;case"dropRight":me-=xa;break;case"take":me=zfe(me,le+xa);break;case"takeRight":le=Dfe(le,me-xa);break}}return{start:le,end:me}}var H8=Ffe;var Ofe=1,Bfe=2,Nfe=Math.min;function Ufe(){var le=this.__wrapped__.value(),me=this.__dir__,Xe=mo(le),Mt=me<0,rr=Xe?le.length:0,Nr=H8(0,rr,this.__views__),xa=Nr.start,Ha=Nr.end,Za=Ha-xa,un=Mt?Ha:xa-1,Ji=this.__iteratees__,gn=Ji.length,wo=0,ps=Nfe(Za,this.__takeCount__);if(!Xe||!Mt&&rr==Za&&ps==Za)return r2(le,this.__actions__);var Qn=[];e:for(;Za--&&wo<ps;){un+=me;for(var Ye=-1,Ps=le[un];++Ye<gn;){var Ml=Ji[Ye],Ul=Ml.iteratee,Hf=Ml.type,xh=Ul(Ps);if(Hf==Bfe)Ps=xh;else if(!xh){if(Hf==Ofe)continue e;break e}}Qn[wo++]=Ps}return Qn}var G8=Ufe;var jfe="4.17.21",Vfe=2,qfe=1,Hfe=3,X8=4294967295,Gfe=Array.prototype,Wfe=Object.prototype,Y8=Wfe.hasOwnProperty,W8=yf?yf.iterator:void 0,Zfe=Math.max,Z8=Math.min,GA=function(le){return function(me,Xe,Mt){if(Mt==null){var rr=ll(Xe),Nr=rr&&Gl(Xe),xa=Nr&&Nr.length&&Um(Xe,Nr);(xa?xa.length:rr)||(Mt=Xe,Xe=me,me=this)}return le(me,Xe,Mt)}}(Uw);ua.after=xf.after;ua.ary=xf.ary;ua.assign=Js.assign;ua.assignIn=Js.assignIn;ua.assignInWith=Js.assignInWith;ua.assignWith=Js.assignWith;ua.at=Js.at;ua.before=xf.before;ua.bind=xf.bind;ua.bindAll=Tu.bindAll;ua.bindKey=xf.bindKey;ua.castArray=Es.castArray;ua.chain=Id.chain;ua.chunk=is.chunk;ua.compact=is.compact;ua.concat=is.concat;ua.cond=Tu.cond;ua.conforms=Tu.conforms;ua.constant=Tu.constant;ua.countBy=Hu.countBy;ua.create=Js.create;ua.curry=xf.curry;ua.curryRight=xf.curryRight;ua.debounce=xf.debounce;ua.defaults=Js.defaults;ua.defaultsDeep=Js.defaultsDeep;ua.defer=xf.defer;ua.delay=xf.delay;ua.difference=is.difference;ua.differenceBy=is.differenceBy;ua.differenceWith=is.differenceWith;ua.drop=is.drop;ua.dropRight=is.dropRight;ua.dropRightWhile=is.dropRightWhile;ua.dropWhile=is.dropWhile;ua.fill=is.fill;ua.filter=Hu.filter;ua.flatMap=Hu.flatMap;ua.flatMapDeep=Hu.flatMapDeep;ua.flatMapDepth=Hu.flatMapDepth;ua.flatten=is.flatten;ua.flattenDeep=is.flattenDeep;ua.flattenDepth=is.flattenDepth;ua.flip=xf.flip;ua.flow=Tu.flow;ua.flowRight=Tu.flowRight;ua.fromPairs=is.fromPairs;ua.functions=Js.functions;ua.functionsIn=Js.functionsIn;ua.groupBy=Hu.groupBy;ua.initial=is.initial;ua.intersection=is.intersection;ua.intersectionBy=is.intersectionBy;ua.intersectionWith=is.intersectionWith;ua.invert=Js.invert;ua.invertBy=Js.invertBy;ua.invokeMap=Hu.invokeMap;ua.iteratee=Tu.iteratee;ua.keyBy=Hu.keyBy;ua.keys=Gl;ua.keysIn=Js.keysIn;ua.map=Hu.map;ua.mapKeys=Js.mapKeys;ua.mapValues=Js.mapValues;ua.matches=Tu.matches;ua.matchesProperty=Tu.matchesProperty;ua.memoize=xf.memoize;ua.merge=Js.merge;ua.mergeWith=Js.mergeWith;ua.method=Tu.method;ua.methodOf=Tu.methodOf;ua.mixin=GA;ua.negate=Gv;ua.nthArg=Tu.nthArg;ua.omit=Js.omit;ua.omitBy=Js.omitBy;ua.once=xf.once;ua.orderBy=Hu.orderBy;ua.over=Tu.over;ua.overArgs=xf.overArgs;ua.overEvery=Tu.overEvery;ua.overSome=Tu.overSome;ua.partial=xf.partial;ua.partialRight=xf.partialRight;ua.partition=Hu.partition;ua.pick=Js.pick;ua.pickBy=Js.pickBy;ua.property=Tu.property;ua.propertyOf=Tu.propertyOf;ua.pull=is.pull;ua.pullAll=is.pullAll;ua.pullAllBy=is.pullAllBy;ua.pullAllWith=is.pullAllWith;ua.pullAt=is.pullAt;ua.range=Tu.range;ua.rangeRight=Tu.rangeRight;ua.rearg=xf.rearg;ua.reject=Hu.reject;ua.remove=is.remove;ua.rest=xf.rest;ua.reverse=is.reverse;ua.sampleSize=Hu.sampleSize;ua.set=Js.set;ua.setWith=Js.setWith;ua.shuffle=Hu.shuffle;ua.slice=is.slice;ua.sortBy=Hu.sortBy;ua.sortedUniq=is.sortedUniq;ua.sortedUniqBy=is.sortedUniqBy;ua.split=du.split;ua.spread=xf.spread;ua.tail=is.tail;ua.take=is.take;ua.takeRight=is.takeRight;ua.takeRightWhile=is.takeRightWhile;ua.takeWhile=is.takeWhile;ua.tap=Id.tap;ua.throttle=xf.throttle;ua.thru=Wv;ua.toArray=Es.toArray;ua.toPairs=Js.toPairs;ua.toPairsIn=Js.toPairsIn;ua.toPath=Tu.toPath;ua.toPlainObject=Es.toPlainObject;ua.transform=Js.transform;ua.unary=xf.unary;ua.union=is.union;ua.unionBy=is.unionBy;ua.unionWith=is.unionWith;ua.uniq=is.uniq;ua.uniqBy=is.uniqBy;ua.uniqWith=is.uniqWith;ua.unset=Js.unset;ua.unzip=is.unzip;ua.unzipWith=is.unzipWith;ua.update=Js.update;ua.updateWith=Js.updateWith;ua.values=Js.values;ua.valuesIn=Js.valuesIn;ua.without=is.without;ua.words=du.words;ua.wrap=xf.wrap;ua.xor=is.xor;ua.xorBy=is.xorBy;ua.xorWith=is.xorWith;ua.zip=is.zip;ua.zipObject=is.zipObject;ua.zipObjectDeep=is.zipObjectDeep;ua.zipWith=is.zipWith;ua.entries=Js.toPairs;ua.entriesIn=Js.toPairsIn;ua.extend=Js.assignIn;ua.extendWith=Js.assignInWith;GA(ua,ua);ua.add=_p.add;ua.attempt=Tu.attempt;ua.camelCase=du.camelCase;ua.capitalize=du.capitalize;ua.ceil=_p.ceil;ua.clamp=g_.clamp;ua.clone=Es.clone;ua.cloneDeep=Es.cloneDeep;ua.cloneDeepWith=Es.cloneDeepWith;ua.cloneWith=Es.cloneWith;ua.conformsTo=Es.conformsTo;ua.deburr=du.deburr;ua.defaultTo=Tu.defaultTo;ua.divide=_p.divide;ua.endsWith=du.endsWith;ua.eq=Es.eq;ua.escape=du.escape;ua.escapeRegExp=du.escapeRegExp;ua.every=Hu.every;ua.find=Hu.find;ua.findIndex=is.findIndex;ua.findKey=Js.findKey;ua.findLast=Hu.findLast;ua.findLastIndex=is.findLastIndex;ua.findLastKey=Js.findLastKey;ua.floor=_p.floor;ua.forEach=Hu.forEach;ua.forEachRight=Hu.forEachRight;ua.forIn=Js.forIn;ua.forInRight=Js.forInRight;ua.forOwn=Js.forOwn;ua.forOwnRight=Js.forOwnRight;ua.get=Js.get;ua.gt=Es.gt;ua.gte=Es.gte;ua.has=Js.has;ua.hasIn=Js.hasIn;ua.head=is.head;ua.identity=ic;ua.includes=Hu.includes;ua.indexOf=is.indexOf;ua.inRange=g_.inRange;ua.invoke=Js.invoke;ua.isArguments=Es.isArguments;ua.isArray=mo;ua.isArrayBuffer=Es.isArrayBuffer;ua.isArrayLike=Es.isArrayLike;ua.isArrayLikeObject=Es.isArrayLikeObject;ua.isBoolean=Es.isBoolean;ua.isBuffer=Es.isBuffer;ua.isDate=Es.isDate;ua.isElement=Es.isElement;ua.isEmpty=Es.isEmpty;ua.isEqual=Es.isEqual;ua.isEqualWith=Es.isEqualWith;ua.isError=Es.isError;ua.isFinite=Es.isFinite;ua.isFunction=Es.isFunction;ua.isInteger=Es.isInteger;ua.isLength=Es.isLength;ua.isMap=Es.isMap;ua.isMatch=Es.isMatch;ua.isMatchWith=Es.isMatchWith;ua.isNaN=Es.isNaN;ua.isNative=Es.isNative;ua.isNil=Es.isNil;ua.isNull=Es.isNull;ua.isNumber=Es.isNumber;ua.isObject=ll;ua.isObjectLike=Es.isObjectLike;ua.isPlainObject=Es.isPlainObject;ua.isRegExp=Es.isRegExp;ua.isSafeInteger=Es.isSafeInteger;ua.isSet=Es.isSet;ua.isString=Es.isString;ua.isSymbol=Es.isSymbol;ua.isTypedArray=Es.isTypedArray;ua.isUndefined=Es.isUndefined;ua.isWeakMap=Es.isWeakMap;ua.isWeakSet=Es.isWeakSet;ua.join=is.join;ua.kebabCase=du.kebabCase;ua.last=cf;ua.lastIndexOf=is.lastIndexOf;ua.lowerCase=du.lowerCase;ua.lowerFirst=du.lowerFirst;ua.lt=Es.lt;ua.lte=Es.lte;ua.max=_p.max;ua.maxBy=_p.maxBy;ua.mean=_p.mean;ua.meanBy=_p.meanBy;ua.min=_p.min;ua.minBy=_p.minBy;ua.stubArray=Tu.stubArray;ua.stubFalse=Tu.stubFalse;ua.stubObject=Tu.stubObject;ua.stubString=Tu.stubString;ua.stubTrue=Tu.stubTrue;ua.multiply=_p.multiply;ua.nth=is.nth;ua.noop=Tu.noop;ua.now=HA.now;ua.pad=du.pad;ua.padEnd=du.padEnd;ua.padStart=du.padStart;ua.parseInt=du.parseInt;ua.random=g_.random;ua.reduce=Hu.reduce;ua.reduceRight=Hu.reduceRight;ua.repeat=du.repeat;ua.replace=du.replace;ua.result=Js.result;ua.round=_p.round;ua.sample=Hu.sample;ua.size=Hu.size;ua.snakeCase=du.snakeCase;ua.some=Hu.some;ua.sortedIndex=is.sortedIndex;ua.sortedIndexBy=is.sortedIndexBy;ua.sortedIndexOf=is.sortedIndexOf;ua.sortedLastIndex=is.sortedLastIndex;ua.sortedLastIndexBy=is.sortedLastIndexBy;ua.sortedLastIndexOf=is.sortedLastIndexOf;ua.startCase=du.startCase;ua.startsWith=du.startsWith;ua.subtract=_p.subtract;ua.sum=_p.sum;ua.sumBy=_p.sumBy;ua.template=du.template;ua.times=Tu.times;ua.toFinite=Es.toFinite;ua.toInteger=Eo;ua.toLength=Es.toLength;ua.toLower=du.toLower;ua.toNumber=Es.toNumber;ua.toSafeInteger=Es.toSafeInteger;ua.toString=Es.toString;ua.toUpper=du.toUpper;ua.trim=du.trim;ua.trimEnd=du.trimEnd;ua.trimStart=du.trimStart;ua.truncate=du.truncate;ua.unescape=du.unescape;ua.uniqueId=Tu.uniqueId;ua.upperCase=du.upperCase;ua.upperFirst=du.upperFirst;ua.each=Hu.forEach;ua.eachRight=Hu.forEachRight;ua.first=is.head;GA(ua,function(){var le={};return lp(ua,function(me,Xe){Y8.call(ua.prototype,Xe)||(le[Xe]=me)}),le}(),{chain:!1});ua.VERSION=jfe;(ua.templateSettings=du.templateSettings).imports._=ua;zh(["bind","bindKey","curry","curryRight","partial","partialRight"],function(le){ua[le].placeholder=ua});zh(["drop","take"],function(le,me){dl.prototype[le]=function(Xe){Xe=Xe===void 0?1:Zfe(Eo(Xe),0);var Mt=this.__filtered__&&!me?new dl(this):this.clone();return Mt.__filtered__?Mt.__takeCount__=Z8(Xe,Mt.__takeCount__):Mt.__views__.push({size:Z8(Xe,X8),type:le+(Mt.__dir__<0?"Right":"")}),Mt},dl.prototype[le+"Right"]=function(Xe){return this.reverse()[le](Xe).reverse()}});zh(["filter","map","takeWhile"],function(le,me){var Xe=me+1,Mt=Xe==qfe||Xe==Hfe;dl.prototype[le]=function(rr){var Nr=this.clone();return Nr.__iteratees__.push({iteratee:io(rr,3),type:Xe}),Nr.__filtered__=Nr.__filtered__||Mt,Nr}});zh(["head","last"],function(le,me){var Xe="take"+(me?"Right":"");dl.prototype[le]=function(){return this[Xe](1).value()[0]}});zh(["initial","tail"],function(le,me){var Xe="drop"+(me?"":"Right");dl.prototype[le]=function(){return this.__filtered__?new dl(this):this[Xe](1)}});dl.prototype.compact=function(){return this.filter(ic)};dl.prototype.find=function(le){return this.filter(le).head()};dl.prototype.findLast=function(le){return this.reverse().find(le)};dl.prototype.invokeMap=ko(function(le,me){return typeof le=="function"?new dl(this):this.map(function(Xe){return xv(Xe,le,me)})});dl.prototype.reject=function(le){return this.filter(Gv(io(le)))};dl.prototype.slice=function(le,me){le=Eo(le);var Xe=this;return Xe.__filtered__&&(le>0||me<0)?new dl(Xe):(le<0?Xe=Xe.takeRight(-le):le&&(Xe=Xe.drop(le)),me!==void 0&&(me=Eo(me),Xe=me<0?Xe.dropRight(-me):Xe.take(me-le)),Xe)};dl.prototype.takeRightWhile=function(le){return this.reverse().takeWhile(le).reverse()};dl.prototype.toArray=function(){return this.take(X8)};lp(dl.prototype,function(le,me){var Xe=/^(?:filter|find|map|reject)|While$/.test(me),Mt=/^(?:head|last)$/.test(me),rr=ua[Mt?"take"+(me=="last"?"Right":""):me],Nr=Mt||/^find/.test(me);rr&&(ua.prototype[me]=function(){var xa=this.__wrapped__,Ha=Mt?[1]:arguments,Za=xa instanceof dl,un=Ha[0],Ji=Za||mo(xa),gn=function(Ml){var Ul=rr.apply(ua,Dp([Ml],Ha));return Mt&&wo?Ul[0]:Ul};Ji&&Xe&&typeof un=="function"&&un.length!=1&&(Za=Ji=!1);var wo=this.__chain__,ps=!!this.__actions__.length,Qn=Nr&&!wo,Ye=Za&&!ps;if(!Nr&&Ji){xa=Ye?xa:new dl(this);var Ps=le.apply(xa,Ha);return Ps.__actions__.push({func:Wv,args:[gn],thisArg:void 0}),new Ip(Ps,wo)}return Qn&&Ye?le.apply(this,Ha):(Ps=this.thru(gn),Qn?Mt?Ps.value()[0]:Ps.value():Ps)})});zh(["pop","push","shift","sort","splice","unshift"],function(le){var me=Gfe[le],Xe=/^(?:push|sort|unshift)$/.test(le)?"tap":"thru",Mt=/^(?:pop|shift)$/.test(le);ua.prototype[le]=function(){var rr=arguments;if(Mt&&!this.__chain__){var Nr=this.value();return me.apply(mo(Nr)?Nr:[],rr)}return this[Xe](function(xa){return me.apply(mo(xa)?xa:[],rr)})}});lp(dl.prototype,function(le,me){var Xe=ua[me];if(Xe){var Mt=Xe.name+"";Y8.call(Tm,Mt)||(Tm[Mt]=[]),Tm[Mt].push({name:me,func:Xe})}});Tm[ey(void 0,Vfe).name]=[{name:"wrapper",func:void 0}];dl.prototype.clone=V8;dl.prototype.reverse=q8;dl.prototype.value=G8;ua.prototype.at=Id.at;ua.prototype.chain=Id.wrapperChain;ua.prototype.commit=Id.commit;ua.prototype.next=Id.next;ua.prototype.plant=Id.plant;ua.prototype.reverse=Id.reverse;ua.prototype.toJSON=ua.prototype.valueOf=ua.prototype.value=Id.value;ua.prototype.first=ua.prototype.head;W8&&(ua.prototype[W8]=Id.toIterator);var kc=ua;var Rd=HW($8());window.PlotlyConfig={MathJaxConfig:"local"};var WA=class{constructor(me,Xe){this.model=me,this.serializers=Xe}get(me){let Xe=this.serializers[me],Mt=this.model.get(me);return Xe?.deserialize?Xe.deserialize(Mt):Mt}set(me,Xe){let Mt=this.serializers[me];Mt?.serialize&&(Xe=Mt.serialize(Xe)),this.model.set(me,Xe)}on(me,Xe){this.model.on(me,Xe)}save_changes(){this.model.save_changes()}defaults(){return{_widget_data:[],_widget_layout:{},_config:{},_py2js_addTraces:null,_py2js_deleteTraces:null,_py2js_moveTraces:null,_py2js_restyle:null,_py2js_relayout:null,_py2js_update:null,_py2js_animate:null,_py2js_removeLayoutProps:null,_py2js_removeTraceProps:null,_js2py_restyle:null,_js2py_relayout:null,_js2py_update:null,_js2py_layoutDelta:null,_js2py_traceDeltas:null,_js2py_pointsCallback:null,_last_layout_edit_id:0,_last_trace_edit_id:0}}initialize(){this.model.on("change:_widget_data",()=>this.do_data()),this.model.on("change:_widget_layout",()=>this.do_layout()),this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),this.model.on("change:_py2js_removeLayoutProps",()=>this.do_removeLayoutProps()),this.model.on("change:_py2js_removeTraceProps",()=>this.do_removeTraceProps())}_normalize_trace_indexes(me){if(me==null){var Xe=this.model.get("_widget_data").length;me=kc.range(Xe)}return Array.isArray(me)||(me=[me]),me}do_data(){}do_layout(){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.trace_data;kc.forEach(Mt,function(rr){Xe.push(rr)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this.model.get("_widget_data");Xe.slice().reverse().forEach(function(rr){Mt.splice(rr,1)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.current_trace_inds,rr=me.new_trace_inds;$fe(Xe,Mt,rr)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this._normalize_trace_indexes(me.restyle_traces);eF(this.model.get("_widget_data"),Xe,Mt)}}do_relayout(){var me=this.model.get("_py2js_relayout");me!==null&&u2(this.model.get("_widget_layout"),me.relayout_data)}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces);eF(this.model.get("_widget_data"),Xe,rr),u2(this.model.get("_widget_layout"),Mt)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){for(var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces),Nr=0;Nr<Xe.length;Nr++){var xa=Xe[Nr],Ha=rr[Nr],Za=this.model.get("_widget_data")[Ha];u2(Za,xa)}u2(this.model.get("_widget_layout"),Mt)}}do_removeLayoutProps(){var me=this.model.get("_py2js_removeLayoutProps");if(me!==null){var Xe=me.remove_props,Mt=this.model.get("_widget_layout");tF(Mt,Xe)}}do_removeTraceProps(){var me=this.model.get("_py2js_removeTraceProps");if(me!==null){var Xe=me.remove_props,Mt=me.remove_trace,rr=this.model.get("_widget_data")[Mt];tF(rr,Xe)}}},Xfe={_widget_data:{deserialize:Nh,serialize:Bh},_widget_layout:{deserialize:Nh,serialize:Bh},_py2js_addTraces:{deserialize:Nh,serialize:Bh},_py2js_deleteTraces:{deserialize:Nh,serialize:Bh},_py2js_moveTraces:{deserialize:Nh,serialize:Bh},_py2js_restyle:{deserialize:Nh,serialize:Bh},_py2js_relayout:{deserialize:Nh,serialize:Bh},_py2js_update:{deserialize:Nh,serialize:Bh},_py2js_animate:{deserialize:Nh,serialize:Bh},_py2js_removeLayoutProps:{deserialize:Nh,serialize:Bh},_py2js_removeTraceProps:{deserialize:Nh,serialize:Bh},_js2py_restyle:{deserialize:Nh,serialize:Bh},_js2py_relayout:{deserialize:Nh,serialize:Bh},_js2py_update:{deserialize:Nh,serialize:Bh},_js2py_layoutDelta:{deserialize:Nh,serialize:Bh},_js2py_traceDeltas:{deserialize:Nh,serialize:Bh},_js2py_pointsCallback:{deserialize:Nh,serialize:Bh}},ZA=class{constructor(me,Xe){this.model=me,this.el=Xe}perform_render(){var me=this;this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),window?.MathJax?.Hub?.Config?.({SVG:{font:"STIX-Web"}});var Xe=this.model.get("_last_layout_edit_id"),Mt=this.model.get("_last_trace_edit_id");this.viewID=rF();var rr=kc.cloneDeep(this.model.get("_widget_data")),Nr=kc.cloneDeep(this.model.get("_widget_layout"));Nr.height||(Nr.height=360);var xa=this.model.get("_config");xa.editSelection=!1,Rd.default.newPlot(me.el,rr,Nr,xa).then(function(){me._sendTraceDeltas(Mt),me._sendLayoutDelta(Xe),me.el.on("plotly_restyle",function(Za){me.handle_plotly_restyle(Za)}),me.el.on("plotly_relayout",function(Za){me.handle_plotly_relayout(Za)}),me.el.on("plotly_update",function(Za){me.handle_plotly_update(Za)}),me.el.on("plotly_click",function(Za){me.handle_plotly_click(Za)}),me.el.on("plotly_hover",function(Za){me.handle_plotly_hover(Za)}),me.el.on("plotly_unhover",function(Za){me.handle_plotly_unhover(Za)}),me.el.on("plotly_selected",function(Za){me.handle_plotly_selected(Za)}),me.el.on("plotly_deselect",function(Za){me.handle_plotly_deselect(Za)}),me.el.on("plotly_doubleclick",function(Za){me.handle_plotly_doubleclick(Za)});var Ha=new CustomEvent("plotlywidget-after-render",{detail:{element:me.el,viewID:me.viewID}});document.dispatchEvent(Ha)})}_processLuminoMessage(me,Xe){Xe.apply(this,arguments);var Mt=this;switch(me.type){case"before-attach":var rr={showgrid:!1,showline:!1,tickvals:[]};Rd.default.newPlot(Mt.el,[],{xaxis:rr,yaxis:rr}),this.resizeEventListener=()=>{this.autosizeFigure()},window.addEventListener("resize",this.resizeEventListener);break;case"after-attach":this.perform_render();break;case"after-show":case"resize":this.autosizeFigure();break}}autosizeFigure(){var me=this,Xe=me.model.get("_widget_layout");(kc.isNil(Xe)||kc.isNil(Xe.width))&&Rd.default.Plots.resize(me.el).then(function(){var Mt=me.model.get("_last_layout_edit_id");me._sendLayoutDelta(Mt)})}remove(){Rd.default.purge(this.el),window.removeEventListener("resize",this.resizeEventListener)}getFullData(){return kc.mergeWith({},this.el._fullData,this.el.data,Q8)}getFullLayout(){return kc.mergeWith({},this.el._fullLayout,this.el.layout,Q8)}buildPointsObject(me){var Xe;if(me.hasOwnProperty("points")){var Mt=me.points,rr=Mt.length,Nr=!0;for(let Ji=0;Ji<rr&&(Nr=Nr&&Mt[Ji].hasOwnProperty("pointNumbers"),!!Nr);Ji++);var xa=rr;if(Nr){xa=0;for(let Ji=0;Ji<rr;Ji++)xa+=Mt[Ji].pointNumbers.length}if(Xe={trace_indexes:new Array(xa),point_indexes:new Array(xa),xs:new Array(xa),ys:new Array(xa)},Nr){for(var Ha=0,Za=0;Za<rr;Za++)for(let gn=0;gn<Mt[Za].pointNumbers.length;gn++,Ha++)Xe.point_indexes[Ha]=Mt[Za].pointNumbers[gn],Xe.xs[Ha]=Mt[Za].x,Xe.ys[Ha]=Mt[Za].y,Xe.trace_indexes[Ha]=Mt[Za].curveNumber;let Ji=!0;for(let gn=1;gn<xa&&(Ji=Ji&&Xe.trace_indexes[gn-1]===Xe.trace_indexes[gn],!!Ji);gn++);Ji&&Xe.point_indexes.sort(function(gn,wo){return gn-wo})}else for(var Za=0;Za<rr;Za++)Xe.trace_indexes[Za]=Mt[Za].curveNumber,Xe.point_indexes[Za]=Mt[Za].pointNumber,Xe.xs[Za]=Mt[Za].x,Xe.ys[Za]=Mt[Za].y;var un=Mt[0]!==void 0&&Mt[0].hasOwnProperty("z");if(un)for(Xe.zs=new Array(rr),Za=0;Za<rr;Za++)Xe.zs[Za]=Mt[Za].z;return Xe}else return null}buildInputDeviceStateObject(me){var Xe=me.event;if(Xe===void 0)return null;var Mt={alt:Xe.altKey,ctrl:Xe.ctrlKey,meta:Xe.metaKey,shift:Xe.shiftKey,button:Xe.button,buttons:Xe.buttons};return Mt}buildSelectorObject(me){var Xe;return me.hasOwnProperty("range")?Xe={type:"box",selector_state:{xrange:me.range.x,yrange:me.range.y}}:me.hasOwnProperty("lassoPoints")?Xe={type:"lasso",selector_state:{xs:me.lassoPoints.x,ys:me.lassoPoints.y}}:Xe=null,Xe}handle_plotly_restyle(me){if(me!=null&&!(me[0]&&me[0].hasOwnProperty("_doNotReportToPy"))){var Xe=me[0],Mt=me[1],rr={style_data:Xe,style_traces:Mt,source_view_id:this.viewID};this.model.set("_js2py_restyle",rr),this.touch()}}touch(){this.model.save_changes()}handle_plotly_relayout(me){if(me!=null&&!me.hasOwnProperty("_doNotReportToPy")){var Xe={relayout_data:me,source_view_id:this.viewID};this.model.set("_js2py_relayout",Xe),this.touch()}}handle_plotly_update(me){if(me!=null&&!(me.data&&me.data[0].hasOwnProperty("_doNotReportToPy"))){var Xe={style_data:me.data[0],style_traces:me.data[1],layout_data:me.layout,source_view_id:this.viewID};this.model.set("_js2py_update",Xe),this.touch()}}handle_plotly_click(me){this._send_points_callback_message(me,"plotly_click")}handle_plotly_hover(me){this._send_points_callback_message(me,"plotly_hover")}handle_plotly_unhover(me){this._send_points_callback_message(me,"plotly_unhover")}handle_plotly_selected(me){this._send_points_callback_message(me,"plotly_selected")}handle_plotly_deselect(me){me={points:[]},this._send_points_callback_message(me,"plotly_deselect")}_send_points_callback_message(me,Xe){if(me!=null){var Mt={event_type:Xe,points:this.buildPointsObject(me),device_state:this.buildInputDeviceStateObject(me),selector:this.buildSelectorObject(me)};Mt.points!==null&&Mt.points!==void 0&&(this.model.set("_js2py_pointsCallback",Mt),this.touch())}}handle_plotly_doubleclick(me){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this;Rd.default.addTraces(this.el,me.trace_data).then(function(){Xe._sendTraceDeltas(me.trace_edit_id);var Mt=me.layout_edit_id;Xe._sendLayoutDelta(Mt)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this;Rd.default.deleteTraces(this.el,Xe).then(function(){var rr=me.trace_edit_id;Mt._sendTraceDeltas(rr);var Nr=me.layout_edit_id;Mt._sendLayoutDelta(Nr)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=me.current_trace_inds,Mt=me.new_trace_inds,rr=kc.isEqual(Xe,Mt);rr||Rd.default.moveTraces(this.el,Xe,Mt)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this.model._normalize_trace_indexes(me.restyle_traces);Xe._doNotReportToPy=!0,Rd.default.restyle(this.el,Xe,Mt),this._sendTraceDeltas(me.trace_edit_id);var rr=me.layout_edit_id;this._sendLayoutDelta(rr)}}do_relayout(){var me=this.model.get("_py2js_relayout");if(me!==null){if(me.source_view_id!==this.viewID){var Xe=me.relayout_data;Xe._doNotReportToPy=!0,Rd.default.relayout(this.el,me.relayout_data)}var Mt=me.layout_edit_id;this._sendLayoutDelta(Mt)}}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data||{},Mt=me.layout_data||{},rr=this.model._normalize_trace_indexes(me.style_traces);Xe._doNotReportToPy=!0,Rd.default.update(this.el,Xe,Mt,rr),this._sendTraceDeltas(me.trace_edit_id);var Nr=me.layout_edit_id;this._sendLayoutDelta(Nr)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){var Xe=me.animation_opts,Mt=me.style_data,rr=me.layout_data,Nr=this.model._normalize_trace_indexes(me.style_traces),xa={data:Mt,layout:rr,traces:Nr};xa._doNotReportToPy=!0;var Ha=this;Rd.default.animate(this.el,xa,Xe).then(function(){Ha._sendTraceDeltas(me.trace_edit_id);var Za=me.layout_edit_id;Ha._sendLayoutDelta(Za)})}}_sendLayoutDelta(me){var Xe=y_(this.getFullLayout(),this.model.get("_widget_layout")),Mt={layout_delta:Xe,layout_edit_id:me};this.model.set("_js2py_widget_layoutDelta",Mt),this.touch()}_sendTraceDeltas(me){for(var Xe=this.model.get("_widget_data"),Mt=kc.range(Xe.length),rr=new Array(Mt.length),Nr=this.getFullData(),xa=0;xa<Mt.length;xa++){var Ha=Mt[xa];rr[xa]=y_(Nr[Ha],Xe[Ha])}var Za={trace_deltas:rr,trace_edit_id:me};this.model.set("_js2py_traceDeltas",Za),this.touch()}},Yfe={int8:Int8Array,int16:Int16Array,int32:Int32Array,uint8:Uint8Array,uint16:Uint16Array,uint32:Uint32Array,float32:Float32Array,float64:Float64Array};function Kfe(le){var me;if(le instanceof Int8Array)me="int8";else if(le instanceof Int16Array)me="int16";else if(le instanceof Int32Array)me="int32";else if(le instanceof Uint8Array)me="uint8";else if(le instanceof Uint16Array)me="uint16";else if(le instanceof Uint32Array)me="uint32";else if(le instanceof Float32Array)me="float32";else if(le instanceof Float64Array)me="float64";else return le;var Xe={dtype:me,shape:[le.length],value:le.buffer};return Xe}function Bh(le,me){var Xe;if(kc.isTypedArray(le))Xe=Kfe(le);else if(Array.isArray(le)){Xe=new Array(le.length);for(var Mt=0;Mt<le.length;Mt++)Xe[Mt]=Bh(le[Mt])}else if(kc.isObject(le)){Xe={};for(var rr in le)le.hasOwnProperty(rr)&&(Xe[rr]=Bh(le[rr]))}else le===void 0?Xe="_undefined_":Xe=le;return Xe}function Nh(le,me){var Xe;if(Array.isArray(le)){Xe=new Array(le.length);for(var Mt=0;Mt<le.length;Mt++)Xe[Mt]=Nh(le[Mt])}else if(kc.isObject(le))if((kc.has(le,"value")||kc.has(le,"buffer"))&&kc.has(le,"dtype")&&kc.has(le,"shape")){var rr=Yfe[le.dtype],Nr=kc.has(le,"value")?le.value.buffer:le.buffer.buffer;Xe=new rr(Nr)}else{Xe={};for(var xa in le)le.hasOwnProperty(xa)&&(Xe[xa]=Nh(le[xa]))}else le==="_undefined_"?Xe=void 0:Xe=le;return Xe}function Jfe(le){return ArrayBuffer.isView(le)&&!(le instanceof DataView)}function Q8(le,me,Xe){if(Xe[0]==="_")return null;if(Jfe(me))return me}function u2(le,me){for(var Xe in me)if(me.hasOwnProperty(Xe)){var Mt=me[Xe];Mt===null?kc.unset(le,Xe):kc.set(le,Xe,Mt)}}function eF(le,me,Xe){for(var Mt in me)if(me.hasOwnProperty(Mt)){var rr=me[Mt];Array.isArray(rr)||(rr=[rr]);for(var Nr=0;Nr<Xe.length;Nr++){var xa=Xe[Nr],Ha=le[xa],Za=rr[Nr%rr.length];Za===null?kc.unset(Ha,Mt):Za!==void 0&&kc.set(Ha,Mt,Za)}}}function $fe(le,me,Xe){for(var Mt=[],rr=me.length-1;rr>=0;rr--)Mt.splice(0,0,le[me[rr]]),le.splice(me[rr],1);var Nr=kc(Xe).zip(Mt).sortBy(0).unzip().value();Xe=Nr[0],Mt=Nr[1];for(var xa=0;xa<Xe.length;xa++)le.splice(Xe[xa],0,Mt[xa])}function tF(le,me){for(var Xe=0;Xe<me.length;Xe++){var Mt=me[Xe];kc.unset(le,Mt)}}function y_(le,me){var Xe;Array.isArray(le)?Xe=new Array(le.length):Xe={},me==null&&(me={});for(var Mt in le)if(Mt[0]!=="_"&&le.hasOwnProperty(Mt)&&le[Mt]!==null){var rr;if(rr=kc.isEqual(le[Mt],me[Mt]),!rr||Mt==="uid"){var Nr=le[Mt];if(me.hasOwnProperty(Mt)&&typeof Nr=="object")if(Array.isArray(Nr))if(Nr.length>0&&typeof Nr[0]=="object"){Xe[Mt]=new Array(Nr.length);for(var xa=0;xa<Nr.length;xa++)!Array.isArray(me[Mt])||me[Mt].length<=xa?Xe[Mt][xa]=Nr[xa]:Xe[Mt][xa]=y_(Nr[xa],me[Mt][xa])}else Xe[Mt]=Nr;else{var Ha=y_(Nr,me[Mt]);Object.keys(Ha).length>0&&(Xe[Mt]=Ha)}else typeof Nr=="object"&&!Array.isArray(Nr)?Xe[Mt]=y_(Nr,{}):Nr!==void 0&&typeof Nr!="function"&&(Xe[Mt]=Nr)}}return Xe}function rF(le,me,Xe,Mt){if(Xe||(Xe=16),me===void 0&&(me=24),me<=0)return"0";var rr=Math.log(Math.pow(2,me))/Math.log(Xe),Nr="",xa,Ha,Za;for(xa=2;rr===1/0;xa*=2)rr=Math.log(Math.pow(2,me/xa))/Math.log(Xe)*xa;var un=rr-Math.floor(rr);for(xa=0;xa<Math.floor(rr);xa++)Za=Math.floor(Math.random()*Xe).toString(Xe),Nr=Za+Nr;un&&(Ha=Math.pow(Xe,un),Za=Math.floor(Math.random()*Ha).toString(Xe),Nr=Za+Nr);var Ji=parseInt(Nr,Xe);return le&&le[Nr]||Ji!==1/0&&Ji>=Math.pow(2,me)?Mt>10?(console.warn("randstr failed uniqueness"),Nr):rF(le,me,Xe,(Mt||0)+1):Nr}var lGe=()=>{let le;return{initialize(me){le=new WA(me.model,Xfe),le.initialize()},render({el:me}){let Xe=new ZA(le,me);return Xe.perform_render(),()=>Xe.remove()}}};export{WA as FigureModel,ZA as FigureView,lGe as default};
/*! Bundled license information:

plotly.js/dist/plotly.js:
  (*!
   * The buffer module from node.js, for the browser.
   *
   * @author   Feross Aboukhadijeh <https://feross.org>
   * @license  MIT
   *)
  (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
  (*!
   * Determine if an object is a Buffer
   *
   * @author   Feross Aboukhadijeh <https://feross.org>
   * @license  MIT
   *)
  (*!
   * pad-left <https://github.com/jonschlinkert/pad-left>
   *
   * Copyright (c) 2014-2015, Jon Schlinkert.
   * Licensed under the MIT license.
   *)
  (*!
   * repeat-string <https://github.com/jonschlinkert/repeat-string>
   *
   * Copyright (c) 2014-2015, Jon Schlinkert.
   * Licensed under the MIT License.
   *)
  (*! Bundled license information:
  
  native-promise-only/lib/npo.src.js:
    (*! Native Promise Only
        v0.8.1 (c) Kyle Simpson
        MIT License: http://getify.mit-license.org
    *)
  
  polybooljs/index.js:
    (*
     * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc
     * @license MIT
     * @preserve Project Home: https://github.com/voidqk/polybooljs
     *)
  
  ieee754/index.js:
    (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
  
  buffer/index.js:
    (*!
     * The buffer module from node.js, for the browser.
     *
     * @author   Feross Aboukhadijeh <https://feross.org>
     * @license  MIT
     *)
  
  safe-buffer/index.js:
    (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)
  
  assert/build/internal/util/comparisons.js:
    (*!
     * The buffer module from node.js, for the browser.
     *
     * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
     * @license  MIT
     *)
  
  object-assign/index.js:
    (*
    object-assign
    (c) Sindre Sorhus
    @license MIT
    *)
  
  maplibre-gl/dist/maplibre-gl.js:
    (**
     * MapLibre GL JS
     * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt
     *)
  *)

lodash-es/lodash.default.js:
  (**
   * @license
   * Lodash (Custom Build) <https://lodash.com/>
   * Build: `lodash modularize exports="es" -o ./`
   * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
   * Released under MIT license <https://lodash.com/license>
   * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
   * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
   *)

lodash-es/lodash.js:
  (**
   * @license
   * Lodash (Custom Build) <https://lodash.com/>
   * Build: `lodash modularize exports="es" -o ./`
   * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
   * Released under MIT license <https://lodash.com/license>
   * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
   * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
   *)
*/