ts-data-forge 3.3.0 → 3.3.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.
- package/README.md +37 -13
- package/dist/array/impl/array-utils-creation.d.mts +116 -0
- package/dist/array/impl/array-utils-creation.d.mts.map +1 -0
- package/dist/array/impl/array-utils-creation.mjs +110 -0
- package/dist/array/impl/array-utils-creation.mjs.map +1 -0
- package/dist/array/impl/array-utils-element-access.d.mts +61 -0
- package/dist/array/impl/array-utils-element-access.d.mts.map +1 -0
- package/dist/array/impl/array-utils-element-access.mjs +66 -0
- package/dist/array/impl/array-utils-element-access.mjs.map +1 -0
- package/dist/array/impl/array-utils-iterators.d.mts +59 -0
- package/dist/array/impl/array-utils-iterators.d.mts.map +1 -0
- package/dist/array/impl/array-utils-iterators.mjs +104 -0
- package/dist/array/impl/array-utils-iterators.mjs.map +1 -0
- package/dist/array/impl/array-utils-modification.d.mts +154 -0
- package/dist/array/impl/array-utils-modification.d.mts.map +1 -0
- package/dist/array/impl/array-utils-modification.mjs +139 -0
- package/dist/array/impl/array-utils-modification.mjs.map +1 -0
- package/dist/array/impl/array-utils-reducing-value.d.mts +214 -0
- package/dist/array/impl/array-utils-reducing-value.d.mts.map +1 -0
- package/dist/array/impl/array-utils-reducing-value.mjs +160 -0
- package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -0
- package/dist/array/impl/array-utils-search.d.mts +179 -0
- package/dist/array/impl/array-utils-search.d.mts.map +1 -0
- package/dist/array/impl/array-utils-search.mjs +153 -0
- package/dist/array/impl/array-utils-search.mjs.map +1 -0
- package/dist/array/impl/array-utils-set-op.d.mts +100 -0
- package/dist/array/impl/array-utils-set-op.d.mts.map +1 -0
- package/dist/array/impl/array-utils-set-op.mjs +137 -0
- package/dist/array/impl/array-utils-set-op.mjs.map +1 -0
- package/dist/array/impl/array-utils-size.d.mts +24 -0
- package/dist/array/impl/array-utils-size.d.mts.map +1 -0
- package/dist/array/impl/array-utils-size.mjs +28 -0
- package/dist/array/impl/array-utils-size.mjs.map +1 -0
- package/dist/array/impl/array-utils-slice-clamped.d.mts +18 -0
- package/dist/array/impl/array-utils-slice-clamped.d.mts.map +1 -0
- package/dist/array/impl/array-utils-slice-clamped.mjs +49 -0
- package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -0
- package/dist/array/impl/array-utils-slicing.d.mts +120 -0
- package/dist/array/impl/array-utils-slicing.d.mts.map +1 -0
- package/dist/array/impl/array-utils-slicing.mjs +140 -0
- package/dist/array/impl/array-utils-slicing.mjs.map +1 -0
- package/dist/array/impl/array-utils-transformation.d.mts +348 -0
- package/dist/array/impl/array-utils-transformation.d.mts.map +1 -0
- package/dist/array/impl/array-utils-transformation.mjs +331 -0
- package/dist/array/impl/array-utils-transformation.mjs.map +1 -0
- package/dist/array/impl/array-utils-validation.d.mts +149 -0
- package/dist/array/impl/array-utils-validation.d.mts.map +1 -0
- package/dist/array/impl/array-utils-validation.mjs +166 -0
- package/dist/array/impl/array-utils-validation.mjs.map +1 -0
- package/dist/array/impl/index.d.mts +13 -0
- package/dist/array/impl/index.d.mts.map +1 -0
- package/dist/array/impl/index.mjs +13 -0
- package/dist/array/impl/index.mjs.map +1 -0
- package/dist/array/index.d.mts +1 -1
- package/dist/array/index.d.mts.map +1 -1
- package/dist/array/index.mjs +2 -1
- package/dist/array/index.mjs.map +1 -1
- package/dist/collections/imap-mapped.d.mts +83 -253
- package/dist/collections/imap-mapped.d.mts.map +1 -1
- package/dist/collections/imap-mapped.mjs +33 -164
- package/dist/collections/imap-mapped.mjs.map +1 -1
- package/dist/collections/imap.d.mts +436 -163
- package/dist/collections/imap.d.mts.map +1 -1
- package/dist/collections/imap.mjs +74 -94
- package/dist/collections/imap.mjs.map +1 -1
- package/dist/collections/iset-mapped.d.mts +828 -345
- package/dist/collections/iset-mapped.d.mts.map +1 -1
- package/dist/collections/iset-mapped.mjs +200 -242
- package/dist/collections/iset-mapped.mjs.map +1 -1
- package/dist/collections/iset.d.mts +397 -205
- package/dist/collections/iset.d.mts.map +1 -1
- package/dist/collections/iset.mjs +102 -184
- package/dist/collections/iset.mjs.map +1 -1
- package/dist/collections/queue.d.mts +155 -135
- package/dist/collections/queue.d.mts.map +1 -1
- package/dist/collections/queue.mjs +55 -156
- package/dist/collections/queue.mjs.map +1 -1
- package/dist/collections/stack.d.mts +154 -154
- package/dist/collections/stack.d.mts.map +1 -1
- package/dist/collections/stack.mjs +54 -203
- package/dist/collections/stack.mjs.map +1 -1
- package/dist/entry-point.d.mts +1 -0
- package/dist/entry-point.d.mts.map +1 -1
- package/dist/entry-point.mjs +2 -1
- package/dist/entry-point.mjs.map +1 -1
- package/dist/expect-type.d.mts +43 -172
- package/dist/expect-type.d.mts.map +1 -1
- package/dist/expect-type.mjs +43 -172
- package/dist/expect-type.mjs.map +1 -1
- package/dist/functional/match.d.mts +35 -140
- package/dist/functional/match.d.mts.map +1 -1
- package/dist/functional/match.mjs.map +1 -1
- package/dist/functional/optional.d.mts +282 -160
- package/dist/functional/optional.d.mts.map +1 -1
- package/dist/functional/optional.mjs +131 -71
- package/dist/functional/optional.mjs.map +1 -1
- package/dist/functional/pipe.d.mts +59 -113
- package/dist/functional/pipe.d.mts.map +1 -1
- package/dist/functional/pipe.mjs.map +1 -1
- package/dist/functional/result.d.mts +433 -332
- package/dist/functional/result.d.mts.map +1 -1
- package/dist/functional/result.mjs +233 -239
- package/dist/functional/result.mjs.map +1 -1
- package/dist/globals.d.mts +12 -5
- package/dist/guard/has-key.d.mts +23 -74
- package/dist/guard/has-key.d.mts.map +1 -1
- package/dist/guard/has-key.mjs +23 -74
- package/dist/guard/has-key.mjs.map +1 -1
- package/dist/guard/is-non-empty-string.d.mts +20 -87
- package/dist/guard/is-non-empty-string.d.mts.map +1 -1
- package/dist/guard/is-non-empty-string.mjs +20 -87
- package/dist/guard/is-non-empty-string.mjs.map +1 -1
- package/dist/guard/is-non-null-object.d.mts +14 -84
- package/dist/guard/is-non-null-object.d.mts.map +1 -1
- package/dist/guard/is-non-null-object.mjs +14 -84
- package/dist/guard/is-non-null-object.mjs.map +1 -1
- package/dist/guard/is-primitive.d.mts +13 -126
- package/dist/guard/is-primitive.d.mts.map +1 -1
- package/dist/guard/is-primitive.mjs +13 -126
- package/dist/guard/is-primitive.mjs.map +1 -1
- package/dist/guard/is-record.d.mts +21 -132
- package/dist/guard/is-record.d.mts.map +1 -1
- package/dist/guard/is-record.mjs +21 -132
- package/dist/guard/is-record.mjs.map +1 -1
- package/dist/guard/is-type.d.mts +201 -238
- package/dist/guard/is-type.d.mts.map +1 -1
- package/dist/guard/is-type.mjs +201 -238
- package/dist/guard/is-type.mjs.map +1 -1
- package/dist/guard/key-is-in.d.mts +22 -139
- package/dist/guard/key-is-in.d.mts.map +1 -1
- package/dist/guard/key-is-in.mjs +22 -139
- package/dist/guard/key-is-in.mjs.map +1 -1
- package/dist/index.d.mts +0 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +0 -1
- package/dist/index.mjs.map +1 -1
- package/dist/iterator/range.d.mts +29 -62
- package/dist/iterator/range.d.mts.map +1 -1
- package/dist/iterator/range.mjs.map +1 -1
- package/dist/json/json.d.mts +191 -121
- package/dist/json/json.d.mts.map +1 -1
- package/dist/json/json.mjs +238 -136
- package/dist/json/json.mjs.map +1 -1
- package/dist/number/branded-types/finite-number.d.mts +24 -156
- package/dist/number/branded-types/finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/finite-number.mjs +27 -159
- package/dist/number/branded-types/finite-number.mjs.map +1 -1
- package/dist/number/branded-types/int.d.mts +122 -120
- package/dist/number/branded-types/int.d.mts.map +1 -1
- package/dist/number/branded-types/int.mjs +122 -120
- package/dist/number/branded-types/int.mjs.map +1 -1
- package/dist/number/branded-types/int16.d.mts +22 -30
- package/dist/number/branded-types/int16.d.mts.map +1 -1
- package/dist/number/branded-types/int16.mjs +22 -30
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.d.mts +22 -31
- package/dist/number/branded-types/int32.d.mts.map +1 -1
- package/dist/number/branded-types/int32.mjs +22 -31
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.d.mts +28 -36
- package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.mjs +31 -39
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.d.mts +24 -34
- package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int16.mjs +24 -34
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.d.mts +26 -35
- package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int32.mjs +26 -35
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.d.mts +22 -37
- package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.mjs +25 -40
- package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int.d.mts +15 -30
- package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int.mjs +15 -30
- package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int16.d.mts +27 -35
- package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int16.mjs +27 -35
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.d.mts +29 -36
- package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int32.mjs +29 -36
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.d.mts +37 -38
- package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.mjs +39 -40
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.d.mts +24 -35
- package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.mjs +24 -35
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.d.mts +24 -35
- package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.mjs +24 -35
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.d.mts +26 -40
- package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/positive-finite-number.mjs +29 -43
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.d.mts +133 -123
- package/dist/number/branded-types/positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int.mjs +133 -123
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.d.mts +24 -35
- package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int16.mjs +24 -35
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.d.mts +24 -35
- package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int32.mjs +24 -35
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.d.mts +159 -33
- package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-safe-int.mjs +160 -34
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.d.mts +24 -35
- package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint16.mjs +24 -35
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.d.mts +26 -36
- package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint32.mjs +26 -36
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.d.mts +140 -99
- package/dist/number/branded-types/safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/safe-int.mjs +142 -101
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.d.mts +24 -33
- package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
- package/dist/number/branded-types/safe-uint.mjs +25 -34
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.d.mts +121 -30
- package/dist/number/branded-types/uint.d.mts.map +1 -1
- package/dist/number/branded-types/uint.mjs +121 -30
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.d.mts +26 -34
- package/dist/number/branded-types/uint16.d.mts.map +1 -1
- package/dist/number/branded-types/uint16.mjs +26 -34
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.d.mts +26 -68
- package/dist/number/branded-types/uint32.d.mts.map +1 -1
- package/dist/number/branded-types/uint32.mjs +26 -68
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/int8.d.mts +37 -101
- package/dist/number/enum/int8.d.mts.map +1 -1
- package/dist/number/enum/int8.mjs +39 -170
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.d.mts +45 -55
- package/dist/number/enum/uint8.d.mts.map +1 -1
- package/dist/number/enum/uint8.mjs +46 -155
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/number/num.d.mts +145 -206
- package/dist/number/num.d.mts.map +1 -1
- package/dist/number/num.mjs +143 -199
- package/dist/number/num.mjs.map +1 -1
- package/dist/number/refined-number-utils.d.mts +97 -21
- package/dist/number/refined-number-utils.d.mts.map +1 -1
- package/dist/number/refined-number-utils.mjs +91 -20
- package/dist/number/refined-number-utils.mjs.map +1 -1
- package/dist/object/object.d.mts +126 -208
- package/dist/object/object.d.mts.map +1 -1
- package/dist/object/object.mjs +68 -102
- package/dist/object/object.mjs.map +1 -1
- package/dist/others/cast-mutable.d.mts +12 -88
- package/dist/others/cast-mutable.d.mts.map +1 -1
- package/dist/others/cast-mutable.mjs +13 -89
- package/dist/others/cast-mutable.mjs.map +1 -1
- package/dist/others/cast-readonly.d.mts +12 -168
- package/dist/others/cast-readonly.d.mts.map +1 -1
- package/dist/others/cast-readonly.mjs +13 -169
- package/dist/others/cast-readonly.mjs.map +1 -1
- package/dist/others/if-then.d.mts +6 -83
- package/dist/others/if-then.d.mts.map +1 -1
- package/dist/others/if-then.mjs +6 -83
- package/dist/others/if-then.mjs.map +1 -1
- package/dist/others/map-nullable.d.mts +12 -136
- package/dist/others/map-nullable.d.mts.map +1 -1
- package/dist/others/map-nullable.mjs.map +1 -1
- package/dist/others/memoize-function.d.mts +14 -157
- package/dist/others/memoize-function.d.mts.map +1 -1
- package/dist/others/memoize-function.mjs +14 -157
- package/dist/others/memoize-function.mjs.map +1 -1
- package/dist/others/tuple.d.mts +33 -151
- package/dist/others/tuple.d.mts.map +1 -1
- package/dist/others/tuple.mjs +33 -151
- package/dist/others/tuple.mjs.map +1 -1
- package/dist/others/unknown-to-string.d.mts +11 -125
- package/dist/others/unknown-to-string.d.mts.map +1 -1
- package/dist/others/unknown-to-string.mjs +12 -126
- package/dist/others/unknown-to-string.mjs.map +1 -1
- package/dist/promise/promise.d.mts +33 -20
- package/dist/promise/promise.d.mts.map +1 -1
- package/dist/promise/promise.mjs +34 -21
- package/dist/promise/promise.mjs.map +1 -1
- package/package.json +47 -39
- package/src/array/impl/array-utils-creation.mts +192 -0
- package/src/array/{array-utils-creation.test.mts → impl/array-utils-creation.test.mts} +121 -72
- package/src/array/impl/array-utils-element-access.mts +115 -0
- package/src/array/impl/array-utils-element-access.test.mts +151 -0
- package/src/array/impl/array-utils-iterators.mts +79 -0
- package/src/array/impl/array-utils-iterators.test.mts +98 -0
- package/src/array/impl/array-utils-modification.mts +434 -0
- package/src/array/{array-utils-modification.test.mts → impl/array-utils-modification.test.mts} +41 -28
- package/src/array/{array-utils-overload-type-error.test.mts → impl/array-utils-overload-type-error.test.mts} +33 -33
- package/src/array/impl/array-utils-reducing-value.mts +551 -0
- package/src/array/{array-utils-reducing-value.test.mts → impl/array-utils-reducing-value.test.mts} +45 -50
- package/src/array/impl/array-utils-search.mts +509 -0
- package/src/array/impl/array-utils-search.test.mts +346 -0
- package/src/array/impl/array-utils-set-op.mts +166 -0
- package/src/array/{array-utils-set-op.test.mts → impl/array-utils-set-op.test.mts} +42 -35
- package/src/array/impl/array-utils-size.mts +30 -0
- package/src/array/impl/array-utils-size.test.mts +9 -0
- package/src/array/impl/array-utils-slice-clamped.mts +51 -0
- package/src/array/{array-utils-slice-clamped.test.mts → impl/array-utils-slice-clamped.test.mts} +12 -12
- package/src/array/impl/array-utils-slicing.mts +275 -0
- package/src/array/impl/array-utils-slicing.test.mts +158 -0
- package/src/array/impl/array-utils-transformation.mts +746 -0
- package/src/array/{array-utils-transformation.test.mts → impl/array-utils-transformation.test.mts} +662 -889
- package/src/array/impl/array-utils-validation.mts +241 -0
- package/src/array/{array-utils-validation.test.mts → impl/array-utils-validation.test.mts} +194 -107
- package/src/array/{array.test.mts → impl/array.test.mts} +2 -2
- package/src/array/impl/index.mts +12 -0
- package/src/array/index.mts +1 -1
- package/src/collections/imap-mapped.mts +99 -265
- package/src/collections/imap.mts +477 -174
- package/src/collections/imap.test.mts +12 -19
- package/src/collections/iset-mapped.mts +892 -358
- package/src/collections/iset.mts +429 -213
- package/src/collections/queue.mts +174 -200
- package/src/collections/stack.mts +172 -245
- package/src/collections/stack.test.mts +9 -1
- package/src/entry-point.mts +1 -0
- package/src/expect-type.mts +43 -172
- package/src/functional/match.mts +35 -145
- package/src/functional/optional.mts +285 -163
- package/src/functional/optional.test.mts +4 -1
- package/src/functional/pipe.mts +60 -113
- package/src/functional/result.mts +452 -351
- package/src/functional/result.test.mts +9 -2
- package/src/globals.d.mts +12 -5
- package/src/guard/has-key.mts +23 -74
- package/src/guard/is-non-empty-string.mts +20 -87
- package/src/guard/is-non-null-object.mts +14 -84
- package/src/guard/is-non-null-object.test.mts +1 -1
- package/src/guard/is-primitive.mts +13 -126
- package/src/guard/is-primitive.test.mts +1 -1
- package/src/guard/is-record.mts +21 -132
- package/src/guard/is-type.mts +201 -238
- package/src/guard/is-type.test.mts +7 -7
- package/src/guard/key-is-in.mts +22 -139
- package/src/index.mts +0 -1
- package/src/iterator/range.mts +29 -62
- package/src/json/json.mts +202 -134
- package/src/json/json.test.mts +1 -3
- package/src/number/branded-types/finite-number.mts +27 -159
- package/src/number/branded-types/int.mts +122 -120
- package/src/number/branded-types/int16.mts +22 -30
- package/src/number/branded-types/int16.test.mts +24 -24
- package/src/number/branded-types/int32.mts +22 -31
- package/src/number/branded-types/int32.test.mts +39 -39
- package/src/number/branded-types/non-negative-finite-number.mts +31 -39
- package/src/number/branded-types/non-negative-int16.mts +24 -34
- package/src/number/branded-types/non-negative-int16.test.mts +16 -16
- package/src/number/branded-types/non-negative-int32.mts +26 -35
- package/src/number/branded-types/non-negative-int32.test.mts +30 -30
- package/src/number/branded-types/non-zero-finite-number.mts +25 -40
- package/src/number/branded-types/non-zero-int.mts +15 -30
- package/src/number/branded-types/non-zero-int16.mts +27 -35
- package/src/number/branded-types/non-zero-int16.test.mts +26 -26
- package/src/number/branded-types/non-zero-int32.mts +29 -36
- package/src/number/branded-types/non-zero-int32.test.mts +45 -42
- package/src/number/branded-types/non-zero-safe-int.mts +39 -40
- package/src/number/branded-types/non-zero-uint16.mts +24 -35
- package/src/number/branded-types/non-zero-uint16.test.mts +16 -16
- package/src/number/branded-types/non-zero-uint32.mts +24 -35
- package/src/number/branded-types/non-zero-uint32.test.mts +28 -28
- package/src/number/branded-types/positive-finite-number.mts +29 -43
- package/src/number/branded-types/positive-int.mts +134 -124
- package/src/number/branded-types/positive-int16.mts +24 -35
- package/src/number/branded-types/positive-int16.test.mts +14 -14
- package/src/number/branded-types/positive-int32.mts +24 -35
- package/src/number/branded-types/positive-int32.test.mts +26 -26
- package/src/number/branded-types/positive-safe-int.mts +160 -34
- package/src/number/branded-types/positive-uint16.mts +24 -35
- package/src/number/branded-types/positive-uint16.test.mts +16 -16
- package/src/number/branded-types/positive-uint32.mts +26 -36
- package/src/number/branded-types/positive-uint32.test.mts +31 -28
- package/src/number/branded-types/safe-int.mts +142 -101
- package/src/number/branded-types/safe-uint.mts +25 -34
- package/src/number/branded-types/uint.mts +121 -30
- package/src/number/branded-types/uint16.mts +26 -34
- package/src/number/branded-types/uint16.test.mts +16 -16
- package/src/number/branded-types/uint32.mts +26 -68
- package/src/number/branded-types/uint32.test.mts +28 -28
- package/src/number/enum/int8.mts +39 -170
- package/src/number/enum/uint8.mts +46 -155
- package/src/number/num.mts +157 -212
- package/src/number/num.test.mts +4 -4
- package/src/number/refined-number-utils.mts +109 -26
- package/src/object/object.mts +130 -212
- package/src/object/object.test.mts +29 -0
- package/src/others/cast-mutable.mts +13 -89
- package/src/others/cast-mutable.test.mts +80 -0
- package/src/others/cast-readonly.mts +13 -169
- package/src/others/if-then.mts +6 -83
- package/src/others/map-nullable.mts +12 -136
- package/src/others/map-nullable.test.mts +6 -6
- package/src/others/memoize-function.mts +14 -157
- package/src/others/tuple.mts +33 -151
- package/src/others/unknown-to-string.mts +12 -126
- package/src/others/unknown-to-string.test.mts +13 -1
- package/src/promise/promise.mts +34 -21
- package/src/promise/promise.test.mts +43 -0
- package/dist/array/array-utils.d.mts +0 -2956
- package/dist/array/array-utils.d.mts.map +0 -1
- package/dist/array/array-utils.mjs +0 -1838
- package/dist/array/array-utils.mjs.map +0 -1
- package/src/array/array-utils-search.test.mts +0 -169
- package/src/array/array-utils-slicing.test.mts +0 -274
- package/src/array/array-utils.mts +0 -4834
|
@@ -1,46 +1,40 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Type guard that checks if a value is a positive integer.
|
|
3
3
|
*
|
|
4
|
-
* A positive integer is any integer greater than zero (>= 1).
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* @param value - The value to check
|
|
8
|
-
* @returns `true` if the value is a positive integer, `false` otherwise
|
|
4
|
+
* A positive integer is any integer greater than zero (>= 1). This excludes
|
|
5
|
+
* zero, negative numbers, and non-integers.
|
|
9
6
|
*
|
|
10
7
|
* @example
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* isPositiveInt(
|
|
14
|
-
* isPositiveInt(0);
|
|
15
|
-
*
|
|
16
|
-
* isPositiveInt(5.5); // false (not an integer)
|
|
17
|
-
* isPositiveInt(NaN); // false
|
|
8
|
+
*
|
|
9
|
+
* ```ts
|
|
10
|
+
* assert.ok(isPositiveInt(5));
|
|
11
|
+
* assert.notOk(isPositiveInt(0));
|
|
12
|
+
* assert.ok(PositiveInt.is(10));
|
|
18
13
|
* ```
|
|
14
|
+
*
|
|
15
|
+
* @param value - The value to check
|
|
16
|
+
* @returns `true` if the value is a positive integer, `false` otherwise
|
|
19
17
|
*/
|
|
20
18
|
export declare const isPositiveInt: (a: number) => a is PositiveInt;
|
|
21
19
|
/**
|
|
22
20
|
* Casts a number to a PositiveInt branded type.
|
|
23
21
|
*
|
|
24
|
-
* This function validates that the input is a positive integer (>= 1)
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
* @param value - The value to cast
|
|
29
|
-
* @returns The value as a PositiveInt branded type
|
|
30
|
-
* @throws {TypeError} If the value is not a positive integer
|
|
22
|
+
* This function validates that the input is a positive integer (>= 1) and
|
|
23
|
+
* returns it with the PositiveInt brand. This ensures type safety for
|
|
24
|
+
* operations that require strictly positive integer values.
|
|
31
25
|
*
|
|
32
26
|
* @example
|
|
33
|
-
* ```typescript
|
|
34
|
-
* const count = asPositiveInt(5); // PositiveInt
|
|
35
|
-
* const length = asPositiveInt(100); // PositiveInt
|
|
36
|
-
* const one = asPositiveInt(1); // PositiveInt (minimum valid)
|
|
37
27
|
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
28
|
+
* ```ts
|
|
29
|
+
* const branded = asPositiveInt(7);
|
|
30
|
+
*
|
|
31
|
+
* assert(branded === 7);
|
|
32
|
+
* assert.ok(PositiveInt.is(branded));
|
|
43
33
|
* ```
|
|
34
|
+
*
|
|
35
|
+
* @param value - The value to cast
|
|
36
|
+
* @returns The value as a PositiveInt branded type
|
|
37
|
+
* @throws {TypeError} If the value is not a positive integer
|
|
44
38
|
*/
|
|
45
39
|
export declare const asPositiveInt: <N extends number>(x: N) => number & {
|
|
46
40
|
readonly NaNValue: false;
|
|
@@ -59,58 +53,38 @@ export declare const asPositiveInt: <N extends number>(x: N) => number & {
|
|
|
59
53
|
* Namespace providing type-safe operations for PositiveInt branded types.
|
|
60
54
|
*
|
|
61
55
|
* PositiveInt represents integers that are strictly greater than zero (>= 1).
|
|
62
|
-
* All operations automatically clamp results to maintain the positive
|
|
63
|
-
* ensuring that arithmetic operations never produce zero or
|
|
56
|
+
* All operations automatically clamp results to maintain the positive
|
|
57
|
+
* constraint, ensuring that arithmetic operations never produce zero or
|
|
58
|
+
* negative values.
|
|
64
59
|
*
|
|
65
60
|
* This type is essential for:
|
|
61
|
+
*
|
|
66
62
|
* - Array lengths and sizes (length >= 1)
|
|
67
63
|
* - Counts and quantities that must be positive
|
|
68
64
|
* - Denominators in division operations
|
|
69
65
|
* - Loop counters and iteration counts
|
|
70
66
|
* - Database primary keys and IDs
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* ```typescript
|
|
74
|
-
* // Type validation
|
|
75
|
-
* PositiveInt.is(5); // true
|
|
76
|
-
* PositiveInt.is(1); // true (minimum value)
|
|
77
|
-
* PositiveInt.is(0); // false
|
|
78
|
-
* PositiveInt.is(-1); // false
|
|
79
|
-
*
|
|
80
|
-
* // Automatic clamping in operations
|
|
81
|
-
* const a = asPositiveInt(10);
|
|
82
|
-
* const b = asPositiveInt(3);
|
|
83
|
-
*
|
|
84
|
-
* const sum = PositiveInt.add(a, b); // PositiveInt (13)
|
|
85
|
-
* const diff1 = PositiveInt.sub(a, b); // PositiveInt (7)
|
|
86
|
-
* const diff2 = PositiveInt.sub(b, a); // PositiveInt (1) - clamped!
|
|
87
|
-
* const product = PositiveInt.mul(a, b); // PositiveInt (30)
|
|
88
|
-
* const quotient = PositiveInt.div(a, b); // PositiveInt (3)
|
|
89
|
-
*
|
|
90
|
-
* // Edge case: division that would be < 1
|
|
91
|
-
* const small = PositiveInt.div(asPositiveInt(2), asPositiveInt(3)); // PositiveInt (1)
|
|
92
|
-
*
|
|
93
|
-
* // Range operations
|
|
94
|
-
* const minimum = PositiveInt.min(a, b); // PositiveInt (3)
|
|
95
|
-
* const maximum = PositiveInt.max(a, b); // PositiveInt (10)
|
|
96
|
-
*
|
|
97
|
-
* // Random generation
|
|
98
|
-
* const dice = PositiveInt.random(asPositiveInt(1), asPositiveInt(6)); // 1-6
|
|
99
|
-
* const id = PositiveInt.random(asPositiveInt(1000), asPositiveInt(9999)); // 4-digit ID
|
|
100
|
-
* ```
|
|
101
67
|
*/
|
|
102
68
|
export declare const PositiveInt: {
|
|
103
69
|
/**
|
|
104
70
|
* Type guard that checks if a value is a positive integer.
|
|
105
71
|
*
|
|
72
|
+
* @example
|
|
73
|
+
*
|
|
74
|
+
* ```ts
|
|
75
|
+
* assert.ok(isPositiveInt(5));
|
|
76
|
+
* assert.notOk(isPositiveInt(0));
|
|
77
|
+
* assert.ok(PositiveInt.is(10));
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
106
80
|
* @param value - The value to check
|
|
107
81
|
* @returns `true` if the value is a positive integer, `false` otherwise
|
|
108
|
-
*
|
|
109
82
|
* @see {@link isPositiveInt} for usage examples
|
|
110
83
|
*/
|
|
111
84
|
readonly is: (a: number) => a is PositiveInt;
|
|
112
85
|
/**
|
|
113
86
|
* The minimum value for a PositiveInt.
|
|
87
|
+
*
|
|
114
88
|
* @readonly
|
|
115
89
|
*/
|
|
116
90
|
readonly MIN_VALUE: 1;
|
|
@@ -120,45 +94,59 @@ export declare const PositiveInt: {
|
|
|
120
94
|
* Since all inputs are guaranteed to be >= 1, the result is also guaranteed
|
|
121
95
|
* to be a positive integer.
|
|
122
96
|
*
|
|
123
|
-
* @param values - The positive integers to compare (at least one required)
|
|
124
|
-
* @returns The smallest value as a PositiveInt
|
|
125
|
-
*
|
|
126
97
|
* @example
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
-
*
|
|
98
|
+
*
|
|
99
|
+
* ```ts
|
|
100
|
+
* const smallest = PositiveInt.min(
|
|
101
|
+
* asPositiveInt(9),
|
|
102
|
+
* asPositiveInt(3),
|
|
103
|
+
* asPositiveInt(12),
|
|
104
|
+
* );
|
|
105
|
+
*
|
|
106
|
+
* assert(smallest === 3);
|
|
130
107
|
* ```
|
|
108
|
+
*
|
|
109
|
+
* @param values - The positive integers to compare (at least one required)
|
|
110
|
+
* @returns The smallest value as a PositiveInt
|
|
131
111
|
*/
|
|
132
112
|
readonly min: (...values: readonly WithSmallInt<PositiveInt, 40>[]) => PositiveInt;
|
|
133
113
|
/**
|
|
134
114
|
* Returns the maximum value from a list of positive integers.
|
|
135
115
|
*
|
|
136
|
-
* @param values - The positive integers to compare (at least one required)
|
|
137
|
-
* @returns The largest value as a PositiveInt
|
|
138
|
-
*
|
|
139
116
|
* @example
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
*
|
|
117
|
+
*
|
|
118
|
+
* ```ts
|
|
119
|
+
* const largest = PositiveInt.max(
|
|
120
|
+
* asPositiveInt(9),
|
|
121
|
+
* asPositiveInt(3),
|
|
122
|
+
* asPositiveInt(12),
|
|
123
|
+
* );
|
|
124
|
+
*
|
|
125
|
+
* assert(largest === 12);
|
|
143
126
|
* ```
|
|
127
|
+
*
|
|
128
|
+
* @param values - The positive integers to compare (at least one required)
|
|
129
|
+
* @returns The largest value as a PositiveInt
|
|
144
130
|
*/
|
|
145
131
|
readonly max: (...values: readonly WithSmallInt<PositiveInt, 40>[]) => PositiveInt;
|
|
146
132
|
/**
|
|
147
133
|
* Clamps a number to the positive integer range.
|
|
148
134
|
*
|
|
149
|
-
* Since PositiveInt has a minimum value of 1, this function ensures
|
|
150
|
-
*
|
|
151
|
-
*
|
|
152
|
-
* @param value - The number to clamp
|
|
153
|
-
* @returns The value clamped to >= 1 as a PositiveInt
|
|
135
|
+
* Since PositiveInt has a minimum value of 1, this function ensures that any
|
|
136
|
+
* input less than 1 is clamped to 1.
|
|
154
137
|
*
|
|
155
138
|
* @example
|
|
156
|
-
*
|
|
157
|
-
*
|
|
158
|
-
* PositiveInt.clamp(0);
|
|
159
|
-
* PositiveInt.clamp(
|
|
160
|
-
*
|
|
139
|
+
*
|
|
140
|
+
* ```ts
|
|
141
|
+
* const belowRange = PositiveInt.clamp(0);
|
|
142
|
+
* const withinRange = PositiveInt.clamp(10);
|
|
143
|
+
*
|
|
144
|
+
* assert(belowRange === 1);
|
|
145
|
+
* assert(withinRange === 10);
|
|
161
146
|
* ```
|
|
147
|
+
*
|
|
148
|
+
* @param value - The number to clamp
|
|
149
|
+
* @returns The value clamped to >= 1 as a PositiveInt
|
|
162
150
|
*/
|
|
163
151
|
readonly clamp: (x: number) => PositiveInt;
|
|
164
152
|
/**
|
|
@@ -167,43 +155,55 @@ export declare const PositiveInt: {
|
|
|
167
155
|
* Both bounds are inclusive, and both min and max must be positive integers.
|
|
168
156
|
* If min > max, they are automatically swapped.
|
|
169
157
|
*
|
|
158
|
+
* @example
|
|
159
|
+
*
|
|
160
|
+
* ```ts
|
|
161
|
+
* const min = asPositiveInt(3);
|
|
162
|
+
* const max = asPositiveInt(6);
|
|
163
|
+
* const randomValue = PositiveInt.random(min, max);
|
|
164
|
+
*
|
|
165
|
+
* assert.ok(PositiveInt.is(randomValue));
|
|
166
|
+
* assert.ok(randomValue >= 3 && randomValue <= 6);
|
|
167
|
+
* ```
|
|
168
|
+
*
|
|
170
169
|
* @param min - The minimum value (inclusive, must be >= 1)
|
|
171
170
|
* @param max - The maximum value (inclusive, must be >= min)
|
|
172
171
|
* @returns A random PositiveInt in the range [min, max]
|
|
172
|
+
*/
|
|
173
|
+
readonly random: (min?: WithSmallInt<PositiveInt, 40> | undefined, max?: WithSmallInt<PositiveInt, 40> | undefined) => PositiveInt;
|
|
174
|
+
/**
|
|
175
|
+
* Raises a positive integer to a power, ensuring the result is never less
|
|
176
|
+
* than 1.
|
|
173
177
|
*
|
|
174
178
|
* @example
|
|
175
|
-
* ```typescript
|
|
176
|
-
* // Dice roll
|
|
177
|
-
* const d6 = PositiveInt.random(asPositiveInt(1), asPositiveInt(6));
|
|
178
179
|
*
|
|
179
|
-
*
|
|
180
|
-
* const
|
|
180
|
+
* ```ts
|
|
181
|
+
* const base = asPositiveInt(2);
|
|
182
|
+
* const exponent = asPositiveInt(4);
|
|
183
|
+
* const power = PositiveInt.pow(base, exponent);
|
|
181
184
|
*
|
|
182
|
-
*
|
|
183
|
-
* const pages = PositiveInt.random(asPositiveInt(50), asPositiveInt(500));
|
|
185
|
+
* assert(power === 16);
|
|
184
186
|
* ```
|
|
185
|
-
|
|
186
|
-
readonly random: (min?: WithSmallInt<PositiveInt, 40> | undefined, max?: WithSmallInt<PositiveInt, 40> | undefined) => PositiveInt;
|
|
187
|
-
/**
|
|
188
|
-
* Raises a positive integer to a power, ensuring the result is never less than 1.
|
|
187
|
+
*
|
|
189
188
|
* @param a - The base positive integer
|
|
190
189
|
* @param b - The exponent positive integer
|
|
191
190
|
* @returns `a ** b` as a PositiveInt, but never less than 1
|
|
192
|
-
* @example
|
|
193
|
-
* ```typescript
|
|
194
|
-
* PositiveInt.pow(asPositiveInt(2), asPositiveInt(3)); // PositiveInt (8)
|
|
195
|
-
* ```
|
|
196
191
|
*/
|
|
197
192
|
readonly pow: (x: WithSmallInt<PositiveInt, 40>, y: WithSmallInt<PositiveInt, 40>) => PositiveInt;
|
|
198
193
|
/**
|
|
199
194
|
* Adds two positive integers, ensuring the result is never less than 1.
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
*
|
|
198
|
+
* ```ts
|
|
199
|
+
* const sum = PositiveInt.add(asPositiveInt(4), asPositiveInt(5));
|
|
200
|
+
*
|
|
201
|
+
* assert(sum === 9);
|
|
202
|
+
* ```
|
|
203
|
+
*
|
|
200
204
|
* @param a - First positive integer
|
|
201
205
|
* @param b - Second positive integer
|
|
202
206
|
* @returns `a + b` as a PositiveInt, but never less than 1
|
|
203
|
-
* @example
|
|
204
|
-
* ```typescript
|
|
205
|
-
* PositiveInt.add(asPositiveInt(5), asPositiveInt(3)); // PositiveInt (8)
|
|
206
|
-
* ```
|
|
207
207
|
*/
|
|
208
208
|
readonly add: (x: WithSmallInt<PositiveInt, 40>, y: WithSmallInt<PositiveInt, 40>) => PositiveInt;
|
|
209
209
|
/**
|
|
@@ -212,46 +212,56 @@ export declare const PositiveInt: {
|
|
|
212
212
|
* If the mathematical result would be <= 0, it is clamped to 1 to maintain
|
|
213
213
|
* the positive integer constraint.
|
|
214
214
|
*
|
|
215
|
+
* @example
|
|
216
|
+
*
|
|
217
|
+
* ```ts
|
|
218
|
+
* const difference = PositiveInt.sub(asPositiveInt(5), asPositiveInt(7));
|
|
219
|
+
*
|
|
220
|
+
* assert(difference === 1);
|
|
221
|
+
* ```
|
|
222
|
+
*
|
|
215
223
|
* @param a - The minuend (positive integer)
|
|
216
224
|
* @param b - The subtrahend (positive integer)
|
|
217
225
|
* @returns `max(1, a - b)` as a PositiveInt
|
|
218
|
-
*
|
|
219
|
-
* @example
|
|
220
|
-
* ```typescript
|
|
221
|
-
* PositiveInt.sub(asPositiveInt(8), asPositiveInt(3)); // PositiveInt (5)
|
|
222
|
-
* PositiveInt.sub(asPositiveInt(3), asPositiveInt(8)); // PositiveInt (1) - clamped
|
|
223
|
-
* PositiveInt.sub(asPositiveInt(5), asPositiveInt(5)); // PositiveInt (1) - clamped
|
|
224
|
-
* ```
|
|
225
226
|
*/
|
|
226
227
|
readonly sub: (x: WithSmallInt<PositiveInt, 40>, y: WithSmallInt<PositiveInt, 40>) => PositiveInt;
|
|
227
228
|
/**
|
|
228
229
|
* Multiplies two positive integers, ensuring the result is never less than 1.
|
|
230
|
+
*
|
|
231
|
+
* @example
|
|
232
|
+
*
|
|
233
|
+
* ```ts
|
|
234
|
+
* const product = PositiveInt.mul(asPositiveInt(3), asPositiveInt(7));
|
|
235
|
+
*
|
|
236
|
+
* assert(product === 21);
|
|
237
|
+
* ```
|
|
238
|
+
*
|
|
229
239
|
* @param a - First positive integer
|
|
230
240
|
* @param b - Second positive integer
|
|
231
241
|
* @returns `a * b` as a PositiveInt, but never less than 1
|
|
232
|
-
* @example
|
|
233
|
-
* ```typescript
|
|
234
|
-
* PositiveInt.mul(asPositiveInt(4), asPositiveInt(3)); // PositiveInt (12)
|
|
235
|
-
* ```
|
|
236
242
|
*/
|
|
237
243
|
readonly mul: (x: WithSmallInt<PositiveInt, 40>, y: WithSmallInt<PositiveInt, 40>) => PositiveInt;
|
|
238
244
|
/**
|
|
239
|
-
* Divides two positive integers using floor division, clamping to remain
|
|
245
|
+
* Divides two positive integers using floor division, clamping to remain
|
|
246
|
+
* positive.
|
|
240
247
|
*
|
|
241
248
|
* Performs mathematical floor division: `⌊a / b⌋`. If the result would be 0
|
|
242
|
-
* (when a < b), it is clamped to 1 to maintain the positive integer
|
|
249
|
+
* (when a < b), it is clamped to 1 to maintain the positive integer
|
|
250
|
+
* constraint.
|
|
251
|
+
*
|
|
252
|
+
* @example
|
|
253
|
+
*
|
|
254
|
+
* ```ts
|
|
255
|
+
* const quotient = PositiveInt.div(asPositiveInt(9), asPositiveInt(2));
|
|
256
|
+
* const clamped = PositiveInt.div(asPositiveInt(3), asPositiveInt(10));
|
|
257
|
+
*
|
|
258
|
+
* assert(quotient === 4);
|
|
259
|
+
* assert(clamped === 1);
|
|
260
|
+
* ```
|
|
243
261
|
*
|
|
244
262
|
* @param a - The dividend (positive integer)
|
|
245
263
|
* @param b - The divisor (positive integer, guaranteed non-zero)
|
|
246
264
|
* @returns `max(1, ⌊a / b⌋)` as a PositiveInt
|
|
247
|
-
*
|
|
248
|
-
* @example
|
|
249
|
-
* ```typescript
|
|
250
|
-
* PositiveInt.div(asPositiveInt(10), asPositiveInt(3)); // PositiveInt (3)
|
|
251
|
-
* PositiveInt.div(asPositiveInt(9), asPositiveInt(3)); // PositiveInt (3)
|
|
252
|
-
* PositiveInt.div(asPositiveInt(2), asPositiveInt(3)); // PositiveInt (1) - clamped
|
|
253
|
-
* PositiveInt.div(asPositiveInt(1), asPositiveInt(5)); // PositiveInt (1) - clamped
|
|
254
|
-
* ```
|
|
255
265
|
*/
|
|
256
266
|
readonly div: (x: WithSmallInt<PositiveInt, 40>, y: 1 | 2 | 3 | 32 | 4 | 5 | 6 | 7 | 8 | 9 | 11 | 10 | 24 | 14 | 34 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 33 | 35 | 36 | 37 | 38 | 39 | NormalizeBrandUnion<number & {
|
|
257
267
|
readonly NaNValue: false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"positive-int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/positive-int.mts"],"names":[],"mappings":"AA+BA
|
|
1
|
+
{"version":3,"file":"positive-int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/positive-int.mts"],"names":[],"mappings":"AA+BA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa,iCAAK,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;MAAW,CAAC;AAEtC;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,WAAW;IACtB;;;;;;;;;;;;;;OAcG;;IAGH;;;;OAIG;;IAGH;;;;;;;;;;;;;;;;;;;;OAoBG;;IAGH;;;;;;;;;;;;;;;;;OAiBG;;IAGH;;;;;;;;;;;;;;;;;;OAkBG;;IAGH;;;;;;;;;;;;;;;;;;;;OAoBG;;IAGH;;;;;;;;;;;;;;;;;OAiBG;;IAGH;;;;;;;;;;;;;;OAcG;;IAGH;;;;;;;;;;;;;;;;;OAiBG;;IAGH;;;;;;;;;;;;;;OAcG;;IAGH;;;;;;;;;;;;;;;;;;;;;OAqBG;;;;;;;;;;;;;;CAEK,CAAC"}
|