data-structure-typed 2.5.3 → 2.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/.github/workflows/ci.yml +7 -2
  2. package/.github/workflows/release-package.yml +9 -2
  3. package/.husky/pre-commit +3 -0
  4. package/CHANGELOG.md +1 -1
  5. package/MIGRATION.md +48 -0
  6. package/README.md +20 -2
  7. package/README_CN.md +20 -2
  8. package/SPECIFICATION.md +24 -0
  9. package/SPECIFICATION.zh-CN.md +24 -0
  10. package/dist/cjs/binary-tree.cjs +1897 -19
  11. package/dist/cjs/graph.cjs +174 -0
  12. package/dist/cjs/hash.cjs +33 -0
  13. package/dist/cjs/heap.cjs +71 -0
  14. package/dist/cjs/index.cjs +2383 -3
  15. package/dist/cjs/linked-list.cjs +224 -2
  16. package/dist/cjs/matrix.cjs +24 -0
  17. package/dist/cjs/priority-queue.cjs +71 -0
  18. package/dist/cjs/queue.cjs +221 -1
  19. package/dist/cjs/stack.cjs +59 -0
  20. package/dist/cjs/trie.cjs +62 -0
  21. package/dist/cjs-legacy/binary-tree.cjs +1897 -19
  22. package/dist/cjs-legacy/graph.cjs +174 -0
  23. package/dist/cjs-legacy/hash.cjs +33 -0
  24. package/dist/cjs-legacy/heap.cjs +71 -0
  25. package/dist/cjs-legacy/index.cjs +2383 -3
  26. package/dist/cjs-legacy/linked-list.cjs +224 -2
  27. package/dist/cjs-legacy/matrix.cjs +24 -0
  28. package/dist/cjs-legacy/priority-queue.cjs +71 -0
  29. package/dist/cjs-legacy/queue.cjs +221 -1
  30. package/dist/cjs-legacy/stack.cjs +59 -0
  31. package/dist/cjs-legacy/trie.cjs +62 -0
  32. package/dist/esm/binary-tree.mjs +1897 -19
  33. package/dist/esm/graph.mjs +174 -0
  34. package/dist/esm/hash.mjs +33 -0
  35. package/dist/esm/heap.mjs +71 -0
  36. package/dist/esm/index.mjs +2383 -3
  37. package/dist/esm/linked-list.mjs +224 -2
  38. package/dist/esm/matrix.mjs +24 -0
  39. package/dist/esm/priority-queue.mjs +71 -0
  40. package/dist/esm/queue.mjs +221 -1
  41. package/dist/esm/stack.mjs +59 -0
  42. package/dist/esm/trie.mjs +62 -0
  43. package/dist/esm-legacy/binary-tree.mjs +1897 -19
  44. package/dist/esm-legacy/graph.mjs +174 -0
  45. package/dist/esm-legacy/hash.mjs +33 -0
  46. package/dist/esm-legacy/heap.mjs +71 -0
  47. package/dist/esm-legacy/index.mjs +2383 -3
  48. package/dist/esm-legacy/linked-list.mjs +224 -2
  49. package/dist/esm-legacy/matrix.mjs +24 -0
  50. package/dist/esm-legacy/priority-queue.mjs +71 -0
  51. package/dist/esm-legacy/queue.mjs +221 -1
  52. package/dist/esm-legacy/stack.mjs +59 -0
  53. package/dist/esm-legacy/trie.mjs +62 -0
  54. package/dist/types/data-structures/base/iterable-element-base.d.ts +17 -0
  55. package/dist/types/data-structures/base/linear-base.d.ts +6 -0
  56. package/dist/types/data-structures/binary-tree/avl-tree.d.ts +36 -0
  57. package/dist/types/data-structures/binary-tree/binary-indexed-tree.d.ts +42 -0
  58. package/dist/types/data-structures/binary-tree/binary-tree.d.ts +75 -0
  59. package/dist/types/data-structures/binary-tree/bst.d.ts +72 -0
  60. package/dist/types/data-structures/binary-tree/red-black-tree.d.ts +57 -0
  61. package/dist/types/data-structures/binary-tree/segment-tree.d.ts +18 -0
  62. package/dist/types/data-structures/binary-tree/tree-map.d.ts +375 -0
  63. package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +389 -0
  64. package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +330 -0
  65. package/dist/types/data-structures/binary-tree/tree-set.d.ts +438 -0
  66. package/dist/types/data-structures/graph/directed-graph.d.ts +30 -0
  67. package/dist/types/data-structures/graph/undirected-graph.d.ts +27 -0
  68. package/dist/types/data-structures/hash/hash-map.d.ts +33 -0
  69. package/dist/types/data-structures/heap/heap.d.ts +42 -0
  70. package/dist/types/data-structures/linked-list/doubly-linked-list.d.ts +75 -2
  71. package/dist/types/data-structures/linked-list/singly-linked-list.d.ts +45 -0
  72. package/dist/types/data-structures/linked-list/skip-linked-list.d.ts +54 -0
  73. package/dist/types/data-structures/matrix/matrix.d.ts +24 -0
  74. package/dist/types/data-structures/queue/deque.d.ts +90 -1
  75. package/dist/types/data-structures/queue/queue.d.ts +36 -0
  76. package/dist/types/data-structures/stack/stack.d.ts +30 -0
  77. package/dist/types/data-structures/trie/trie.d.ts +36 -0
  78. package/dist/umd/data-structure-typed.js +2383 -3
  79. package/dist/umd/data-structure-typed.min.js +3 -3
  80. package/docs-site-docusaurus/docs/api/classes/AVLTree.md +108 -108
  81. package/docs-site-docusaurus/docs/api/classes/BST.md +101 -101
  82. package/docs-site-docusaurus/docs/api/classes/BinaryIndexedTree.md +13 -13
  83. package/docs-site-docusaurus/docs/api/classes/BinaryTree.md +66 -66
  84. package/docs-site-docusaurus/docs/api/classes/Deque.md +235 -51
  85. package/docs-site-docusaurus/docs/api/classes/DirectedGraph.md +21 -21
  86. package/docs-site-docusaurus/docs/api/classes/DoublyLinkedList.md +231 -67
  87. package/docs-site-docusaurus/docs/api/classes/FibonacciHeap.md +9 -9
  88. package/docs-site-docusaurus/docs/api/classes/FibonacciHeapNode.md +1 -1
  89. package/docs-site-docusaurus/docs/api/classes/HashMap.md +14 -14
  90. package/docs-site-docusaurus/docs/api/classes/Heap.md +117 -34
  91. package/docs-site-docusaurus/docs/api/classes/IterableElementBase.md +83 -13
  92. package/docs-site-docusaurus/docs/api/classes/LinearBase.md +124 -20
  93. package/docs-site-docusaurus/docs/api/classes/LinearLinkedBase.md +140 -32
  94. package/docs-site-docusaurus/docs/api/classes/LinkedHashMap.md +30 -26
  95. package/docs-site-docusaurus/docs/api/classes/LinkedListQueue.md +159 -51
  96. package/docs-site-docusaurus/docs/api/classes/MapGraph.md +20 -20
  97. package/docs-site-docusaurus/docs/api/classes/Matrix.md +23 -23
  98. package/docs-site-docusaurus/docs/api/classes/MaxHeap.md +117 -34
  99. package/docs-site-docusaurus/docs/api/classes/MaxPriorityQueue.md +117 -34
  100. package/docs-site-docusaurus/docs/api/classes/MinHeap.md +117 -34
  101. package/docs-site-docusaurus/docs/api/classes/MinPriorityQueue.md +117 -34
  102. package/docs-site-docusaurus/docs/api/classes/PriorityQueue.md +117 -34
  103. package/docs-site-docusaurus/docs/api/classes/Queue.md +142 -34
  104. package/docs-site-docusaurus/docs/api/classes/RedBlackTree.md +117 -117
  105. package/docs-site-docusaurus/docs/api/classes/SegmentTree.md +8 -8
  106. package/docs-site-docusaurus/docs/api/classes/SinglyLinkedList.md +158 -50
  107. package/docs-site-docusaurus/docs/api/classes/SkipList.md +21 -21
  108. package/docs-site-docusaurus/docs/api/classes/Stack.md +108 -26
  109. package/docs-site-docusaurus/docs/api/classes/TreeMap.md +33 -33
  110. package/docs-site-docusaurus/docs/api/classes/TreeMultiMap.md +75 -39
  111. package/docs-site-docusaurus/docs/api/classes/TreeSet.md +301 -39
  112. package/docs-site-docusaurus/docs/api/classes/Trie.md +110 -28
  113. package/docs-site-docusaurus/docs/api/classes/UndirectedGraph.md +20 -20
  114. package/jest.integration.config.js +1 -2
  115. package/package.json +51 -50
  116. package/src/common/error.ts +15 -32
  117. package/src/common/index.ts +0 -3
  118. package/src/data-structures/base/iterable-element-base.ts +32 -3
  119. package/src/data-structures/base/linear-base.ts +13 -36
  120. package/src/data-structures/binary-tree/avl-tree.ts +31 -493
  121. package/src/data-structures/binary-tree/binary-indexed-tree.ts +47 -530
  122. package/src/data-structures/binary-tree/binary-tree.ts +326 -1236
  123. package/src/data-structures/binary-tree/bst.ts +158 -1010
  124. package/src/data-structures/binary-tree/red-black-tree.ts +451 -1233
  125. package/src/data-structures/binary-tree/segment-tree.ts +73 -333
  126. package/src/data-structures/binary-tree/tree-map.ts +462 -4749
  127. package/src/data-structures/binary-tree/tree-multi-map.ts +310 -4530
  128. package/src/data-structures/binary-tree/tree-multi-set.ts +300 -3652
  129. package/src/data-structures/binary-tree/tree-set.ts +437 -4443
  130. package/src/data-structures/graph/abstract-graph.ts +98 -167
  131. package/src/data-structures/graph/directed-graph.ts +137 -532
  132. package/src/data-structures/graph/map-graph.ts +0 -3
  133. package/src/data-structures/graph/undirected-graph.ts +132 -484
  134. package/src/data-structures/hash/hash-map.ts +154 -549
  135. package/src/data-structures/heap/heap.ts +200 -753
  136. package/src/data-structures/linked-list/doubly-linked-list.ts +153 -809
  137. package/src/data-structures/linked-list/singly-linked-list.ts +122 -749
  138. package/src/data-structures/linked-list/skip-linked-list.ts +211 -864
  139. package/src/data-structures/matrix/matrix.ts +179 -494
  140. package/src/data-structures/matrix/navigator.ts +0 -1
  141. package/src/data-structures/priority-queue/max-priority-queue.ts +1 -6
  142. package/src/data-structures/priority-queue/min-priority-queue.ts +6 -11
  143. package/src/data-structures/priority-queue/priority-queue.ts +1 -2
  144. package/src/data-structures/queue/deque.ts +241 -807
  145. package/src/data-structures/queue/queue.ts +102 -589
  146. package/src/data-structures/stack/stack.ts +76 -475
  147. package/src/data-structures/trie/trie.ts +98 -592
  148. package/src/types/common.ts +0 -10
  149. package/src/types/data-structures/binary-tree/bst.ts +0 -7
  150. package/src/types/data-structures/binary-tree/red-black-tree.ts +0 -1
  151. package/src/types/data-structures/graph/abstract-graph.ts +0 -2
  152. package/src/types/data-structures/hash/hash-map.ts +0 -3
  153. package/src/types/data-structures/hash/index.ts +0 -1
  154. package/src/types/data-structures/matrix/navigator.ts +0 -2
  155. package/src/types/utils/utils.ts +0 -7
  156. package/src/types/utils/validate-type.ts +0 -7
  157. package/src/utils/number.ts +0 -2
  158. package/src/utils/utils.ts +0 -5
@@ -390,6 +390,35 @@ var IterableElementBase = class {
390
390
  for (const ele of this) if (ele === element) return true;
391
391
  return false;
392
392
  }
393
+ /**
394
+ * Check whether a value exists (Array-compatible alias for `has`).
395
+ * @remarks Provided for familiarity when migrating from Array. Time O(n), Space O(1).
396
+ * @param element - Element to search for (uses `===`).
397
+ * @returns `true` if found.
398
+ */
399
+ includes(element) {
400
+ return this.has(element);
401
+ }
402
+ /**
403
+ * Return an iterator of `[index, value]` pairs (Array-compatible).
404
+ * @remarks Provided for familiarity when migrating from Array. Time O(n), Space O(1) per step.
405
+ */
406
+ *entries() {
407
+ let index = 0;
408
+ for (const value of this) {
409
+ yield [index++, value];
410
+ }
411
+ }
412
+ /**
413
+ * Return an iterator of numeric indices (Array-compatible).
414
+ * @remarks Provided for familiarity when migrating from Array. Time O(n), Space O(1) per step.
415
+ */
416
+ *keys() {
417
+ let index = 0;
418
+ for (const _ of this) {
419
+ yield index++;
420
+ }
421
+ }
393
422
  /**
394
423
  * Reduces all elements to a single accumulated value.
395
424
  *
@@ -700,6 +729,16 @@ var LinearBase = class _LinearBase extends IterableElementBase {
700
729
  }
701
730
  return this;
702
731
  }
732
+ /**
733
+ * Return a new instance of the same type with elements in reverse order (non-mutating).
734
+ * @remarks Provided for familiarity when migrating from Array (ES2023 `toReversed`). Time O(n), Space O(n).
735
+ * @returns A new reversed instance.
736
+ */
737
+ toReversed() {
738
+ const cloned = this.clone();
739
+ cloned.reverse();
740
+ return cloned;
741
+ }
703
742
  };
704
743
  var LinearLinkedBase = class extends LinearBase {
705
744
  static {
@@ -1072,6 +1111,9 @@ var HashMap = class extends IterableEntryBase {
1072
1111
 
1073
1112
 
1074
1113
 
1114
+
1115
+
1116
+
1075
1117
 
1076
1118
 
1077
1119
 
@@ -1121,6 +1163,9 @@ var HashMap = class extends IterableEntryBase {
1121
1163
 
1122
1164
 
1123
1165
 
1166
+
1167
+
1168
+
1124
1169
 
1125
1170
 
1126
1171
 
@@ -1221,6 +1266,12 @@ var HashMap = class extends IterableEntryBase {
1221
1266
 
1222
1267
 
1223
1268
 
1269
+
1270
+
1271
+
1272
+
1273
+
1274
+
1224
1275
 
1225
1276
 
1226
1277
 
@@ -1296,6 +1347,9 @@ var HashMap = class extends IterableEntryBase {
1296
1347
 
1297
1348
 
1298
1349
 
1350
+
1351
+
1352
+
1299
1353
 
1300
1354
 
1301
1355
 
@@ -1360,6 +1414,9 @@ var HashMap = class extends IterableEntryBase {
1360
1414
 
1361
1415
 
1362
1416
 
1417
+
1418
+
1419
+
1363
1420
 
1364
1421
 
1365
1422
 
@@ -1431,6 +1488,9 @@ var HashMap = class extends IterableEntryBase {
1431
1488
 
1432
1489
 
1433
1490
 
1491
+
1492
+
1493
+
1434
1494
 
1435
1495
 
1436
1496
 
@@ -1487,6 +1547,9 @@ var HashMap = class extends IterableEntryBase {
1487
1547
 
1488
1548
 
1489
1549
 
1550
+
1551
+
1552
+
1490
1553
 
1491
1554
 
1492
1555
 
@@ -1561,6 +1624,9 @@ var HashMap = class extends IterableEntryBase {
1561
1624
 
1562
1625
 
1563
1626
 
1627
+
1628
+
1629
+
1564
1630
 
1565
1631
 
1566
1632
 
@@ -1618,6 +1684,9 @@ var HashMap = class extends IterableEntryBase {
1618
1684
 
1619
1685
 
1620
1686
 
1687
+
1688
+
1689
+
1621
1690
 
1622
1691
 
1623
1692
 
@@ -1677,6 +1746,9 @@ var HashMap = class extends IterableEntryBase {
1677
1746
 
1678
1747
 
1679
1748
 
1749
+
1750
+
1751
+
1680
1752
 
1681
1753
 
1682
1754
 
@@ -2244,6 +2316,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2244
2316
 
2245
2317
 
2246
2318
 
2319
+
2320
+
2321
+
2247
2322
 
2248
2323
 
2249
2324
 
@@ -2315,6 +2390,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2315
2390
 
2316
2391
 
2317
2392
 
2393
+
2394
+
2395
+
2318
2396
 
2319
2397
 
2320
2398
 
@@ -2391,6 +2469,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2391
2469
 
2392
2470
 
2393
2471
 
2472
+
2473
+
2474
+
2394
2475
 
2395
2476
 
2396
2477
 
@@ -2449,6 +2530,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2449
2530
 
2450
2531
 
2451
2532
 
2533
+
2534
+
2535
+
2452
2536
 
2453
2537
 
2454
2538
 
@@ -2568,6 +2652,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2568
2652
 
2569
2653
 
2570
2654
 
2655
+
2656
+
2657
+
2571
2658
 
2572
2659
 
2573
2660
 
@@ -2631,6 +2718,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2631
2718
 
2632
2719
 
2633
2720
 
2721
+
2722
+
2723
+
2634
2724
 
2635
2725
 
2636
2726
 
@@ -2683,6 +2773,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2683
2773
 
2684
2774
 
2685
2775
 
2776
+
2777
+
2778
+
2686
2779
 
2687
2780
 
2688
2781
 
@@ -2741,6 +2834,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2741
2834
 
2742
2835
 
2743
2836
 
2837
+
2838
+
2839
+
2744
2840
 
2745
2841
 
2746
2842
 
@@ -2804,6 +2900,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2804
2900
 
2805
2901
 
2806
2902
 
2903
+
2904
+
2905
+
2807
2906
 
2808
2907
 
2809
2908
 
@@ -2875,6 +2974,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2875
2974
 
2876
2975
 
2877
2976
 
2977
+
2978
+
2979
+
2878
2980
 
2879
2981
 
2880
2982
 
@@ -2923,6 +3025,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2923
3025
 
2924
3026
 
2925
3027
 
3028
+
3029
+
3030
+
2926
3031
 
2927
3032
 
2928
3033
 
@@ -2977,6 +3082,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
2977
3082
 
2978
3083
 
2979
3084
 
3085
+
3086
+
3087
+
2980
3088
 
2981
3089
 
2982
3090
 
@@ -3197,6 +3305,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
3197
3305
 
3198
3306
 
3199
3307
 
3308
+
3309
+
3310
+
3200
3311
 
3201
3312
 
3202
3313
 
@@ -3255,6 +3366,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
3255
3366
 
3256
3367
 
3257
3368
 
3369
+
3370
+
3371
+
3258
3372
 
3259
3373
 
3260
3374
 
@@ -3341,6 +3455,9 @@ var SinglyLinkedList = class extends LinearLinkedBase {
3341
3455
 
3342
3456
 
3343
3457
 
3458
+
3459
+
3460
+
3344
3461
 
3345
3462
 
3346
3463
 
@@ -3665,6 +3782,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
3665
3782
 
3666
3783
 
3667
3784
 
3785
+
3786
+
3787
+
3668
3788
 
3669
3789
 
3670
3790
 
@@ -3738,6 +3858,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
3738
3858
 
3739
3859
 
3740
3860
 
3861
+
3862
+
3863
+
3741
3864
 
3742
3865
 
3743
3866
 
@@ -3810,6 +3933,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
3810
3933
 
3811
3934
 
3812
3935
 
3936
+
3937
+
3938
+
3813
3939
 
3814
3940
 
3815
3941
 
@@ -3873,6 +3999,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
3873
3999
 
3874
4000
 
3875
4001
 
4002
+
4003
+
4004
+
3876
4005
 
3877
4006
 
3878
4007
 
@@ -3965,6 +4094,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
3965
4094
 
3966
4095
 
3967
4096
 
4097
+
4098
+
4099
+
3968
4100
 
3969
4101
 
3970
4102
 
@@ -4018,6 +4150,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4018
4150
 
4019
4151
 
4020
4152
 
4153
+
4154
+
4155
+
4021
4156
 
4022
4157
 
4023
4158
 
@@ -4102,6 +4237,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4102
4237
 
4103
4238
 
4104
4239
 
4240
+
4241
+
4242
+
4105
4243
 
4106
4244
 
4107
4245
 
@@ -4214,6 +4352,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4214
4352
 
4215
4353
 
4216
4354
 
4355
+
4356
+
4357
+
4217
4358
 
4218
4359
 
4219
4360
 
@@ -4273,6 +4414,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4273
4414
 
4274
4415
 
4275
4416
 
4417
+
4418
+
4419
+
4276
4420
 
4277
4421
 
4278
4422
 
@@ -4334,6 +4478,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4334
4478
 
4335
4479
 
4336
4480
 
4481
+
4482
+
4483
+
4337
4484
 
4338
4485
 
4339
4486
 
@@ -4382,6 +4529,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4382
4529
 
4383
4530
 
4384
4531
 
4532
+
4533
+
4534
+
4385
4535
 
4386
4536
 
4387
4537
 
@@ -4434,6 +4584,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4434
4584
 
4435
4585
 
4436
4586
 
4587
+
4588
+
4589
+
4437
4590
 
4438
4591
 
4439
4592
 
@@ -4497,11 +4650,31 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4497
4650
  * @example
4498
4651
  * // Find value scanning from tail
4499
4652
  * const list = new DoublyLinkedList<number>([1, 2, 3, 4]);
4500
- * // getBackward scans from tail to head, returns first match
4501
- * const found = list.getBackward(node => node.value < 4);
4653
+ * // findLast scans from tail to head, returns first match
4654
+ * const found = list.findLast(node => node.value < 4);
4502
4655
  * console.log(found); // 3;
4503
4656
  */
4657
+ /**
4658
+ * @deprecated Use `findLast` instead. Will be removed in a future major version.
4659
+ */
4504
4660
  getBackward(elementNodeOrPredicate) {
4661
+ return this.findLast(elementNodeOrPredicate);
4662
+ }
4663
+ /**
4664
+ * Find the first value matching a predicate scanning backward (tail → head).
4665
+ * @remarks Time O(N), Space O(1)
4666
+ * @param elementNodeOrPredicate - Element, node, or predicate to match.
4667
+ * @returns Matching value or undefined.
4668
+
4669
+
4670
+ * @example
4671
+ * // Find value scanning from tail
4672
+ * const list = new DoublyLinkedList<number>([1, 2, 3, 4]);
4673
+ * // findLast scans from tail to head, returns first match
4674
+ * const found = list.findLast(node => node.value < 4);
4675
+ * console.log(found); // 3;
4676
+ */
4677
+ findLast(elementNodeOrPredicate) {
4505
4678
  const predicate = this._ensurePredicate(elementNodeOrPredicate);
4506
4679
  let current = this.tail;
4507
4680
  while (current) {
@@ -4510,6 +4683,22 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4510
4683
  }
4511
4684
  return void 0;
4512
4685
  }
4686
+ /**
4687
+ * Find the index of the last value matching a predicate (scans tail → head).
4688
+ * @remarks Provided for familiarity when migrating from Array. Time O(n), Space O(1).
4689
+ * @param predicate - Function called with (value, index, list).
4690
+ * @returns Matching index, or -1 if not found.
4691
+ */
4692
+ findLastIndex(predicate) {
4693
+ let current = this.tail;
4694
+ let index = this.length - 1;
4695
+ while (current) {
4696
+ if (predicate(current.value, index, this)) return index;
4697
+ current = current.prev;
4698
+ index--;
4699
+ }
4700
+ return -1;
4701
+ }
4513
4702
  /**
4514
4703
  * Reverse the list in place.
4515
4704
  * @remarks Time O(N), Space O(1)
@@ -4549,6 +4738,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4549
4738
 
4550
4739
 
4551
4740
 
4741
+
4742
+
4743
+
4552
4744
 
4553
4745
 
4554
4746
 
@@ -4635,6 +4827,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4635
4827
 
4636
4828
 
4637
4829
 
4830
+
4831
+
4832
+
4638
4833
 
4639
4834
 
4640
4835
 
@@ -4692,6 +4887,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4692
4887
 
4693
4888
 
4694
4889
 
4890
+
4891
+
4892
+
4695
4893
 
4696
4894
 
4697
4895
 
@@ -4768,6 +4966,9 @@ var DoublyLinkedList = class extends LinearLinkedBase {
4768
4966
 
4769
4967
 
4770
4968
 
4969
+
4970
+
4971
+
4771
4972
 
4772
4973
 
4773
4974
 
@@ -4993,6 +5194,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
4993
5194
 
4994
5195
 
4995
5196
 
5197
+
5198
+
5199
+
4996
5200
 
4997
5201
 
4998
5202
 
@@ -5039,6 +5243,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5039
5243
 
5040
5244
 
5041
5245
 
5246
+
5247
+
5248
+
5042
5249
 
5043
5250
 
5044
5251
 
@@ -5088,6 +5295,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5088
5295
 
5089
5296
 
5090
5297
 
5298
+
5299
+
5300
+
5091
5301
 
5092
5302
 
5093
5303
 
@@ -5145,6 +5355,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5145
5355
 
5146
5356
 
5147
5357
 
5358
+
5359
+
5360
+
5148
5361
 
5149
5362
 
5150
5363
 
@@ -5227,6 +5440,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5227
5440
 
5228
5441
 
5229
5442
 
5443
+
5444
+
5445
+
5230
5446
 
5231
5447
 
5232
5448
 
@@ -5294,6 +5510,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5294
5510
 
5295
5511
 
5296
5512
 
5513
+
5514
+
5515
+
5297
5516
 
5298
5517
 
5299
5518
 
@@ -5344,6 +5563,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5344
5563
 
5345
5564
 
5346
5565
 
5566
+
5567
+
5568
+
5347
5569
 
5348
5570
 
5349
5571
 
@@ -5414,6 +5636,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5414
5636
 
5415
5637
 
5416
5638
 
5639
+
5640
+
5641
+
5417
5642
 
5418
5643
 
5419
5644
 
@@ -5464,6 +5689,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5464
5689
 
5465
5690
 
5466
5691
 
5692
+
5693
+
5694
+
5467
5695
 
5468
5696
 
5469
5697
 
@@ -5516,6 +5744,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5516
5744
 
5517
5745
 
5518
5746
 
5747
+
5748
+
5749
+
5519
5750
 
5520
5751
 
5521
5752
 
@@ -5566,6 +5797,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5566
5797
 
5567
5798
 
5568
5799
 
5800
+
5801
+
5802
+
5569
5803
 
5570
5804
 
5571
5805
 
@@ -5619,6 +5853,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5619
5853
 
5620
5854
 
5621
5855
 
5856
+
5857
+
5858
+
5622
5859
 
5623
5860
 
5624
5861
 
@@ -5677,6 +5914,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5677
5914
 
5678
5915
 
5679
5916
 
5917
+
5918
+
5919
+
5680
5920
 
5681
5921
 
5682
5922
 
@@ -5733,6 +5973,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5733
5973
 
5734
5974
 
5735
5975
 
5976
+
5977
+
5978
+
5736
5979
 
5737
5980
 
5738
5981
 
@@ -5788,6 +6031,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5788
6031
 
5789
6032
 
5790
6033
 
6034
+
6035
+
6036
+
5791
6037
 
5792
6038
 
5793
6039
 
@@ -5849,6 +6095,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5849
6095
 
5850
6096
 
5851
6097
 
6098
+
6099
+
6100
+
5852
6101
 
5853
6102
 
5854
6103
 
@@ -5918,6 +6167,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5918
6167
 
5919
6168
 
5920
6169
 
6170
+
6171
+
6172
+
5921
6173
 
5922
6174
 
5923
6175
 
@@ -5971,6 +6223,9 @@ var SkipList = class _SkipList extends IterableEntryBase {
5971
6223
 
5972
6224
 
5973
6225
 
6226
+
6227
+
6228
+
5974
6229
 
5975
6230
 
5976
6231
 
@@ -6108,6 +6363,9 @@ var Stack = class extends IterableElementBase {
6108
6363
 
6109
6364
 
6110
6365
 
6366
+
6367
+
6368
+
6111
6369
 
6112
6370
 
6113
6371
 
@@ -6172,6 +6430,9 @@ var Stack = class extends IterableElementBase {
6172
6430
 
6173
6431
 
6174
6432
 
6433
+
6434
+
6435
+
6175
6436
 
6176
6437
 
6177
6438
 
@@ -6225,6 +6486,9 @@ var Stack = class extends IterableElementBase {
6225
6486
 
6226
6487
 
6227
6488
 
6489
+
6490
+
6491
+
6228
6492
 
6229
6493
 
6230
6494
 
@@ -6278,6 +6542,9 @@ var Stack = class extends IterableElementBase {
6278
6542
 
6279
6543
 
6280
6544
 
6545
+
6546
+
6547
+
6281
6548
 
6282
6549
 
6283
6550
 
@@ -6340,6 +6607,9 @@ var Stack = class extends IterableElementBase {
6340
6607
 
6341
6608
 
6342
6609
 
6610
+
6611
+
6612
+
6343
6613
 
6344
6614
 
6345
6615
 
@@ -6417,6 +6687,9 @@ var Stack = class extends IterableElementBase {
6417
6687
 
6418
6688
 
6419
6689
 
6690
+
6691
+
6692
+
6420
6693
 
6421
6694
 
6422
6695
 
@@ -6494,6 +6767,9 @@ var Stack = class extends IterableElementBase {
6494
6767
 
6495
6768
 
6496
6769
 
6770
+
6771
+
6772
+
6497
6773
 
6498
6774
 
6499
6775
 
@@ -6544,6 +6820,9 @@ var Stack = class extends IterableElementBase {
6544
6820
 
6545
6821
 
6546
6822
 
6823
+
6824
+
6825
+
6547
6826
 
6548
6827
 
6549
6828
 
@@ -6600,6 +6879,9 @@ var Stack = class extends IterableElementBase {
6600
6879
 
6601
6880
 
6602
6881
 
6882
+
6883
+
6884
+
6603
6885
 
6604
6886
 
6605
6887
 
@@ -6676,6 +6958,9 @@ var Stack = class extends IterableElementBase {
6676
6958
 
6677
6959
 
6678
6960
 
6961
+
6962
+
6963
+
6679
6964
 
6680
6965
 
6681
6966
 
@@ -6843,6 +7128,9 @@ var Queue = class _Queue extends LinearBase {
6843
7128
 
6844
7129
 
6845
7130
 
7131
+
7132
+
7133
+
6846
7134
 
6847
7135
 
6848
7136
 
@@ -6897,6 +7185,9 @@ var Queue = class _Queue extends LinearBase {
6897
7185
 
6898
7186
 
6899
7187
 
7188
+
7189
+
7190
+
6900
7191
 
6901
7192
 
6902
7193
 
@@ -6975,6 +7266,9 @@ var Queue = class _Queue extends LinearBase {
6975
7266
 
6976
7267
 
6977
7268
 
7269
+
7270
+
7271
+
6978
7272
 
6979
7273
 
6980
7274
 
@@ -7041,6 +7335,9 @@ var Queue = class _Queue extends LinearBase {
7041
7335
 
7042
7336
 
7043
7337
 
7338
+
7339
+
7340
+
7044
7341
 
7045
7342
 
7046
7343
 
@@ -7114,6 +7411,9 @@ var Queue = class _Queue extends LinearBase {
7114
7411
 
7115
7412
 
7116
7413
 
7414
+
7415
+
7416
+
7117
7417
 
7118
7418
 
7119
7419
 
@@ -7177,6 +7477,9 @@ var Queue = class _Queue extends LinearBase {
7177
7477
 
7178
7478
 
7179
7479
 
7480
+
7481
+
7482
+
7180
7483
 
7181
7484
 
7182
7485
 
@@ -7233,6 +7536,9 @@ var Queue = class _Queue extends LinearBase {
7233
7536
 
7234
7537
 
7235
7538
 
7539
+
7540
+
7541
+
7236
7542
 
7237
7543
 
7238
7544
 
@@ -7345,6 +7651,9 @@ var Queue = class _Queue extends LinearBase {
7345
7651
 
7346
7652
 
7347
7653
 
7654
+
7655
+
7656
+
7348
7657
 
7349
7658
 
7350
7659
 
@@ -7395,6 +7704,9 @@ var Queue = class _Queue extends LinearBase {
7395
7704
 
7396
7705
 
7397
7706
 
7707
+
7708
+
7709
+
7398
7710
 
7399
7711
 
7400
7712
 
@@ -7468,6 +7780,9 @@ var Queue = class _Queue extends LinearBase {
7468
7780
 
7469
7781
 
7470
7782
 
7783
+
7784
+
7785
+
7471
7786
 
7472
7787
 
7473
7788
 
@@ -7525,6 +7840,9 @@ var Queue = class _Queue extends LinearBase {
7525
7840
 
7526
7841
 
7527
7842
 
7843
+
7844
+
7845
+
7528
7846
 
7529
7847
 
7530
7848
 
@@ -7586,6 +7904,9 @@ var Queue = class _Queue extends LinearBase {
7586
7904
 
7587
7905
 
7588
7906
 
7907
+
7908
+
7909
+
7589
7910
 
7590
7911
 
7591
7912
 
@@ -7888,7 +8209,10 @@ var Deque = class extends LinearBase {
7888
8209
  }
7889
8210
  /**
7890
8211
  * Deque peek at both ends
7891
- * @example
8212
+
8213
+
8214
+
8215
+ * @example
7892
8216
  * // Deque peek at both ends
7893
8217
  * const deque = new Deque<number>([10, 20, 30, 40, 50]);
7894
8218
  *
@@ -7946,6 +8270,9 @@ var Deque = class extends LinearBase {
7946
8270
 
7947
8271
 
7948
8272
 
8273
+
8274
+
8275
+
7949
8276
 
7950
8277
 
7951
8278
 
@@ -8013,6 +8340,9 @@ var Deque = class extends LinearBase {
8013
8340
 
8014
8341
 
8015
8342
 
8343
+
8344
+
8345
+
8016
8346
 
8017
8347
 
8018
8348
 
@@ -8093,6 +8423,9 @@ var Deque = class extends LinearBase {
8093
8423
 
8094
8424
 
8095
8425
 
8426
+
8427
+
8428
+
8096
8429
 
8097
8430
 
8098
8431
 
@@ -8160,6 +8493,9 @@ var Deque = class extends LinearBase {
8160
8493
 
8161
8494
 
8162
8495
 
8496
+
8497
+
8498
+
8163
8499
 
8164
8500
 
8165
8501
 
@@ -8228,6 +8564,9 @@ var Deque = class extends LinearBase {
8228
8564
 
8229
8565
 
8230
8566
 
8567
+
8568
+
8569
+
8231
8570
 
8232
8571
 
8233
8572
 
@@ -8337,6 +8676,9 @@ var Deque = class extends LinearBase {
8337
8676
 
8338
8677
 
8339
8678
 
8679
+
8680
+
8681
+
8340
8682
 
8341
8683
 
8342
8684
 
@@ -8386,6 +8728,9 @@ var Deque = class extends LinearBase {
8386
8728
 
8387
8729
 
8388
8730
 
8731
+
8732
+
8733
+
8389
8734
 
8390
8735
 
8391
8736
 
@@ -8439,6 +8784,9 @@ var Deque = class extends LinearBase {
8439
8784
 
8440
8785
 
8441
8786
 
8787
+
8788
+
8789
+
8442
8790
 
8443
8791
 
8444
8792
 
@@ -8643,6 +8991,9 @@ var Deque = class extends LinearBase {
8643
8991
 
8644
8992
 
8645
8993
 
8994
+
8995
+
8996
+
8646
8997
 
8647
8998
 
8648
8999
 
@@ -8737,6 +9088,64 @@ var Deque = class extends LinearBase {
8737
9088
 
8738
9089
 
8739
9090
 
9091
+
9092
+ * @example
9093
+ * // Deque for...of iteration and reverse
9094
+ * const deque = new Deque<string>(['A', 'B', 'C', 'D']);
9095
+ *
9096
+ * // Iterate forward
9097
+ * const forward: string[] = [];
9098
+ * for (const item of deque) {
9099
+ * forward.push(item);
9100
+ * }
9101
+ * console.log(forward); // ['A', 'B', 'C', 'D'];
9102
+ *
9103
+ * // Reverse the deque
9104
+ * deque.reverse();
9105
+ * const backward: string[] = [];
9106
+ * for (const item of deque) {
9107
+ * backward.push(item);
9108
+ * }
9109
+ * console.log(backward); // ['D', 'C', 'B', 'A'];
9110
+ */
9111
+ /**
9112
+ * Find the last value matching a predicate (scans back-to-front).
9113
+ * @remarks Provided for familiarity when migrating from Array. Time O(n), Space O(1).
9114
+ * @param predicate - Function called with (value, index, deque).
9115
+ * @returns Matching value or undefined.
9116
+ * @example
9117
+ * // Find last matching value
9118
+ * const d = new Deque([1, 2, 3, 4, 5]);
9119
+ * console.log(d.findLast(v => v > 2)); // 5;
9120
+ * console.log(d.findLast(v => v % 2 === 0)); // 4;
9121
+ */
9122
+ findLast(predicate) {
9123
+ for (let i = this.length - 1; i >= 0; i--) {
9124
+ const val = this.at(i);
9125
+ if (predicate(val, i, this)) return val;
9126
+ }
9127
+ return void 0;
9128
+ }
9129
+ /**
9130
+ * Find the index of the last value matching a predicate (scans back-to-front).
9131
+ * @remarks Provided for familiarity when migrating from Array. Time O(n), Space O(1).
9132
+ * @param predicate - Function called with (value, index, deque).
9133
+ * @returns Matching index, or -1 if not found.
9134
+ * @example
9135
+ * // Find last matching index
9136
+ * const d = new Deque([10, 20, 30, 20, 10]);
9137
+ * console.log(d.findLastIndex(v => v === 20)); // 3;
9138
+ * console.log(d.findLastIndex(v => v === 10)); // 4;
9139
+ */
9140
+ findLastIndex(predicate) {
9141
+ for (let i = this.length - 1; i >= 0; i--) {
9142
+ if (predicate(this.at(i), i, this)) return i;
9143
+ }
9144
+ return -1;
9145
+ }
9146
+ /**
9147
+ * Deque for...of iteration and reverse
9148
+
8740
9149
 
8741
9150
  * @example
8742
9151
  * // Deque for...of iteration and reverse
@@ -8850,6 +9259,9 @@ var Deque = class extends LinearBase {
8850
9259
 
8851
9260
 
8852
9261
 
9262
+
9263
+
9264
+
8853
9265
 
8854
9266
 
8855
9267
 
@@ -8925,6 +9337,9 @@ var Deque = class extends LinearBase {
8925
9337
 
8926
9338
 
8927
9339
 
9340
+
9341
+
9342
+
8928
9343
 
8929
9344
 
8930
9345
 
@@ -8983,6 +9398,9 @@ var Deque = class extends LinearBase {
8983
9398
 
8984
9399
 
8985
9400
 
9401
+
9402
+
9403
+
8986
9404
 
8987
9405
 
8988
9406
 
@@ -9061,6 +9479,9 @@ var Deque = class extends LinearBase {
9061
9479
 
9062
9480
 
9063
9481
 
9482
+
9483
+
9484
+
9064
9485
 
9065
9486
 
9066
9487
 
@@ -9263,6 +9684,9 @@ var Heap = class _Heap extends IterableElementBase {
9263
9684
 
9264
9685
 
9265
9686
 
9687
+
9688
+
9689
+
9266
9690
 
9267
9691
 
9268
9692
 
@@ -9353,6 +9777,9 @@ var Heap = class _Heap extends IterableElementBase {
9353
9777
 
9354
9778
 
9355
9779
 
9780
+
9781
+
9782
+
9356
9783
 
9357
9784
 
9358
9785
 
@@ -9414,6 +9841,9 @@ var Heap = class _Heap extends IterableElementBase {
9414
9841
 
9415
9842
 
9416
9843
 
9844
+
9845
+
9846
+
9417
9847
 
9418
9848
 
9419
9849
 
@@ -9508,6 +9938,9 @@ var Heap = class _Heap extends IterableElementBase {
9508
9938
  */
9509
9939
  /**
9510
9940
  * @deprecated Use `pop` instead. Will be removed in a future major version.
9941
+
9942
+
9943
+
9511
9944
  * @example
9512
9945
  * // Heap with custom comparator (MaxHeap behavior)
9513
9946
  * interface Task {
@@ -9591,6 +10024,9 @@ var Heap = class _Heap extends IterableElementBase {
9591
10024
 
9592
10025
 
9593
10026
 
10027
+
10028
+
10029
+
9594
10030
 
9595
10031
 
9596
10032
 
@@ -9695,6 +10131,9 @@ var Heap = class _Heap extends IterableElementBase {
9695
10131
 
9696
10132
 
9697
10133
 
10134
+
10135
+
10136
+
9698
10137
 
9699
10138
 
9700
10139
 
@@ -9746,6 +10185,9 @@ var Heap = class _Heap extends IterableElementBase {
9746
10185
 
9747
10186
 
9748
10187
 
10188
+
10189
+
10190
+
9749
10191
 
9750
10192
 
9751
10193
 
@@ -9790,6 +10232,9 @@ var Heap = class _Heap extends IterableElementBase {
9790
10232
 
9791
10233
 
9792
10234
 
10235
+
10236
+
10237
+
9793
10238
 
9794
10239
 
9795
10240
 
@@ -9841,6 +10286,9 @@ var Heap = class _Heap extends IterableElementBase {
9841
10286
 
9842
10287
 
9843
10288
 
10289
+
10290
+
10291
+
9844
10292
 
9845
10293
 
9846
10294
 
@@ -9944,6 +10392,9 @@ var Heap = class _Heap extends IterableElementBase {
9944
10392
 
9945
10393
 
9946
10394
 
10395
+
10396
+
10397
+
9947
10398
 
9948
10399
 
9949
10400
 
@@ -10028,6 +10479,9 @@ var Heap = class _Heap extends IterableElementBase {
10028
10479
 
10029
10480
 
10030
10481
 
10482
+
10483
+
10484
+
10031
10485
 
10032
10486
 
10033
10487
 
@@ -10085,6 +10539,9 @@ var Heap = class _Heap extends IterableElementBase {
10085
10539
 
10086
10540
 
10087
10541
 
10542
+
10543
+
10544
+
10088
10545
 
10089
10546
 
10090
10547
 
@@ -10141,6 +10598,9 @@ var Heap = class _Heap extends IterableElementBase {
10141
10598
 
10142
10599
 
10143
10600
 
10601
+
10602
+
10603
+
10144
10604
 
10145
10605
 
10146
10606
 
@@ -10204,6 +10664,9 @@ var Heap = class _Heap extends IterableElementBase {
10204
10664
 
10205
10665
 
10206
10666
 
10667
+
10668
+
10669
+
10207
10670
 
10208
10671
 
10209
10672
 
@@ -11644,6 +12107,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
11644
12107
 
11645
12108
 
11646
12109
 
12110
+
12111
+
12112
+
11647
12113
 
11648
12114
 
11649
12115
 
@@ -11736,6 +12202,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
11736
12202
 
11737
12203
 
11738
12204
 
12205
+
12206
+
12207
+
11739
12208
 
11740
12209
 
11741
12210
 
@@ -11826,6 +12295,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
11826
12295
 
11827
12296
 
11828
12297
 
12298
+
12299
+
12300
+
11829
12301
 
11830
12302
 
11831
12303
 
@@ -11907,6 +12379,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
11907
12379
 
11908
12380
 
11909
12381
 
12382
+
12383
+
12384
+
11910
12385
 
11911
12386
 
11912
12387
 
@@ -11965,6 +12440,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
11965
12440
 
11966
12441
 
11967
12442
 
12443
+
12444
+
12445
+
11968
12446
 
11969
12447
 
11970
12448
 
@@ -12076,6 +12554,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
12076
12554
 
12077
12555
 
12078
12556
 
12557
+
12558
+
12559
+
12079
12560
 
12080
12561
 
12081
12562
 
@@ -12168,6 +12649,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
12168
12649
 
12169
12650
 
12170
12651
 
12652
+
12653
+
12654
+
12171
12655
 
12172
12656
 
12173
12657
 
@@ -12222,6 +12706,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
12222
12706
 
12223
12707
 
12224
12708
 
12709
+
12710
+
12711
+
12225
12712
 
12226
12713
 
12227
12714
 
@@ -12329,6 +12816,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
12329
12816
 
12330
12817
 
12331
12818
 
12819
+
12820
+
12821
+
12332
12822
 
12333
12823
 
12334
12824
 
@@ -12439,6 +12929,9 @@ var DirectedGraph = class _DirectedGraph extends AbstractGraph {
12439
12929
 
12440
12930
 
12441
12931
 
12932
+
12933
+
12934
+
12442
12935
 
12443
12936
 
12444
12937
 
@@ -12615,6 +13108,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
12615
13108
 
12616
13109
 
12617
13110
 
13111
+
13112
+
13113
+
12618
13114
 
12619
13115
 
12620
13116
 
@@ -12703,6 +13199,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
12703
13199
 
12704
13200
 
12705
13201
 
13202
+
13203
+
13204
+
12706
13205
 
12707
13206
 
12708
13207
 
@@ -12791,6 +13290,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
12791
13290
 
12792
13291
 
12793
13292
 
13293
+
13294
+
13295
+
12794
13296
 
12795
13297
 
12796
13298
 
@@ -12893,6 +13395,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
12893
13395
 
12894
13396
 
12895
13397
 
13398
+
13399
+
13400
+
12896
13401
 
12897
13402
 
12898
13403
 
@@ -12951,6 +13456,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
12951
13456
 
12952
13457
 
12953
13458
 
13459
+
13460
+
13461
+
12954
13462
 
12955
13463
 
12956
13464
 
@@ -13079,6 +13587,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
13079
13587
 
13080
13588
 
13081
13589
 
13590
+
13591
+
13592
+
13082
13593
 
13083
13594
 
13084
13595
 
@@ -13229,6 +13740,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
13229
13740
 
13230
13741
 
13231
13742
 
13743
+
13744
+
13745
+
13232
13746
 
13233
13747
 
13234
13748
 
@@ -13301,6 +13815,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
13301
13815
 
13302
13816
 
13303
13817
 
13818
+
13819
+
13820
+
13304
13821
 
13305
13822
 
13306
13823
 
@@ -13355,6 +13872,9 @@ var UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
13355
13872
 
13356
13873
 
13357
13874
 
13875
+
13876
+
13877
+
13358
13878
 
13359
13879
 
13360
13880
 
@@ -13919,6 +14439,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
13919
14439
 
13920
14440
 
13921
14441
 
14442
+
14443
+
14444
+
13922
14445
 
13923
14446
 
13924
14447
 
@@ -13977,6 +14500,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
13977
14500
 
13978
14501
 
13979
14502
 
14503
+
14504
+
14505
+
13980
14506
 
13981
14507
 
13982
14508
 
@@ -14087,6 +14613,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14087
14613
 
14088
14614
 
14089
14615
 
14616
+
14617
+
14618
+
14090
14619
 
14091
14620
 
14092
14621
 
@@ -14133,6 +14662,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14133
14662
 
14134
14663
 
14135
14664
 
14665
+
14666
+
14667
+
14136
14668
 
14137
14669
 
14138
14670
 
@@ -14200,6 +14732,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14200
14732
 
14201
14733
 
14202
14734
 
14735
+
14736
+
14737
+
14203
14738
 
14204
14739
 
14205
14740
 
@@ -14306,6 +14841,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14306
14841
 
14307
14842
 
14308
14843
 
14844
+
14845
+
14846
+
14309
14847
 
14310
14848
 
14311
14849
 
@@ -14410,6 +14948,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14410
14948
 
14411
14949
 
14412
14950
 
14951
+
14952
+
14953
+
14413
14954
 
14414
14955
 
14415
14956
 
@@ -14472,6 +15013,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14472
15013
 
14473
15014
 
14474
15015
 
15016
+
15017
+
15018
+
14475
15019
 
14476
15020
 
14477
15021
 
@@ -14536,6 +15080,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14536
15080
 
14537
15081
 
14538
15082
 
15083
+
15084
+
15085
+
14539
15086
 
14540
15087
 
14541
15088
 
@@ -14588,6 +15135,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14588
15135
 
14589
15136
 
14590
15137
 
15138
+
15139
+
15140
+
14591
15141
 
14592
15142
 
14593
15143
 
@@ -14649,6 +15199,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14649
15199
 
14650
15200
 
14651
15201
 
15202
+
15203
+
15204
+
14652
15205
 
14653
15206
 
14654
15207
 
@@ -14737,6 +15290,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14737
15290
 
14738
15291
 
14739
15292
 
15293
+
15294
+
15295
+
14740
15296
 
14741
15297
 
14742
15298
 
@@ -14802,6 +15358,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
14802
15358
 
14803
15359
 
14804
15360
 
15361
+
15362
+
15363
+
14805
15364
 
14806
15365
 
14807
15366
 
@@ -15283,6 +15842,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
15283
15842
 
15284
15843
 
15285
15844
 
15845
+
15846
+
15847
+
15286
15848
 
15287
15849
 
15288
15850
 
@@ -15339,6 +15901,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
15339
15901
 
15340
15902
 
15341
15903
 
15904
+
15905
+
15906
+
15342
15907
 
15343
15908
 
15344
15909
 
@@ -15399,6 +15964,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
15399
15964
 
15400
15965
 
15401
15966
 
15967
+
15968
+
15969
+
15402
15970
 
15403
15971
 
15404
15972
 
@@ -15484,6 +16052,9 @@ var BinaryTree = class _BinaryTree extends IterableEntryBase {
15484
16052
 
15485
16053
 
15486
16054
 
16055
+
16056
+
16057
+
15487
16058
 
15488
16059
 
15489
16060
 
@@ -16312,6 +16883,12 @@ var BST = class extends BinaryTree {
16312
16883
 
16313
16884
 
16314
16885
 
16886
+
16887
+
16888
+
16889
+
16890
+
16891
+
16315
16892
 
16316
16893
 
16317
16894
 
@@ -16657,6 +17234,15 @@ var BST = class extends BinaryTree {
16657
17234
 
16658
17235
 
16659
17236
 
17237
+
17238
+
17239
+
17240
+
17241
+
17242
+
17243
+
17244
+
17245
+
16660
17246
 
16661
17247
 
16662
17248
 
@@ -16783,6 +17369,12 @@ var BST = class extends BinaryTree {
16783
17369
 
16784
17370
 
16785
17371
 
17372
+
17373
+
17374
+
17375
+
17376
+
17377
+
16786
17378
 
16787
17379
 
16788
17380
 
@@ -17077,6 +17669,9 @@ var BST = class extends BinaryTree {
17077
17669
 
17078
17670
 
17079
17671
 
17672
+
17673
+
17674
+
17080
17675
 
17081
17676
 
17082
17677
 
@@ -17150,6 +17745,9 @@ var BST = class extends BinaryTree {
17150
17745
 
17151
17746
 
17152
17747
 
17748
+
17749
+
17750
+
17153
17751
 
17154
17752
 
17155
17753
 
@@ -17277,6 +17875,12 @@ var BST = class extends BinaryTree {
17277
17875
 
17278
17876
 
17279
17877
 
17878
+
17879
+
17880
+
17881
+
17882
+
17883
+
17280
17884
 
17281
17885
 
17282
17886
 
@@ -17977,6 +18581,12 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
17977
18581
 
17978
18582
 
17979
18583
 
18584
+
18585
+
18586
+
18587
+
18588
+
18589
+
17980
18590
 
17981
18591
 
17982
18592
 
@@ -18061,6 +18671,12 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18061
18671
 
18062
18672
 
18063
18673
 
18674
+
18675
+
18676
+
18677
+
18678
+
18679
+
18064
18680
 
18065
18681
 
18066
18682
 
@@ -18145,6 +18761,12 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18145
18761
 
18146
18762
 
18147
18763
 
18764
+
18765
+
18766
+
18767
+
18768
+
18769
+
18148
18770
 
18149
18771
 
18150
18772
 
@@ -18229,6 +18851,12 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18229
18851
 
18230
18852
 
18231
18853
 
18854
+
18855
+
18856
+
18857
+
18858
+
18859
+
18232
18860
 
18233
18861
 
18234
18862
 
@@ -18311,6 +18939,12 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18311
18939
 
18312
18940
 
18313
18941
 
18942
+
18943
+
18944
+
18945
+
18946
+
18947
+
18314
18948
 
18315
18949
 
18316
18950
 
@@ -18400,6 +19034,12 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18400
19034
 
18401
19035
 
18402
19036
 
19037
+
19038
+
19039
+
19040
+
19041
+
19042
+
18403
19043
 
18404
19044
 
18405
19045
 
@@ -18457,6 +19097,9 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18457
19097
 
18458
19098
 
18459
19099
 
19100
+
19101
+
19102
+
18460
19103
 
18461
19104
 
18462
19105
 
@@ -18522,6 +19165,9 @@ var BinaryIndexedTree = class _BinaryIndexedTree {
18522
19165
 
18523
19166
 
18524
19167
 
19168
+
19169
+
19170
+
18525
19171
 
18526
19172
 
18527
19173
 
@@ -18690,6 +19336,9 @@ var SegmentTree = class _SegmentTree {
18690
19336
 
18691
19337
 
18692
19338
 
19339
+
19340
+
19341
+
18693
19342
 
18694
19343
 
18695
19344
 
@@ -18766,6 +19415,9 @@ var SegmentTree = class _SegmentTree {
18766
19415
 
18767
19416
 
18768
19417
 
19418
+
19419
+
19420
+
18769
19421
 
18770
19422
 
18771
19423
 
@@ -18836,6 +19488,9 @@ var SegmentTree = class _SegmentTree {
18836
19488
 
18837
19489
 
18838
19490
 
19491
+
19492
+
19493
+
18839
19494
 
18840
19495
 
18841
19496
 
@@ -18913,6 +19568,9 @@ var SegmentTree = class _SegmentTree {
18913
19568
 
18914
19569
 
18915
19570
 
19571
+
19572
+
19573
+
18916
19574
 
18917
19575
 
18918
19576
 
@@ -18968,6 +19626,9 @@ var SegmentTree = class _SegmentTree {
18968
19626
 
18969
19627
 
18970
19628
 
19629
+
19630
+
19631
+
18971
19632
 
18972
19633
 
18973
19634
 
@@ -19049,6 +19710,9 @@ var SegmentTree = class _SegmentTree {
19049
19710
 
19050
19711
 
19051
19712
 
19713
+
19714
+
19715
+
19052
19716
 
19053
19717
 
19054
19718
 
@@ -19453,6 +20117,18 @@ var AVLTree = class extends BST {
19453
20117
 
19454
20118
 
19455
20119
 
20120
+
20121
+
20122
+
20123
+
20124
+
20125
+
20126
+
20127
+
20128
+
20129
+
20130
+
20131
+
19456
20132
 
19457
20133
 
19458
20134
 
@@ -19592,6 +20268,15 @@ var AVLTree = class extends BST {
19592
20268
 
19593
20269
 
19594
20270
 
20271
+
20272
+
20273
+
20274
+
20275
+
20276
+
20277
+
20278
+
20279
+
19595
20280
 
19596
20281
 
19597
20282
 
@@ -19686,6 +20371,12 @@ var AVLTree = class extends BST {
19686
20371
 
19687
20372
 
19688
20373
 
20374
+
20375
+
20376
+
20377
+
20378
+
20379
+
19689
20380
 
19690
20381
 
19691
20382
 
@@ -19831,6 +20522,15 @@ var AVLTree = class extends BST {
19831
20522
 
19832
20523
 
19833
20524
 
20525
+
20526
+
20527
+
20528
+
20529
+
20530
+
20531
+
20532
+
20533
+
19834
20534
 
19835
20535
 
19836
20536
 
@@ -20466,6 +21166,18 @@ var RedBlackTree = class extends BST {
20466
21166
 
20467
21167
 
20468
21168
 
21169
+
21170
+
21171
+
21172
+
21173
+
21174
+
21175
+
21176
+
21177
+
21178
+
21179
+
21180
+
20469
21181
 
20470
21182
 
20471
21183
 
@@ -20957,6 +21669,18 @@ var RedBlackTree = class extends BST {
20957
21669
 
20958
21670
 
20959
21671
 
21672
+
21673
+
21674
+
21675
+
21676
+
21677
+
21678
+
21679
+
21680
+
21681
+
21682
+
21683
+
20960
21684
 
20961
21685
 
20962
21686
 
@@ -21172,6 +21896,18 @@ var RedBlackTree = class extends BST {
21172
21896
 
21173
21897
 
21174
21898
 
21899
+
21900
+
21901
+
21902
+
21903
+
21904
+
21905
+
21906
+
21907
+
21908
+
21909
+
21910
+
21175
21911
 
21176
21912
 
21177
21913
 
@@ -21370,6 +22106,15 @@ var RedBlackTree = class extends BST {
21370
22106
 
21371
22107
 
21372
22108
 
22109
+
22110
+
22111
+
22112
+
22113
+
22114
+
22115
+
22116
+
22117
+
21373
22118
 
21374
22119
 
21375
22120
 
@@ -21535,6 +22280,18 @@ var RedBlackTree = class extends BST {
21535
22280
 
21536
22281
 
21537
22282
 
22283
+
22284
+
22285
+
22286
+
22287
+
22288
+
22289
+
22290
+
22291
+
22292
+
22293
+
22294
+
21538
22295
 
21539
22296
 
21540
22297
 
@@ -22069,6 +22826,21 @@ var TreeSet = class _TreeSet {
22069
22826
 
22070
22827
 
22071
22828
 
22829
+
22830
+
22831
+
22832
+
22833
+
22834
+
22835
+
22836
+
22837
+
22838
+
22839
+
22840
+
22841
+
22842
+
22843
+
22072
22844
 
22073
22845
 
22074
22846
 
@@ -22273,6 +23045,21 @@ var TreeSet = class _TreeSet {
22273
23045
 
22274
23046
 
22275
23047
 
23048
+
23049
+
23050
+
23051
+
23052
+
23053
+
23054
+
23055
+
23056
+
23057
+
23058
+
23059
+
23060
+
23061
+
23062
+
22276
23063
 
22277
23064
 
22278
23065
 
@@ -22318,6 +23105,18 @@ var TreeSet = class _TreeSet {
22318
23105
 
22319
23106
 
22320
23107
 
23108
+
23109
+
23110
+
23111
+
23112
+
23113
+
23114
+
23115
+
23116
+
23117
+
23118
+
23119
+
22321
23120
 
22322
23121
 
22323
23122
 
@@ -22517,6 +23316,21 @@ var TreeSet = class _TreeSet {
22517
23316
 
22518
23317
 
22519
23318
 
23319
+
23320
+
23321
+
23322
+
23323
+
23324
+
23325
+
23326
+
23327
+
23328
+
23329
+
23330
+
23331
+
23332
+
23333
+
22520
23334
 
22521
23335
 
22522
23336
 
@@ -22721,6 +23535,21 @@ var TreeSet = class _TreeSet {
22721
23535
 
22722
23536
 
22723
23537
 
23538
+
23539
+
23540
+
23541
+
23542
+
23543
+
23544
+
23545
+
23546
+
23547
+
23548
+
23549
+
23550
+
23551
+
23552
+
22724
23553
 
22725
23554
 
22726
23555
 
@@ -22930,6 +23759,21 @@ var TreeSet = class _TreeSet {
22930
23759
 
22931
23760
 
22932
23761
 
23762
+
23763
+
23764
+
23765
+
23766
+
23767
+
23768
+
23769
+
23770
+
23771
+
23772
+
23773
+
23774
+
23775
+
23776
+
22933
23777
 
22934
23778
 
22935
23779
 
@@ -23119,6 +23963,21 @@ var TreeSet = class _TreeSet {
23119
23963
 
23120
23964
 
23121
23965
 
23966
+
23967
+
23968
+
23969
+
23970
+
23971
+
23972
+
23973
+
23974
+
23975
+
23976
+
23977
+
23978
+
23979
+
23980
+
23122
23981
 
23123
23982
 
23124
23983
 
@@ -23309,6 +24168,21 @@ var TreeSet = class _TreeSet {
23309
24168
 
23310
24169
 
23311
24170
 
24171
+
24172
+
24173
+
24174
+
24175
+
24176
+
24177
+
24178
+
24179
+
24180
+
24181
+
24182
+
24183
+
24184
+
24185
+
23312
24186
 
23313
24187
 
23314
24188
 
@@ -23499,6 +24373,21 @@ var TreeSet = class _TreeSet {
23499
24373
 
23500
24374
 
23501
24375
 
24376
+
24377
+
24378
+
24379
+
24380
+
24381
+
24382
+
24383
+
24384
+
24385
+
24386
+
24387
+
24388
+
24389
+
24390
+
23502
24391
 
23503
24392
 
23504
24393
 
@@ -23692,6 +24581,21 @@ var TreeSet = class _TreeSet {
23692
24581
 
23693
24582
 
23694
24583
 
24584
+
24585
+
24586
+
24587
+
24588
+
24589
+
24590
+
24591
+
24592
+
24593
+
24594
+
24595
+
24596
+
24597
+
24598
+
23695
24599
 
23696
24600
 
23697
24601
 
@@ -23885,6 +24789,21 @@ var TreeSet = class _TreeSet {
23885
24789
 
23886
24790
 
23887
24791
 
24792
+
24793
+
24794
+
24795
+
24796
+
24797
+
24798
+
24799
+
24800
+
24801
+
24802
+
24803
+
24804
+
24805
+
24806
+
23888
24807
 
23889
24808
 
23890
24809
 
@@ -24081,6 +25000,21 @@ var TreeSet = class _TreeSet {
24081
25000
 
24082
25001
 
24083
25002
 
25003
+
25004
+
25005
+
25006
+
25007
+
25008
+
25009
+
25010
+
25011
+
25012
+
25013
+
25014
+
25015
+
25016
+
25017
+
24084
25018
 
24085
25019
 
24086
25020
 
@@ -24277,6 +25211,21 @@ var TreeSet = class _TreeSet {
24277
25211
 
24278
25212
 
24279
25213
 
25214
+
25215
+
25216
+
25217
+
25218
+
25219
+
25220
+
25221
+
25222
+
25223
+
25224
+
25225
+
25226
+
25227
+
25228
+
24280
25229
 
24281
25230
 
24282
25231
 
@@ -24468,6 +25417,21 @@ var TreeSet = class _TreeSet {
24468
25417
 
24469
25418
 
24470
25419
 
25420
+
25421
+
25422
+
25423
+
25424
+
25425
+
25426
+
25427
+
25428
+
25429
+
25430
+
25431
+
25432
+
25433
+
25434
+
24471
25435
 
24472
25436
 
24473
25437
 
@@ -24660,6 +25624,21 @@ var TreeSet = class _TreeSet {
24660
25624
 
24661
25625
 
24662
25626
 
25627
+
25628
+
25629
+
25630
+
25631
+
25632
+
25633
+
25634
+
25635
+
25636
+
25637
+
25638
+
25639
+
25640
+
25641
+
24663
25642
 
24664
25643
 
24665
25644
 
@@ -24852,6 +25831,21 @@ var TreeSet = class _TreeSet {
24852
25831
 
24853
25832
 
24854
25833
 
25834
+
25835
+
25836
+
25837
+
25838
+
25839
+
25840
+
25841
+
25842
+
25843
+
25844
+
25845
+
25846
+
25847
+
25848
+
24855
25849
 
24856
25850
 
24857
25851
 
@@ -25047,6 +26041,21 @@ var TreeSet = class _TreeSet {
25047
26041
 
25048
26042
 
25049
26043
 
26044
+
26045
+
26046
+
26047
+
26048
+
26049
+
26050
+
26051
+
26052
+
26053
+
26054
+
26055
+
26056
+
26057
+
26058
+
25050
26059
 
25051
26060
 
25052
26061
 
@@ -25236,6 +26245,21 @@ var TreeSet = class _TreeSet {
25236
26245
 
25237
26246
 
25238
26247
 
26248
+
26249
+
26250
+
26251
+
26252
+
26253
+
26254
+
26255
+
26256
+
26257
+
26258
+
26259
+
26260
+
26261
+
26262
+
25239
26263
 
25240
26264
 
25241
26265
 
@@ -25298,6 +26322,9 @@ var TreeSet = class _TreeSet {
25298
26322
 
25299
26323
 
25300
26324
 
26325
+
26326
+
26327
+
25301
26328
 
25302
26329
 
25303
26330
 
@@ -25370,6 +26397,9 @@ var TreeSet = class _TreeSet {
25370
26397
 
25371
26398
 
25372
26399
 
26400
+
26401
+
26402
+
25373
26403
 
25374
26404
 
25375
26405
 
@@ -25420,6 +26450,9 @@ var TreeSet = class _TreeSet {
25420
26450
 
25421
26451
 
25422
26452
 
26453
+
26454
+
26455
+
25423
26456
 
25424
26457
 
25425
26458
 
@@ -25475,6 +26508,9 @@ var TreeSet = class _TreeSet {
25475
26508
 
25476
26509
 
25477
26510
 
26511
+
26512
+
26513
+
25478
26514
 
25479
26515
 
25480
26516
 
@@ -25631,6 +26667,18 @@ var TreeSet = class _TreeSet {
25631
26667
 
25632
26668
 
25633
26669
 
26670
+
26671
+
26672
+
26673
+
26674
+
26675
+
26676
+
26677
+
26678
+
26679
+
26680
+
26681
+
25634
26682
 
25635
26683
 
25636
26684
 
@@ -25804,6 +26852,18 @@ var TreeSet = class _TreeSet {
25804
26852
 
25805
26853
 
25806
26854
 
26855
+
26856
+
26857
+
26858
+
26859
+
26860
+
26861
+
26862
+
26863
+
26864
+
26865
+
26866
+
25807
26867
 
25808
26868
 
25809
26869
 
@@ -25969,6 +27029,18 @@ var TreeSet = class _TreeSet {
25969
27029
 
25970
27030
 
25971
27031
 
27032
+
27033
+
27034
+
27035
+
27036
+
27037
+
27038
+
27039
+
27040
+
27041
+
27042
+
27043
+
25972
27044
 
25973
27045
 
25974
27046
 
@@ -26132,6 +27204,18 @@ var TreeSet = class _TreeSet {
26132
27204
 
26133
27205
 
26134
27206
 
27207
+
27208
+
27209
+
27210
+
27211
+
27212
+
27213
+
27214
+
27215
+
27216
+
27217
+
27218
+
26135
27219
 
26136
27220
 
26137
27221
 
@@ -26298,6 +27382,18 @@ var TreeSet = class _TreeSet {
26298
27382
 
26299
27383
 
26300
27384
 
27385
+
27386
+
27387
+
27388
+
27389
+
27390
+
27391
+
27392
+
27393
+
27394
+
27395
+
27396
+
26301
27397
 
26302
27398
 
26303
27399
 
@@ -26391,6 +27487,12 @@ var TreeSet = class _TreeSet {
26391
27487
 
26392
27488
 
26393
27489
 
27490
+
27491
+
27492
+
27493
+
27494
+
27495
+
26394
27496
  * @example
26395
27497
  * // Pagination by position in tree order
26396
27498
  * const tree = new TreeSet<number>(
@@ -26583,6 +27685,145 @@ var TreeSet = class _TreeSet {
26583
27685
 
26584
27686
 
26585
27687
 
27688
+
27689
+
27690
+
27691
+
27692
+
27693
+
27694
+
27695
+
27696
+
27697
+
27698
+
27699
+
27700
+
27701
+ * @example
27702
+ * // Deep clone
27703
+ * const ts = new TreeSet<number>([1, 2, 3]);
27704
+ * const copy = ts.clone();
27705
+ * copy.delete(1);
27706
+ * console.log(ts.has(1)); // true;
27707
+ */
27708
+ // ---- ES2025 Set-like operations ----
27709
+ /**
27710
+ * Return a new TreeSet containing all elements from both sets.
27711
+ * @remarks When both sets share the same comparator, uses O(n+m) merge. Otherwise O(m log n).
27712
+ * @param other - Any iterable of keys.
27713
+ * @returns A new TreeSet.
27714
+ * @example
27715
+ * // Merge two sets
27716
+ * console.log([...a.union(b)]); // [1, 2, 3, 4, 5, 6, 7];
27717
+ */
27718
+ union(other) {
27719
+ const result = this.clone();
27720
+ for (const key of other) result.add(key);
27721
+ return result;
27722
+ }
27723
+ /**
27724
+ * Return a new TreeSet containing only elements present in both sets.
27725
+ * @remarks Time O(n+m) with ordered merge when possible, otherwise O(n log m).
27726
+ * @param other - Any iterable of keys (converted to Set for fast lookup if not a TreeSet).
27727
+ * @returns A new TreeSet.
27728
+ * @example
27729
+ * // Find common elements
27730
+ * console.log([...a.intersection(b)]); // [3, 4, 5];
27731
+ */
27732
+ intersection(other) {
27733
+ const otherSet = other instanceof _TreeSet || other instanceof Set ? other : new Set(other);
27734
+ const result = new _TreeSet([], { comparator: this.#isDefaultComparator ? void 0 : this.#userComparator });
27735
+ for (const key of this) {
27736
+ if (otherSet.has(key)) result.add(key);
27737
+ }
27738
+ return result;
27739
+ }
27740
+ /**
27741
+ * Return a new TreeSet containing elements in this set but not in the other.
27742
+ * @remarks Time O(n+m) with ordered merge when possible, otherwise O(n log m).
27743
+ * @param other - Any iterable of keys.
27744
+ * @returns A new TreeSet.
27745
+ * @example
27746
+ * // Find exclusive elements
27747
+ * console.log([...a.difference(b)]); // [1, 2];
27748
+ */
27749
+ difference(other) {
27750
+ const otherSet = other instanceof _TreeSet || other instanceof Set ? other : new Set(other);
27751
+ const result = new _TreeSet([], { comparator: this.#isDefaultComparator ? void 0 : this.#userComparator });
27752
+ for (const key of this) {
27753
+ if (!otherSet.has(key)) result.add(key);
27754
+ }
27755
+ return result;
27756
+ }
27757
+ /**
27758
+ * Return a new TreeSet containing elements in either set but not both.
27759
+ * @remarks Time O(n+m).
27760
+ * @param other - Any iterable of keys.
27761
+ * @returns A new TreeSet.
27762
+ * @example
27763
+ * // Find symmetric difference
27764
+ * console.log([...a.symmetricDifference(b)]); // [1, 2, 6, 7];
27765
+ */
27766
+ symmetricDifference(other) {
27767
+ const otherSet = other instanceof _TreeSet || other instanceof Set ? other : new Set(other);
27768
+ const result = new _TreeSet([], { comparator: this.#isDefaultComparator ? void 0 : this.#userComparator });
27769
+ for (const key of this) {
27770
+ if (!otherSet.has(key)) result.add(key);
27771
+ }
27772
+ for (const key of otherSet) {
27773
+ if (!this.has(key)) result.add(key);
27774
+ }
27775
+ return result;
27776
+ }
27777
+ /**
27778
+ * Check whether every element in this set is also in the other.
27779
+ * @remarks Time O(n).
27780
+ * @param other - Any iterable of keys (converted to Set for fast lookup if not a TreeSet).
27781
+ * @returns `true` if this is a subset of other.
27782
+ * @example
27783
+ * // Check subset
27784
+ * console.log(new TreeSet([3, 4]).isSubsetOf(a)); // true;
27785
+ */
27786
+ isSubsetOf(other) {
27787
+ const otherSet = other instanceof _TreeSet || other instanceof Set ? other : new Set(other);
27788
+ for (const key of this) {
27789
+ if (!otherSet.has(key)) return false;
27790
+ }
27791
+ return true;
27792
+ }
27793
+ /**
27794
+ * Check whether every element in the other set is also in this set.
27795
+ * @remarks Time O(m).
27796
+ * @param other - Any iterable of keys.
27797
+ * @returns `true` if this is a superset of other.
27798
+ * @example
27799
+ * // Check superset
27800
+ * console.log(a.isSupersetOf(new TreeSet([2, 3]))); // true;
27801
+ */
27802
+ isSupersetOf(other) {
27803
+ for (const key of other) {
27804
+ if (!this.has(key)) return false;
27805
+ }
27806
+ return true;
27807
+ }
27808
+ /**
27809
+ * Check whether this set and the other share no common elements.
27810
+ * @remarks Time O(min(n,m)), can short-circuit on first overlap.
27811
+ * @param other - Any iterable of keys (converted to Set for fast lookup if not a TreeSet).
27812
+ * @returns `true` if sets are disjoint.
27813
+ * @example
27814
+ * // Check disjoint
27815
+ * console.log(a.isDisjointFrom(new TreeSet([8, 9]))); // true;
27816
+ */
27817
+ isDisjointFrom(other) {
27818
+ const otherSet = other instanceof _TreeSet || other instanceof Set ? other : new Set(other);
27819
+ for (const key of this) {
27820
+ if (otherSet.has(key)) return false;
27821
+ }
27822
+ return true;
27823
+ }
27824
+ /**
27825
+ * Deep copy
27826
+
26586
27827
 
26587
27828
 
26588
27829
 
@@ -26845,6 +28086,21 @@ var TreeMultiMap = class _TreeMultiMap {
26845
28086
 
26846
28087
 
26847
28088
 
28089
+
28090
+
28091
+
28092
+
28093
+
28094
+
28095
+
28096
+
28097
+
28098
+
28099
+
28100
+
28101
+
28102
+
28103
+
26848
28104
 
26849
28105
 
26850
28106
 
@@ -27033,6 +28289,21 @@ var TreeMultiMap = class _TreeMultiMap {
27033
28289
 
27034
28290
 
27035
28291
 
28292
+
28293
+
28294
+
28295
+
28296
+
28297
+
28298
+
28299
+
28300
+
28301
+
28302
+
28303
+
28304
+
28305
+
28306
+
27036
28307
 
27037
28308
 
27038
28309
 
@@ -27088,6 +28359,9 @@ var TreeMultiMap = class _TreeMultiMap {
27088
28359
 
27089
28360
 
27090
28361
 
28362
+
28363
+
28364
+
27091
28365
 
27092
28366
 
27093
28367
 
@@ -27132,6 +28406,9 @@ var TreeMultiMap = class _TreeMultiMap {
27132
28406
 
27133
28407
 
27134
28408
 
28409
+
28410
+
28411
+
27135
28412
 
27136
28413
 
27137
28414
 
@@ -27353,6 +28630,24 @@ var TreeMultiMap = class _TreeMultiMap {
27353
28630
 
27354
28631
 
27355
28632
 
28633
+
28634
+
28635
+
28636
+
28637
+
28638
+
28639
+
28640
+
28641
+
28642
+
28643
+
28644
+
28645
+
28646
+
28647
+
28648
+
28649
+
28650
+
27356
28651
 
27357
28652
 
27358
28653
 
@@ -27587,6 +28882,24 @@ var TreeMultiMap = class _TreeMultiMap {
27587
28882
 
27588
28883
 
27589
28884
 
28885
+
28886
+
28887
+
28888
+
28889
+
28890
+
28891
+
28892
+
28893
+
28894
+
28895
+
28896
+
28897
+
28898
+
28899
+
28900
+
28901
+
28902
+
27590
28903
 
27591
28904
 
27592
28905
 
@@ -27776,6 +29089,21 @@ var TreeMultiMap = class _TreeMultiMap {
27776
29089
 
27777
29090
 
27778
29091
 
29092
+
29093
+
29094
+
29095
+
29096
+
29097
+
29098
+
29099
+
29100
+
29101
+
29102
+
29103
+
29104
+
29105
+
29106
+
27779
29107
 
27780
29108
 
27781
29109
 
@@ -28032,6 +29360,24 @@ var TreeMultiMap = class _TreeMultiMap {
28032
29360
 
28033
29361
 
28034
29362
 
29363
+
29364
+
29365
+
29366
+
29367
+
29368
+
29369
+
29370
+
29371
+
29372
+
29373
+
29374
+
29375
+
29376
+
29377
+
29378
+
29379
+
29380
+
28035
29381
 
28036
29382
 
28037
29383
 
@@ -28092,6 +29438,9 @@ var TreeMultiMap = class _TreeMultiMap {
28092
29438
 
28093
29439
 
28094
29440
 
29441
+
29442
+
29443
+
28095
29444
 
28096
29445
 
28097
29446
 
@@ -28137,6 +29486,9 @@ var TreeMultiMap = class _TreeMultiMap {
28137
29486
 
28138
29487
 
28139
29488
 
29489
+
29490
+
29491
+
28140
29492
 
28141
29493
 
28142
29494
 
@@ -28187,6 +29539,9 @@ var TreeMultiMap = class _TreeMultiMap {
28187
29539
 
28188
29540
 
28189
29541
 
29542
+
29543
+
29544
+
28190
29545
 
28191
29546
 
28192
29547
 
@@ -28389,6 +29744,21 @@ var TreeMultiMap = class _TreeMultiMap {
28389
29744
 
28390
29745
 
28391
29746
 
29747
+
29748
+
29749
+
29750
+
29751
+
29752
+
29753
+
29754
+
29755
+
29756
+
29757
+
29758
+
29759
+
29760
+
29761
+
28392
29762
 
28393
29763
 
28394
29764
 
@@ -28580,6 +29950,21 @@ var TreeMultiMap = class _TreeMultiMap {
28580
29950
 
28581
29951
 
28582
29952
 
29953
+
29954
+
29955
+
29956
+
29957
+
29958
+
29959
+
29960
+
29961
+
29962
+
29963
+
29964
+
29965
+
29966
+
29967
+
28583
29968
 
28584
29969
 
28585
29970
 
@@ -28606,6 +29991,31 @@ var TreeMultiMap = class _TreeMultiMap {
28606
29991
  *values() {
28607
29992
  for (const [, bucket] of this) yield bucket;
28608
29993
  }
29994
+ /**
29995
+ * Iterate over all `[key, values[]]` entries (Map-compatible).
29996
+ * @remarks Time O(n), Space O(1) per step.
29997
+
29998
+
29999
+
30000
+
30001
+
30002
+
30003
+
30004
+
30005
+ * @example
30006
+ * // Iterate over entries
30007
+ * const mm = new TreeMultiMap<number, string>();
30008
+ * mm.set(1, 'a');
30009
+ * mm.set(1, 'b');
30010
+ * mm.set(2, 'c');
30011
+ * console.log([...mm.entries()]); // [
30012
+ * // [1, ['a', 'b']],
30013
+ * // [2, ['c']]
30014
+ * // ];
30015
+ */
30016
+ *entries() {
30017
+ yield* this;
30018
+ }
28609
30019
  // ---- entry-flat views ----
28610
30020
  /**
28611
30021
  * Iterates over all entries for a specific key.
@@ -28636,6 +30046,9 @@ var TreeMultiMap = class _TreeMultiMap {
28636
30046
 
28637
30047
 
28638
30048
 
30049
+
30050
+
30051
+
28639
30052
 
28640
30053
 
28641
30054
 
@@ -28681,6 +30094,9 @@ var TreeMultiMap = class _TreeMultiMap {
28681
30094
 
28682
30095
 
28683
30096
 
30097
+
30098
+
30099
+
28684
30100
 
28685
30101
 
28686
30102
 
@@ -28726,6 +30142,9 @@ var TreeMultiMap = class _TreeMultiMap {
28726
30142
 
28727
30143
 
28728
30144
 
30145
+
30146
+
30147
+
28729
30148
 
28730
30149
 
28731
30150
 
@@ -28810,6 +30229,12 @@ var TreeMultiMap = class _TreeMultiMap {
28810
30229
 
28811
30230
 
28812
30231
 
30232
+
30233
+
30234
+
30235
+
30236
+
30237
+
28813
30238
 
28814
30239
 
28815
30240
 
@@ -28899,6 +30324,12 @@ var TreeMultiMap = class _TreeMultiMap {
28899
30324
 
28900
30325
 
28901
30326
 
30327
+
30328
+
30329
+
30330
+
30331
+
30332
+
28902
30333
 
28903
30334
 
28904
30335
 
@@ -28952,6 +30383,9 @@ var TreeMultiMap = class _TreeMultiMap {
28952
30383
 
28953
30384
 
28954
30385
 
30386
+
30387
+
30388
+
28955
30389
 
28956
30390
 
28957
30391
 
@@ -29001,6 +30435,9 @@ var TreeMultiMap = class _TreeMultiMap {
29001
30435
 
29002
30436
 
29003
30437
 
30438
+
30439
+
30440
+
29004
30441
 
29005
30442
 
29006
30443
 
@@ -29187,6 +30624,21 @@ var TreeMultiMap = class _TreeMultiMap {
29187
30624
 
29188
30625
 
29189
30626
 
30627
+
30628
+
30629
+
30630
+
30631
+
30632
+
30633
+
30634
+
30635
+
30636
+
30637
+
30638
+
30639
+
30640
+
30641
+
29190
30642
 
29191
30643
 
29192
30644
 
@@ -29389,6 +30841,21 @@ var TreeMultiMap = class _TreeMultiMap {
29389
30841
 
29390
30842
 
29391
30843
 
30844
+
30845
+
30846
+
30847
+
30848
+
30849
+
30850
+
30851
+
30852
+
30853
+
30854
+
30855
+
30856
+
30857
+
30858
+
29392
30859
 
29393
30860
 
29394
30861
 
@@ -29555,6 +31022,18 @@ var TreeMultiMap = class _TreeMultiMap {
29555
31022
 
29556
31023
 
29557
31024
 
31025
+
31026
+
31027
+
31028
+
31029
+
31030
+
31031
+
31032
+
31033
+
31034
+
31035
+
31036
+
29558
31037
 
29559
31038
 
29560
31039
 
@@ -29717,6 +31196,18 @@ var TreeMultiMap = class _TreeMultiMap {
29717
31196
 
29718
31197
 
29719
31198
 
31199
+
31200
+
31201
+
31202
+
31203
+
31204
+
31205
+
31206
+
31207
+
31208
+
31209
+
31210
+
29720
31211
 
29721
31212
 
29722
31213
 
@@ -29913,6 +31404,21 @@ var TreeMultiMap = class _TreeMultiMap {
29913
31404
 
29914
31405
 
29915
31406
 
31407
+
31408
+
31409
+
31410
+
31411
+
31412
+
31413
+
31414
+
31415
+
31416
+
31417
+
31418
+
31419
+
31420
+
31421
+
29916
31422
 
29917
31423
 
29918
31424
 
@@ -30103,6 +31609,21 @@ var TreeMultiMap = class _TreeMultiMap {
30103
31609
 
30104
31610
 
30105
31611
 
31612
+
31613
+
31614
+
31615
+
31616
+
31617
+
31618
+
31619
+
31620
+
31621
+
31622
+
31623
+
31624
+
31625
+
31626
+
30106
31627
 
30107
31628
 
30108
31629
 
@@ -30298,6 +31819,21 @@ var TreeMultiMap = class _TreeMultiMap {
30298
31819
 
30299
31820
 
30300
31821
 
31822
+
31823
+
31824
+
31825
+
31826
+
31827
+
31828
+
31829
+
31830
+
31831
+
31832
+
31833
+
31834
+
31835
+
31836
+
30301
31837
 
30302
31838
 
30303
31839
 
@@ -30495,6 +32031,21 @@ var TreeMultiMap = class _TreeMultiMap {
30495
32031
 
30496
32032
 
30497
32033
 
32034
+
32035
+
32036
+
32037
+
32038
+
32039
+
32040
+
32041
+
32042
+
32043
+
32044
+
32045
+
32046
+
32047
+
32048
+
30498
32049
 
30499
32050
 
30500
32051
 
@@ -30690,6 +32241,21 @@ var TreeMultiMap = class _TreeMultiMap {
30690
32241
 
30691
32242
 
30692
32243
 
32244
+
32245
+
32246
+
32247
+
32248
+
32249
+
32250
+
32251
+
32252
+
32253
+
32254
+
32255
+
32256
+
32257
+
32258
+
30693
32259
 
30694
32260
 
30695
32261
 
@@ -30878,6 +32444,21 @@ var TreeMultiMap = class _TreeMultiMap {
30878
32444
 
30879
32445
 
30880
32446
 
32447
+
32448
+
32449
+
32450
+
32451
+
32452
+
32453
+
32454
+
32455
+
32456
+
32457
+
32458
+
32459
+
32460
+
32461
+
30881
32462
 
30882
32463
 
30883
32464
 
@@ -31039,6 +32620,18 @@ var TreeMultiMap = class _TreeMultiMap {
31039
32620
 
31040
32621
 
31041
32622
 
32623
+
32624
+
32625
+
32626
+
32627
+
32628
+
32629
+
32630
+
32631
+
32632
+
32633
+
32634
+
31042
32635
 
31043
32636
 
31044
32637
 
@@ -31263,6 +32856,12 @@ var TreeMultiMap = class _TreeMultiMap {
31263
32856
 
31264
32857
 
31265
32858
 
32859
+
32860
+
32861
+
32862
+
32863
+
32864
+
31266
32865
  * @example
31267
32866
  * // Pagination by position in tree order
31268
32867
  * const tree = new TreeMultiMap<number>(
@@ -31302,6 +32901,21 @@ var TreeMultiMap = class _TreeMultiMap {
31302
32901
 
31303
32902
 
31304
32903
 
32904
+
32905
+
32906
+
32907
+
32908
+
32909
+
32910
+
32911
+
32912
+
32913
+
32914
+
32915
+
32916
+
32917
+
32918
+
31305
32919
 
31306
32920
 
31307
32921
 
@@ -31585,6 +33199,21 @@ var TreeMap = class _TreeMap {
31585
33199
 
31586
33200
 
31587
33201
 
33202
+
33203
+
33204
+
33205
+
33206
+
33207
+
33208
+
33209
+
33210
+
33211
+
33212
+
33213
+
33214
+
33215
+
33216
+
31588
33217
 
31589
33218
 
31590
33219
 
@@ -31782,6 +33411,21 @@ var TreeMap = class _TreeMap {
31782
33411
 
31783
33412
 
31784
33413
 
33414
+
33415
+
33416
+
33417
+
33418
+
33419
+
33420
+
33421
+
33422
+
33423
+
33424
+
33425
+
33426
+
33427
+
33428
+
31785
33429
 
31786
33430
 
31787
33431
 
@@ -31836,6 +33480,18 @@ var TreeMap = class _TreeMap {
31836
33480
 
31837
33481
 
31838
33482
 
33483
+
33484
+
33485
+
33486
+
33487
+
33488
+
33489
+
33490
+
33491
+
33492
+
33493
+
33494
+
31839
33495
 
31840
33496
 
31841
33497
 
@@ -32035,6 +33691,21 @@ var TreeMap = class _TreeMap {
32035
33691
 
32036
33692
 
32037
33693
 
33694
+
33695
+
33696
+
33697
+
33698
+
33699
+
33700
+
33701
+
33702
+
33703
+
33704
+
33705
+
33706
+
33707
+
33708
+
32038
33709
 
32039
33710
 
32040
33711
 
@@ -32243,6 +33914,21 @@ var TreeMap = class _TreeMap {
32243
33914
 
32244
33915
 
32245
33916
 
33917
+
33918
+
33919
+
33920
+
33921
+
33922
+
33923
+
33924
+
33925
+
33926
+
33927
+
33928
+
33929
+
33930
+
33931
+
32246
33932
 
32247
33933
 
32248
33934
 
@@ -32451,6 +34137,21 @@ var TreeMap = class _TreeMap {
32451
34137
 
32452
34138
 
32453
34139
 
34140
+
34141
+
34142
+
34143
+
34144
+
34145
+
34146
+
34147
+
34148
+
34149
+
34150
+
34151
+
34152
+
34153
+
34154
+
32454
34155
 
32455
34156
 
32456
34157
 
@@ -32665,6 +34366,21 @@ var TreeMap = class _TreeMap {
32665
34366
 
32666
34367
 
32667
34368
 
34369
+
34370
+
34371
+
34372
+
34373
+
34374
+
34375
+
34376
+
34377
+
34378
+
34379
+
34380
+
34381
+
34382
+
34383
+
32668
34384
 
32669
34385
 
32670
34386
 
@@ -32854,6 +34570,21 @@ var TreeMap = class _TreeMap {
32854
34570
 
32855
34571
 
32856
34572
 
34573
+
34574
+
34575
+
34576
+
34577
+
34578
+
34579
+
34580
+
34581
+
34582
+
34583
+
34584
+
34585
+
34586
+
34587
+
32857
34588
 
32858
34589
 
32859
34590
 
@@ -33047,6 +34778,21 @@ var TreeMap = class _TreeMap {
33047
34778
 
33048
34779
 
33049
34780
 
34781
+
34782
+
34783
+
34784
+
34785
+
34786
+
34787
+
34788
+
34789
+
34790
+
34791
+
34792
+
34793
+
34794
+
34795
+
33050
34796
 
33051
34797
 
33052
34798
 
@@ -33237,6 +34983,21 @@ var TreeMap = class _TreeMap {
33237
34983
 
33238
34984
 
33239
34985
 
34986
+
34987
+
34988
+
34989
+
34990
+
34991
+
34992
+
34993
+
34994
+
34995
+
34996
+
34997
+
34998
+
34999
+
35000
+
33240
35001
 
33241
35002
 
33242
35003
 
@@ -33430,6 +35191,21 @@ var TreeMap = class _TreeMap {
33430
35191
 
33431
35192
 
33432
35193
 
35194
+
35195
+
35196
+
35197
+
35198
+
35199
+
35200
+
35201
+
35202
+
35203
+
35204
+
35205
+
35206
+
35207
+
35208
+
33433
35209
 
33434
35210
 
33435
35211
 
@@ -33623,6 +35399,21 @@ var TreeMap = class _TreeMap {
33623
35399
 
33624
35400
 
33625
35401
 
35402
+
35403
+
35404
+
35405
+
35406
+
35407
+
35408
+
35409
+
35410
+
35411
+
35412
+
35413
+
35414
+
35415
+
35416
+
33626
35417
 
33627
35418
 
33628
35419
 
@@ -33819,6 +35610,21 @@ var TreeMap = class _TreeMap {
33819
35610
 
33820
35611
 
33821
35612
 
35613
+
35614
+
35615
+
35616
+
35617
+
35618
+
35619
+
35620
+
35621
+
35622
+
35623
+
35624
+
35625
+
35626
+
35627
+
33822
35628
 
33823
35629
 
33824
35630
 
@@ -34015,6 +35821,21 @@ var TreeMap = class _TreeMap {
34015
35821
 
34016
35822
 
34017
35823
 
35824
+
35825
+
35826
+
35827
+
35828
+
35829
+
35830
+
35831
+
35832
+
35833
+
35834
+
35835
+
35836
+
35837
+
35838
+
34018
35839
 
34019
35840
 
34020
35841
 
@@ -34205,6 +36026,21 @@ var TreeMap = class _TreeMap {
34205
36026
 
34206
36027
 
34207
36028
 
36029
+
36030
+
36031
+
36032
+
36033
+
36034
+
36035
+
36036
+
36037
+
36038
+
36039
+
36040
+
36041
+
36042
+
36043
+
34208
36044
 
34209
36045
 
34210
36046
 
@@ -34397,6 +36233,21 @@ var TreeMap = class _TreeMap {
34397
36233
 
34398
36234
 
34399
36235
 
36236
+
36237
+
36238
+
36239
+
36240
+
36241
+
36242
+
36243
+
36244
+
36245
+
36246
+
36247
+
36248
+
36249
+
36250
+
34400
36251
 
34401
36252
 
34402
36253
 
@@ -34590,6 +36441,21 @@ var TreeMap = class _TreeMap {
34590
36441
 
34591
36442
 
34592
36443
 
36444
+
36445
+
36446
+
36447
+
36448
+
36449
+
36450
+
36451
+
36452
+
36453
+
36454
+
36455
+
36456
+
36457
+
36458
+
34593
36459
 
34594
36460
 
34595
36461
 
@@ -34784,6 +36650,21 @@ var TreeMap = class _TreeMap {
34784
36650
 
34785
36651
 
34786
36652
 
36653
+
36654
+
36655
+
36656
+
36657
+
36658
+
36659
+
36660
+
36661
+
36662
+
36663
+
36664
+
36665
+
36666
+
36667
+
34787
36668
 
34788
36669
 
34789
36670
 
@@ -34973,6 +36854,21 @@ var TreeMap = class _TreeMap {
34973
36854
 
34974
36855
 
34975
36856
 
36857
+
36858
+
36859
+
36860
+
36861
+
36862
+
36863
+
36864
+
36865
+
36866
+
36867
+
36868
+
36869
+
36870
+
36871
+
34976
36872
 
34977
36873
 
34978
36874
 
@@ -35036,6 +36932,9 @@ var TreeMap = class _TreeMap {
35036
36932
 
35037
36933
 
35038
36934
 
36935
+
36936
+
36937
+
35039
36938
 
35040
36939
 
35041
36940
 
@@ -35108,6 +37007,9 @@ var TreeMap = class _TreeMap {
35108
37007
 
35109
37008
 
35110
37009
 
37010
+
37011
+
37012
+
35111
37013
 
35112
37014
 
35113
37015
 
@@ -35164,6 +37066,9 @@ var TreeMap = class _TreeMap {
35164
37066
 
35165
37067
 
35166
37068
 
37069
+
37070
+
37071
+
35167
37072
 
35168
37073
 
35169
37074
 
@@ -35224,6 +37129,9 @@ var TreeMap = class _TreeMap {
35224
37129
 
35225
37130
 
35226
37131
 
37132
+
37133
+
37134
+
35227
37135
 
35228
37136
 
35229
37137
 
@@ -35386,6 +37294,18 @@ var TreeMap = class _TreeMap {
35386
37294
 
35387
37295
 
35388
37296
 
37297
+
37298
+
37299
+
37300
+
37301
+
37302
+
37303
+
37304
+
37305
+
37306
+
37307
+
37308
+
35389
37309
 
35390
37310
 
35391
37311
 
@@ -35575,6 +37495,18 @@ var TreeMap = class _TreeMap {
35575
37495
 
35576
37496
 
35577
37497
 
37498
+
37499
+
37500
+
37501
+
37502
+
37503
+
37504
+
37505
+
37506
+
37507
+
37508
+
37509
+
35578
37510
 
35579
37511
 
35580
37512
 
@@ -35748,6 +37680,18 @@ var TreeMap = class _TreeMap {
35748
37680
 
35749
37681
 
35750
37682
 
37683
+
37684
+
37685
+
37686
+
37687
+
37688
+
37689
+
37690
+
37691
+
37692
+
37693
+
37694
+
35751
37695
 
35752
37696
 
35753
37697
 
@@ -35921,6 +37865,18 @@ var TreeMap = class _TreeMap {
35921
37865
 
35922
37866
 
35923
37867
 
37868
+
37869
+
37870
+
37871
+
37872
+
37873
+
37874
+
37875
+
37876
+
37877
+
37878
+
37879
+
35924
37880
 
35925
37881
 
35926
37882
 
@@ -36095,6 +38051,18 @@ var TreeMap = class _TreeMap {
36095
38051
 
36096
38052
 
36097
38053
 
38054
+
38055
+
38056
+
38057
+
38058
+
38059
+
38060
+
38061
+
38062
+
38063
+
38064
+
38065
+
36098
38066
 
36099
38067
 
36100
38068
 
@@ -36206,6 +38174,12 @@ var TreeMap = class _TreeMap {
36206
38174
 
36207
38175
 
36208
38176
 
38177
+
38178
+
38179
+
38180
+
38181
+
38182
+
36209
38183
  * @example
36210
38184
  * // Pagination by position in tree order
36211
38185
  * const tree = new TreeMap<number>(
@@ -36391,6 +38365,21 @@ var TreeMap = class _TreeMap {
36391
38365
 
36392
38366
 
36393
38367
 
38368
+
38369
+
38370
+
38371
+
38372
+
38373
+
38374
+
38375
+
38376
+
38377
+
38378
+
38379
+
38380
+
38381
+
38382
+
36394
38383
 
36395
38384
 
36396
38385
 
@@ -36514,6 +38503,9 @@ var TreeMultiSet = class _TreeMultiSet {
36514
38503
 
36515
38504
 
36516
38505
 
38506
+
38507
+
38508
+
36517
38509
 
36518
38510
 
36519
38511
 
@@ -36693,6 +38685,21 @@ var TreeMultiSet = class _TreeMultiSet {
36693
38685
 
36694
38686
 
36695
38687
 
38688
+
38689
+
38690
+
38691
+
38692
+
38693
+
38694
+
38695
+
38696
+
38697
+
38698
+
38699
+
38700
+
38701
+
38702
+
36696
38703
 
36697
38704
 
36698
38705
 
@@ -36884,6 +38891,21 @@ var TreeMultiSet = class _TreeMultiSet {
36884
38891
 
36885
38892
 
36886
38893
 
38894
+
38895
+
38896
+
38897
+
38898
+
38899
+
38900
+
38901
+
38902
+
38903
+
38904
+
38905
+
38906
+
38907
+
38908
+
36887
38909
 
36888
38910
 
36889
38911
 
@@ -36940,6 +38962,9 @@ var TreeMultiSet = class _TreeMultiSet {
36940
38962
 
36941
38963
 
36942
38964
 
38965
+
38966
+
38967
+
36943
38968
 
36944
38969
 
36945
38970
 
@@ -37114,6 +39139,21 @@ var TreeMultiSet = class _TreeMultiSet {
37114
39139
 
37115
39140
 
37116
39141
 
39142
+
39143
+
39144
+
39145
+
39146
+
39147
+
39148
+
39149
+
39150
+
39151
+
39152
+
39153
+
39154
+
39155
+
39156
+
37117
39157
 
37118
39158
 
37119
39159
 
@@ -37179,6 +39219,9 @@ var TreeMultiSet = class _TreeMultiSet {
37179
39219
 
37180
39220
 
37181
39221
 
39222
+
39223
+
39224
+
37182
39225
 
37183
39226
 
37184
39227
 
@@ -37371,6 +39414,21 @@ var TreeMultiSet = class _TreeMultiSet {
37371
39414
 
37372
39415
 
37373
39416
 
39417
+
39418
+
39419
+
39420
+
39421
+
39422
+
39423
+
39424
+
39425
+
39426
+
39427
+
39428
+
39429
+
39430
+
39431
+
37374
39432
 
37375
39433
 
37376
39434
 
@@ -37437,6 +39495,9 @@ var TreeMultiSet = class _TreeMultiSet {
37437
39495
 
37438
39496
 
37439
39497
 
39498
+
39499
+
39500
+
37440
39501
 
37441
39502
 
37442
39503
 
@@ -37485,6 +39546,9 @@ var TreeMultiSet = class _TreeMultiSet {
37485
39546
 
37486
39547
 
37487
39548
 
39549
+
39550
+
39551
+
37488
39552
 
37489
39553
 
37490
39554
 
@@ -37664,6 +39728,21 @@ var TreeMultiSet = class _TreeMultiSet {
37664
39728
 
37665
39729
 
37666
39730
 
39731
+
39732
+
39733
+
39734
+
39735
+
39736
+
39737
+
39738
+
39739
+
39740
+
39741
+
39742
+
39743
+
39744
+
39745
+
37667
39746
 
37668
39747
 
37669
39748
 
@@ -37700,6 +39779,46 @@ var TreeMultiSet = class _TreeMultiSet {
37700
39779
  for (let i = 0; i < c; i++) yield k;
37701
39780
  }
37702
39781
  }
39782
+ /**
39783
+ * Iterate over all elements with multiplicity (Set-compatible, alias for `[Symbol.iterator]`).
39784
+ * @remarks Each key is yielded `count(key)` times. Time O(size), Space O(1) per step.
39785
+
39786
+
39787
+
39788
+
39789
+
39790
+
39791
+
39792
+
39793
+ * @example
39794
+ * // Iterate with multiplicity
39795
+ * const ms = new TreeMultiSet<number>();
39796
+ * ms.add(1); ms.add(1); ms.add(2); ms.add(3); ms.add(3); ms.add(3);
39797
+ * console.log([...ms.keys()]); // [1, 1, 2, 3, 3, 3];
39798
+ */
39799
+ *keys() {
39800
+ yield* this;
39801
+ }
39802
+ /**
39803
+ * Iterate over all elements with multiplicity (Set-compatible, alias for `[Symbol.iterator]`).
39804
+ * @remarks Each key is yielded `count(key)` times. Time O(size), Space O(1) per step.
39805
+
39806
+
39807
+
39808
+
39809
+
39810
+
39811
+
39812
+
39813
+ * @example
39814
+ * // Iterate with multiplicity
39815
+ * const ms = new TreeMultiSet<number>();
39816
+ * ms.add(5); ms.add(5); ms.add(10);
39817
+ * console.log([...ms.values()]); // [5, 5, 10];
39818
+ */
39819
+ *values() {
39820
+ yield* this;
39821
+ }
37703
39822
  /**
37704
39823
  * Returns an array with all elements (expanded).
37705
39824
  * @remarks Time O(size), Space O(size)
@@ -37865,6 +39984,21 @@ var TreeMultiSet = class _TreeMultiSet {
37865
39984
 
37866
39985
 
37867
39986
 
39987
+
39988
+
39989
+
39990
+
39991
+
39992
+
39993
+
39994
+
39995
+
39996
+
39997
+
39998
+
39999
+
40000
+
40001
+
37868
40002
 
37869
40003
 
37870
40004
 
@@ -37920,6 +40054,9 @@ var TreeMultiSet = class _TreeMultiSet {
37920
40054
 
37921
40055
 
37922
40056
 
40057
+
40058
+
40059
+
37923
40060
 
37924
40061
 
37925
40062
 
@@ -37963,6 +40100,9 @@ var TreeMultiSet = class _TreeMultiSet {
37963
40100
 
37964
40101
 
37965
40102
 
40103
+
40104
+
40105
+
37966
40106
 
37967
40107
 
37968
40108
 
@@ -38151,6 +40291,21 @@ var TreeMultiSet = class _TreeMultiSet {
38151
40291
 
38152
40292
 
38153
40293
 
40294
+
40295
+
40296
+
40297
+
40298
+
40299
+
40300
+
40301
+
40302
+
40303
+
40304
+
40305
+
40306
+
40307
+
40308
+
38154
40309
 
38155
40310
 
38156
40311
 
@@ -38209,6 +40364,9 @@ var TreeMultiSet = class _TreeMultiSet {
38209
40364
 
38210
40365
 
38211
40366
 
40367
+
40368
+
40369
+
38212
40370
 
38213
40371
 
38214
40372
 
@@ -38253,6 +40411,9 @@ var TreeMultiSet = class _TreeMultiSet {
38253
40411
 
38254
40412
 
38255
40413
 
40414
+
40415
+
40416
+
38256
40417
 
38257
40418
 
38258
40419
 
@@ -38297,6 +40458,9 @@ var TreeMultiSet = class _TreeMultiSet {
38297
40458
 
38298
40459
 
38299
40460
 
40461
+
40462
+
40463
+
38300
40464
 
38301
40465
 
38302
40466
 
@@ -38345,6 +40509,9 @@ var TreeMultiSet = class _TreeMultiSet {
38345
40509
 
38346
40510
 
38347
40511
 
40512
+
40513
+
40514
+
38348
40515
 
38349
40516
 
38350
40517
 
@@ -38494,6 +40661,18 @@ var TreeMultiSet = class _TreeMultiSet {
38494
40661
 
38495
40662
 
38496
40663
 
40664
+
40665
+
40666
+
40667
+
40668
+
40669
+
40670
+
40671
+
40672
+
40673
+
40674
+
40675
+
38497
40676
 
38498
40677
 
38499
40678
 
@@ -38651,6 +40830,18 @@ var TreeMultiSet = class _TreeMultiSet {
38651
40830
 
38652
40831
 
38653
40832
 
40833
+
40834
+
40835
+
40836
+
40837
+
40838
+
40839
+
40840
+
40841
+
40842
+
40843
+
40844
+
38654
40845
 
38655
40846
 
38656
40847
 
@@ -38808,6 +40999,18 @@ var TreeMultiSet = class _TreeMultiSet {
38808
40999
 
38809
41000
 
38810
41001
 
41002
+
41003
+
41004
+
41005
+
41006
+
41007
+
41008
+
41009
+
41010
+
41011
+
41012
+
41013
+
38811
41014
 
38812
41015
 
38813
41016
 
@@ -38964,6 +41167,18 @@ var TreeMultiSet = class _TreeMultiSet {
38964
41167
 
38965
41168
 
38966
41169
 
41170
+
41171
+
41172
+
41173
+
41174
+
41175
+
41176
+
41177
+
41178
+
41179
+
41180
+
41181
+
38967
41182
 
38968
41183
 
38969
41184
 
@@ -39155,6 +41370,21 @@ var TreeMultiSet = class _TreeMultiSet {
39155
41370
 
39156
41371
 
39157
41372
 
41373
+
41374
+
41375
+
41376
+
41377
+
41378
+
41379
+
41380
+
41381
+
41382
+
41383
+
41384
+
41385
+
41386
+
41387
+
39158
41388
 
39159
41389
 
39160
41390
 
@@ -39351,6 +41581,21 @@ var TreeMultiSet = class _TreeMultiSet {
39351
41581
 
39352
41582
 
39353
41583
 
41584
+
41585
+
41586
+
41587
+
41588
+
41589
+
41590
+
41591
+
41592
+
41593
+
41594
+
41595
+
41596
+
41597
+
41598
+
39354
41599
 
39355
41600
 
39356
41601
 
@@ -39554,6 +41799,21 @@ var TreeMultiSet = class _TreeMultiSet {
39554
41799
 
39555
41800
 
39556
41801
 
41802
+
41803
+
41804
+
41805
+
41806
+
41807
+
41808
+
41809
+
41810
+
41811
+
41812
+
41813
+
41814
+
41815
+
41816
+
39557
41817
 
39558
41818
 
39559
41819
 
@@ -39752,6 +42012,21 @@ var TreeMultiSet = class _TreeMultiSet {
39752
42012
 
39753
42013
 
39754
42014
 
42015
+
42016
+
42017
+
42018
+
42019
+
42020
+
42021
+
42022
+
42023
+
42024
+
42025
+
42026
+
42027
+
42028
+
42029
+
39755
42030
 
39756
42031
 
39757
42032
 
@@ -39985,6 +42260,12 @@ var TreeMultiSet = class _TreeMultiSet {
39985
42260
 
39986
42261
 
39987
42262
 
42263
+
42264
+
42265
+
42266
+
42267
+
42268
+
39988
42269
  * @example
39989
42270
  * // Pagination by position in tree order
39990
42271
  * const tree = new TreeMultiSet<number>(
@@ -40023,6 +42304,21 @@ var TreeMultiSet = class _TreeMultiSet {
40023
42304
 
40024
42305
 
40025
42306
 
42307
+
42308
+
42309
+
42310
+
42311
+
42312
+
42313
+
42314
+
42315
+
42316
+
42317
+
42318
+
42319
+
42320
+
42321
+
40026
42322
 
40027
42323
 
40028
42324
 
@@ -40180,6 +42476,18 @@ var TreeMultiSet = class _TreeMultiSet {
40180
42476
 
40181
42477
 
40182
42478
 
42479
+
42480
+
42481
+
42482
+
42483
+
42484
+
42485
+
42486
+
42487
+
42488
+
42489
+
42490
+
40183
42491
 
40184
42492
 
40185
42493
 
@@ -40372,6 +42680,21 @@ var TreeMultiSet = class _TreeMultiSet {
40372
42680
 
40373
42681
 
40374
42682
 
42683
+
42684
+
42685
+
42686
+
42687
+
42688
+
42689
+
42690
+
42691
+
42692
+
42693
+
42694
+
42695
+
42696
+
42697
+
40375
42698
 
40376
42699
 
40377
42700
 
@@ -40575,6 +42898,9 @@ var Matrix = class _Matrix {
40575
42898
 
40576
42899
 
40577
42900
 
42901
+
42902
+
42903
+
40578
42904
 
40579
42905
 
40580
42906
 
@@ -40647,6 +42973,9 @@ var Matrix = class _Matrix {
40647
42973
 
40648
42974
 
40649
42975
 
42976
+
42977
+
42978
+
40650
42979
 
40651
42980
 
40652
42981
 
@@ -40715,6 +43044,9 @@ var Matrix = class _Matrix {
40715
43044
 
40716
43045
 
40717
43046
 
43047
+
43048
+
43049
+
40718
43050
 
40719
43051
 
40720
43052
 
@@ -40805,6 +43137,9 @@ var Matrix = class _Matrix {
40805
43137
 
40806
43138
 
40807
43139
 
43140
+
43141
+
43142
+
40808
43143
 
40809
43144
 
40810
43145
 
@@ -40878,6 +43213,9 @@ var Matrix = class _Matrix {
40878
43213
 
40879
43214
 
40880
43215
 
43216
+
43217
+
43218
+
40881
43219
 
40882
43220
 
40883
43221
 
@@ -40973,6 +43311,9 @@ var Matrix = class _Matrix {
40973
43311
 
40974
43312
 
40975
43313
 
43314
+
43315
+
43316
+
40976
43317
 
40977
43318
 
40978
43319
 
@@ -41055,6 +43396,9 @@ var Matrix = class _Matrix {
41055
43396
 
41056
43397
 
41057
43398
 
43399
+
43400
+
43401
+
41058
43402
 
41059
43403
 
41060
43404
 
@@ -41162,6 +43506,9 @@ var Matrix = class _Matrix {
41162
43506
 
41163
43507
 
41164
43508
 
43509
+
43510
+
43511
+
41165
43512
 
41166
43513
 
41167
43514
 
@@ -41682,6 +44029,9 @@ var Trie = class extends IterableElementBase {
41682
44029
 
41683
44030
 
41684
44031
 
44032
+
44033
+
44034
+
41685
44035
 
41686
44036
 
41687
44037
 
@@ -41758,6 +44108,9 @@ var Trie = class extends IterableElementBase {
41758
44108
 
41759
44109
 
41760
44110
 
44111
+
44112
+
44113
+
41761
44114
 
41762
44115
 
41763
44116
 
@@ -41821,6 +44174,9 @@ var Trie = class extends IterableElementBase {
41821
44174
 
41822
44175
 
41823
44176
 
44177
+
44178
+
44179
+
41824
44180
 
41825
44181
 
41826
44182
 
@@ -41879,6 +44235,9 @@ var Trie = class extends IterableElementBase {
41879
44235
 
41880
44236
 
41881
44237
 
44238
+
44239
+
44240
+
41882
44241
 
41883
44242
 
41884
44243
 
@@ -41929,6 +44288,9 @@ var Trie = class extends IterableElementBase {
41929
44288
 
41930
44289
 
41931
44290
 
44291
+
44292
+
44293
+
41932
44294
 
41933
44295
 
41934
44296
 
@@ -41983,6 +44345,9 @@ var Trie = class extends IterableElementBase {
41983
44345
 
41984
44346
 
41985
44347
 
44348
+
44349
+
44350
+
41986
44351
 
41987
44352
 
41988
44353
 
@@ -42119,6 +44484,9 @@ var Trie = class extends IterableElementBase {
42119
44484
 
42120
44485
 
42121
44486
 
44487
+
44488
+
44489
+
42122
44490
 
42123
44491
 
42124
44492
 
@@ -42199,6 +44567,9 @@ var Trie = class extends IterableElementBase {
42199
44567
 
42200
44568
 
42201
44569
 
44570
+
44571
+
44572
+
42202
44573
 
42203
44574
 
42204
44575
 
@@ -42262,6 +44633,9 @@ var Trie = class extends IterableElementBase {
42262
44633
 
42263
44634
 
42264
44635
 
44636
+
44637
+
44638
+
42265
44639
 
42266
44640
 
42267
44641
 
@@ -42343,6 +44717,9 @@ var Trie = class extends IterableElementBase {
42343
44717
 
42344
44718
 
42345
44719
 
44720
+
44721
+
44722
+
42346
44723
 
42347
44724
 
42348
44725
 
@@ -42397,6 +44774,9 @@ var Trie = class extends IterableElementBase {
42397
44774
 
42398
44775
 
42399
44776
 
44777
+
44778
+
44779
+
42400
44780
 
42401
44781
 
42402
44782