streamlit-pokercards 0.1.0__tar.gz
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.
- streamlit_pokercards-0.1.0/LICENSE +23 -0
- streamlit_pokercards-0.1.0/MANIFEST.in +2 -0
- streamlit_pokercards-0.1.0/PKG-INFO +69 -0
- streamlit_pokercards-0.1.0/README.md +53 -0
- streamlit_pokercards-0.1.0/pyproject.toml +30 -0
- streamlit_pokercards-0.1.0/setup.cfg +4 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards/__init__.py +155 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards/frontend/build/assets/index-B3TkP-tI.css +1 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards/frontend/build/assets/index-DIklr1yH.js +35 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards/frontend/build/index.html +13 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards.egg-info/PKG-INFO +69 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards.egg-info/SOURCES.txt +13 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards.egg-info/dependency_links.txt +1 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards.egg-info/requires.txt +1 -0
- streamlit_pokercards-0.1.0/streamlit_pokercards.egg-info/top_level.txt +1 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Constantin Wilharm
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
|
23
|
+
Card artwork: "Playing Cards Pack" by Kenney (www.kenney.nl), CC0 1.0.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: streamlit-pokercards
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Streamlit component that shows playing cards with an optional flip animation.
|
|
5
|
+
Author: Constantin Wilharm
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/cwilharm/streamlit-pokercards
|
|
8
|
+
Project-URL: Issues, https://github.com/cwilharm/streamlit-pokercards/issues
|
|
9
|
+
Keywords: streamlit,streamlit-component,playing-cards,poker
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Requires-Python: >=3.9
|
|
12
|
+
Description-Content-Type: text/markdown
|
|
13
|
+
License-File: LICENSE
|
|
14
|
+
Requires-Dist: streamlit>=1.30
|
|
15
|
+
Dynamic: license-file
|
|
16
|
+
|
|
17
|
+
# streamlit-pokercards
|
|
18
|
+
|
|
19
|
+
Playing cards for Streamlit, with optional flip animation and click events.
|
|
20
|
+
|
|
21
|
+
<img src="https://raw.githubusercontent.com/cwilharm/streamlit-pokercards/main/docs/demo.gif" alt="Five cards flipping over one after another" width="467">
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
pip install streamlit-pokercards
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
```python
|
|
28
|
+
import streamlit as st
|
|
29
|
+
from streamlit_pokercards import pokercards
|
|
30
|
+
|
|
31
|
+
show = st.toggle("Show cards", value=True)
|
|
32
|
+
clicked = pokercards(["sa", "hk", "dq"], face_up=show, animated=True, key="hand")
|
|
33
|
+
if clicked:
|
|
34
|
+
st.write(f"You clicked {clicked}")
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Card codes
|
|
38
|
+
|
|
39
|
+
Each card is **suit letter + rank**, e.g. `"hq"` = queen of hearts, `"s10"` = 10 of spades. Case doesn't matter.
|
|
40
|
+
|
|
41
|
+
| Suit | Symbol | Code | | Rank | Code |
|
|
42
|
+
|---|:---:|:---:|---|---|:---:|
|
|
43
|
+
| Spades | ♠ | `s` | | 2 – 10 | `2` … `10` |
|
|
44
|
+
| Hearts | ♥ | `h` | | Jack | `j` |
|
|
45
|
+
| Diamonds | ♦ | `d` | | Queen | `q` |
|
|
46
|
+
| Clubs | ♣ | `c` | | King | `k` |
|
|
47
|
+
| | | | | Ace | `a` |
|
|
48
|
+
|
|
49
|
+
Specials: `"jr"` red joker, `"jb"` black joker, `"back"` a card that always stays face-down.
|
|
50
|
+
|
|
51
|
+
<img src="https://raw.githubusercontent.com/cwilharm/streamlit-pokercards/main/docs/cards.png" alt="All cards with their codes" width="810">
|
|
52
|
+
|
|
53
|
+
## Parameters
|
|
54
|
+
|
|
55
|
+
| Parameter | Default | |
|
|
56
|
+
|---|---|---|
|
|
57
|
+
| `cards` | – | One code or a list of codes |
|
|
58
|
+
| `face_up` | `True` | `False` shows the backs; toggle it to flip the cards |
|
|
59
|
+
| `animated` | `False` | Animate flips, one card after another |
|
|
60
|
+
| `card_width` | `84` | Pixels; multiples of 42 keep the pixel art crisp |
|
|
61
|
+
| `gap` | `8` | Pixels between cards |
|
|
62
|
+
| `flip_duration` | `0.6` | Seconds per flip |
|
|
63
|
+
| `flip_delay` | `0.25` | Seconds between consecutive flips |
|
|
64
|
+
| `clickable` | `True` | Let users click cards |
|
|
65
|
+
| `key` | `None` | Set it so only changed cards flip on rerun |
|
|
66
|
+
|
|
67
|
+
**Returns** the clicked card's code on the rerun after a click, otherwise `None`.
|
|
68
|
+
|
|
69
|
+
Card art: [Kenney](https://kenney.nl/assets/playing-cards-pack) (CC0).
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# streamlit-pokercards
|
|
2
|
+
|
|
3
|
+
Playing cards for Streamlit, with optional flip animation and click events.
|
|
4
|
+
|
|
5
|
+
<img src="https://raw.githubusercontent.com/cwilharm/streamlit-pokercards/main/docs/demo.gif" alt="Five cards flipping over one after another" width="467">
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pip install streamlit-pokercards
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
```python
|
|
12
|
+
import streamlit as st
|
|
13
|
+
from streamlit_pokercards import pokercards
|
|
14
|
+
|
|
15
|
+
show = st.toggle("Show cards", value=True)
|
|
16
|
+
clicked = pokercards(["sa", "hk", "dq"], face_up=show, animated=True, key="hand")
|
|
17
|
+
if clicked:
|
|
18
|
+
st.write(f"You clicked {clicked}")
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Card codes
|
|
22
|
+
|
|
23
|
+
Each card is **suit letter + rank**, e.g. `"hq"` = queen of hearts, `"s10"` = 10 of spades. Case doesn't matter.
|
|
24
|
+
|
|
25
|
+
| Suit | Symbol | Code | | Rank | Code |
|
|
26
|
+
|---|:---:|:---:|---|---|:---:|
|
|
27
|
+
| Spades | ♠ | `s` | | 2 – 10 | `2` … `10` |
|
|
28
|
+
| Hearts | ♥ | `h` | | Jack | `j` |
|
|
29
|
+
| Diamonds | ♦ | `d` | | Queen | `q` |
|
|
30
|
+
| Clubs | ♣ | `c` | | King | `k` |
|
|
31
|
+
| | | | | Ace | `a` |
|
|
32
|
+
|
|
33
|
+
Specials: `"jr"` red joker, `"jb"` black joker, `"back"` a card that always stays face-down.
|
|
34
|
+
|
|
35
|
+
<img src="https://raw.githubusercontent.com/cwilharm/streamlit-pokercards/main/docs/cards.png" alt="All cards with their codes" width="810">
|
|
36
|
+
|
|
37
|
+
## Parameters
|
|
38
|
+
|
|
39
|
+
| Parameter | Default | |
|
|
40
|
+
|---|---|---|
|
|
41
|
+
| `cards` | – | One code or a list of codes |
|
|
42
|
+
| `face_up` | `True` | `False` shows the backs; toggle it to flip the cards |
|
|
43
|
+
| `animated` | `False` | Animate flips, one card after another |
|
|
44
|
+
| `card_width` | `84` | Pixels; multiples of 42 keep the pixel art crisp |
|
|
45
|
+
| `gap` | `8` | Pixels between cards |
|
|
46
|
+
| `flip_duration` | `0.6` | Seconds per flip |
|
|
47
|
+
| `flip_delay` | `0.25` | Seconds between consecutive flips |
|
|
48
|
+
| `clickable` | `True` | Let users click cards |
|
|
49
|
+
| `key` | `None` | Set it so only changed cards flip on rerun |
|
|
50
|
+
|
|
51
|
+
**Returns** the clicked card's code on the rerun after a click, otherwise `None`.
|
|
52
|
+
|
|
53
|
+
Card art: [Kenney](https://kenney.nl/assets/playing-cards-pack) (CC0).
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=69"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "streamlit-pokercards"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "Streamlit component that shows playing cards with an optional flip animation."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = "MIT"
|
|
11
|
+
authors = [{ name = "Constantin Wilharm" }]
|
|
12
|
+
license-files = ["LICENSE"]
|
|
13
|
+
requires-python = ">=3.9"
|
|
14
|
+
dependencies = ["streamlit>=1.30"]
|
|
15
|
+
keywords = ["streamlit", "streamlit-component", "playing-cards", "poker"]
|
|
16
|
+
classifiers = [
|
|
17
|
+
"Programming Language :: Python :: 3",
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
[project.urls]
|
|
21
|
+
Homepage = "https://github.com/cwilharm/streamlit-pokercards"
|
|
22
|
+
Issues = "https://github.com/cwilharm/streamlit-pokercards/issues"
|
|
23
|
+
|
|
24
|
+
[tool.setuptools]
|
|
25
|
+
packages = ["streamlit_pokercards"]
|
|
26
|
+
include-package-data = false
|
|
27
|
+
|
|
28
|
+
[tool.setuptools.package-data]
|
|
29
|
+
# Ship only the built frontend, not sources or node_modules.
|
|
30
|
+
streamlit_pokercards = ["frontend/build/**/*"]
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"""Playing-card component for Streamlit with optional flip animation."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import os
|
|
6
|
+
import re
|
|
7
|
+
from pathlib import Path
|
|
8
|
+
from typing import Iterable
|
|
9
|
+
|
|
10
|
+
import streamlit as st
|
|
11
|
+
import streamlit.components.v1 as components
|
|
12
|
+
|
|
13
|
+
__all__ = ["pokercards"]
|
|
14
|
+
__version__ = "0.1.0"
|
|
15
|
+
|
|
16
|
+
# During frontend development, point Streamlit at the Vite dev server:
|
|
17
|
+
# STREAMLIT_POKERCARDS_DEV_URL=http://localhost:3001 streamlit run example.py
|
|
18
|
+
# Released packages ship the pre-built frontend in ``frontend/build``.
|
|
19
|
+
_DEV_URL = os.environ.get("STREAMLIT_POKERCARDS_DEV_URL")
|
|
20
|
+
_RELEASE = not _DEV_URL
|
|
21
|
+
|
|
22
|
+
if _RELEASE:
|
|
23
|
+
_component_func = components.declare_component(
|
|
24
|
+
"pokercards",
|
|
25
|
+
path=str(Path(__file__).parent / "frontend" / "build"),
|
|
26
|
+
)
|
|
27
|
+
else:
|
|
28
|
+
_component_func = components.declare_component("pokercards", url=_DEV_URL)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
_SUITS = {"s": "spades", "h": "hearts", "d": "diamonds", "c": "clubs"}
|
|
32
|
+
_RANKS = {
|
|
33
|
+
**{str(n): f"{n:02d}" for n in range(2, 11)},
|
|
34
|
+
"j": "J",
|
|
35
|
+
"q": "Q",
|
|
36
|
+
"k": "K",
|
|
37
|
+
"a": "A",
|
|
38
|
+
}
|
|
39
|
+
_SPECIAL = {"jr": "joker_red", "jb": "joker_black", "back": "back"}
|
|
40
|
+
_CODE_RE = re.compile(r"^([shdc])(10|[2-9]|[jqka])$")
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def _resolve(code: str) -> str:
|
|
44
|
+
"""Map a card code like ``"s10"`` or ``"hq"`` to its image name."""
|
|
45
|
+
if not isinstance(code, str):
|
|
46
|
+
raise TypeError(f"Card codes must be strings, got {type(code).__name__}.")
|
|
47
|
+
c = code.strip().lower()
|
|
48
|
+
if c in _SPECIAL:
|
|
49
|
+
return _SPECIAL[c]
|
|
50
|
+
m = _CODE_RE.match(c)
|
|
51
|
+
if not m:
|
|
52
|
+
raise ValueError(
|
|
53
|
+
f"Invalid card code {code!r}. Use suit + rank, e.g. 's10', 'hq', "
|
|
54
|
+
"'da', 'c7' (suits: s h d c; ranks: 2-10 j q k a), "
|
|
55
|
+
"or 'jr' / 'jb' (jokers), 'back' (always face-down)."
|
|
56
|
+
)
|
|
57
|
+
suit, rank = m.groups()
|
|
58
|
+
return f"{_SUITS[suit]}_{_RANKS[rank]}"
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
def pokercards(
|
|
62
|
+
cards: str | Iterable[str],
|
|
63
|
+
*,
|
|
64
|
+
face_up: bool = True,
|
|
65
|
+
animated: bool = False,
|
|
66
|
+
card_width: int = 84,
|
|
67
|
+
gap: int = 8,
|
|
68
|
+
flip_duration: float = 0.6,
|
|
69
|
+
flip_delay: float = 0.25,
|
|
70
|
+
clickable: bool = True,
|
|
71
|
+
key: str | None = None,
|
|
72
|
+
) -> str | None:
|
|
73
|
+
"""Display one or more playing cards.
|
|
74
|
+
|
|
75
|
+
Parameters
|
|
76
|
+
----------
|
|
77
|
+
cards : str or iterable of str
|
|
78
|
+
Card code(s). Suit letter + rank: ``"s10"`` (10 of spades),
|
|
79
|
+
``"hq"`` (queen of hearts), ``"da"``, ``"c7"``. Suits: ``s`` spades,
|
|
80
|
+
``h`` hearts, ``d`` diamonds, ``c`` clubs. Ranks: ``2``-``10``,
|
|
81
|
+
``j``, ``q``, ``k``, ``a``. Specials: ``"jr"`` / ``"jb"`` (red /
|
|
82
|
+
black joker), ``"back"`` (card that always stays face-down).
|
|
83
|
+
Case-insensitive.
|
|
84
|
+
face_up : bool
|
|
85
|
+
Show the card faces (``True``) or backs (``False``). Toggle it to
|
|
86
|
+
flip the cards.
|
|
87
|
+
animated : bool
|
|
88
|
+
Animate flips. Cards flip one after another. Without animation,
|
|
89
|
+
changes appear instantly.
|
|
90
|
+
card_width : int
|
|
91
|
+
Card width in pixels. Multiples of 42 keep the pixel art crisp
|
|
92
|
+
(42, 84, 126, ...).
|
|
93
|
+
gap : int
|
|
94
|
+
Space between cards in pixels.
|
|
95
|
+
flip_duration : float
|
|
96
|
+
Seconds per flip.
|
|
97
|
+
flip_delay : float
|
|
98
|
+
Seconds between the start of consecutive card flips.
|
|
99
|
+
clickable : bool
|
|
100
|
+
Let users click cards (or focus them with Tab and press Enter).
|
|
101
|
+
key : str or None
|
|
102
|
+
Unique key for this component. Strongly recommended when the
|
|
103
|
+
arguments change between reruns: with a stable key the component
|
|
104
|
+
stays mounted, so only changed cards flip.
|
|
105
|
+
|
|
106
|
+
Returns
|
|
107
|
+
-------
|
|
108
|
+
str or None
|
|
109
|
+
Code of the clicked card (lowercase, e.g. ``"hq"``) on the rerun
|
|
110
|
+
triggered by the click, otherwise ``None`` -- like ``st.button``.
|
|
111
|
+
|
|
112
|
+
Examples
|
|
113
|
+
--------
|
|
114
|
+
>>> from streamlit_pokercards import pokercards
|
|
115
|
+
>>> clicked = pokercards(["s10", "hq"], animated=True, key="hand")
|
|
116
|
+
>>> if clicked:
|
|
117
|
+
... st.write(f"You clicked {clicked}")
|
|
118
|
+
"""
|
|
119
|
+
if isinstance(cards, str):
|
|
120
|
+
cards = [cards]
|
|
121
|
+
codes = [c.strip().lower() if isinstance(c, str) else c for c in cards]
|
|
122
|
+
images = [_resolve(c) for c in codes]
|
|
123
|
+
|
|
124
|
+
event = _component_func(
|
|
125
|
+
cards=images,
|
|
126
|
+
face_up=bool(face_up),
|
|
127
|
+
animated=bool(animated),
|
|
128
|
+
card_width=int(card_width),
|
|
129
|
+
gap=int(gap),
|
|
130
|
+
flip_duration=float(flip_duration),
|
|
131
|
+
flip_delay=float(flip_delay),
|
|
132
|
+
clickable=bool(clickable),
|
|
133
|
+
key=key,
|
|
134
|
+
default=None,
|
|
135
|
+
)
|
|
136
|
+
return _consume_click(event, codes)
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
def _consume_click(event: object, codes: list[str]) -> str | None:
|
|
140
|
+
"""Return the clicked card once; later reruns return None.
|
|
141
|
+
|
|
142
|
+
The frontend keeps its last value across reruns, so each click carries a
|
|
143
|
+
unique id and we remember which ids were already reported.
|
|
144
|
+
"""
|
|
145
|
+
if not isinstance(event, dict):
|
|
146
|
+
return None
|
|
147
|
+
seen: set = st.session_state.setdefault("_pokercards_seen_clicks", set())
|
|
148
|
+
click_id = event.get("id")
|
|
149
|
+
if click_id in seen:
|
|
150
|
+
return None
|
|
151
|
+
seen.add(click_id)
|
|
152
|
+
index = event.get("index")
|
|
153
|
+
if isinstance(index, int) and 0 <= index < len(codes):
|
|
154
|
+
return codes[index]
|
|
155
|
+
return None
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
html,body{margin:0;background:transparent;overflow:hidden}#root{--card-width: 84px;--gap: 8px;--flip-duration: .6s;display:flex;flex-wrap:wrap;gap:var(--gap);padding:8px 4px}.card{width:var(--card-width);aspect-ratio:42 / 60;perspective:calc(var(--card-width) * 8)}.inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform var(--flip-duration) ease-in-out}.inner.up{transform:rotateY(180deg)}.inner.no-anim{transition:none}.face{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;image-rendering:pixelated;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.front{transform:rotateY(180deg)}.clickable .card{cursor:pointer;border-radius:4px;transition:translate .12s ease-out}.clickable .card:hover{translate:0 -4px}.clickable .card:focus-visible{outline:2px solid #ff4b4b;outline-offset:2px}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))i(r);new MutationObserver(r=>{for(const s of r)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function e(r){const s={};return r.integrity&&(s.integrity=r.integrity),r.referrerPolicy&&(s.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?s.credentials="include":r.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function i(r){if(r.ep)return;r.ep=!0;const s=e(r);fetch(r.href,s)}})();const Wo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABJklEQVR42u2awQ2DMAxFP1E26BIdoUtwZgOG6KmnDtENeu4SjMASzEBPSFEUGjst4FSfGyCb5/gTkO0GANqun2H4eD0fjW+7fr7e7ricTyYhh3ECgNkBMAsZsvkEvTlIAHCo5PC5SOLVXu7F50KtiexTmfUSx8M4JR8wjJNKLotNDJy6LgbNRVmi59BGa+9zQt7jBQszpgbdewfIpd6VRrjVdrS2QNVsT04b2VFarXtFq9LoUalXa9TCj8j/aJSgBCUoQQlKUIISlKAEJShBCUpQghKUoDDQGFNX844qO7LizIozuyIba9REi1Gyy3xsNuylVUmn2mmchdAlAcT2Gh9e6vQXgwVrfX+JH6/9hH7bty+1r3OmxPJYkbM4RpSSRgPUMfL2Bl/5s7zSI3v5AAAAAElFTkSuQmCC",Jo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABJ0lEQVR42u2awRGCMBBFP5l0YBOWYBNwhQqgB0+e6EEr0Ks2YQk2YQ14XZFg0GTyM2xuYRjmzcvuhoUUAFDW7QDicbucClvW7bA/9NhtN5SQ98cTAAYDgBZSstkJejrID1Amu2Np1nVj1XRv8+v5mBTc+EC6riUHlRZTm5xdegmX2qSXUQlJGaNskN7JVDUddzIxja/JxDKyMRocNFY85x2jv5qU8T2eq9GlI5bJKEZlEoVOKBvyYTHr73rrqIIqqIIqqIIqqIIqqIIqaKo3/JhfqU2sViR0W6J9vfb1q8r6mL39eo3+U3fnVkW3UN94HttzxXhyo77/s0wOkDQxKjcLV4JZBlCfj76GwaRPMlmWZV9c8NkOwEyCMh8rMswWJVsB5HHk7QUQJXTv9yMQuAAAAABJRU5ErkJggg==",Go="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABL0lEQVR42u2asQ3CMBREL9bfgCUYgSVCGyaAHaio2AEmgBaWYASWYIZQIZngGAts/Yv83QUQejr/u4PEDQC03boH8bqej4203brf7vZYzGeUkLf7AwB6B4AW0meTAD0d5Acok7pD0WTsg8vV5u36cjqogrsUyLHX1EF9FbWVjG69D/dSknLrGdfojA6V1J5Rib2pDfdV0dA8as+oxBxPP6OTMdM/yzdilYpKTiVDcZZr1utTtJSSRRT1TZTbUJLzy0pmb705aqAGal1vXW9db11vXW+Bb6AGquX6knepXal4yh1V1vXW9VW5vmTf16toqex1TJCx37EUW5/yhNBpAw4jjXLrJ+P6UO2OzagwqJXyR5BiRlPiSRgc/1Pgsx2ACYIyHytyzCr6bA0wjSNvT3ngiwSiFebgAAAAAElFTkSuQmCC",Ho="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABFklEQVR42u2ayw3CMBBEx5Y7oAlKoInkmlSQ9MCJEz1ABXCFJiiBJqghnJAikw9ZJ3hjjW9WsvLT7MdeywYAsqJqoHjcr2fjsqJq9ocjdtuNSsjH8wUAjQWgFrLN5jro1UF+gWpS1xfNdv2UlzXysu6dxxgWKxmrAXVDH2O7Ox1Fb5eTOmWZTH9Npr5QoKJzg0p3qpAdLq0Y9cvUJ2b9+dx26SsqVSRESbGi/vFvaTuRoiE1NbQWcwslKEEJSlCCEpSgBCUoQZc44fttxK8nd6mdWNH2AlMWk9qxr2dfn2zWx+rtWfDnvi+loiqSaYkQGEs6un5q2RorXVQ0qWTy3T3kfjf2lkOlopqfFVnNKrbZDLCOJ29vu3aAB5/xyegAAAAASUVORK5CYII=",Zo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABQElEQVR42u2azw2CMBSHfzTdwCUcwSXgChPADp48uYNOoFddwhFcwhnwZNJgIe0r0NfyuBF44cvH+9MmLQCgrNsejK/n/Vrosm774+mMw37HEvL1/gBArwCwhTTZtIWeHeQfKCe7Q2na9lLVdNbgx+0SDVwhkUtPPYxp0AvUTIHY0M6/fixvoxod2osN6V31Sfz62DmquVd7cn2UBFo1HSmPqXH5TKaxbvDL4eH93HH5G6UaCTFJNmoWg09hUONIRkN6bGhvzruPCqiApgwaMs+3N5mWnudidO55vprR0Hm+itGl91rS8AVUQGNV/bDtuFY6NY5s1PyAz8eocbKvl3191qunGHv77a1H51gaTplX3CDZGnXNXRagLuNVcTfJxqgJO5WzOpVikj66eI5yOwBjBeV8rEhxtmiyFUAaR96+qeWcAXNdWv8AAAAASUVORK5CYII=",Xo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABNUlEQVR42u2ayxGCMBCGfzLbgU1Ygk3AFSqAHjx5sgetQK/ahCXYhDXgNSKPPJjJH2Zzy0CGb77N7jKQAgDKuu1BPJ73ayFl3fbH0xmH/Y4S8vX+AEBvANBC2mwyQk8H+QfKZHcoTaZurJruZ/64XZKCGxdIhiFzF1NbdAa1zVKGnnE7mKXQs4RfmC0uGh2zmNqs5JDxXsmUJWjVdEH7N3RdVkbF14i9f4fztddt32iokRiTwUbtZPBJjNB1QUZj6mtsXd52HVVQBdVer71ee732eu31WvAVVEFT1NGYL9GxX7BNTJnxeVjoOu312us3m/Wp+v22ja45XOurYYKce1elCL3LbyJhAHV54zepTWaTTDbsnFnJIeyUdXRqOwgr2CIo2wGYUVDmY0WG2aLNVgB5HHn7At9Rs/2+G4r0AAAAAElFTkSuQmCC",$o="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABOUlEQVR42u2awRGCMBBFP5l0YBOWYBNwhQqgB0+e7EEr0Ks2YQk2YQ14ciaDYRKWQDZhuTHDDm9+9u8nTAoAKOu2B+Preb8Wuqzb/ng647DfsYR8vT8A0CsAbCFNNm2hZwf5B8pJ3aFo2vZQ1XTW4sftEg1cIZFL+yg3pjArRTlAOkFNyJj96d2jsSGTMlParue05NtY+qrpSGOLWpdPj47N1V/vDu9D1+WvKFWROUqSFTXNMMUY1DqSopR+DDWT8+zRpZ0tioZ29mqKznV2cEWpzl51jkrWS9ZL1q+U9Uvtv2S7LKACGivrh6PF183UOrKi5gumvIxaJ1kvWZ/1nilG3svAD/3fVBTNDtT3a19xgXRNBBZL7zO2NBfXu8C39zdv6aTSrrMcLBXlfKxIcVbRZCuANI68fQEG5bn5gMYEjwAAAABJRU5ErkJggg==",ta="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABXElEQVR42u2azRHCIBCFNwwd2IQl2ES8JhXEHjx5sgetQK/ahCXYhDXEkw7GhOBC4AWXmz/MvPnYfS8BCiKismpaAh7X87HQZdW0292eVssFpMjb/UFE1CoighVpatM96uFEfglFotuFpof+uK43H58vp0NS4cpF5NB3yYWaFFOTtAp9iVvXmzdJyKVHHNYaNZc+dY1q24+pxTnXKJI9aVvHw9fobJppbJi2FWPerIjqX4l0A8Glnrnz8ifKJeJDkk3UbIZfGoM7j0WUU4+hfDnPGp26s4Vo6M6ORtS3s4MT5XZ2VB+VrJesl6yPkPW2/SqorA8pTLJesj57omM70UMkfXewVazO9nUEyXrJ+ix9lOuRPt76f8kU4oXQRl0hibQ9q0IsvcsJoUot0PWEMO/DhiketsdOCDUCLZeXPYgadbEnjdDxLMNHuwDTKxT5WpFCpmhqK4jmceXtCc1G6pdyoc5RAAAAAElFTkSuQmCC",ea="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABUklEQVR42u2awRGCMBBFl8x2YBOWYBNwhQqgB0+e7EEr0Ks2YQk2YQ14jZhMkk2c/GC4wZDxzdvdjzBpiIjafpwJ+Lhfzw23/TjvD0fabTeQkI/ni4hoVkQEC6mzsYEeDvILFMnuUhrbbuyG6eP8djllBVc+kLZr2UF1i7lNOkuPYNFpFMWil1EdFsEsl1B25zAhtQOjgomNFgnaDZOoh6XrijLKoUb0/l2ep163fqNSIzEmxUb1YQgZDOk6kdGYfI3N5ZqjNUdrjtYcjcxD28D8TY5yqh5KMTBJQaVfUGK/vIhKb7LlMmlblyVHlwPjui8EOFmP/vqFcL05WsSTKWeWrtdorhxVMeUL+THpuvp/tOZozdGao5kO33xVSJDQRn17FwJUNwtZ+pB2UCild5WfkS3CGDVZtJnlEibeCIq2AcYIirytSCFb1NkaojK2vL0BudjwyugvhToAAAAASUVORK5CYII=",na="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABXUlEQVR42u1ayxWCMBAc8tKBTViCTcAVKoAePHmyB61Ar9qEJdiENeCJ91D5JBtgl7i5idnHvGFm2JAkAJDmZQ3B4349JzbNy3p/OGK33YgE+Xi+AKA2AMSCbGOzHejFgfwBKondb9Js16SsqAAAt8vp43czmutLDjM24Rtk3zV2oG0WOZj0Bso9FOjUw7pO5DCQF6NdBuIwlXUBx+n2/zBTVlQkzVLr4nT9UA8wpmFqXfyMujDS9V8Ik2RG22bwMQa1jsToEBtjOgzN4jg1GqrDRTU6pw4Xy1GqfjVHfRnRHKXk6Fx18eco9atJ6NcWE/IIfW5GrdN+dBU52qdDlhydU4eTd08undFQh6U5OoUONUepeUjVr+ao+H50VatQjp40bkanXFa7athwg3RdQ7E9et+dQN0Qg+7cCTCVKEapO4GWy/G+by47dpZDpEYlHysykllsY0uAdRx5ewPDVgQkewB8NgAAAABJRU5ErkJggg==",ia="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABAklEQVR42u2awRHCIBREF4YObMISbCJeYwWxB0+e0oNWoFdtwhJswhrwiggxcUB+cLkRMpk3+5fM35mvAKBpOwvB63o+KtO0nd3te6yWC5GQt/sDAKwGIBbSZTMBenGQb6CS1PVFM7EX15vty/5yOhQF12MgY8+Kg7oqllZyFKikZYYOS5d7lorSoz/xqK+iBFXr8ChBCUpQghKUoAQlaCgV5EgGdWSmqUq6vau/p6JTVy4lsyjqXqLUF8qk/FjObMUfPkEJSlCCEpSgBCWon6+G8tb/dfipGm56NFUy+JQO6NGqPBoqd8wCRoI/vyq9tAGYIKjksSItWUWXTQHzGHl7As3nUhvJgt+mAAAAAElFTkSuQmCC",ra="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABo0lEQVR42u2awXWDMAyGhZ82yBIZIUsk12SCZIeeesoOdAJyJUswAkswAz3R5xKiypYlDMU3wNg/n5H9G1EAABzP1x4yLs/HV4HH87X/+LzDYb/LUmTTdgAAvQOAbEX62nBCfXYiX4TmRHcMDanKp8vt13FdlSqihn6o9h0spJBEhycck9UiSZFdB1HtwiFJEj1dbmrDTQUs1WdQ1GtS/as47s1aU5P4HZ1bWHQwaS2v3JUQpY1yH0Byb9Q8OjTetF1QR379mNFxWkOVug2UuprY+0PFLmYJdZY0JW2tk+gmdE1CMdVc2LQd+5wZ0aFz37eGnjMbeq7h5dYz24qMRaQ23S61M6+rkrxmKvRdQNRV+fM+vhNlGkwxhKQ7BpSs1Yf97kWAfzy+JvEKmDqIsiNqvQlES6u2mZJN6CZU4fv+anehGEsidmoy86Mp5s6YNqKJhpL1Sap/0pHQlI4EzhHxi8uKhGQHXU4iKduIc+dBuRlCx/GZVp6T2hiiNEe5mRIOUWuS/y9fP3cedFJobj/ATArN+bcilzNFX1sBsIxf3r4BC8PdRG2tM74AAAAASUVORK5CYII=",sa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABxElEQVR42u1ay5GDMAwVGnVAE5RAE+EaKgg97GlP20O2guw1aSIlpInUwJ6Y8RLPIkvyB4JncgjY8uNZlp8QFQDA4XgaoeB2+/mu6HA8jR+fX9A2dZEg748nAMCIAFAsSBcbedAXB/IFaEnszklDX6euH6Drh8VrVo1jG7mGcjcKAXm9nM2ZdO3O/7MZjQnSnNGYjcMki1F3YMyNxJmDOE89Gej6wdwFuPbQ0lhyH/UBW81minW8ck9C0hrlPoBmLNtHfcbvj2fQRG5/yepgrKWytkFaVSMdHwoWYSUNU7KpsbVNRnegMWWeu2uX/C2kbxRGJ1U1AWmb+s/PvaeViWipJ/9LDLP76KSqfAF8umahvFDrny6DPrU+Z1h6BKNmyX2pyvVyfsmF5pnCHp6WcinOxtHmWyQ9p9umFk0sjaNkGZpiJomUItXN6qOp36Xu6mkHuimglu/3N5uFkpQJaXhKpp4s4qfEhpjRUGZdJqO/0tGwqV0JyrHjVxVHQ6uD2cMTVyri0hPHqoGGloaQYyiW7gwBS9oa5VuIkpBaK2lrlClAFrHruSRQruQttDpIuZM20RFa8mdFWDKLLrYKYB2fvP0C/DvqwGhfmSoAAAAASUVORK5CYII=",oa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABs0lEQVR42u1awXWDMAwVetogS2SELJFe0wnSHXrqKTukE6TXdAlGYAlmoCf6HAKOkGRb8OAGxtLnW5a/bCoAgOPp3IHj6/fnu6Lj6dx9fl3gsN+5BFk3LQBAhwDgFmSIjUbQuwP5BNQTu0PSaOrFt/ePh/v77ZoMVO8r5gM5IKee5bwo1th/YSqQQyZjzCIs5KKSzjlMshlNHZuh/ZgvKglyTjZBTWcXMeoNLElXihTLpNmsHzPK/QBNX1Ee7Y3XTTvLUfi+ZHQw1VBZ2yCtqpH2nwt2MUso5mRTY2udjG5Ac8u84Uy2jGmyAFU37f99qC0P+91DmwY8WmjJIchXbUVilAPAQteStUpPJbwx11qt7YsaFu+365PAjj3TMEyaWoe7UcGpMpMA7VOOxLE0PVHqGW9Vh1GOUrfoypR7L3VTTxvQVQG13N9fbRVKUiak6SmbKLHInxIbYkbnMhsymXxLR8OmdiSoxIxf3KnImPqaEjru0tOUdHRxFhqrGF4yGgLLAVIUo3POKDdRwmE0N5Oc2gs9HNpy4pVKF29cH1S6aBPFqOffitAziyG2CmAZv7z9AXi717vhDYgXAAAAAElFTkSuQmCC",aa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABI0lEQVR42u3aMQ6CMBgF4EfTydVLuLB7CcLIDTiEk5OH8AaOxku4u3gJV1acTCoWrElrH+F1gzh8ef37S6EFAFRN24N4XE7HwlZN2+/2B2w3a0rk9f4AgN4AoEW6NuvR0yE/oEzpDkOzYz/syvrtenU7Z4WbEOTYvexQN8XcSU5OvYvLnWRQoi6SskbZkMGLqStr7sXENL4uJpYxm0SjQ1PVs4mNTNV/TQpkCuzyatTXKWJ2j6iJurDYLc7GnqJUPXi5fVRQQQUVVFBBBRVUUEG1r9e+XjWqfb329cj6xvlfY6wr+GZFf6Gh9TxMb6zGsyca+j3LzAFJU6Mv5NQDjWWAhjwTGIYkQxaTZZn2nxs+2wEYL5T5WJFhTtG1FcA8jrw9ATpVcBm7HrL+AAAAAElFTkSuQmCC",ca="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABKklEQVR42u2aPQ7CMAyFXyNPrFyChZ1LVIy9QQ/BxMQhuAEj4hLsLFyClbVMSKEkIYKEvKj21p/h0/OzXdVpAKDt+gHEcTrsG2m7fthsd1gt5pSQ5+sNAAYDgBbSZhMHPR3kGyiTumPRxPfifbl+uZ5djkXBTQyk715xUFvF0koGU2/DPZWkTD1jeD06VrK0RyX0sDTcR0VdfiztUQlVPL1HqymmX8IuRFpQGzA1rMkBmQN2eh7N3dKSKmqDpW5vkjpFufrvdPuogiqoznqd9epRnfU667XhK6iC6qzXWa8e1Vmvsx4U//D/EbEbQsMEGWppFKmP2RCa0oDj7SBl6qupetd20OdRYVAr5puAwqMx7UkYKv6rhs92AMYJynysyDCraLM1QB1H3h45wYUdi8q4xQAAAABJRU5ErkJggg==",la="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABDklEQVR42u2avQ2DMBCFny1XabNEGvosgSjZgCFSpWKIbJAyyhLp02SJtLSkRcT8+ED4sJ47BKf79M73rBM2AJCXVQvF63m/GZeXVXu51jifjiohX58vALQWgFrILpvz0KuD/APVpG5fNOv7qMkKNFkx+BxjWexk7QbUjb2MXe50FD28H+qUZTNt2kxDW4GKrg0qPamWnHBWkkziBtI4EagvwZyk0rj096iv++c4gjRukaLdBCHJpHFBPrqWry7xYx6hBCUoQQlKUIISlKAEJSjnes71nOs513OuT9vwQ3yViiLGz4YttsBU07H0obY1ZV1UNKlm6pd7rPxu6i6HSkU1XyuymlXsshlgH1fefjAbeMOdMPG4AAAAAElFTkSuQmCC",ua="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABPklEQVR42u2aMQ7CMAxFf6NMrFyCpTuXqDr2BhyCiYlDcANGxCXYWbgEa9eyRsVUiRMSp3LW1vLTz49dq2kAoBsOEwSv+/XS2G44TMfTGfvdViTk4/UGgMkAEAvpslmCXhzkF6gkdeeiWeqlse3J4M3zVgzcoJJllx6WVDAI1LVAaWjvrf/l26KKztUrDRl86qvY+tIetdJPe3V1lAU6tj3Lx9w4FqibKCQpN44FSiXwScqNW79HqWrgUyG4cVGKuglCknHjvD5KUhf/mPq87jqqoApaM2hMP88GGtvPs4Cm6Ofq0dT9PJuisf08ea8vMQRqwVdQBdW5Xud6net1rte5HuJ/3+RY1OmnlDfSIMUq6utdEaBzZcVtfUgVsJK2fcmztpbDpHX07x6VdgGGBJV8rchIVtFla4A6rrx9AGW+kn0vVOHZAAAAAElFTkSuQmCC",da="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABLUlEQVR42u2asQ3CMBBFf6yraFmCJj1LRCmzAUNQUTEEG1AilqCnYQnatKE14CT2EZHv6NxFiXVP/+z/pdgFAFTNrgPxuJ5PhVTNrtsfjthu1pSQt8cTADoHgBbSZ5MAPR3kFyiTup+iSd+HbVm/Pa/ul1nBXQwkw5Chl3OrGA3qK0vZesbl4MZaz9J+YVZxVNGQinMrKzns+KTNlCVoW9aq9audpwL1C6UU1c5TgYYKxBTVzlv+GtXa1hR2l6yoXyClmHZeVDJN7bG/ePOyfdRADdSy3rLest6y3rLeDN9ADdSy3rLest6y3rIe9P/w/zFiTwgdE+SQbVG0PuaYSBhAY8zfza1kNpvJhx1SVnJoO6WP9i0HYQUbBWW7ABMEZb5W5JhV9NkKII8rby+1kqkHbe3C5gAAAABJRU5ErkJggg==",ha="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABNklEQVR42u2aMRKCMBBFP5lUtl7Cht5LMJTcwENYWXkIb2DpeAl7Gy9hS4uVMxkNEpYAP7jU7Oybv7t/yZAMAIpq14D4uZ5PmS2qXbM/HLHdrCkhb48nADQGAC2ky2Y99HSQX6BM6n6KZn0v1XnpDV7dL7OBGyTy2BDl2hSmUpQBshPUhZyzP4N7dG7IpIYp7alnKvl/lL7OS5FtSeNEoG6iPkmlcSJQX4KQpNK45feozwVCnEEaN0hRN0GfZNK4IB+V+Ou792KoOFqPDp3sSUBjTLZ+lMSe7MkUHTrZ0adeOtm/4nTX667XXZ/qrh/rDKbHZQVVUD3X667XXa+7Xne9Gn4ff1VFFwcaavyGBbLLEShKH2JblmXqu8CX8eeOoeStoGwXYLygzNeKDLOKLlsGpHHl7QU8ba2NmD5YnQAAAABJRU5ErkJggg==",fa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABVUlEQVR42u2aPRKCMBCFl0wqWy9hQ+8lGEpuwCGsrDyEN7B0vIS9jZewpcVKJ/6FsAnsAzcdaCbfbHbfWybJiIiKqm4JeJwO+8wWVd1utjtar5aQkOfrjYioNUQEC+my2S/0cJAfoEjRfQ+a/fXHJi9fnheXoyi4CYH89U4c1I2idCS9oA+4Ji+fkYTcesThzVF366Vz1Pp+lIYLzlEkebK+iofP0ckUU9dwZWuMeSxQd6E+i3LnsUC51prCkueZo1zZSiF3vSPqLtBnMe68IGfiaKyviYnR5qQ5GlvZo4AO3WzP25kkGpmkEY2t7ORVz63smM8a9Xr1evV69Xr1evV69Xr1evV6rXr1egmvH2LepHLUSgOEnhAaJEifbEFsfcgJoZEGDD0h/L82L7a56TohtAjRCvF9iBwNkSeLUPEswUe7APMVFPlakUGOosuWEU3jytsdVYXZj6Sh27AAAAAASUVORK5CYII=",pa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABSklEQVR42u2aMRLCIBBFN8xWtl7CJr2XyKTMDTyElZWH8AaWjpewt/EStmljixEGsiHDJy5dMjC8+ex+loSKiKjpDgMBt/v1UnHTHYbj6Uz73RYS8vF6ExENhohgIW02dtDDQf6AIqk7Fo19Hfu6/XrePG9ZwU0MpO9ddlBbxdxKBpceQcWgoigqRilqwyIoyyUsezCZkMKBUcHEihYJ2tetKIal40Sg9kRTJpWOE4FKt9YUW/I6Y9TlBDHuIB03S1F7gimTScdFFSWpPXaON6uPqo+qj6qPzvRDX8JA+eg4Ycb9IHx06W8B/+ejoYSB8lFfwqQIC6bEbalDodajWo9qPar1qNaj6qPqo+v2Uc4NEPuH0CBBQisaG7sQoKGTAmQy+cLBoCx9aPkZWUUYRadsrVxCxjtB0S7AOEGRrxUZZBVttoqojCtvHxgS2++NjJrlAAAAAElFTkSuQmCC",ya="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABSElEQVR42u1aMRKCMBBcmFS2fsKG3k8wlPyAR1hZ+Qh/YOn4CXsbP2FLixUzERMhR+KdctfB5CY7y93eMkkGAGXddBAcl9MxM2XddLv9AdvNWiTI6/0BAF0OQCxIG5txoBcH8g2oJHaHpBnXoraoAACr2/nluY/+/TcjH1swBOl7xw7UZpGDyWCg3KFAY4eZupCjgYIYdTUQR1OZKeA4u30ZzdQWFalmqXkkoPZGIZtS80hAqeM0xhj+zxqdIlWuOowhccGM2hu4QPo+7ae8qJNpjA1fHc4FuFwdpdYvi45S65dFR11/AqqjsS2fOB1NkRddR1PmqR9VP6p+VP2o+lHVUfWj6kfVj6ofVT+aktG54ZO14YkhK6NUqWL79KEngXogBj25E9BUohiljlPD1fGhk8uM3eUQWaOSrxXlklm0sWXAb1x5ewKUWPEde+Ok2gAAAABJRU5ErkJggg==",Aa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABAklEQVR42u3avQ3CMBQE4LPlipYlaOhZIqLMBhmCiipDsAElYgl6GpagpTWtCU4I6Dl+MecuP8Wn81OkU2wAoKobD8XrfDwYV9WN3+1bbFZLlcjL7Q4A3gJQiwxtLqJXh3yDakq3G5rre/Gx3r5cL66nrHA7Btl3Lzs0TDF3kqOgmpYbeph7u2eZKGd0khntpqgh1TJmlFBCCSWUUEIJJTTWClI0AyuNTFVjbApkCuz/zWisBUg2A9FEQ5h0fXHSW5SqX/GDTyihhBJKKKGEEtrtV0N9q4z/TFMmyxmVbgWfmgFntKgZ/aZiOw3z+dPWazsAE4VqPlZkNacY2gwwjyNvT5EoUKW/12ZtAAAAAElFTkSuQmCC",ga="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABq0lEQVR42u2avXHDMAyFIRwqtV7CTXov4UvpDTxEqlQZIhuk1GUJ9Wq0hNq0SqUcY5s0CRAk7CM76STo0wN/HkR1AADH03kFw+3767Oj4+m8vr1/wGG/Mwk5zgsAwIoAYBbSZaMb9OYgr0AtqXspGoUu/nl5/XfcT4MK1PacUHysrZwrxqUw0aD9NKip6APzwSI8SKsKeitbvgyiLyWh/qIFG+pmlNqHSikbpWhKSko1krylCdB7K4XGMpkF1Bc09gUk97Kmpy34OC9JD3Kv52QHtVKVOwZJXQ33/lTY51xCc4781FjNlDRQ640g01w4zkv0uWKKbg93fWvquWKpjy3KYq9TS/09k53bdGNuVx6qXCUeF3OuKv00/PVHH1TRwcRRSFoxkGStPux3VwChqlLiFUjja4cpRUsXgVTSqjVT0kAbqML3/aetQomrBHdqKuZHc8ydnBhsRVOVdZVU/6QjUVOaCaox4quWIrncV9KuSC1I9oZYqW2cmB1C1C5zcwGjNCXNlFjcEIsZCyjdozQxj2oDpsSnmgUbW1HLvxWhZRVdtg7gMX55+wWw59jvG6Tt6wAAAABJRU5ErkJggg==",ma="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAAByUlEQVR42u1aO3KEMAwVGldpuQTN9lxiZ8u9wR4iVaocIjdImckl6NNwCdptScWMwxqwfraX4BkaMNLjSZYliwoA4Hy9jVDw+P78qNz5ehtf396hbeoiQXb9AAAwIgAUC9LH5gLoiwP5ALQkduekYWjS/XSB++myeU9rxMjGWEFWw5e9pgcpgl5+vsxAboHFXCCpA3MqD338EiEYK8jKT30da1ZDiiBLsFuuhVwTpR5O6jtZgcbsFBbbpArQJaGxHyB5lxWeJuFdP5AU+fM51kErU2nLcNKshvs+FWzWnckMqObKp8raJ6MHUItVHwoxW/5GmWvC6JRNTUDapv5z+c+kmRdqlxNLhWF2H52yqlAAn+5pZF4o9U+fwVBFOWeYuwWjxOSh7N/P1ufFocQF9h+elhhaYm1ugSRAu36AtqlZirlx1GmfdFgViU77AKE4H019lnpkTwfQXQHVPN/fbRXquExww1Oy7EkjfnJksBmlMuszaX6kI2FTagmXY8U/VRyldgezh6fYVBGlPUqNFDFGB0p7lKnAorRH+S+SEkqvFXP1magNYZT2KC0at+SAnxrgmj6Xu2hjbaEl/1aEJbPoY6sAnuOXt1+Ih+kvk4vdNgAAAABJRU5ErkJggg==",ba="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABsklEQVR42u2avZXCMAyAFT1VtCxBQ88SPEo2YIirrrohboMrebdEeposkZY2VOEZSGJbkm0R4i4/tr5ItiVZqQAA9sdTB4bb/99vRfvjqfv6/oHdZm0Ssm5aAIAOAcAspMtGA/TmIF9ALWn3WWk09uJ1e3i4Xl3OyaB6WVMyMARy7J4mpE8GTg2yupyzaDJEIQhv0oqCDllrzILIMU8q2KlpRiUhY3YU5HbM3UjylSZAfZ4ihZtUAR0bNPQDJH1Z21M/eN20UYLc9znWwVSm0h6DpFENt38s7DxdqObKjx1rCUo+FpQgoZfRnNOkAVU37f3azX92m/XDMwk8aqQSz5C+Z0XmaAiARlxLqZI07cAbc/lqaV+UaHEonZ66J9EwSfKc0Lw85CQkCWi/5XAEc7cnSr3itfIwSp3mFvdMuc9Sl+hpAZ0VqOb5/myzUOJqgrs9ZQtKNPZPzhhsjcZq1tVk8iMdiTallqASK754uqwRfbGrIhbgvaDX7cFMZQSlNcqi5ZucRdvPCEpiapRaC8hnMZTWKHMVbal08hYqg0onbSzPZPm3IrSsRZetAniPX95uFU3UMF+cM7wAAAAASUVORK5CYII=",_a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABOklEQVR42u3asQ3CMBAF0MvJFS1L0KRniShlNsgQVFQMwQaUiCXoaViCNm2okExwjCPd4W9x7kApnr7vHGxcERE1XT8S8LicjpVrun7c7Q+03awhkdf7g4hoZCKCRfo2F9DDIT+gSOlOQ3NzDw51+/Z5dTtnhXMKcu677FA/xdxJRqfex+VOMilRHwlZo2jI5GYa6ha7mZDG12ZCGcUkKgad1rF0XbMUMga2qV86Ys0n1ZhiiYZAkquH6NT7MOklzknXktYa/H/rqEENalCDGtSgBjWoQQ2KANU6p2JppNa5KmsgNbCshbSTEsn9vMb+3mnt56X392WfOP9qzDVaaDbsFZpa16m1nT3R1P+zuAQkTI2+kLEfNA4BmvKaZYQkU5rJoUz74gUf7QJMEIp8rYiRU/RtFVEZV96ejHR6i6T/j/EAAAAASUVORK5CYII=",va="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABRElEQVR42u2aPQ7CMAyF3cgTK5dgYecSFWNv0EMwMXEIbsCIuAQ7C5dgZS0TUihJiCpbfhXOlrbDp+efF9VpiIjarh8IeF1Ox4bbrh92+wNtVktIyOv9QUQ0BCKChYzZOEEPB/kFiqTuWDTOffhcbz/2i9vZFDzUQOaemYPGKlorWQx9DPdWEjL0iCubo2MlrXOUSy+t4X4qmspH6xzlUsXD5+hsimnKigswtYcALQFKwf5X6EuFJ1WUYopqtzTR0Mdg0u2NpXNJq//+Xx91UAd1r3evd693r3ev94bvoA6KACrt8SqgGh6vcnoixb+BQQvST0+SHq/h+azl8dKeP5vQszVA7YQwIEGWugRE6GsmhMEacDwdhAz9bKo+NR3M5SgjqFVjsxA5WtOeGKHiJzV8tAswSVDka0UBWcWYrSGax5W3FxFDlY8HFYAPAAAAAElFTkSuQmCC",wa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABMElEQVR42u2avRGDMAyFHz5XtFkiDX2W4CjZgCFSpcoQ2SAllyXS02SJtLSk5RL+LBsQ5LnjjNB3T5Z8Fo4AIM2LBorH436LbJoXzflyxel4UAn5fL0BoDEA1EK22WwHvTrIH1BN6n6LZrpeqpMMdZL1Pq8xDDYyNgNqhybXDvd+FI2rUp2yTKZFk6lvKVDRUKDSHSvETmdcIIcch7bbf+iHEmqOOS9Fuz48xZnUziv0bQcuzqR2TnU0VF31qcfcQglKUIISlKAEJShBCUrQuUClHWifzrWROJOcy6V24k4JBM1eqZ13p2SJuf/qlMRVOfmcLrXzOtd/f3iqI6kdC/6cdZWKYo2fDUssgbFkY+hdy95YyaKiu0omlx3Ljt3lUKmo5mtFRrOKbbYI2MaVtw/UWY2n3IPkPgAAAABJRU5ErkJggg==",Sa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABYElEQVR42u2aPRLCIBCFXxiqtF7CJr2XyKTMDTyElZWH8AaWGS9hn8ZL2KaNLSJm+FnCEqFzcMM3b5d9BqkAoO2PMxiP++1aybY/zqfzBYf9jiXk4/kCgFkAYAupskkDPTvIL1BO6uqiSdOXpqYzBtfjkAxcIJMhlyZTKugEqpZAamjr1P+q26SK6uqlhnTe9VmkPnWNSu67Pbs+6gQ6Nd1H/eqfqeOC25NpYeq47ad+aYPFmAtS1PRgm8V844JSry7gsphvnNWPEurmH9Kft9lHC2gBzRmUws+jg1L5eUk9tZ+voiiFn6+W+lA/J/f6FC+BpeEX0AKaEtTXx0P8X4T6euw475MSeJz8+caRH+TGmPuvk5J6HKx93TcuyOv1B9su5Bu3vf+Z1himDWVSXHCDZKuobc2yANWVZZf6aO0pNuxSzcpcNlPpo9FrlNsFGCMo52tFgrOKKlsF5HHl7Q2PX61hx8Zc2AAAAABJRU5ErkJggg==",Ia="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABU0lEQVR42u2aPRKCMBCFl8xWtl7Cht5LMJTcgENYWXkIb2DpeAl7Gy9hS4ttQH7CJkxecOmYsOSbt8nbTJKMiKio6paAn8ftmnFR1e3pfKHjYQ8J+Xx/iIhaQ0SwkDYbD9DDQf6AIqnbF43HPmzysvO+e92jghsXSISHpxpjq+gMaisLmXrE4WDmUo+SfkZWcVbRIRVjK8spzPhFkykp0CYvO+O2/x46ztuehjoOHbf91E9NrjXavBSV2lYIu1uceruDJZ1J45wqU2iP9fHmbfqogiqo1nqt9VrrtdZrrVfDV1AFRQCV1GqfOBGotFZL48SrJxLs+Enjgm/krtH2X6un/k606wppSZxXre//2LUjaVySqefYAK4nhAYJcsoJIFLvckzECKAufmpiK5nMZLJhp5TlFNIO6aNjw4FRwWZB0S7ADIIiXysyyCrabBlRGlfevmSWyevGg+feAAAAAElFTkSuQmCC",Ba="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABYUlEQVR42u2asRGDMAxFhc8VbZZIQ58lOEo2YIhUqTJENkjJZYn0NFkiLS2puCPEgJAMyETuOCP0TuJLNjgCAEjzogHB43G/RTbNi+Z8ucLpeBAJ+Xy9AQAaAwBiIbts1kEvDvIHVFJ0+0GzrpvqJHMax1W5GbiBQIbFRG4owqIiKgFyErQLueX7iX5Ht4YMSkxhq15Syved+jrJvipB/9q3HQl0zNGYU6rd/lM/Jqwl5lgRdT0Y44xqx0p918EcZ1Q7VB2dE6FWGO1c/5pbl72IyZeytdf7VvYqEfWh7NVS70s4bNVTlY2x016vvV57fWi9fultt26XFVRBtwSl7Ms5diRQaq/mrvoNFXKOU6ode/W0xtx/rZ7iqkT3bqodq9f3H4x1RLXTgs/5gDElLI3o7kCxtdRIgZyqBCJSjylXVorqp8D38edOQsoHQaUdgHGCSj5WZCRHscsWAYRx5O0DmKjUxdmfn1UAAAAASUVORK5CYII=",Oa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABjElEQVR42u1aO3KEMAwVHlVp9xJp6PcSDCU32EOkSpVD5AYpd3KJ9GlyibTbslUyDgGNsCX8+NCxrMdvnvTe02AqIqKmu/QEfL2/vVbcdJf+6fmFzo8nSJAfX99ERH0gIliQMTYeQQ8H8h9QJHaHpPHUH291++f+4fNaFHjQgJz6rTjQmMXSTIpAf8Dd6vaXScjSI15ij8alL92jLD0sDU7do0j2xJLi4Xt0NWKSejbu2+G99bokoNJG0qap67ZfeklcHs+yGE21LQu7m136eIM5m6WuUyXTHIaGw8vYMJPjzSZislL2/gzfW9mLMOo9yJiW3ko42apPVbZm3ZH1R9YfWb+2rJ9SuJWvmorJI+PNgXq/WAteII/pyTLjPTKfc0otAdJkviujqcrOdYSwhLItHCF4K9vKEbY9Pc1RtpUjcE7GazdKXbfK0nNpANoTwoAEUnICiNJrTghDaYDaE8J9TU+5Pao5IWQEtjRRCtGjGntiBMUnGT7aBzCjQJE/KwrILMbYKqJ1fPJ2B5BVBUjP7WnxAAAAAElFTkSuQmCC",Fa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABdElEQVR42u2aPRKCMBCFl0wqWy9hQ+8lHEpvwCGsrDyEN7B0vIS9jZewpcXOCUiSZZMMLxq6AMt+8zb7+EtFRLTbtz0Bb7fLudK7fdsfjifabtaQkPfni4ioV0QEC2my6Ql6OMgvUCR1x6Jp24ld3QzGq8d1UXDFgbTtWxzUVHFpJb2lR1DRqyiKiixFTVgEZXUOZfc2E9J00KhgYkWzAu3qZjB3x+PYcSJQVyJXUmnc75fe1VwpjgUpOnVhTjJpXFDpzQRzkknjWA8lsT02xJuLjxYfLT5afFToh76GgfBRV4N0dfM5v/go1xe5DSPxTzGorcy+hpH6p/jO5NrnarTQt1wVAmmD5X4TKHcmm2rcZpoTF+Sj4wtzE0nj/tdHU8dF9dFUcUl8NHZcUh+Ndaz4aPHR3Eqvlwbg/iFUSJDQinLnLAQo57UGrpls00GhlN5Xfo2sIoyicz716Bw6fhIUbQHMJCjysiKFrKLJVhHlseTtDWSMC+BbP2QCAAAAAElFTkSuQmCC",Ua="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABkUlEQVR42u1asZHCMBBcaxR9ShMkzmnCQ0gHFEFERBF08OEPTXz+yTfxKak/YsYYSUjnO+5spMy2brRz2l1ZJzUA0O32PQy3y+e58d1u3x+OJ2zWK5Mgv3//AKB3AMyCHGLzAfTmQD4AtZTdcdJ8qNO13QIAPn6+7p5v7fb+lc096zAGGXunDnSYRY1MFgPVbhUod/O5HTUEVJTRkIA0ROVzwGmqfdliurbbO66On7njSEBTA6UGpcYtf+pTgpL4NimjKatK8ZDD4oqnfjhA6DcwxsNQnMjKxOGrU/yYRUxcPHyJj1L5q+KjVP6KcVSKh9VHcwcz46OSce/po2Z/nCk+OCWOBJTqg9Q48spE2Z1ylIUcx3ZZ4pu4mKbwkH1lGhfMYut6bhy7j6b2+zEehqqAFD91XNMtXQp6Lx+l8lfFR0MAY2cA1UdnWykp8UNzPioRt+waPvf/QGz/H8u40waZq361qS89CawHYqgndwZEZSqj1PKO11J8aSXFP7vLYZKjlq8VOctZHGJrgHlcefsH+B0j2kHUByoAAAAASUVORK5CYII=",Ca="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABBUlEQVR42u3avQ3CMBQE4LPlipYlaOhZIqLMBhmCiipDsAElYgl6GpagpTWtMU5I0CN+MZcuP8Wn81OUU2wAoKobD8XH+Xgwrqobv9u32KyWKpGX2x0AvAWgFhnaXEKvDvkG1ZRuHJrrevCx3r6cL66nrHA7BNl1LTs0TDF3koOgmg7XdzP3cs8yUc7oJDMap6gh1TJmlFBCCSWUUEIJJTRsA2EjiM9VQPuAUtj/Wvq+D2upj26xRFMgyWYguvQhTLq+OOlZ+lW/4gufUEIJJZRQQgkldEzPKuM/05TJckalW8GnZsAZLWpGx1Rsp2E+v1p6bRtgklDN24qs5hRDmwHmseXtCRaLVqWRouYnAAAAAElFTkSuQmCC",Ta="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABtklEQVR42u1aMXaDMAwVeppYc4ks2XOJvIy5QQ7RqVMO0Rt05PUS7CxcgjUrnehzoTa2JcsOxZt5Rnx/yfaXRQUAcLndRyi4fX1+VHS53ce39wecj4ciQbb9AAAwIgAUC9LERn+gLw7kAmhJ7M5JI9fg5+n6q193jRiQyfZkc96fN8zBlknA83Rd9IOB1l0jyiKnZWHUNfmiXG8D5JoA2mLIFiupwK6FWNCq1w6DVUZD3aLRiDvT7EDXTooUx6QIUJtR3wlw3o3anibjbT8EfcgcH+MdTOUqaRvEVTWx74eCRXiRhppscmxtk9Ed6JaAEgjthW0/eD9TY3T6uKlbQ5+pud4nIQsZl8z1ayJbWnSjtDJ3Za4cjYuSp0rdNT/xaAOluphiGOJmDMQ5q8/HwwKAK7PkaAWSXkTFMaqdBJKmVNtFyQ50B5rgfn+zWSjFMhG7NanpUYm9M8ZGNKOhzJpMJr/S4bDJ9QTlWPFZUxEp9VVc+cYmEaMqd1qlHJ8KIUqkxBqAUcIt2c563wuFf6eefNYB+tQoQ2qW2St3KQCG2KScCVs0oyX/VoQls2hiqwBe45e3b9+K432bMgktAAAAAElFTkSuQmCC",Na="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAAB00lEQVR42u1aO3KEMAwVGldpuQTN9lxiZ8u9wR4iVaocIjdImckl6NNwCdptSeUZx7GNLckfGDyzzQLPjydZliw6AIDr/bFCw+P786NT1/tjfX17h3HomyQ5zQsAwIoA0CxJk5tysG+O5D+iLalri4aum56XGzwvt83/OMPG28LHWFDJESLomwtTQF9+vqq5AtYgGcLyXcNaCrkIhV4AY8Gk/dTG37IYpoDlIhvjVsj1qVJDSfhPNaIxO0WObVKEqA809gU4z5LCkwaf5iVpIvN+inUwl6mkMRQ3q6E+n0oWYScDS6rJwTqmoifRHKveFWK2/C3l3iyK6mxKExmH/s/PvMbNvFCy/gkVhtV9VGdVrgCu/5PIvJDrn6aCrmrSVpi6BSPH5K7s38zY7eKQ4wLHD08+hXyq2RYoQnSaFxiHnjQxNY4qydCUs0hUuU48mvHR0mepZ/Z0Ej0UUcnz/cNWoYqqBDU8FcueJOInBYOsaKqyppLZj3Q4anItoWqs+F3F0dTuYPXwFJsqIuXNQbh1E4OPKT3LmmQxxSQ5yLIWU4iQdCtcrHNXYhGRO3d2jzKlZ5mr7lKxACUIhuZQtYs20hba8mdF2LKKJrcOYB+fvP0C2kDzoZ4yLzcAAAAASUVORK5CYII=",Ea="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABv0lEQVR42u2aO3KDMBCGl52t0voSbtL7Ep6UvoEPkSpVDpEbpPT4EvRpuARtWlKRkWUD2oe0MoMqBGj59Ou5WhoAgOPpPEDF6fr91dDxdB7ePz7hsN9VCdl2PQDAgABQLWTIRg/oq4O8A61J3Vg0mnrx9/XtJv/yczEFGe2PduN8nDAFcuqeFnK8jvPJoKGK1kpKE3p8dK7yrKb3gp2rAHL6U07YpS5GXpDc2QQ1hUsm0tbUHXRppcixTJqAThlNrYCmrGh6Go23Xc/6UPi+pHUwV1NZ2yDtrkZanguL8CQJS6qpsbVORTfQHKOeM+1Y9mmygGq7/j8f+j6H/e7mmQYeLXyfGHLpmUsfTQGw2NeStVeZa+ONpdZqbVnUqPjInZ67p1GYNL5O6kHF0ilINtBxypF8WDo9Ue4Rb+WHUQlX13VlKn2Wuu2eNtBVgVqe76/WCyWpEtLpqdimxGL+lNgQK8pVNlQy+5GORk1tS5DHiHd3ly12X9WFb7hbx6TwTQ3REeTELD1DOMhpghLKskDngLxgqeYBxIrcxX66pZ/ECdwmR+5yOXKpdsnbaRP10Zp/K8KaVQzZGoDn+OXtD2XT3U77MqkPAAAAAElFTkSuQmCC",Ra="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABhklEQVR42u2awZXCIBCG//Cmg23CErYJvWoF2sOe9mQPbgXu1W3CEmzCGuIJXzYiAWYCEx5c4vMF8uXHGf5BOgBYb/c9FLe/35+O1tt9//V9xOfqQyXk9XYHgN4AUAs5ZCMHvTrIF1BN6o5FI9/Nm93h+flyPhUFN1hI84KWVrE+RdWDbnaHf4GkXlFNsCYkiDQEFS0h4icTfo7lNXQlJO6goS/A6ZuUnuzg19s96kHD+1Nmx8w1VdJjENfVpPaPha1zCZWM/NixmilpoNobQTAXjgOEuxqJgLqKPxeYVIFIHCUv59MTxF4tzNjL2u9t/1hliaOkSyGf2fb1mz2YQh4q4W1pLjhpYLYpCTUX3OWXINBylC0ioFPVarHf6CIVzbWn2kxJA60KVHJ/v9oqNNnmpaal1FkxJfJmyhjJisYqO1Ry9i0djprZ3FPpf/RIQ0SHFIBGE6TPMqrJo1NWkaCo+WCbKakWdKruqn83L1e0vwXVdgDGCar5WJHRrOKQrQOWceTtAW+qpxund50mAAAAAElFTkSuQmCC",Da="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABiElEQVR42u2aMXLCMBBFvzVb0eYSNPS5BEPJDTgEFVUOkRukZHIJehouQUvrVGKMUWRJu5bWGqkxw1jy8xe7+ivUAcB2f+ihuP3+fHe03R/64+kLn+sPlZCX2x0AegNALeSQjRz06iDfQDWpOxaNfDc/Nrvn59X1XBTcYCHNC1paxfoUVQ/62OxeAkm9oppgTUgQaQgqWkLETyb8HMtr6EpI3EFDX4DTNyk92cEvt3vUg4b3p8yOmWuqpMcgrqtJ7R8LW+cSKhn5sWM1U9JAtTeCYC4cBwh3NRIBdRV/LjCpApE4Sq6u5yeIvVqYsZe139v+scoSR0mXQj6z7es3ezCFPFTC29JccNLAbFMSai64yy9BoOUoW0RAp6rVYr/RRSqaa0+1mZIGWhWo5P5+tVVoss1LTUups2JK5M2UMZIVjVV2qOTsWzocNbO5p9L/6JGGiA4pAI0mSJ9lVJNHp6wiQVHzwTZTUi3oVN1V/25ermj/F1TbARgnqOZjRUazikO2DljGkbc/y7SkvbCyIPUAAAAASUVORK5CYII=",Ma="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABMUlEQVR42u2awQ3CMAxFf61swBKMwBJwbSdod+DEiR1gArjCEozAEsxQTpVCaSCgWPlR7Vurqnr68XdrJxUArOu2B3Fcz8fKreu23+72WC0XlJC3+wMAegFAC+mzuQl6Osg3UCZ1x6K50IObpnu5vpwOWcElBjJ0Lzuor2JuJT8uvQ+XW8koRX1Iyhxlg4w206bpuM3EFF/NxBLFKJocVCufJTWkVv0VDUgN2LJd/08MlWJQMXXlKCZHXcqXadbf+dZRAzVQAzVQAzVQAzVQAzXQXH/4mlNq0WpFUrclTkvN1N3o/Mw0pZzlKHNvP886mmICGFoV+4TG5vNYvVCOZ1c0dj9LSoCkyVF/CBwymGMAjRn6CoOSMWZyLMv+c8FnOwAzCcp8rEiYVfTZKqCMI29PX8R0BUp/qOcAAAAASUVORK5CYII=",Va="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABOklEQVR42u2ayw3CMBBEN9Z2QBOUQBPhGiqAHjhxogeoAK7QBCXQBDWEE5IxjrHAqx3L6xsfRU/j2RlI3BER9cN6JOB1PR877of1uN3taTGfQULe7g8iotERESykz8YRejjID1AkdUPReOqLy9Xm7fXldFAFdzmQU++pg/oqaiuZ3Hof7qUk5NYjrkmPhkpqe5RTH2rDfVU05kdtj3Jq4uE9Ws0w/bP8QYQF9QFLwzoJSAnYajzKpS4UFkPp1KjGo1zyYpLZ226OGqiBWtdb11vXW9db11vgG6iBak295F1qJxVPpaOKpdQs3VDtDZP0rcr2PCrd923mqGT2OiTI1O9YiK3PeULotAHDcoDc+mqmPvZ0cMqjjKBWzh9BCI/mxBMjTPxPgY92ACYKinysyCGr6LN1RHUceXsC5ZaITFsGV3cAAAAASUVORK5CYII=",La="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABKElEQVR42u2azRGCMBCFH5l0YBOWYBNwhQqwB0+e7EEr0Ks2YQk2YQ14coaJ/IQFzCbzcmNgZ795+5cwyQAgL+sGitfjdslsXtbN4XjCbrtRCfl8vQGgMQDUQrbZbAe9OsgfUE3quqKZro+Kao+i2vc+h1gGkaxoQO3Qy9DhTkfR+/WsTlkW01+LqS8VqOjSoNJJNWfCGYkzSTeQ2olAuxz4OJXapVv1bvV/1fDtBlK7KHPUTjWQ9tS5vZgjlKAEJShBCUpQghKUoARdY4fvHiN8d+5SO7GibQdTnEntRIq6qvieKqV26RdTlwI+qkjt0s/RkGd7Nvyl/5dS0eAjdK0UGCs6hn5q2xprXVQ0qWJywz0Ufjt2l0OlopqvFRnNKrbZMiCOK28fqft+N5k1wI4AAAAASUVORK5CYII=",xa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABU0lEQVR42u2azQ3CMAyF3cgbsAQjsER7bSdod+DEiR1gArjCEozAEsxQTkhRSCvH/bGTplcw/vT6/EykFAAAZd32oPh53q8FlnXbH09nOOx3KiFf7w8AQG8AQC2kzYYeenWQf6Ca1HVFQ9+XqqbzFj9uFzFwA5E8OPahpIJBoLYFpKHJr37It6KKuupJQwZPfRSvXtqjqH3ao8tRFmjVdCwfc+tYoHajkKbcOhaorwGlKbcuvV0/lAY/NajpwK2L0qMYWsDN2KnZnHaOZtAMGjPolH2+GujUrFwFdI59vr1dv/Q+T8KjOOePLXnWyoGfQTOo1NS7sUOddG4dW1G7QUgzbh1LUVcV6hbi1qU/TD4FKKpw69L3qOTZfnv/R+c8GfiUN9og1SpK9a4KUMp6NdqVVKOoDTvmWYxlmHKOLu5RbRdgvKCarxUZzSrabAVAHFfevrSBmGPOR5eJAAAAAElFTkSuQmCC",ja="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABS0lEQVR42u2awQ3CMAxF3cgbsAQjsER7bSdod+DEiR1gArjCEozAEsxQTpVCSdvEqZSfyrkhavnp2/mu0hRERGXd9gS8nvdrwWXd9sfTmQ77HSTk6/0hIuoNEcFC2mzsoIeD/ANFUncsGk89WDXdz+/H7ZIU3PhAIiye+zO1it6gtrKQpUdsB7NUepTyM7KKi4q6VEytLOew44M2U5agVdOJ+lcaJwK1E4UklcaJQF0JfJJK47LsUQ55eHCCQQ1fZ5DGZdmjHBog9ddYX962jyqoguqs11mvs15nvc56NXwFVdAUPhpzEh17gm1ibCYkmTROpOhYFd9JI43b/maSHkeucYy5zR5NOe+366NrL19/NUiQc++qEKX3+UzECKA+b/wmtZLZbCYbdk5ZzqHskD461Q6MCrYIinYBxgmKfK3IIKtosxVEeVx5+wIvAa6TQ1ZlrAAAAABJRU5ErkJggg==",ka="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABS0lEQVR42u2azQ3CMAyFX6NswBKMwBLttZ2g7MCJEzvABHCFJRiBJZihnJCikiqO2xLnp2ee/OnFz6ZVKgCo236A4Odxu1S6bvvhcDxht92IhHy+3gAwKABiIU02baEXB/kDKsndsWna9qOm21vF9+s5GLhCJI+mODflsChHJUA6QU3IkP1J7tHQkFGFKe7USzryPI6+6fasscXVsUDNQj5FuToWqK0ApShXl17qp6bA1w3qVODqouxR7StwuTHl2tyZvGiPznXtL6BLJDu/1K+d7CR6VM8B8k12FnO07Pqy67Pb9Wu9f5XX5QJaQEPt+vFooaaZq2M7ahbwKcbVsRwdu0LdNFxd+mGyOUBxhatLv0dD7vsy8Jf+blocTQ6U+m9fSYF0TQQRR08ZW1pK6l3g+X3NW3tTadddDpGOSr5WpCS7aLJVQBxX3j5MQLLBGlRDlgAAAABJRU5ErkJggg==",Qa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABdklEQVR42u2azRGCMBCFl8x2YBOWYBNwhQqgB0+e7EEr0Ks2YQk2YQ140olIfkgCeQRyU8jwzcvu2/xlRER5WbcE3O7Xc8Z5Wbf7w5F22w0k5OP5IiJqBRHBQsps3EMPB/kHiqRuVzRWvVhUzc/v2+UUFVzYQKr+iw4qqxhbSS3oB66omq+SkEOP2LQxKg997Bhl3cPYcNYximRPrMt4+BidTTKZmmxbU/RzApU/NOSjrv2cQF1La4iSPJsY5SEvd83f1hlc+80yRnloB5MaKtV8fTlojPqqNgno2JPtNLN+7MxOIkbZB2hoZi/CR9dav9b6RdV63X4VVK0PCTZaZeqqGbpCpb0KjbFpkW6MmnaiVYC+O9hiKtV81eYpMjuEI6SZ9a6ZHcIR0oxRX+vxsazlrUJDzRFUqgskSN1cFWLobU4IRWxA2xPC5U3zfDcyTCeEjKCWzWIPIkZt7IkRMt7J8NEuwPSCIl8rEsgqymwZ0TyuvL0BGkbkQ7Ohm1gAAAAASUVORK5CYII=",Pa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABaElEQVR42u2awRGCMBBFl8x2YBOWYBNwhQqgB0+e7EEr0Ks2YQk2YQ14YiYiTJJdmPww4QRMdnjz9+cHmBRERGXd9gR8PO/Xgsu67Y+nMx32O0jI1/tDRNQbIoKFtNl4gh4O8g8USd2xaDw3sGq6n+vH7RIV3PhAzt2LDmqrGFtJZ+sRVHQqiqKil6I2LIKynELbnZMJyQ6MCiZWNEnQqulEHpbWiUDtB4U8VFonApUurUssycl4lEMGD0kwqOGbDNK6JD3KoQXSfNXmcs7RnKM5R3OOKr02N2GgcnQMY4+FydG1/wWwFshXKe2fF6Np/fjcda2xAWvUHM/iOY+66lZpfawvVaMF8YGT1q3i0bXqVK2P8U66zbV+EzkK5VFpHi6Ro9v8Zso5mnM0hRxd+vDNV4MECa2or3chQG1lIVsfYgeD0npX+xlZRRhFQ5ZWTmHGT4KibYCZBEXeVmSQVbTZCqI0trx9Aeb87gzB5LhsAAAAAElFTkSuQmCC",Ka="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABeklEQVR42u1awRWCMAz99HUDl3AEl8CrTIA7ePLkDjqBXnUJR3AJZ8AT7yEWaNNgYm1u0ObxX/j5adoWAFBu6gaK7XY5Fbbc1M1uf8BquVAJ8v54AkBjAKgF2cVmHejVgfwAqim6/aBZ16R1tQUAXM/Ht+fW2vffNDM1oQ9y6J040G4UJSIZDFTaMlBus74TJRIoKKKuBJJIKusDTjLb/yOZ1tWWxFmqHwlo90MhH6X6kYBSyylHGU5PR12rKZcauMZ8/L7KUeoYe0THojHEw3Z+rBanydFYHmaOcvFwyi/raCjX1OnonLWeTUfn8ktfR6m7JrG7LSbmF4Z8jOrHoqO+WUz1S79nmmqd256o3xtxtNysHKWOzbZ6GlsZ+aywso766OH1fBzVSlU6qoajVB5mHeXeglSno2pqveSaNO2+PtaGNHVMDYw0SN8eSuzXh54E5gMx5JM7BUmlKqLUcmqlMj60ctmpuxwqOar5WpHRHMUutgL4jStvL9enB7qdUbotAAAAAElFTkSuQmCC",za="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABBElEQVR42u3awQ3CIBgF4AdhA5dwBJeo1zpB3cGTJ3fQCfSqSziCSzgDnprUFmpVkB983Gob8+XnpelLUABQ1Y2F4HU5HZSp6sZutjss5jORyOvtDgBWAxCL7NqMQy8OOYBKmm5/aMb34HK1fro+H/dJ4XoK0vdbcmh3iqknOQkqaZmxm6m3O8uJMqM/yWh/ihKmWkZGCSWUUEIJJZRQQl2tIEYz0KGRsWqMjoGMgS2jhb6z2hbQTjF0K8gmoybkn8XsVnzhE0oooYQSSiihhPb71Vjf+r8v/NB9ixn9thm8agfMaFEZdW23LwJGQj4/2nppB2CcUMnHirTkKXZtCsjjyNsD6f5QTa20E90AAAAASUVORK5CYII=",qa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABrklEQVR42u1awXWDMAwVetogS2SELJFckwmSHXrqqTvQCeiVLsEILMEM9ESfS4JrS5YtePgGseWfb9n6sqgAAM7X+wiG2/fXZ0Xn6318e/+A0/FgEmTXDwAAIwKAWZAuNnqB3hzIJ6CW2J2TRr7Ol9vjz3Pb1Cqgpnl89rE0cy4Zc2KCgbZNrcbiErAlsAgraVRy8mm12D56uT28/lLCRynWh7RY/a9h6GDNTSXy0dLA2JtJK7yGRkKSGg39A5KxrHN0Mt71Q9REbn/O6qDWUqW2QVJVwx0fC3Y1IRRzsimxtU1Gd6BbAkqpzsKuH4LfZWN0mtzVrbHvsi19qOAN7ZctFZmDSC26MbUy92WuEo2LKaNK29S//rgEKutm4jAkzRhIEqtPx8MTAPd5/ptEK5DGbYcpRnMngZRTqu2iZAe6A1W4399sFkpcJrhHUzY9muLs5NhgMxrLrMuk+pWOhE3pSlCJHb+6qkhMdRAtgfTJRipdB31Vb4pi1KfUNQEvzUUxqW/JSsm6RUnuglhISdOUj7LPUW2AMfapZMLGZtTyZ0VomUUXWwWwjk/efgDO8NxaGPxBywAAAABJRU5ErkJggg==",Ya="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAAByUlEQVR42u1ay5GDMAwVGnVAE5RAE+EaKgg97GlP6SFbQfaabSIlpInUwJ484yXeWJK/MHgmF2Ken59lWbJoAAAOx9MMFbef76+GDsfT/PF5hr5rqyR5fzwBAGYEgGpJ2tzIwb46ki9Ea1J3KRq6Og3jBMM4eZ/Fahxs5AKlajb2u3FQAnS7XpKR9JHFUiSljUoObiZvBHknBnKAUtop10aJM2sDMIxTdBPg4mFMsOw26iK2ms2U6njlnoQUCsqdQMi7bBt1gd8fT9FAdn/N6mCqpYqNQaFRjfZ9KVmElTTMqWYI1jYV3YmmDPPsXeuzN0nfJIqaqMoQ6bv2z8/+LzRMxNjpxH+JYXEbNVGVy4GbZzEiLwy1T1tBV7S+VFh7BGPIkrtSldv18pILLTOF3T35cinOxgnNt0h7TvddqxpY60cp9k1HqiSRcqS6RW00913qHj3tRDdFNOb9/mazUNIqoXVP2aKnGP5Tg6FWVKqsrWTyK50QNUNXgkrs+FX5UWl1sLh74oaK6JtxqhqotDSEHKBUcaeELHEvFUpXRrAW+/SJgKXqTNKCcFEblWBTqeRNumpUOmlTHaE1f1aENatoc2sA1vHJ2y8L/unW8OOSHAAAAABJRU5ErkJggg==",Wa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAA8CAYAAAAQTCjdAAABs0lEQVR42u1azXmDMAwV+rRBlsgIWSK5phOkO/TUU3dIJ0iu6RKMwBLMQE/0c4gBW5JtQeHGj6XHsyzpGSoAgOP50oHh4+f+XdHxfOk+Pr/gsN+ZBFk3LQBAhwBgFqSLjTzozYF8AWqJ3SFpNPbg6e396fxxuyYD1fua8oEhIMeuaYKc84FTRh63axYmQwhBWMhBJZ33s8WO0RyxGRujVBJkTDZByWATMWoNLHErRYoyqbbqfUZDX0AylpVHe+N100Y5cp/nzA6mmiptGyTtarjjY8EupoRiTjYlttbJ6AY0d5s3XMmaMU0aoOqm/Tt3e8vDfvd0TwIeNXrJIci5e0ViNASARl9LqUSaduONuWq1dCxKWPTJ6alrEoZJonVCdXmIykwCtE85HMfc9ESpV7yWDqMcUrdoZcq9l7p1TxvQVQHV3N9frQolLhPc9JStKdHInxwbbEZjmXWZTL6lI2FTOhNUYsUv7quIr/saa3TMpaex1tHEt9ApxTDLqAssB0hWjA7fTEPz/O+mxMdc6q/Mc/qraIzGEEKlxVuoDyot2liVyfJvRWiZRRdbBbCMX95+ASmr2MRgyDNVAAAAAElFTkSuQmCC";function Ja(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var mi={exports:{}},L={};/** @license React v16.13.1
|
|
2
|
+
* react-is.production.min.js
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/var Sr;function Ga(){if(Sr)return L;Sr=1;var n=typeof Symbol=="function"&&Symbol.for,t=n?Symbol.for("react.element"):60103,e=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,r=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,o=n?Symbol.for("react.provider"):60109,a=n?Symbol.for("react.context"):60110,c=n?Symbol.for("react.async_mode"):60111,u=n?Symbol.for("react.concurrent_mode"):60111,h=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,g=n?Symbol.for("react.suspense_list"):60120,A=n?Symbol.for("react.memo"):60115,T=n?Symbol.for("react.lazy"):60116,it=n?Symbol.for("react.block"):60121,wt=n?Symbol.for("react.fundamental"):60117,Z=n?Symbol.for("react.responder"):60118,Ct=n?Symbol.for("react.scope"):60119;function X(y){if(typeof y=="object"&&y!==null){var At=y.$$typeof;switch(At){case t:switch(y=y.type,y){case c:case u:case i:case s:case r:case p:return y;default:switch(y=y&&y.$$typeof,y){case a:case h:case T:case A:case o:return y;default:return At}}case e:return At}}}function Wt(y){return X(y)===u}return L.AsyncMode=c,L.ConcurrentMode=u,L.ContextConsumer=a,L.ContextProvider=o,L.Element=t,L.ForwardRef=h,L.Fragment=i,L.Lazy=T,L.Memo=A,L.Portal=e,L.Profiler=s,L.StrictMode=r,L.Suspense=p,L.isAsyncMode=function(y){return Wt(y)||X(y)===c},L.isConcurrentMode=Wt,L.isContextConsumer=function(y){return X(y)===a},L.isContextProvider=function(y){return X(y)===o},L.isElement=function(y){return typeof y=="object"&&y!==null&&y.$$typeof===t},L.isForwardRef=function(y){return X(y)===h},L.isFragment=function(y){return X(y)===i},L.isLazy=function(y){return X(y)===T},L.isMemo=function(y){return X(y)===A},L.isPortal=function(y){return X(y)===e},L.isProfiler=function(y){return X(y)===s},L.isStrictMode=function(y){return X(y)===r},L.isSuspense=function(y){return X(y)===p},L.isValidElementType=function(y){return typeof y=="string"||typeof y=="function"||y===i||y===u||y===s||y===r||y===p||y===g||typeof y=="object"&&y!==null&&(y.$$typeof===T||y.$$typeof===A||y.$$typeof===o||y.$$typeof===a||y.$$typeof===h||y.$$typeof===wt||y.$$typeof===Z||y.$$typeof===Ct||y.$$typeof===it)},L.typeOf=X,L}var Ir;function Ha(){return Ir||(Ir=1,mi.exports=Ga()),mi.exports}var bi,Br;function Za(){if(Br)return bi;Br=1;var n=Ha(),t={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},e={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},r={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};s[n.ForwardRef]=i,s[n.Memo]=r;function o(T){return n.isMemo(T)?r:s[T.$$typeof]||t}var a=Object.defineProperty,c=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,h=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,g=Object.prototype;function A(T,it,wt){if(typeof it!="string"){if(g){var Z=p(it);Z&&Z!==g&&A(T,Z,wt)}var Ct=c(it);u&&(Ct=Ct.concat(u(it)));for(var X=o(T),Wt=o(it),y=0;y<Ct.length;++y){var At=Ct[y];if(!e[At]&&!(wt&&wt[At])&&!(Wt&&Wt[At])&&!(X&&X[At])){var vn=h(it,At);try{a(T,At,vn)}catch{}}}}return T}return bi=A,bi}Za();var _i={exports:{}},x={};/*
|
|
9
|
+
object-assign
|
|
10
|
+
(c) Sindre Sorhus
|
|
11
|
+
@license MIT
|
|
12
|
+
*/var vi,Or;function Xa(){if(Or)return vi;Or=1;var n=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,e=Object.prototype.propertyIsEnumerable;function i(s){if(s==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(s)}function r(){try{if(!Object.assign)return!1;var s=new String("abc");if(s[5]="de",Object.getOwnPropertyNames(s)[0]==="5")return!1;for(var o={},a=0;a<10;a++)o["_"+String.fromCharCode(a)]=a;var c=Object.getOwnPropertyNames(o).map(function(h){return o[h]});if(c.join("")!=="0123456789")return!1;var u={};return"abcdefghijklmnopqrst".split("").forEach(function(h){u[h]=h}),Object.keys(Object.assign({},u)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return vi=r()?Object.assign:function(s,o){for(var a,c=i(s),u,h=1;h<arguments.length;h++){a=Object(arguments[h]);for(var p in a)t.call(a,p)&&(c[p]=a[p]);if(n){u=n(a);for(var g=0;g<u.length;g++)e.call(a,u[g])&&(c[u[g]]=a[u[g]])}}return c},vi}/** @license React v16.14.0
|
|
13
|
+
* react.production.min.js
|
|
14
|
+
*
|
|
15
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
16
|
+
*
|
|
17
|
+
* This source code is licensed under the MIT license found in the
|
|
18
|
+
* LICENSE file in the root directory of this source tree.
|
|
19
|
+
*/var Fr;function $a(){if(Fr)return x;Fr=1;var n=Xa(),t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,i=t?Symbol.for("react.portal"):60106,r=t?Symbol.for("react.fragment"):60107,s=t?Symbol.for("react.strict_mode"):60108,o=t?Symbol.for("react.profiler"):60114,a=t?Symbol.for("react.provider"):60109,c=t?Symbol.for("react.context"):60110,u=t?Symbol.for("react.forward_ref"):60112,h=t?Symbol.for("react.suspense"):60113,p=t?Symbol.for("react.memo"):60115,g=t?Symbol.for("react.lazy"):60116,A=typeof Symbol=="function"&&Symbol.iterator;function T(d){for(var f="https://reactjs.org/docs/error-decoder.html?invariant="+d,U=1;U<arguments.length;U++)f+="&args[]="+encodeURIComponent(arguments[U]);return"Minified React error #"+d+"; visit "+f+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var it={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},wt={};function Z(d,f,U){this.props=d,this.context=f,this.refs=wt,this.updater=U||it}Z.prototype.isReactComponent={},Z.prototype.setState=function(d,f){if(typeof d!="object"&&typeof d!="function"&&d!=null)throw Error(T(85));this.updater.enqueueSetState(this,d,f,"setState")},Z.prototype.forceUpdate=function(d){this.updater.enqueueForceUpdate(this,d,"forceUpdate")};function Ct(){}Ct.prototype=Z.prototype;function X(d,f,U){this.props=d,this.context=f,this.refs=wt,this.updater=U||it}var Wt=X.prototype=new Ct;Wt.constructor=X,n(Wt,Z.prototype),Wt.isPureReactComponent=!0;var y={current:null},At=Object.prototype.hasOwnProperty,vn={key:!0,ref:!0,__self:!0,__source:!0};function hi(d,f,U){var P,D={},tt=null,St=null;if(f!=null)for(P in f.ref!==void 0&&(St=f.ref),f.key!==void 0&&(tt=""+f.key),f)At.call(f,P)&&!vn.hasOwnProperty(P)&&(D[P]=f[P]);var J=arguments.length-2;if(J===1)D.children=U;else if(1<J){for(var at=Array(J),Gt=0;Gt<J;Gt++)at[Gt]=arguments[Gt+2];D.children=at}if(d&&d.defaultProps)for(P in J=d.defaultProps,J)D[P]===void 0&&(D[P]=J[P]);return{$$typeof:e,type:d,key:tt,ref:St,props:D,_owner:y.current}}function Po(d,f){return{$$typeof:e,type:d.type,key:f,ref:d.ref,props:d.props,_owner:d._owner}}function fi(d){return typeof d=="object"&&d!==null&&d.$$typeof===e}function Ko(d){var f={"=":"=0",":":"=2"};return"$"+(""+d).replace(/[=:]/g,function(U){return f[U]})}var br=/\/+/g,wn=[];function _r(d,f,U,P){if(wn.length){var D=wn.pop();return D.result=d,D.keyPrefix=f,D.func=U,D.context=P,D.count=0,D}return{result:d,keyPrefix:f,func:U,context:P,count:0}}function vr(d){d.result=null,d.keyPrefix=null,d.func=null,d.context=null,d.count=0,10>wn.length&&wn.push(d)}function pi(d,f,U,P){var D=typeof d;(D==="undefined"||D==="boolean")&&(d=null);var tt=!1;if(d===null)tt=!0;else switch(D){case"string":case"number":tt=!0;break;case"object":switch(d.$$typeof){case e:case i:tt=!0}}if(tt)return U(P,d,f===""?"."+Ai(d,0):f),1;if(tt=0,f=f===""?".":f+":",Array.isArray(d))for(var St=0;St<d.length;St++){D=d[St];var J=f+Ai(D,St);tt+=pi(D,J,U,P)}else if(d===null||typeof d!="object"?J=null:(J=A&&d[A]||d["@@iterator"],J=typeof J=="function"?J:null),typeof J=="function")for(d=J.call(d),St=0;!(D=d.next()).done;)D=D.value,J=f+Ai(D,St++),tt+=pi(D,J,U,P);else if(D==="object")throw U=""+d,Error(T(31,U==="[object Object]"?"object with keys {"+Object.keys(d).join(", ")+"}":U,""));return tt}function yi(d,f,U){return d==null?0:pi(d,"",f,U)}function Ai(d,f){return typeof d=="object"&&d!==null&&d.key!=null?Ko(d.key):f.toString(36)}function zo(d,f){d.func.call(d.context,f,d.count++)}function qo(d,f,U){var P=d.result,D=d.keyPrefix;d=d.func.call(d.context,f,d.count++),Array.isArray(d)?gi(d,P,U,function(tt){return tt}):d!=null&&(fi(d)&&(d=Po(d,D+(!d.key||f&&f.key===d.key?"":(""+d.key).replace(br,"$&/")+"/")+U)),P.push(d))}function gi(d,f,U,P,D){var tt="";U!=null&&(tt=(""+U).replace(br,"$&/")+"/"),f=_r(f,tt,P,D),yi(d,qo,f),vr(f)}var wr={current:null};function Jt(){var d=wr.current;if(d===null)throw Error(T(321));return d}var Yo={ReactCurrentDispatcher:wr,ReactCurrentBatchConfig:{suspense:null},ReactCurrentOwner:y,IsSomeRendererActing:{current:!1},assign:n};return x.Children={map:function(d,f,U){if(d==null)return d;var P=[];return gi(d,P,null,f,U),P},forEach:function(d,f,U){if(d==null)return d;f=_r(null,null,f,U),yi(d,zo,f),vr(f)},count:function(d){return yi(d,function(){return null},null)},toArray:function(d){var f=[];return gi(d,f,null,function(U){return U}),f},only:function(d){if(!fi(d))throw Error(T(143));return d}},x.Component=Z,x.Fragment=r,x.Profiler=o,x.PureComponent=X,x.StrictMode=s,x.Suspense=h,x.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Yo,x.cloneElement=function(d,f,U){if(d==null)throw Error(T(267,d));var P=n({},d.props),D=d.key,tt=d.ref,St=d._owner;if(f!=null){if(f.ref!==void 0&&(tt=f.ref,St=y.current),f.key!==void 0&&(D=""+f.key),d.type&&d.type.defaultProps)var J=d.type.defaultProps;for(at in f)At.call(f,at)&&!vn.hasOwnProperty(at)&&(P[at]=f[at]===void 0&&J!==void 0?J[at]:f[at])}var at=arguments.length-2;if(at===1)P.children=U;else if(1<at){J=Array(at);for(var Gt=0;Gt<at;Gt++)J[Gt]=arguments[Gt+2];P.children=J}return{$$typeof:e,type:d.type,key:D,ref:tt,props:P,_owner:St}},x.createContext=function(d,f){return f===void 0&&(f=null),d={$$typeof:c,_calculateChangedBits:f,_currentValue:d,_currentValue2:d,_threadCount:0,Provider:null,Consumer:null},d.Provider={$$typeof:a,_context:d},d.Consumer=d},x.createElement=hi,x.createFactory=function(d){var f=hi.bind(null,d);return f.type=d,f},x.createRef=function(){return{current:null}},x.forwardRef=function(d){return{$$typeof:u,render:d}},x.isValidElement=fi,x.lazy=function(d){return{$$typeof:g,_ctor:d,_status:-1,_result:null}},x.memo=function(d,f){return{$$typeof:p,type:d,compare:f===void 0?null:f}},x.useCallback=function(d,f){return Jt().useCallback(d,f)},x.useContext=function(d,f){return Jt().useContext(d,f)},x.useDebugValue=function(){},x.useEffect=function(d,f){return Jt().useEffect(d,f)},x.useImperativeHandle=function(d,f,U){return Jt().useImperativeHandle(d,f,U)},x.useLayoutEffect=function(d,f){return Jt().useLayoutEffect(d,f)},x.useMemo=function(d,f){return Jt().useMemo(d,f)},x.useReducer=function(d,f,U){return Jt().useReducer(d,f,U)},x.useRef=function(d){return Jt().useRef(d)},x.useState=function(d){return Jt().useState(d)},x.version="16.14.0",x}var Ur;function tc(){return Ur||(Ur=1,_i.exports=$a()),_i.exports}var ec=tc();const nc=Ja(ec);function m(n,t,e,i){function r(s){return s instanceof e?s:new e(function(o){o(s)})}return new(e||(e=Promise))(function(s,o){function a(h){try{u(i.next(h))}catch(p){o(p)}}function c(h){try{u(i.throw(h))}catch(p){o(p)}}function u(h){h.done?s(h.value):r(h.value).then(a,c)}u((i=i.apply(n,t||[])).next())})}function Cr(n){var t=typeof Symbol=="function"&&Symbol.iterator,e=t&&n[t],i=0;if(e)return e.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&i>=n.length&&(n=void 0),{value:n&&n[i++],done:!n}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function C(n){return this instanceof C?(this.v=n,this):new C(n)}function Pt(n,t,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=e.apply(n,t||[]),r,s=[];return r=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),r[Symbol.asyncIterator]=function(){return this},r;function o(A){return function(T){return Promise.resolve(T).then(A,p)}}function a(A,T){i[A]&&(r[A]=function(it){return new Promise(function(wt,Z){s.push([A,it,wt,Z])>1||c(A,it)})},T&&(r[A]=T(r[A])))}function c(A,T){try{u(i[A](T))}catch(it){g(s[0][3],it)}}function u(A){A.value instanceof C?Promise.resolve(A.value.v).then(h,p):g(s[0][2],A)}function h(A){c("next",A)}function p(A){c("throw",A)}function g(A,T){A(T),s.shift(),s.length&&c(s[0][0],s[0][1])}}function On(n){var t,e;return t={},i("next"),i("throw",function(r){throw r}),i("return"),t[Symbol.iterator]=function(){return this},t;function i(r,s){t[r]=n[r]?function(o){return(e=!e)?{value:C(n[r](o)),done:!1}:s?s(o):o}:s}}function Ue(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=n[Symbol.asyncIterator],e;return t?t.call(n):(n=typeof Cr=="function"?Cr(n):n[Symbol.iterator](),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(s){e[s]=n[s]&&function(o){return new Promise(function(a,c){o=n[s](o),r(a,c,o.done,o.value)})}}function r(s,o,a,c){Promise.resolve(c).then(function(u){s({value:u,done:a})},o)}}const ic=new TextDecoder("utf-8"),Ti=n=>ic.decode(n),rc=new TextEncoder,zi=n=>rc.encode(n),[Gu,sc]=(()=>{const n=()=>{throw new Error("BigInt is not available in this environment")};function t(){throw n()}return t.asIntN=()=>{throw n()},t.asUintN=()=>{throw n()},typeof BigInt<"u"?[BigInt,!0]:[t,!1]})(),[pn]=(()=>{const n=()=>{throw new Error("BigInt64Array is not available in this environment")};class t{static get BYTES_PER_ELEMENT(){return 8}static of(){throw n()}static from(){throw n()}constructor(){throw n()}}return typeof BigInt64Array<"u"?[BigInt64Array,!0]:[t,!1]})(),[yn]=(()=>{const n=()=>{throw new Error("BigUint64Array is not available in this environment")};class t{static get BYTES_PER_ELEMENT(){return 8}static of(){throw n()}static from(){throw n()}constructor(){throw n()}}return typeof BigUint64Array<"u"?[BigUint64Array,!0]:[t,!1]})(),oc=n=>typeof n=="number",Xr=n=>typeof n=="boolean",et=n=>typeof n=="function",ft=n=>n!=null&&Object(n)===n,de=n=>ft(n)&&et(n.then),An=n=>ft(n)&&et(n[Symbol.iterator]),Xe=n=>ft(n)&&et(n[Symbol.asyncIterator]),Ni=n=>ft(n)&&ft(n.schema),$r=n=>ft(n)&&"done"in n&&"value"in n,ts=n=>ft(n)&&et(n.stat)&&oc(n.fd),es=n=>ft(n)&&qi(n.body),ci=n=>"_getDOMStream"in n&&"_getNodeStream"in n,ac=n=>ft(n)&&et(n.abort)&&et(n.getWriter)&&!ci(n),qi=n=>ft(n)&&et(n.cancel)&&et(n.getReader)&&!ci(n),cc=n=>ft(n)&&et(n.end)&&et(n.write)&&Xr(n.writable)&&!ci(n),ns=n=>ft(n)&&et(n.read)&&et(n.pipe)&&Xr(n.readable)&&!ci(n),lc=n=>ft(n)&&et(n.clear)&&et(n.bytes)&&et(n.position)&&et(n.setPosition)&&et(n.capacity)&&et(n.getBufferIdentifier)&&et(n.createLong),Yi=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:ArrayBuffer;function uc(n){const t=n[0]?[n[0]]:[];let e,i,r,s;for(let o,a,c=0,u=0,h=n.length;++c<h;){if(o=t[u],a=n[c],!o||!a||o.buffer!==a.buffer||a.byteOffset<o.byteOffset){a&&(t[++u]=a);continue}if({byteOffset:e,byteLength:r}=o,{byteOffset:i,byteLength:s}=a,e+r<i||i+s<e){a&&(t[++u]=a);continue}t[u]=new Uint8Array(o.buffer,e,i-e+s)}return t}function Tr(n,t,e=0,i=t.byteLength){const r=n.byteLength,s=new Uint8Array(n.buffer,n.byteOffset,r),o=new Uint8Array(t.buffer,t.byteOffset,Math.min(i,r));return s.set(o,e),n}function zt(n,t){const e=uc(n),i=e.reduce((h,p)=>h+p.byteLength,0);let r,s,o,a=0,c=-1;const u=Math.min(t||Number.POSITIVE_INFINITY,i);for(const h=e.length;++c<h;){if(r=e[c],s=r.subarray(0,Math.min(r.length,u-a)),u<=a+s.length){s.length<r.length?e[c]=r.subarray(s.length):s.length===r.length&&c++,o?Tr(o,s,a):o=s;break}Tr(o||(o=new Uint8Array(u)),s,a),a+=s.length}return[o||new Uint8Array(0),e.slice(c),i-(o?o.byteLength:0)]}function z(n,t){let e=$r(t)?t.value:t;return e instanceof n?n===Uint8Array?new n(e.buffer,e.byteOffset,e.byteLength):e:e?(typeof e=="string"&&(e=zi(e)),e instanceof ArrayBuffer?new n(e):e instanceof Yi?new n(e):lc(e)?z(n,e.bytes()):ArrayBuffer.isView(e)?e.byteLength<=0?new n(0):new n(e.buffer,e.byteOffset,e.byteLength/n.BYTES_PER_ELEMENT):n.from(e)):new n(0)}const tn=n=>z(Int32Array,n),M=n=>z(Uint8Array,n),Ei=n=>(n.next(),n);function*dc(n,t){const e=function*(r){yield r},i=typeof t=="string"||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof Yi?e(t):An(t)?t:e(t);return yield*Ei((function*(r){let s=null;do s=r.next(yield z(n,s));while(!s.done)})(i[Symbol.iterator]())),new n}const hc=n=>dc(Uint8Array,n);function is(n,t){return Pt(this,arguments,function*(){if(de(t))return yield C(yield C(yield*On(Ue(is(n,yield C(t))))));const i=function(o){return Pt(this,arguments,function*(){yield yield C(yield C(o))})},r=function(o){return Pt(this,arguments,function*(){yield C(yield*On(Ue(Ei((function*(a){let c=null;do c=a.next(yield c==null?void 0:c.value);while(!c.done)})(o[Symbol.iterator]())))))})},s=typeof t=="string"||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof Yi?i(t):An(t)?r(t):Xe(t)?t:i(t);return yield C(yield*On(Ue(Ei((function(o){return Pt(this,arguments,function*(){let a=null;do a=yield C(o.next(yield yield C(z(n,a))));while(!a.done)})})(s[Symbol.asyncIterator]()))))),yield C(new n)})}const fc=n=>is(Uint8Array,n);function Wi(n,t,e){if(n!==0){e=e.slice(0,t+1);for(let i=-1;++i<=t;)e[i]+=n}return e}function pc(n,t){let e=0;const i=n.length;if(i!==t.length)return!1;if(i>0)do if(n[e]!==t[e])return!1;while(++e<i);return!0}const Bt={fromIterable(n){return Sn(yc(n))},fromAsyncIterable(n){return Sn(Ac(n))},fromDOMStream(n){return Sn(gc(n))},fromNodeStream(n){return Sn(bc(n))},toDOMStream(n,t){throw new Error('"toDOMStream" not available in this environment')},toNodeStream(n,t){throw new Error('"toNodeStream" not available in this environment')}},Sn=n=>(n.next(),n);function*yc(n){let t,e=!1,i=[],r,s,o,a=0;function c(){return s==="peek"?zt(i,o)[0]:([r,i,a]=zt(i,o),r)}({cmd:s,size:o}=yield null);const u=hc(n)[Symbol.iterator]();try{do if({done:t,value:r}=Number.isNaN(o-a)?u.next():u.next(o-a),!t&&r.byteLength>0&&(i.push(r),a+=r.byteLength),t||o<=a)do({cmd:s,size:o}=yield c());while(o<a);while(!t)}catch(h){(e=!0)&&typeof u.throw=="function"&&u.throw(h)}finally{e===!1&&typeof u.return=="function"&&u.return(null)}return null}function Ac(n){return Pt(this,arguments,function*(){let e,i=!1,r=[],s,o,a,c=0;function u(){return o==="peek"?zt(r,a)[0]:([s,r,c]=zt(r,a),s)}({cmd:o,size:a}=yield yield C(null));const h=fc(n)[Symbol.asyncIterator]();try{do if({done:e,value:s}=Number.isNaN(a-c)?yield C(h.next()):yield C(h.next(a-c)),!e&&s.byteLength>0&&(r.push(s),c+=s.byteLength),e||a<=c)do({cmd:o,size:a}=yield yield C(u()));while(a<c);while(!e)}catch(p){(i=!0)&&typeof h.throw=="function"&&(yield C(h.throw(p)))}finally{i===!1&&typeof h.return=="function"&&(yield C(h.return(new Uint8Array(0))))}return yield C(null)})}function gc(n){return Pt(this,arguments,function*(){let e=!1,i=!1,r=[],s,o,a,c=0;function u(){return o==="peek"?zt(r,a)[0]:([s,r,c]=zt(r,a),s)}({cmd:o,size:a}=yield yield C(null));const h=new mc(n);try{do if({done:e,value:s}=Number.isNaN(a-c)?yield C(h.read()):yield C(h.read(a-c)),!e&&s.byteLength>0&&(r.push(M(s)),c+=s.byteLength),e||a<=c)do({cmd:o,size:a}=yield yield C(u()));while(a<c);while(!e)}catch(p){(i=!0)&&(yield C(h.cancel(p)))}finally{i===!1?yield C(h.cancel()):n.locked&&h.releaseLock()}return yield C(null)})}class mc{constructor(t){this.source=t,this.reader=null,this.reader=this.source.getReader(),this.reader.closed.catch(()=>{})}get closed(){return this.reader?this.reader.closed.catch(()=>{}):Promise.resolve()}releaseLock(){this.reader&&this.reader.releaseLock(),this.reader=null}cancel(t){return m(this,void 0,void 0,function*(){const{reader:e,source:i}=this;e&&(yield e.cancel(t).catch(()=>{})),i&&i.locked&&this.releaseLock()})}read(t){return m(this,void 0,void 0,function*(){if(t===0)return{done:this.reader==null,value:new Uint8Array(0)};const e=yield this.reader.read();return!e.done&&(e.value=M(e)),e})}}const wi=(n,t)=>{const e=r=>i([t,r]);let i;return[t,e,new Promise(r=>(i=r)&&n.once(t,e))]};function bc(n){return Pt(this,arguments,function*(){const e=[];let i="error",r=!1,s=null,o,a,c=0,u=[],h;function p(){return o==="peek"?zt(u,a)[0]:([h,u,c]=zt(u,a),h)}if({cmd:o,size:a}=yield yield C(null),n.isTTY)return yield yield C(new Uint8Array(0)),yield C(null);try{e[0]=wi(n,"end"),e[1]=wi(n,"error");do{if(e[2]=wi(n,"readable"),[i,s]=yield C(Promise.race(e.map(A=>A[2]))),i==="error")break;if((r=i==="end")||(Number.isFinite(a-c)?(h=M(n.read(a-c)),h.byteLength<a-c&&(h=M(n.read()))):h=M(n.read()),h.byteLength>0&&(u.push(h),c+=h.byteLength)),r||a<=c)do({cmd:o,size:a}=yield yield C(p()));while(a<c)}while(!r)}finally{yield C(g(e,i==="error"?s:null))}return yield C(null);function g(A,T){return h=u=null,new Promise((it,wt)=>{for(const[Z,Ct]of A)n.off(Z,Ct);try{const Z=n.destroy;Z&&Z.call(n,T),T=void 0}catch(Z){T=Z||T}finally{T!=null?wt(T):it()}})}})}var bt;(function(n){n[n.V1=0]="V1",n[n.V2=1]="V2",n[n.V3=2]="V3",n[n.V4=3]="V4",n[n.V5=4]="V5"})(bt||(bt={}));var _t;(function(n){n[n.Sparse=0]="Sparse",n[n.Dense=1]="Dense"})(_t||(_t={}));var ht;(function(n){n[n.HALF=0]="HALF",n[n.SINGLE=1]="SINGLE",n[n.DOUBLE=2]="DOUBLE"})(ht||(ht={}));var re;(function(n){n[n.DAY=0]="DAY",n[n.MILLISECOND=1]="MILLISECOND"})(re||(re={}));var V;(function(n){n[n.SECOND=0]="SECOND",n[n.MILLISECOND=1]="MILLISECOND",n[n.MICROSECOND=2]="MICROSECOND",n[n.NANOSECOND=3]="NANOSECOND"})(V||(V={}));var he;(function(n){n[n.YEAR_MONTH=0]="YEAR_MONTH",n[n.DAY_TIME=1]="DAY_TIME",n[n.MONTH_DAY_NANO=2]="MONTH_DAY_NANO"})(he||(he={}));var j;(function(n){n[n.NONE=0]="NONE",n[n.Schema=1]="Schema",n[n.DictionaryBatch=2]="DictionaryBatch",n[n.RecordBatch=3]="RecordBatch",n[n.Tensor=4]="Tensor",n[n.SparseTensor=5]="SparseTensor"})(j||(j={}));var l;(function(n){n[n.NONE=0]="NONE",n[n.Null=1]="Null",n[n.Int=2]="Int",n[n.Float=3]="Float",n[n.Binary=4]="Binary",n[n.Utf8=5]="Utf8",n[n.Bool=6]="Bool",n[n.Decimal=7]="Decimal",n[n.Date=8]="Date",n[n.Time=9]="Time",n[n.Timestamp=10]="Timestamp",n[n.Interval=11]="Interval",n[n.List=12]="List",n[n.Struct=13]="Struct",n[n.Union=14]="Union",n[n.FixedSizeBinary=15]="FixedSizeBinary",n[n.FixedSizeList=16]="FixedSizeList",n[n.Map=17]="Map",n[n.Dictionary=-1]="Dictionary",n[n.Int8=-2]="Int8",n[n.Int16=-3]="Int16",n[n.Int32=-4]="Int32",n[n.Int64=-5]="Int64",n[n.Uint8=-6]="Uint8",n[n.Uint16=-7]="Uint16",n[n.Uint32=-8]="Uint32",n[n.Uint64=-9]="Uint64",n[n.Float16=-10]="Float16",n[n.Float32=-11]="Float32",n[n.Float64=-12]="Float64",n[n.DateDay=-13]="DateDay",n[n.DateMillisecond=-14]="DateMillisecond",n[n.TimestampSecond=-15]="TimestampSecond",n[n.TimestampMillisecond=-16]="TimestampMillisecond",n[n.TimestampMicrosecond=-17]="TimestampMicrosecond",n[n.TimestampNanosecond=-18]="TimestampNanosecond",n[n.TimeSecond=-19]="TimeSecond",n[n.TimeMillisecond=-20]="TimeMillisecond",n[n.TimeMicrosecond=-21]="TimeMicrosecond",n[n.TimeNanosecond=-22]="TimeNanosecond",n[n.DenseUnion=-23]="DenseUnion",n[n.SparseUnion=-24]="SparseUnion",n[n.IntervalDayTime=-25]="IntervalDayTime",n[n.IntervalYearMonth=-26]="IntervalYearMonth"})(l||(l={}));var Zt;(function(n){n[n.OFFSET=0]="OFFSET",n[n.DATA=1]="DATA",n[n.VALIDITY=2]="VALIDITY",n[n.TYPE=3]="TYPE"})(Zt||(Zt={}));const _c=void 0;function an(n){if(n===null)return"null";if(n===_c)return"undefined";switch(typeof n){case"number":return`${n}`;case"bigint":return`${n}`;case"string":return`"${n}"`}return typeof n[Symbol.toPrimitive]=="function"?n[Symbol.toPrimitive]("string"):ArrayBuffer.isView(n)?n instanceof pn||n instanceof yn?`[${[...n].map(t=>an(t))}]`:`[${n}]`:ArrayBuffer.isView(n)?`[${n}]`:JSON.stringify(n,(t,e)=>typeof e=="bigint"?`${e}`:e)}const vc=Symbol.for("isArrowBigNum");function Et(n,...t){return t.length===0?Object.setPrototypeOf(z(this.TypedArray,n),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(n,...t),this.constructor.prototype)}Et.prototype[vc]=!0;Et.prototype.toJSON=function(){return`"${Ce(this)}"`};Et.prototype.valueOf=function(){return rs(this)};Et.prototype.toString=function(){return Ce(this)};Et.prototype[Symbol.toPrimitive]=function(n="default"){switch(n){case"number":return rs(this);case"string":return Ce(this);case"default":return Ri(this)}return Ce(this)};function ke(...n){return Et.apply(this,n)}function Qe(...n){return Et.apply(this,n)}function cn(...n){return Et.apply(this,n)}Object.setPrototypeOf(ke.prototype,Object.create(Int32Array.prototype));Object.setPrototypeOf(Qe.prototype,Object.create(Uint32Array.prototype));Object.setPrototypeOf(cn.prototype,Object.create(Uint32Array.prototype));Object.assign(ke.prototype,Et.prototype,{constructor:ke,signed:!0,TypedArray:Int32Array,BigIntArray:pn});Object.assign(Qe.prototype,Et.prototype,{constructor:Qe,signed:!1,TypedArray:Uint32Array,BigIntArray:yn});Object.assign(cn.prototype,Et.prototype,{constructor:cn,signed:!0,TypedArray:Uint32Array,BigIntArray:yn});function rs(n){const{buffer:t,byteOffset:e,length:i,signed:r}=n,s=new yn(t,e,i),o=r&&s[s.length-1]&BigInt(1)<<BigInt(63);let a=BigInt(o?1:0),c=BigInt(0);if(o){for(const u of s)a+=~u*(BigInt(1)<<BigInt(32)*c++);a*=BigInt(-1)}else for(const u of s)a+=u*(BigInt(1)<<BigInt(32)*c++);return a}let Ce,Ri;sc?(Ri=(n=>n.byteLength===8?new n.BigIntArray(n.buffer,n.byteOffset,1)[0]:Si(n)),Ce=(n=>n.byteLength===8?`${new n.BigIntArray(n.buffer,n.byteOffset,1)[0]}`:Si(n))):(Ce=Si,Ri=Ce);function Si(n){let t="";const e=new Uint32Array(2);let i=new Uint16Array(n.buffer,n.byteOffset,n.byteLength/2);const r=new Uint32Array((i=new Uint16Array(i).reverse()).buffer);let s=-1;const o=i.length-1;do{for(e[0]=i[s=0];s<o;)i[s++]=e[1]=e[0]/10,e[0]=(e[0]-e[1]*10<<16)+i[s];i[s]=e[1]=e[0]/10,e[0]=e[0]-e[1]*10,t=`${e[0]}${t}`}while(r[0]||r[1]||r[2]||r[3]);return t??"0"}class Ji{static new(t,e){switch(e){case!0:return new ke(t);case!1:return new Qe(t)}switch(t.constructor){case Int8Array:case Int16Array:case Int32Array:case pn:return new ke(t)}return t.byteLength===16?new cn(t):new Qe(t)}static signed(t){return new ke(t)}static unsigned(t){return new Qe(t)}static decimal(t){return new cn(t)}constructor(t,e){return Ji.new(t,e)}}var ss,os,as,cs,ls,us,ds,hs,fs,ps,ys,As,gs,ms,bs,_s,vs,ws,Ss;class b{static isNull(t){return(t==null?void 0:t.typeId)===l.Null}static isInt(t){return(t==null?void 0:t.typeId)===l.Int}static isFloat(t){return(t==null?void 0:t.typeId)===l.Float}static isBinary(t){return(t==null?void 0:t.typeId)===l.Binary}static isUtf8(t){return(t==null?void 0:t.typeId)===l.Utf8}static isBool(t){return(t==null?void 0:t.typeId)===l.Bool}static isDecimal(t){return(t==null?void 0:t.typeId)===l.Decimal}static isDate(t){return(t==null?void 0:t.typeId)===l.Date}static isTime(t){return(t==null?void 0:t.typeId)===l.Time}static isTimestamp(t){return(t==null?void 0:t.typeId)===l.Timestamp}static isInterval(t){return(t==null?void 0:t.typeId)===l.Interval}static isList(t){return(t==null?void 0:t.typeId)===l.List}static isStruct(t){return(t==null?void 0:t.typeId)===l.Struct}static isUnion(t){return(t==null?void 0:t.typeId)===l.Union}static isFixedSizeBinary(t){return(t==null?void 0:t.typeId)===l.FixedSizeBinary}static isFixedSizeList(t){return(t==null?void 0:t.typeId)===l.FixedSizeList}static isMap(t){return(t==null?void 0:t.typeId)===l.Map}static isDictionary(t){return(t==null?void 0:t.typeId)===l.Dictionary}static isDenseUnion(t){return b.isUnion(t)&&t.mode===_t.Dense}static isSparseUnion(t){return b.isUnion(t)&&t.mode===_t.Sparse}get typeId(){return l.NONE}}ss=Symbol.toStringTag;b[ss]=(n=>(n.children=null,n.ArrayType=Array,n[Symbol.toStringTag]="DataType"))(b.prototype);let fe=class extends b{toString(){return"Null"}get typeId(){return l.Null}};os=Symbol.toStringTag;fe[os]=(n=>n[Symbol.toStringTag]="Null")(fe.prototype);class pe extends b{constructor(t,e){super(),this.isSigned=t,this.bitWidth=e}get typeId(){return l.Int}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?pn:yn}throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`${this.isSigned?"I":"Ui"}nt${this.bitWidth}`}}as=Symbol.toStringTag;pe[as]=(n=>(n.isSigned=null,n.bitWidth=null,n[Symbol.toStringTag]="Int"))(pe.prototype);class ln extends pe{constructor(){super(!0,32)}get ArrayType(){return Int32Array}}Object.defineProperty(ln.prototype,"ArrayType",{value:Int32Array});class un extends b{constructor(t){super(),this.precision=t}get typeId(){return l.Float}get ArrayType(){switch(this.precision){case ht.HALF:return Uint16Array;case ht.SINGLE:return Float32Array;case ht.DOUBLE:return Float64Array}throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`Float${this.precision<<5||16}`}}cs=Symbol.toStringTag;un[cs]=(n=>(n.precision=null,n[Symbol.toStringTag]="Float"))(un.prototype);let Rn=class extends b{constructor(){super()}get typeId(){return l.Binary}toString(){return"Binary"}};ls=Symbol.toStringTag;Rn[ls]=(n=>(n.ArrayType=Uint8Array,n[Symbol.toStringTag]="Binary"))(Rn.prototype);let Dn=class extends b{constructor(){super()}get typeId(){return l.Utf8}toString(){return"Utf8"}};us=Symbol.toStringTag;Dn[us]=(n=>(n.ArrayType=Uint8Array,n[Symbol.toStringTag]="Utf8"))(Dn.prototype);let Mn=class extends b{constructor(){super()}get typeId(){return l.Bool}toString(){return"Bool"}};ds=Symbol.toStringTag;Mn[ds]=(n=>(n.ArrayType=Uint8Array,n[Symbol.toStringTag]="Bool"))(Mn.prototype);let Vn=class extends b{constructor(t,e,i=128){super(),this.scale=t,this.precision=e,this.bitWidth=i}get typeId(){return l.Decimal}toString(){return`Decimal[${this.precision}e${this.scale>0?"+":""}${this.scale}]`}};hs=Symbol.toStringTag;Vn[hs]=(n=>(n.scale=null,n.precision=null,n.ArrayType=Uint32Array,n[Symbol.toStringTag]="Decimal"))(Vn.prototype);class Ln extends b{constructor(t){super(),this.unit=t}get typeId(){return l.Date}toString(){return`Date${(this.unit+1)*32}<${re[this.unit]}>`}}fs=Symbol.toStringTag;Ln[fs]=(n=>(n.unit=null,n.ArrayType=Int32Array,n[Symbol.toStringTag]="Date"))(Ln.prototype);class dn extends b{constructor(t,e){super(),this.unit=t,this.bitWidth=e}get typeId(){return l.Time}toString(){return`Time${this.bitWidth}<${V[this.unit]}>`}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return pn}throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}}ps=Symbol.toStringTag;dn[ps]=(n=>(n.unit=null,n.bitWidth=null,n[Symbol.toStringTag]="Time"))(dn.prototype);class xn extends b{constructor(t,e){super(),this.unit=t,this.timezone=e}get typeId(){return l.Timestamp}toString(){return`Timestamp<${V[this.unit]}${this.timezone?`, ${this.timezone}`:""}>`}}ys=Symbol.toStringTag;xn[ys]=(n=>(n.unit=null,n.timezone=null,n.ArrayType=Int32Array,n[Symbol.toStringTag]="Timestamp"))(xn.prototype);class jn extends b{constructor(t){super(),this.unit=t}get typeId(){return l.Interval}toString(){return`Interval<${he[this.unit]}>`}}As=Symbol.toStringTag;jn[As]=(n=>(n.unit=null,n.ArrayType=Int32Array,n[Symbol.toStringTag]="Interval"))(jn.prototype);let kn=class extends b{constructor(t){super(),this.children=[t]}get typeId(){return l.List}toString(){return`List<${this.valueType}>`}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};gs=Symbol.toStringTag;kn[gs]=(n=>(n.children=null,n[Symbol.toStringTag]="List"))(kn.prototype);class st extends b{constructor(t){super(),this.children=t}get typeId(){return l.Struct}toString(){return`Struct<{${this.children.map(t=>`${t.name}:${t.type}`).join(", ")}}>`}}ms=Symbol.toStringTag;st[ms]=(n=>(n.children=null,n[Symbol.toStringTag]="Struct"))(st.prototype);class Qn extends b{constructor(t,e,i){super(),this.mode=t,this.children=i,this.typeIds=e=Int32Array.from(e),this.typeIdToChildIndex=e.reduce((r,s,o)=>(r[s]=o)&&r||r,Object.create(null))}get typeId(){return l.Union}toString(){return`${this[Symbol.toStringTag]}<${this.children.map(t=>`${t.type}`).join(" | ")}>`}}bs=Symbol.toStringTag;Qn[bs]=(n=>(n.mode=null,n.typeIds=null,n.children=null,n.typeIdToChildIndex=null,n.ArrayType=Int8Array,n[Symbol.toStringTag]="Union"))(Qn.prototype);let Pn=class extends b{constructor(t){super(),this.byteWidth=t}get typeId(){return l.FixedSizeBinary}toString(){return`FixedSizeBinary[${this.byteWidth}]`}};_s=Symbol.toStringTag;Pn[_s]=(n=>(n.byteWidth=null,n.ArrayType=Uint8Array,n[Symbol.toStringTag]="FixedSizeBinary"))(Pn.prototype);let Kn=class extends b{constructor(t,e){super(),this.listSize=t,this.children=[e]}get typeId(){return l.FixedSizeList}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}};vs=Symbol.toStringTag;Kn[vs]=(n=>(n.children=null,n.listSize=null,n[Symbol.toStringTag]="FixedSizeList"))(Kn.prototype);class zn extends b{constructor(t,e=!1){super(),this.children=[t],this.keysSorted=e}get typeId(){return l.Map}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return`Map<{${this.children[0].type.children.map(t=>`${t.name}:${t.type}`).join(", ")}}>`}}ws=Symbol.toStringTag;zn[ws]=(n=>(n.children=null,n.keysSorted=null,n[Symbol.toStringTag]="Map_"))(zn.prototype);const wc=(n=>()=>++n)(-1);class qe extends b{constructor(t,e,i,r){super(),this.indices=e,this.dictionary=t,this.isOrdered=r||!1,this.id=i==null?wc():typeof i=="number"?i:i.low}get typeId(){return l.Dictionary}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return`Dictionary<${this.indices}, ${this.dictionary}>`}}Ss=Symbol.toStringTag;qe[Ss]=(n=>(n.id=null,n.indices=null,n.isOrdered=null,n.dictionary=null,n[Symbol.toStringTag]="Dictionary"))(qe.prototype);function Xt(n){const t=n;switch(n.typeId){case l.Decimal:return n.bitWidth/32;case l.Timestamp:return 2;case l.Date:return 1+t.unit;case l.Interval:return 1+t.unit;case l.FixedSizeList:return t.listSize;case l.FixedSizeBinary:return t.byteWidth;default:return 1}}class R{visitMany(t,...e){return t.map((i,r)=>this.visit(i,...e.map(s=>s[r])))}visit(...t){return this.getVisitFn(t[0],!1).apply(this,t)}getVisitFn(t,e=!0){return Sc(this,t,e)}getVisitFnByTypeId(t,e=!0){return De(this,t,e)}visitNull(t,...e){return null}visitBool(t,...e){return null}visitInt(t,...e){return null}visitFloat(t,...e){return null}visitUtf8(t,...e){return null}visitBinary(t,...e){return null}visitFixedSizeBinary(t,...e){return null}visitDate(t,...e){return null}visitTimestamp(t,...e){return null}visitTime(t,...e){return null}visitDecimal(t,...e){return null}visitList(t,...e){return null}visitStruct(t,...e){return null}visitUnion(t,...e){return null}visitDictionary(t,...e){return null}visitInterval(t,...e){return null}visitFixedSizeList(t,...e){return null}visitMap(t,...e){return null}}function Sc(n,t,e=!0){return typeof t=="number"?De(n,t,e):typeof t=="string"&&t in l?De(n,l[t],e):t&&t instanceof b?De(n,Nr(t),e):t!=null&&t.type&&t.type instanceof b?De(n,Nr(t.type),e):De(n,l.NONE,e)}function De(n,t,e=!0){let i=null;switch(t){case l.Null:i=n.visitNull;break;case l.Bool:i=n.visitBool;break;case l.Int:i=n.visitInt;break;case l.Int8:i=n.visitInt8||n.visitInt;break;case l.Int16:i=n.visitInt16||n.visitInt;break;case l.Int32:i=n.visitInt32||n.visitInt;break;case l.Int64:i=n.visitInt64||n.visitInt;break;case l.Uint8:i=n.visitUint8||n.visitInt;break;case l.Uint16:i=n.visitUint16||n.visitInt;break;case l.Uint32:i=n.visitUint32||n.visitInt;break;case l.Uint64:i=n.visitUint64||n.visitInt;break;case l.Float:i=n.visitFloat;break;case l.Float16:i=n.visitFloat16||n.visitFloat;break;case l.Float32:i=n.visitFloat32||n.visitFloat;break;case l.Float64:i=n.visitFloat64||n.visitFloat;break;case l.Utf8:i=n.visitUtf8;break;case l.Binary:i=n.visitBinary;break;case l.FixedSizeBinary:i=n.visitFixedSizeBinary;break;case l.Date:i=n.visitDate;break;case l.DateDay:i=n.visitDateDay||n.visitDate;break;case l.DateMillisecond:i=n.visitDateMillisecond||n.visitDate;break;case l.Timestamp:i=n.visitTimestamp;break;case l.TimestampSecond:i=n.visitTimestampSecond||n.visitTimestamp;break;case l.TimestampMillisecond:i=n.visitTimestampMillisecond||n.visitTimestamp;break;case l.TimestampMicrosecond:i=n.visitTimestampMicrosecond||n.visitTimestamp;break;case l.TimestampNanosecond:i=n.visitTimestampNanosecond||n.visitTimestamp;break;case l.Time:i=n.visitTime;break;case l.TimeSecond:i=n.visitTimeSecond||n.visitTime;break;case l.TimeMillisecond:i=n.visitTimeMillisecond||n.visitTime;break;case l.TimeMicrosecond:i=n.visitTimeMicrosecond||n.visitTime;break;case l.TimeNanosecond:i=n.visitTimeNanosecond||n.visitTime;break;case l.Decimal:i=n.visitDecimal;break;case l.List:i=n.visitList;break;case l.Struct:i=n.visitStruct;break;case l.Union:i=n.visitUnion;break;case l.DenseUnion:i=n.visitDenseUnion||n.visitUnion;break;case l.SparseUnion:i=n.visitSparseUnion||n.visitUnion;break;case l.Dictionary:i=n.visitDictionary;break;case l.Interval:i=n.visitInterval;break;case l.IntervalDayTime:i=n.visitIntervalDayTime||n.visitInterval;break;case l.IntervalYearMonth:i=n.visitIntervalYearMonth||n.visitInterval;break;case l.FixedSizeList:i=n.visitFixedSizeList;break;case l.Map:i=n.visitMap;break}if(typeof i=="function")return i;if(!e)return()=>null;throw new Error(`Unrecognized type '${l[t]}'`)}function Nr(n){switch(n.typeId){case l.Null:return l.Null;case l.Int:{const{bitWidth:t,isSigned:e}=n;switch(t){case 8:return e?l.Int8:l.Uint8;case 16:return e?l.Int16:l.Uint16;case 32:return e?l.Int32:l.Uint32;case 64:return e?l.Int64:l.Uint64}return l.Int}case l.Float:switch(n.precision){case ht.HALF:return l.Float16;case ht.SINGLE:return l.Float32;case ht.DOUBLE:return l.Float64}return l.Float;case l.Binary:return l.Binary;case l.Utf8:return l.Utf8;case l.Bool:return l.Bool;case l.Decimal:return l.Decimal;case l.Time:switch(n.unit){case V.SECOND:return l.TimeSecond;case V.MILLISECOND:return l.TimeMillisecond;case V.MICROSECOND:return l.TimeMicrosecond;case V.NANOSECOND:return l.TimeNanosecond}return l.Time;case l.Timestamp:switch(n.unit){case V.SECOND:return l.TimestampSecond;case V.MILLISECOND:return l.TimestampMillisecond;case V.MICROSECOND:return l.TimestampMicrosecond;case V.NANOSECOND:return l.TimestampNanosecond}return l.Timestamp;case l.Date:switch(n.unit){case re.DAY:return l.DateDay;case re.MILLISECOND:return l.DateMillisecond}return l.Date;case l.Interval:switch(n.unit){case he.DAY_TIME:return l.IntervalDayTime;case he.YEAR_MONTH:return l.IntervalYearMonth}return l.Interval;case l.Map:return l.Map;case l.List:return l.List;case l.Struct:return l.Struct;case l.Union:switch(n.mode){case _t.Dense:return l.DenseUnion;case _t.Sparse:return l.SparseUnion}return l.Union;case l.FixedSizeBinary:return l.FixedSizeBinary;case l.FixedSizeList:return l.FixedSizeList;case l.Dictionary:return l.Dictionary}throw new Error(`Unrecognized type '${l[n.typeId]}'`)}R.prototype.visitInt8=null;R.prototype.visitInt16=null;R.prototype.visitInt32=null;R.prototype.visitInt64=null;R.prototype.visitUint8=null;R.prototype.visitUint16=null;R.prototype.visitUint32=null;R.prototype.visitUint64=null;R.prototype.visitFloat16=null;R.prototype.visitFloat32=null;R.prototype.visitFloat64=null;R.prototype.visitDateDay=null;R.prototype.visitDateMillisecond=null;R.prototype.visitTimestampSecond=null;R.prototype.visitTimestampMillisecond=null;R.prototype.visitTimestampMicrosecond=null;R.prototype.visitTimestampNanosecond=null;R.prototype.visitTimeSecond=null;R.prototype.visitTimeMillisecond=null;R.prototype.visitTimeMicrosecond=null;R.prototype.visitTimeNanosecond=null;R.prototype.visitDenseUnion=null;R.prototype.visitSparseUnion=null;R.prototype.visitIntervalDayTime=null;R.prototype.visitIntervalYearMonth=null;const Is=new Float64Array(1),Re=new Uint32Array(Is.buffer);function Bs(n){const t=(n&31744)>>10,e=(n&1023)/1024,i=Math.pow(-1,(n&32768)>>15);switch(t){case 31:return i*(e?Number.NaN:1/0);case 0:return i*(e?6103515625e-14*e:0)}return i*Math.pow(2,t-15)*(1+e)}function Ic(n){if(n!==n)return 32256;Is[0]=n;const t=(Re[1]&2147483648)>>16&65535;let e=Re[1]&2146435072,i=0;return e>=1089470464?Re[0]>0?e=31744:(e=(e&2080374784)>>16,i=(Re[1]&1048575)>>10):e<=1056964608?(i=1048576+(Re[1]&1048575),i=1048576+(i<<(e>>20)-998)>>21,e=0):(e=e-1056964608>>10,i=(Re[1]&1048575)+512>>10),t|e|i&65535}class I extends R{}function F(n){return(t,e,i)=>{if(t.setValid(e,i!=null))return n(t,e,i)}}const Bc=(n,t,e)=>{n[t]=Math.trunc(e/864e5)},Gi=(n,t,e)=>{n[t]=Math.trunc(e%4294967296),n[t+1]=Math.trunc(e/4294967296)},Oc=(n,t,e)=>{n[t]=Math.trunc(e*1e3%4294967296),n[t+1]=Math.trunc(e*1e3/4294967296)},Fc=(n,t,e)=>{n[t]=Math.trunc(e*1e6%4294967296),n[t+1]=Math.trunc(e*1e6/4294967296)},Os=(n,t,e,i)=>{if(e+1<t.length){const{[e]:r,[e+1]:s}=t;n.set(i.subarray(0,s-r),r)}},Uc=({offset:n,values:t},e,i)=>{const r=n+e;i?t[r>>3]|=1<<r%8:t[r>>3]&=~(1<<r%8)},se=({values:n},t,e)=>{n[t]=e},Hi=({values:n},t,e)=>{n[t]=e},Fs=({values:n},t,e)=>{n[t]=Ic(e)},Cc=(n,t,e)=>{switch(n.type.precision){case ht.HALF:return Fs(n,t,e);case ht.SINGLE:case ht.DOUBLE:return Hi(n,t,e)}},Us=({values:n},t,e)=>{Bc(n,t,e.valueOf())},Cs=({values:n},t,e)=>{Gi(n,t*2,e.valueOf())},Tc=({stride:n,values:t},e,i)=>{t.set(i.subarray(0,n),n*e)},Nc=({values:n,valueOffsets:t},e,i)=>Os(n,t,e,i),Ec=({values:n,valueOffsets:t},e,i)=>{Os(n,t,e,zi(i))},Rc=(n,t,e)=>{n.type.unit===re.DAY?Us(n,t,e):Cs(n,t,e)},Ts=({values:n},t,e)=>Gi(n,t*2,e/1e3),Ns=({values:n},t,e)=>Gi(n,t*2,e),Es=({values:n},t,e)=>Oc(n,t*2,e),Rs=({values:n},t,e)=>Fc(n,t*2,e),Dc=(n,t,e)=>{switch(n.type.unit){case V.SECOND:return Ts(n,t,e);case V.MILLISECOND:return Ns(n,t,e);case V.MICROSECOND:return Es(n,t,e);case V.NANOSECOND:return Rs(n,t,e)}},Ds=({values:n},t,e)=>{n[t]=e},Ms=({values:n},t,e)=>{n[t]=e},Vs=({values:n},t,e)=>{n[t]=e},Ls=({values:n},t,e)=>{n[t]=e},Mc=(n,t,e)=>{switch(n.type.unit){case V.SECOND:return Ds(n,t,e);case V.MILLISECOND:return Ms(n,t,e);case V.MICROSECOND:return Vs(n,t,e);case V.NANOSECOND:return Ls(n,t,e)}},Vc=({values:n,stride:t},e,i)=>{n.set(i.subarray(0,t),t*e)},Lc=(n,t,e)=>{const i=n.children[0],r=n.valueOffsets,s=Ut.getVisitFn(i);if(Array.isArray(e))for(let o=-1,a=r[t],c=r[t+1];a<c;)s(i,a++,e[++o]);else for(let o=-1,a=r[t],c=r[t+1];a<c;)s(i,a++,e.get(++o))},xc=(n,t,e)=>{const i=n.children[0],{valueOffsets:r}=n,s=Ut.getVisitFn(i);let{[t]:o,[t+1]:a}=r;const c=e instanceof Map?e.entries():Object.entries(e);for(const u of c)if(s(i,o,u),++o>=a)break},jc=(n,t)=>(e,i,r,s)=>i&&e(i,n,t[s]),kc=(n,t)=>(e,i,r,s)=>i&&e(i,n,t.get(s)),Qc=(n,t)=>(e,i,r,s)=>i&&e(i,n,t.get(r.name)),Pc=(n,t)=>(e,i,r,s)=>i&&e(i,n,t[r.name]),Kc=(n,t,e)=>{const i=n.type.children.map(s=>Ut.getVisitFn(s.type)),r=e instanceof Map?Qc(t,e):e instanceof k?kc(t,e):Array.isArray(e)?jc(t,e):Pc(t,e);n.type.children.forEach((s,o)=>r(i[o],n.children[o],s,o))},zc=(n,t,e)=>{n.type.mode===_t.Dense?xs(n,t,e):js(n,t,e)},xs=(n,t,e)=>{const i=n.type.typeIdToChildIndex[n.typeIds[t]],r=n.children[i];Ut.visit(r,n.valueOffsets[t],e)},js=(n,t,e)=>{const i=n.type.typeIdToChildIndex[n.typeIds[t]],r=n.children[i];Ut.visit(r,t,e)},qc=(n,t,e)=>{var i;(i=n.dictionary)===null||i===void 0||i.set(n.values[t],e)},Yc=(n,t,e)=>{n.type.unit===he.DAY_TIME?ks(n,t,e):Qs(n,t,e)},ks=({values:n},t,e)=>{n.set(e.subarray(0,2),2*t)},Qs=({values:n},t,e)=>{n[t]=e[0]*12+e[1]%12},Wc=(n,t,e)=>{const{stride:i}=n,r=n.children[0],s=Ut.getVisitFn(r);if(Array.isArray(e))for(let o=-1,a=t*i;++o<i;)s(r,a+o,e[o]);else for(let o=-1,a=t*i;++o<i;)s(r,a+o,e.get(o))};I.prototype.visitBool=F(Uc);I.prototype.visitInt=F(se);I.prototype.visitInt8=F(se);I.prototype.visitInt16=F(se);I.prototype.visitInt32=F(se);I.prototype.visitInt64=F(se);I.prototype.visitUint8=F(se);I.prototype.visitUint16=F(se);I.prototype.visitUint32=F(se);I.prototype.visitUint64=F(se);I.prototype.visitFloat=F(Cc);I.prototype.visitFloat16=F(Fs);I.prototype.visitFloat32=F(Hi);I.prototype.visitFloat64=F(Hi);I.prototype.visitUtf8=F(Ec);I.prototype.visitBinary=F(Nc);I.prototype.visitFixedSizeBinary=F(Tc);I.prototype.visitDate=F(Rc);I.prototype.visitDateDay=F(Us);I.prototype.visitDateMillisecond=F(Cs);I.prototype.visitTimestamp=F(Dc);I.prototype.visitTimestampSecond=F(Ts);I.prototype.visitTimestampMillisecond=F(Ns);I.prototype.visitTimestampMicrosecond=F(Es);I.prototype.visitTimestampNanosecond=F(Rs);I.prototype.visitTime=F(Mc);I.prototype.visitTimeSecond=F(Ds);I.prototype.visitTimeMillisecond=F(Ms);I.prototype.visitTimeMicrosecond=F(Vs);I.prototype.visitTimeNanosecond=F(Ls);I.prototype.visitDecimal=F(Vc);I.prototype.visitList=F(Lc);I.prototype.visitStruct=F(Kc);I.prototype.visitUnion=F(zc);I.prototype.visitDenseUnion=F(xs);I.prototype.visitSparseUnion=F(js);I.prototype.visitDictionary=F(qc);I.prototype.visitInterval=F(Yc);I.prototype.visitIntervalDayTime=F(ks);I.prototype.visitIntervalYearMonth=F(Qs);I.prototype.visitFixedSizeList=F(Wc);I.prototype.visitMap=F(xc);const Ut=new I,Tt=Symbol.for("parent"),Pe=Symbol.for("rowIndex");class Zi{constructor(t,e){return this[Tt]=t,this[Pe]=e,new Proxy(this,new Gc)}toArray(){return Object.values(this.toJSON())}toJSON(){const t=this[Pe],e=this[Tt],i=e.type.children,r={};for(let s=-1,o=i.length;++s<o;)r[i[s].name]=pt.visit(e.children[s],t);return r}toString(){return`{${[...this].map(([t,e])=>`${an(t)}: ${an(e)}`).join(", ")}}`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}[Symbol.iterator](){return new Jc(this[Tt],this[Pe])}}class Jc{constructor(t,e){this.childIndex=0,this.children=t.children,this.rowIndex=e,this.childFields=t.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){const t=this.childIndex;return t<this.numChildren?(this.childIndex=t+1,{done:!1,value:[this.childFields[t].name,pt.visit(this.children[t],this.rowIndex)]}):{done:!0,value:null}}}Object.defineProperties(Zi.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:"Row"},[Tt]:{writable:!0,enumerable:!1,configurable:!1,value:null},[Pe]:{writable:!0,enumerable:!1,configurable:!1,value:-1}});class Gc{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(t){return t[Tt].type.children.map(e=>e.name)}has(t,e){return t[Tt].type.children.findIndex(i=>i.name===e)!==-1}getOwnPropertyDescriptor(t,e){if(t[Tt].type.children.findIndex(i=>i.name===e)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(t,e){if(Reflect.has(t,e))return t[e];const i=t[Tt].type.children.findIndex(r=>r.name===e);if(i!==-1){const r=pt.visit(t[Tt].children[i],t[Pe]);return Reflect.set(t,e,r),r}}set(t,e,i){const r=t[Tt].type.children.findIndex(s=>s.name===e);return r!==-1?(Ut.visit(t[Tt].children[r],t[Pe],i),Reflect.set(t,e,i)):Reflect.has(t,e)||typeof e=="symbol"?Reflect.set(t,e,i):!1}}class _ extends R{}function B(n){return(t,e)=>t.getValid(e)?n(t,e):null}const Hc=(n,t)=>864e5*n[t],Xi=(n,t)=>4294967296*n[t+1]+(n[t]>>>0),Zc=(n,t)=>4294967296*(n[t+1]/1e3)+(n[t]>>>0)/1e3,Xc=(n,t)=>4294967296*(n[t+1]/1e6)+(n[t]>>>0)/1e6,Ps=n=>new Date(n),$c=(n,t)=>Ps(Hc(n,t)),tl=(n,t)=>Ps(Xi(n,t)),el=(n,t)=>null,Ks=(n,t,e)=>{if(e+1>=t.length)return null;const i=t[e],r=t[e+1];return n.subarray(i,r)},nl=({offset:n,values:t},e)=>{const i=n+e;return(t[i>>3]&1<<i%8)!==0},zs=({values:n},t)=>$c(n,t),qs=({values:n},t)=>tl(n,t*2),ge=({stride:n,values:t},e)=>t[n*e],il=({stride:n,values:t},e)=>Bs(t[n*e]),Ys=({values:n},t)=>n[t],rl=({stride:n,values:t},e)=>t.subarray(n*e,n*(e+1)),sl=({values:n,valueOffsets:t},e)=>Ks(n,t,e),ol=({values:n,valueOffsets:t},e)=>{const i=Ks(n,t,e);return i!==null?Ti(i):null},al=({values:n},t)=>n[t],cl=({type:n,values:t},e)=>n.precision!==ht.HALF?t[e]:Bs(t[e]),ll=(n,t)=>n.type.unit===re.DAY?zs(n,t):qs(n,t),Ws=({values:n},t)=>1e3*Xi(n,t*2),Js=({values:n},t)=>Xi(n,t*2),Gs=({values:n},t)=>Zc(n,t*2),Hs=({values:n},t)=>Xc(n,t*2),ul=(n,t)=>{switch(n.type.unit){case V.SECOND:return Ws(n,t);case V.MILLISECOND:return Js(n,t);case V.MICROSECOND:return Gs(n,t);case V.NANOSECOND:return Hs(n,t)}},Zs=({values:n},t)=>n[t],Xs=({values:n},t)=>n[t],$s=({values:n},t)=>n[t],to=({values:n},t)=>n[t],dl=(n,t)=>{switch(n.type.unit){case V.SECOND:return Zs(n,t);case V.MILLISECOND:return Xs(n,t);case V.MICROSECOND:return $s(n,t);case V.NANOSECOND:return to(n,t)}},hl=({values:n,stride:t},e)=>Ji.decimal(n.subarray(t*e,t*(e+1))),fl=(n,t)=>{const{valueOffsets:e,stride:i,children:r}=n,{[t*i]:s,[t*i+1]:o}=e,c=r[0].slice(s,o-s);return new k([c])},pl=(n,t)=>{const{valueOffsets:e,children:i}=n,{[t]:r,[t+1]:s}=e,o=i[0];return new $i(o.slice(r,s-r))},yl=(n,t)=>new Zi(n,t),Al=(n,t)=>n.type.mode===_t.Dense?eo(n,t):no(n,t),eo=(n,t)=>{const e=n.type.typeIdToChildIndex[n.typeIds[t]],i=n.children[e];return pt.visit(i,n.valueOffsets[t])},no=(n,t)=>{const e=n.type.typeIdToChildIndex[n.typeIds[t]],i=n.children[e];return pt.visit(i,t)},gl=(n,t)=>{var e;return(e=n.dictionary)===null||e===void 0?void 0:e.get(n.values[t])},ml=(n,t)=>n.type.unit===he.DAY_TIME?io(n,t):ro(n,t),io=({values:n},t)=>n.subarray(2*t,2*(t+1)),ro=({values:n},t)=>{const e=n[t],i=new Int32Array(2);return i[0]=Math.trunc(e/12),i[1]=Math.trunc(e%12),i},bl=(n,t)=>{const{stride:e,children:i}=n,s=i[0].slice(t*e,e);return new k([s])};_.prototype.visitNull=B(el);_.prototype.visitBool=B(nl);_.prototype.visitInt=B(al);_.prototype.visitInt8=B(ge);_.prototype.visitInt16=B(ge);_.prototype.visitInt32=B(ge);_.prototype.visitInt64=B(Ys);_.prototype.visitUint8=B(ge);_.prototype.visitUint16=B(ge);_.prototype.visitUint32=B(ge);_.prototype.visitUint64=B(Ys);_.prototype.visitFloat=B(cl);_.prototype.visitFloat16=B(il);_.prototype.visitFloat32=B(ge);_.prototype.visitFloat64=B(ge);_.prototype.visitUtf8=B(ol);_.prototype.visitBinary=B(sl);_.prototype.visitFixedSizeBinary=B(rl);_.prototype.visitDate=B(ll);_.prototype.visitDateDay=B(zs);_.prototype.visitDateMillisecond=B(qs);_.prototype.visitTimestamp=B(ul);_.prototype.visitTimestampSecond=B(Ws);_.prototype.visitTimestampMillisecond=B(Js);_.prototype.visitTimestampMicrosecond=B(Gs);_.prototype.visitTimestampNanosecond=B(Hs);_.prototype.visitTime=B(dl);_.prototype.visitTimeSecond=B(Zs);_.prototype.visitTimeMillisecond=B(Xs);_.prototype.visitTimeMicrosecond=B($s);_.prototype.visitTimeNanosecond=B(to);_.prototype.visitDecimal=B(hl);_.prototype.visitList=B(fl);_.prototype.visitStruct=B(yl);_.prototype.visitUnion=B(Al);_.prototype.visitDenseUnion=B(eo);_.prototype.visitSparseUnion=B(no);_.prototype.visitDictionary=B(gl);_.prototype.visitInterval=B(ml);_.prototype.visitIntervalDayTime=B(io);_.prototype.visitIntervalYearMonth=B(ro);_.prototype.visitFixedSizeList=B(bl);_.prototype.visitMap=B(pl);const pt=new _,Vt=Symbol.for("keys"),Ke=Symbol.for("vals");class $i{constructor(t){return this[Vt]=new k([t.children[0]]).memoize(),this[Ke]=t.children[1],new Proxy(this,new vl)}[Symbol.iterator](){return new _l(this[Vt],this[Ke])}get size(){return this[Vt].length}toArray(){return Object.values(this.toJSON())}toJSON(){const t=this[Vt],e=this[Ke],i={};for(let r=-1,s=t.length;++r<s;)i[t.get(r)]=pt.visit(e,r);return i}toString(){return`{${[...this].map(([t,e])=>`${an(t)}: ${an(e)}`).join(", ")}}`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}}class _l{constructor(t,e){this.keys=t,this.vals=e,this.keyIndex=0,this.numKeys=t.length}[Symbol.iterator](){return this}next(){const t=this.keyIndex;return t===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(t),pt.visit(this.vals,t)]})}}class vl{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(t){return t[Vt].toArray().map(String)}has(t,e){return t[Vt].includes(e)}getOwnPropertyDescriptor(t,e){if(t[Vt].indexOf(e)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(t,e){if(Reflect.has(t,e))return t[e];const i=t[Vt].indexOf(e);if(i!==-1){const r=pt.visit(Reflect.get(t,Ke),i);return Reflect.set(t,e,r),r}}set(t,e,i){const r=t[Vt].indexOf(e);return r!==-1?(Ut.visit(Reflect.get(t,Ke),r,i),Reflect.set(t,e,i)):Reflect.has(t,e)?Reflect.set(t,e,i):!1}}Object.defineProperties($i.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:"Row"},[Vt]:{writable:!0,enumerable:!1,configurable:!1,value:null},[Ke]:{writable:!0,enumerable:!1,configurable:!1,value:null}});let Er;function so(n,t,e,i){const{length:r=0}=n;let s=typeof t!="number"?0:t,o=typeof e!="number"?r:e;return s<0&&(s=(s%r+r)%r),o<0&&(o=(o%r+r)%r),o<s&&(Er=s,s=o,o=Er),o>r&&(o=r),i?i(n,s,o):[s,o]}const Rr=n=>n!==n;function $e(n){if(typeof n!=="object"||n===null)return Rr(n)?Rr:e=>e===n;if(n instanceof Date){const e=n.valueOf();return i=>i instanceof Date?i.valueOf()===e:!1}return ArrayBuffer.isView(n)?e=>e?pc(n,e):!1:n instanceof Map?Sl(n):Array.isArray(n)?wl(n):n instanceof k?Il(n):Bl(n,!0)}function wl(n){const t=[];for(let e=-1,i=n.length;++e<i;)t[e]=$e(n[e]);return li(t)}function Sl(n){let t=-1;const e=[];for(const i of n.values())e[++t]=$e(i);return li(e)}function Il(n){const t=[];for(let e=-1,i=n.length;++e<i;)t[e]=$e(n.get(e));return li(t)}function Bl(n,t=!1){const e=Object.keys(n);if(!t&&e.length===0)return()=>!1;const i=[];for(let r=-1,s=e.length;++r<s;)i[r]=$e(n[e[r]]);return li(i,e)}function li(n,t){return e=>{if(!e||typeof e!="object")return!1;switch(e.constructor){case Array:return Ol(n,e);case Map:return Dr(n,e,e.keys());case $i:case Zi:case Object:case void 0:return Dr(n,e,t||Object.keys(e))}return e instanceof k?Fl(n,e):!1}}function Ol(n,t){const e=n.length;if(t.length!==e)return!1;for(let i=-1;++i<e;)if(!n[i](t[i]))return!1;return!0}function Fl(n,t){const e=n.length;if(t.length!==e)return!1;for(let i=-1;++i<e;)if(!n[i](t.get(i)))return!1;return!0}function Dr(n,t,e){const i=e[Symbol.iterator](),r=t instanceof Map?t.keys():Object.keys(t)[Symbol.iterator](),s=t instanceof Map?t.values():Object.values(t)[Symbol.iterator]();let o=0;const a=n.length;let c=s.next(),u=i.next(),h=r.next();for(;o<a&&!u.done&&!h.done&&!c.done&&!(u.value!==h.value||!n[o](c.value));++o,u=i.next(),h=r.next(),c=s.next());return o===a&&u.done&&h.done&&c.done?!0:(i.return&&i.return(),r.return&&r.return(),s.return&&s.return(),!1)}function oo(n,t,e,i){return(e&1<<i)!==0}function Ul(n,t,e,i){return(e&1<<i)>>i}function tr(n,t,e){const i=e.byteLength+7&-8;if(n>0||e.byteLength<i){const r=new Uint8Array(i);return r.set(n%8===0?e.subarray(n>>3):qn(new er(e,n,t,null,oo)).subarray(0,i)),r}return e}function qn(n){const t=[];let e=0,i=0,r=0;for(const o of n)o&&(r|=1<<i),++i===8&&(t[e++]=r,r=i=0);(e===0||i>0)&&(t[e++]=r);const s=new Uint8Array(t.length+7&-8);return s.set(t),s}class er{constructor(t,e,i,r,s){this.bytes=t,this.length=i,this.context=r,this.get=s,this.bit=e%8,this.byteIndex=e>>3,this.byte=t[this.byteIndex++],this.index=0}next(){return this.index<this.length?(this.bit===8&&(this.bit=0,this.byte=this.bytes[this.byteIndex++]),{value:this.get(this.context,this.index++,this.byte,this.bit++)}):{done:!0,value:null}}[Symbol.iterator](){return this}}function Di(n,t,e){if(e-t<=0)return 0;if(e-t<8){let s=0;for(const o of new er(n,t,e-t,n,Ul))s+=o;return s}const i=e>>3<<3,r=t+(t%8===0?0:8-t%8);return Di(n,t,r)+Di(n,i,e)+Cl(n,r>>3,i-r>>3)}function Cl(n,t,e){let i=0,r=Math.trunc(t);const s=new DataView(n.buffer,n.byteOffset,n.byteLength),o=e===void 0?n.byteLength:r+e;for(;o-r>=4;)i+=Ii(s.getUint32(r)),r+=4;for(;o-r>=2;)i+=Ii(s.getUint16(r)),r+=2;for(;o-r>=1;)i+=Ii(s.getUint8(r)),r+=1;return i}function Ii(n){let t=Math.trunc(n);return t=t-(t>>>1&1431655765),t=(t&858993459)+(t>>>2&858993459),(t+(t>>>4)&252645135)*16843009>>>24}const Tl=-1;class Y{constructor(t,e,i,r,s,o=[],a){this.type=t,this.children=o,this.dictionary=a,this.offset=Math.floor(Math.max(e||0,0)),this.length=Math.floor(Math.max(i||0,0)),this._nullCount=Math.floor(Math.max(r||0,-1));let c;s instanceof Y?(this.stride=s.stride,this.values=s.values,this.typeIds=s.typeIds,this.nullBitmap=s.nullBitmap,this.valueOffsets=s.valueOffsets):(this.stride=Xt(t),s&&((c=s[0])&&(this.valueOffsets=c),(c=s[1])&&(this.values=c),(c=s[2])&&(this.nullBitmap=c),(c=s[3])&&(this.typeIds=c))),this.nullable=this._nullCount!==0&&this.nullBitmap&&this.nullBitmap.byteLength>0}get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get byteLength(){let t=0;const{valueOffsets:e,values:i,nullBitmap:r,typeIds:s}=this;return e&&(t+=e.byteLength),i&&(t+=i.byteLength),r&&(t+=r.byteLength),s&&(t+=s.byteLength),this.children.reduce((o,a)=>o+a.byteLength,t)}get nullCount(){let t=this._nullCount,e;return t<=Tl&&(e=this.nullBitmap)&&(this._nullCount=t=this.length-Di(e,this.offset,this.offset+this.length)),t}getValid(t){if(this.nullable&&this.nullCount>0){const e=this.offset+t;return(this.nullBitmap[e>>3]&1<<e%8)!==0}return!0}setValid(t,e){if(!this.nullable)return e;if(!this.nullBitmap||this.nullBitmap.byteLength<=t>>3){const{nullBitmap:c}=this._changeLengthAndBackfillNullBitmap(this.length);Object.assign(this,{nullBitmap:c,_nullCount:0})}const{nullBitmap:i,offset:r}=this,s=r+t>>3,o=(r+t)%8,a=i[s]>>o&1;return e?a===0&&(i[s]|=1<<o,this._nullCount=this.nullCount+1):a===1&&(i[s]&=~(1<<o),this._nullCount=this.nullCount-1),e}clone(t=this.type,e=this.offset,i=this.length,r=this._nullCount,s=this,o=this.children){return new Y(t,e,i,r,s,o,this.dictionary)}slice(t,e){const{stride:i,typeId:r,children:s}=this,o=+(this._nullCount===0)-1,a=r===16?i:1,c=this._sliceBuffers(t,e,i,r);return this.clone(this.type,this.offset+t,e,o,c,s.length===0||this.valueOffsets?s:this._sliceChildren(s,a*t,a*e))}_changeLengthAndBackfillNullBitmap(t){if(this.typeId===l.Null)return this.clone(this.type,0,t,0);const{length:e,nullCount:i}=this,r=new Uint8Array((t+63&-64)>>3).fill(255,0,e>>3);r[e>>3]=(1<<e-(e&-8))-1,i>0&&r.set(tr(this.offset,e,this.nullBitmap),0);const s=this.buffers;return s[Zt.VALIDITY]=r,this.clone(this.type,0,t,i+(t-e),s)}_sliceBuffers(t,e,i,r){let s;const{buffers:o}=this;return(s=o[Zt.TYPE])&&(o[Zt.TYPE]=s.subarray(t,t+e)),(s=o[Zt.OFFSET])&&(o[Zt.OFFSET]=s.subarray(t,t+e+1))||(s=o[Zt.DATA])&&(o[Zt.DATA]=r===6?s:s.subarray(i*t,i*(t+e))),o}_sliceChildren(t,e,i){return t.map(r=>r.slice(e,i))}}Y.prototype.children=Object.freeze([]);class rn extends R{visit(t){return this.getVisitFn(t.type).call(this,t)}visitNull(t){const{["type"]:e,["offset"]:i=0,["length"]:r=0}=t;return new Y(e,i,r,0)}visitBool(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length>>3,["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitInt(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length,["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitFloat(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length,["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitUtf8(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.data),s=M(t.nullBitmap),o=tn(t.valueOffsets),{["length"]:a=o.length-1,["nullCount"]:c=t.nullBitmap?-1:0}=t;return new Y(e,i,a,c,[o,r,s])}visitBinary(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.data),s=M(t.nullBitmap),o=tn(t.valueOffsets),{["length"]:a=o.length-1,["nullCount"]:c=t.nullBitmap?-1:0}=t;return new Y(e,i,a,c,[o,r,s])}visitFixedSizeBinary(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitDate(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitTimestamp(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitTime(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitDecimal(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitList(t){const{["type"]:e,["offset"]:i=0,["child"]:r}=t,s=M(t.nullBitmap),o=tn(t.valueOffsets),{["length"]:a=o.length-1,["nullCount"]:c=t.nullBitmap?-1:0}=t;return new Y(e,i,a,c,[o,void 0,s],[r])}visitStruct(t){const{["type"]:e,["offset"]:i=0,["children"]:r=[]}=t,s=M(t.nullBitmap),{length:o=r.reduce((c,{length:u})=>Math.max(c,u),0),nullCount:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,void 0,s],r)}visitUnion(t){const{["type"]:e,["offset"]:i=0,["children"]:r=[]}=t,s=M(t.nullBitmap),o=z(e.ArrayType,t.typeIds),{["length"]:a=o.length,["nullCount"]:c=t.nullBitmap?-1:0}=t;if(b.isSparseUnion(e))return new Y(e,i,a,c,[void 0,void 0,s,o],r);const u=tn(t.valueOffsets);return new Y(e,i,a,c,[u,void 0,s,o],r)}visitDictionary(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.indices.ArrayType,t.data),{["dictionary"]:o=new k([new rn().visit({type:e.dictionary})])}=t,{["length"]:a=s.length,["nullCount"]:c=t.nullBitmap?-1:0}=t;return new Y(e,i,a,c,[void 0,s,r],[],o)}visitInterval(t){const{["type"]:e,["offset"]:i=0}=t,r=M(t.nullBitmap),s=z(e.ArrayType,t.data),{["length"]:o=s.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,s,r])}visitFixedSizeList(t){const{["type"]:e,["offset"]:i=0,["child"]:r=new rn().visit({type:e.valueType})}=t,s=M(t.nullBitmap),{["length"]:o=r.length/Xt(e),["nullCount"]:a=t.nullBitmap?-1:0}=t;return new Y(e,i,o,a,[void 0,void 0,s],[r])}visitMap(t){const{["type"]:e,["offset"]:i=0,["child"]:r=new rn().visit({type:e.childType})}=t,s=M(t.nullBitmap),o=tn(t.valueOffsets),{["length"]:a=o.length-1,["nullCount"]:c=t.nullBitmap?-1:0}=t;return new Y(e,i,a,c,[o,void 0,s],[r])}}function E(n){return new rn().visit(n)}class Mr{constructor(t=0,e){this.numChunks=t,this.getChunkIterator=e,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndex<this.numChunks;){const t=this.chunkIterator.next();if(!t.done)return t;++this.chunkIndex<this.numChunks&&(this.chunkIterator=this.getChunkIterator(this.chunkIndex))}return{done:!0,value:null}}[Symbol.iterator](){return this}}function ao(n){return n.reduce((t,e)=>t+e.nullCount,0)}function co(n){return n.reduce((t,e,i)=>(t[i+1]=t[i]+e.length,t),new Uint32Array(n.length+1))}function lo(n,t,e,i){const r=[];for(let s=-1,o=n.length;++s<o;){const a=n[s],c=t[s],{length:u}=a;if(c>=i)break;if(e>=c+u)continue;if(c>=e&&c+u<=i){r.push(a);continue}const h=Math.max(0,e-c),p=Math.min(i-c,u);r.push(a.slice(h,p-h))}return r.length===0&&r.push(n[0].slice(0,0)),r}function nr(n,t,e,i){let r=0,s=0,o=t.length-1;do{if(r>=o-1)return e<t[o]?i(n,r,e-t[r]):null;s=r+Math.trunc((o-r)*.5),e<t[s]?o=s:r=s}while(r<o)}function ir(n,t){return n.getValid(t)}function ze(n){function t(e,i,r){return n(e[i],r)}return function(e){const i=this.data;return nr(i,this._offsets,e,t)}}function uo(n){let t;function e(i,r,s){return n(i[r],s,t)}return function(i,r){const s=this.data;t=r;const o=nr(s,this._offsets,i,e);return t=void 0,o}}function ho(n){let t;function e(i,r,s){let o=s,a=0,c=0;for(let u=r-1,h=i.length;++u<h;){const p=i[u];if(~(a=n(p,t,o)))return c+a;o=0,c+=p.length}return-1}return function(i,r){t=i;const s=this.data,o=typeof r!="number"?e(s,0,0):nr(s,this._offsets,r,e);return t=void 0,o}}class v extends R{}function Nl(n,t){return t===null&&n.length>0?0:-1}function El(n,t){const{nullBitmap:e}=n;if(!e||n.nullCount<=0)return-1;let i=0;for(const r of new er(e,n.offset+(t||0),n.length,e,oo)){if(!r)return i;++i}return-1}function N(n,t,e){if(t===void 0)return-1;if(t===null)return El(n,e);const i=pt.getVisitFn(n),r=$e(t);for(let s=(e||0)-1,o=n.length;++s<o;)if(r(i(n,s)))return s;return-1}function fo(n,t,e){const i=pt.getVisitFn(n),r=$e(t);for(let s=(e||0)-1,o=n.length;++s<o;)if(r(i(n,s)))return s;return-1}v.prototype.visitNull=Nl;v.prototype.visitBool=N;v.prototype.visitInt=N;v.prototype.visitInt8=N;v.prototype.visitInt16=N;v.prototype.visitInt32=N;v.prototype.visitInt64=N;v.prototype.visitUint8=N;v.prototype.visitUint16=N;v.prototype.visitUint32=N;v.prototype.visitUint64=N;v.prototype.visitFloat=N;v.prototype.visitFloat16=N;v.prototype.visitFloat32=N;v.prototype.visitFloat64=N;v.prototype.visitUtf8=N;v.prototype.visitBinary=N;v.prototype.visitFixedSizeBinary=N;v.prototype.visitDate=N;v.prototype.visitDateDay=N;v.prototype.visitDateMillisecond=N;v.prototype.visitTimestamp=N;v.prototype.visitTimestampSecond=N;v.prototype.visitTimestampMillisecond=N;v.prototype.visitTimestampMicrosecond=N;v.prototype.visitTimestampNanosecond=N;v.prototype.visitTime=N;v.prototype.visitTimeSecond=N;v.prototype.visitTimeMillisecond=N;v.prototype.visitTimeMicrosecond=N;v.prototype.visitTimeNanosecond=N;v.prototype.visitDecimal=N;v.prototype.visitList=N;v.prototype.visitStruct=N;v.prototype.visitUnion=N;v.prototype.visitDenseUnion=fo;v.prototype.visitSparseUnion=fo;v.prototype.visitDictionary=N;v.prototype.visitInterval=N;v.prototype.visitIntervalDayTime=N;v.prototype.visitIntervalYearMonth=N;v.prototype.visitFixedSizeList=N;v.prototype.visitMap=N;const Yn=new v;class w extends R{}function O(n){const{type:t}=n;if(n.nullCount===0&&n.stride===1&&(t.typeId===l.Timestamp||t instanceof pe&&t.bitWidth!==64||t instanceof dn&&t.bitWidth!==64||t instanceof un&&t.precision!==ht.HALF))return new Mr(n.data.length,i=>{const r=n.data[i];return r.values.subarray(0,r.length)[Symbol.iterator]()});let e=0;return new Mr(n.data.length,i=>{const s=n.data[i].length,o=n.slice(e,e+s);return e+=s,new Rl(o)})}class Rl{constructor(t){this.vector=t,this.index=0}next(){return this.index<this.vector.length?{value:this.vector.get(this.index++)}:{done:!0,value:null}}[Symbol.iterator](){return this}}w.prototype.visitNull=O;w.prototype.visitBool=O;w.prototype.visitInt=O;w.prototype.visitInt8=O;w.prototype.visitInt16=O;w.prototype.visitInt32=O;w.prototype.visitInt64=O;w.prototype.visitUint8=O;w.prototype.visitUint16=O;w.prototype.visitUint32=O;w.prototype.visitUint64=O;w.prototype.visitFloat=O;w.prototype.visitFloat16=O;w.prototype.visitFloat32=O;w.prototype.visitFloat64=O;w.prototype.visitUtf8=O;w.prototype.visitBinary=O;w.prototype.visitFixedSizeBinary=O;w.prototype.visitDate=O;w.prototype.visitDateDay=O;w.prototype.visitDateMillisecond=O;w.prototype.visitTimestamp=O;w.prototype.visitTimestampSecond=O;w.prototype.visitTimestampMillisecond=O;w.prototype.visitTimestampMicrosecond=O;w.prototype.visitTimestampNanosecond=O;w.prototype.visitTime=O;w.prototype.visitTimeSecond=O;w.prototype.visitTimeMillisecond=O;w.prototype.visitTimeMicrosecond=O;w.prototype.visitTimeNanosecond=O;w.prototype.visitDecimal=O;w.prototype.visitList=O;w.prototype.visitStruct=O;w.prototype.visitUnion=O;w.prototype.visitDenseUnion=O;w.prototype.visitSparseUnion=O;w.prototype.visitDictionary=O;w.prototype.visitInterval=O;w.prototype.visitIntervalDayTime=O;w.prototype.visitIntervalYearMonth=O;w.prototype.visitFixedSizeList=O;w.prototype.visitMap=O;const rr=new w,Dl=(n,t)=>n+t;class me extends R{visitNull(t,e){return 0}visitInt(t,e){return t.type.bitWidth/8}visitFloat(t,e){return t.type.ArrayType.BYTES_PER_ELEMENT}visitBool(t,e){return 1/8}visitDecimal(t,e){return t.type.bitWidth/8}visitDate(t,e){return(t.type.unit+1)*4}visitTime(t,e){return t.type.bitWidth/8}visitTimestamp(t,e){return t.type.unit===V.SECOND?4:8}visitInterval(t,e){return(t.type.unit+1)*4}visitStruct(t,e){return t.children.reduce((i,r)=>i+qt.visit(r,e),0)}visitFixedSizeBinary(t,e){return t.type.byteWidth}visitMap(t,e){return 8+t.children.reduce((i,r)=>i+qt.visit(r,e),0)}visitDictionary(t,e){var i;return t.type.indices.bitWidth/8+(((i=t.dictionary)===null||i===void 0?void 0:i.getByteLength(t.values[e]))||0)}}const Ml=({valueOffsets:n},t)=>8+(n[t+1]-n[t]),Vl=({valueOffsets:n},t)=>8+(n[t+1]-n[t]),Ll=({valueOffsets:n,stride:t,children:e},i)=>{const r=e[0],{[i*t]:s}=n,{[i*t+1]:o}=n,a=qt.getVisitFn(r.type),c=r.slice(s,o-s);let u=8;for(let h=-1,p=o-s;++h<p;)u+=a(c,h);return u},xl=({stride:n,children:t},e)=>{const i=t[0],r=i.slice(e*n,n),s=qt.getVisitFn(i.type);let o=0;for(let a=-1,c=r.length;++a<c;)o+=s(r,a);return o},jl=(n,t)=>n.type.mode===_t.Dense?po(n,t):yo(n,t),po=({type:n,children:t,typeIds:e,valueOffsets:i},r)=>{const s=n.typeIdToChildIndex[e[r]];return 8+qt.visit(t[s],i[r])},yo=({children:n},t)=>4+qt.visitMany(n,n.map(()=>t)).reduce(Dl,0);me.prototype.visitUtf8=Ml;me.prototype.visitBinary=Vl;me.prototype.visitList=Ll;me.prototype.visitFixedSizeList=xl;me.prototype.visitUnion=jl;me.prototype.visitDenseUnion=po;me.prototype.visitSparseUnion=yo;const qt=new me;var Ao;const go={},mo={};class k{constructor(t){var e,i,r;const s=t[0]instanceof k?t.flatMap(a=>a.data):t;if(s.length===0||s.some(a=>!(a instanceof Y)))throw new TypeError("Vector constructor expects an Array of Data instances.");const o=(e=s[0])===null||e===void 0?void 0:e.type;switch(s.length){case 0:this._offsets=[0];break;case 1:{const{get:a,set:c,indexOf:u,byteLength:h}=go[o.typeId],p=s[0];this.isValid=g=>ir(p,g),this.get=g=>a(p,g),this.set=(g,A)=>c(p,g,A),this.indexOf=g=>u(p,g),this.getByteLength=g=>h(p,g),this._offsets=[0,p.length];break}default:Object.setPrototypeOf(this,mo[o.typeId]),this._offsets=co(s);break}this.data=s,this.type=o,this.stride=Xt(o),this.numChildren=(r=(i=o.children)===null||i===void 0?void 0:i.length)!==null&&r!==void 0?r:0,this.length=this._offsets[this._offsets.length-1]}get byteLength(){return this._byteLength===-1&&(this._byteLength=this.data.reduce((t,e)=>t+e.byteLength,0)),this._byteLength}get nullCount(){return this._nullCount===-1&&(this._nullCount=ao(this.data)),this._nullCount}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return`${this.VectorName}<${this.type[Symbol.toStringTag]}>`}get VectorName(){return`${l[this.type.typeId]}Vector`}isValid(t){return!1}get(t){return null}set(t,e){}indexOf(t,e){return-1}includes(t,e){return this.indexOf(t,e)>0}getByteLength(t){return 0}[Symbol.iterator](){return rr.visit(this)}concat(...t){return new k(this.data.concat(t.flatMap(e=>e.data).flat(Number.POSITIVE_INFINITY)))}slice(t,e){return new k(so(this,t,e,({data:i,_offsets:r},s,o)=>lo(i,r,s,o)))}toJSON(){return[...this]}toArray(){const{type:t,data:e,length:i,stride:r,ArrayType:s}=this;switch(t.typeId){case l.Int:case l.Float:case l.Decimal:case l.Time:case l.Timestamp:switch(e.length){case 0:return new s;case 1:return e[0].values.subarray(0,i*r);default:return e.reduce((o,{values:a,length:c})=>(o.array.set(a.subarray(0,c*r),o.offset),o.offset+=c*r,o),{array:new s(i*r),offset:0}).array}}return[...this]}toString(){return`[${[...this].join(",")}]`}getChild(t){var e;return this.getChildAt((e=this.type.children)===null||e===void 0?void 0:e.findIndex(i=>i.name===t))}getChildAt(t){return t>-1&&t<this.numChildren?new k(this.data.map(({children:e})=>e[t])):null}get isMemoized(){return b.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(b.isDictionary(this.type)){const t=new Wn(this.data[0].dictionary),e=this.data.map(i=>{const r=i.clone();return r.dictionary=t,r});return new k(e)}return new Wn(this)}unmemoize(){if(b.isDictionary(this.type)&&this.isMemoized){const t=this.data[0].dictionary.unmemoize(),e=this.data.map(i=>{const r=i.clone();return r.dictionary=t,r});return new k(e)}return this}}Ao=Symbol.toStringTag;k[Ao]=(n=>{n.type=b.prototype,n.data=[],n.length=0,n.stride=1,n.numChildren=0,n._nullCount=-1,n._byteLength=-1,n._offsets=new Uint32Array([0]),n[Symbol.isConcatSpreadable]=!0;const t=Object.keys(l).map(e=>l[e]).filter(e=>typeof e=="number"&&e!==l.NONE);for(const e of t){const i=pt.getVisitFnByTypeId(e),r=Ut.getVisitFnByTypeId(e),s=Yn.getVisitFnByTypeId(e),o=qt.getVisitFnByTypeId(e);go[e]={get:i,set:r,indexOf:s,byteLength:o},mo[e]=Object.create(n,{isValid:{value:ze(ir)},get:{value:ze(pt.getVisitFnByTypeId(e))},set:{value:uo(Ut.getVisitFnByTypeId(e))},indexOf:{value:ho(Yn.getVisitFnByTypeId(e))},getByteLength:{value:ze(qt.getVisitFnByTypeId(e))}})}return"Vector"})(k.prototype);class Wn extends k{constructor(t){super(t.data);const e=this.get,i=this.set,r=this.slice,s=new Array(this.length);Object.defineProperty(this,"get",{value(o){const a=s[o];if(a!==void 0)return a;const c=e.call(this,o);return s[o]=c,c}}),Object.defineProperty(this,"set",{value(o,a){i.call(this,o,a),s[o]=a}}),Object.defineProperty(this,"slice",{value:(o,a)=>new Wn(r.call(this,o,a))}),Object.defineProperty(this,"isMemoized",{value:!0}),Object.defineProperty(this,"unmemoize",{value:()=>new k(this.data)}),Object.defineProperty(this,"memoize",{value:()=>this})}}class Mi{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}offset(){return this.bb.readInt64(this.bb_pos)}metaDataLength(){return this.bb.readInt32(this.bb_pos+8)}bodyLength(){return this.bb.readInt64(this.bb_pos+16)}static sizeOf(){return 24}static createBlock(t,e,i,r){return t.prep(8,24),t.writeInt64(r),t.pad(4),t.writeInt32(i),t.writeInt64(e),t.offset()}}const Bi=2,Lt=4,te=4,q=4,ce=new Int32Array(2),Vr=new Float32Array(ce.buffer),Lr=new Float64Array(ce.buffer),In=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;let ne=class Vi{constructor(t,e){this.low=t|0,this.high=e|0}static create(t,e){return t==0&&e==0?Vi.ZERO:new Vi(t,e)}toFloat64(){return(this.low>>>0)+this.high*4294967296}equals(t){return this.low==t.low&&this.high==t.high}};ne.ZERO=new ne(0,0);var Li;(function(n){n[n.UTF8_BYTES=1]="UTF8_BYTES",n[n.UTF16_STRING=2]="UTF16_STRING"})(Li||(Li={}));let Ye=class bo{constructor(t){this.bytes_=t,this.position_=0}static allocate(t){return new bo(new Uint8Array(t))}clear(){this.position_=0}bytes(){return this.bytes_}position(){return this.position_}setPosition(t){this.position_=t}capacity(){return this.bytes_.length}readInt8(t){return this.readUint8(t)<<24>>24}readUint8(t){return this.bytes_[t]}readInt16(t){return this.readUint16(t)<<16>>16}readUint16(t){return this.bytes_[t]|this.bytes_[t+1]<<8}readInt32(t){return this.bytes_[t]|this.bytes_[t+1]<<8|this.bytes_[t+2]<<16|this.bytes_[t+3]<<24}readUint32(t){return this.readInt32(t)>>>0}readInt64(t){return new ne(this.readInt32(t),this.readInt32(t+4))}readUint64(t){return new ne(this.readUint32(t),this.readUint32(t+4))}readFloat32(t){return ce[0]=this.readInt32(t),Vr[0]}readFloat64(t){return ce[In?0:1]=this.readInt32(t),ce[In?1:0]=this.readInt32(t+4),Lr[0]}writeInt8(t,e){this.bytes_[t]=e}writeUint8(t,e){this.bytes_[t]=e}writeInt16(t,e){this.bytes_[t]=e,this.bytes_[t+1]=e>>8}writeUint16(t,e){this.bytes_[t]=e,this.bytes_[t+1]=e>>8}writeInt32(t,e){this.bytes_[t]=e,this.bytes_[t+1]=e>>8,this.bytes_[t+2]=e>>16,this.bytes_[t+3]=e>>24}writeUint32(t,e){this.bytes_[t]=e,this.bytes_[t+1]=e>>8,this.bytes_[t+2]=e>>16,this.bytes_[t+3]=e>>24}writeInt64(t,e){this.writeInt32(t,e.low),this.writeInt32(t+4,e.high)}writeUint64(t,e){this.writeUint32(t,e.low),this.writeUint32(t+4,e.high)}writeFloat32(t,e){Vr[0]=e,this.writeInt32(t,ce[0])}writeFloat64(t,e){Lr[0]=e,this.writeInt32(t,ce[In?0:1]),this.writeInt32(t+4,ce[In?1:0])}getBufferIdentifier(){if(this.bytes_.length<this.position_+Lt+te)throw new Error("FlatBuffers: ByteBuffer is too short to contain an identifier.");let t="";for(let e=0;e<te;e++)t+=String.fromCharCode(this.readInt8(this.position_+Lt+e));return t}__offset(t,e){const i=t-this.readInt32(t);return e<this.readInt16(i)?this.readInt16(i+e):0}__union(t,e){return t.bb_pos=e+this.readInt32(e),t.bb=this,t}__string(t,e){t+=this.readInt32(t);const i=this.readInt32(t);let r="",s=0;if(t+=Lt,e===Li.UTF8_BYTES)return this.bytes_.subarray(t,t+i);for(;s<i;){let o;const a=this.readUint8(t+s++);if(a<192)o=a;else{const c=this.readUint8(t+s++);if(a<224)o=(a&31)<<6|c&63;else{const u=this.readUint8(t+s++);if(a<240)o=(a&15)<<12|(c&63)<<6|u&63;else{const h=this.readUint8(t+s++);o=(a&7)<<18|(c&63)<<12|(u&63)<<6|h&63}}}o<65536?r+=String.fromCharCode(o):(o-=65536,r+=String.fromCharCode((o>>10)+55296,(o&1023)+56320))}return r}__union_with_string(t,e){return typeof t=="string"?this.__string(e):this.__union(t,e)}__indirect(t){return t+this.readInt32(t)}__vector(t){return t+this.readInt32(t)+Lt}__vector_len(t){return this.readInt32(t+this.readInt32(t))}__has_identifier(t){if(t.length!=te)throw new Error("FlatBuffers: file identifier must be length "+te);for(let e=0;e<te;e++)if(t.charCodeAt(e)!=this.readInt8(this.position()+Lt+e))return!1;return!0}createLong(t,e){return ne.create(t,e)}createScalarList(t,e){const i=[];for(let r=0;r<e;++r)t(r)!==null&&i.push(t(r));return i}createObjList(t,e){const i=[];for(let r=0;r<e;++r){const s=t(r);s!==null&&i.push(s.unpack())}return i}},_o=class vo{constructor(t){this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1,this.string_maps=null;let e;t?e=t:e=1024,this.bb=Ye.allocate(e),this.space=e}clear(){this.bb.clear(),this.space=this.bb.capacity(),this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1,this.string_maps=null}forceDefaults(t){this.force_defaults=t}dataBuffer(){return this.bb}asUint8Array(){return this.bb.bytes().subarray(this.bb.position(),this.bb.position()+this.offset())}prep(t,e){t>this.minalign&&(this.minalign=t);const i=~(this.bb.capacity()-this.space+e)+1&t-1;for(;this.space<i+t+e;){const r=this.bb.capacity();this.bb=vo.growByteBuffer(this.bb),this.space+=this.bb.capacity()-r}this.pad(i)}pad(t){for(let e=0;e<t;e++)this.bb.writeInt8(--this.space,0)}writeInt8(t){this.bb.writeInt8(this.space-=1,t)}writeInt16(t){this.bb.writeInt16(this.space-=2,t)}writeInt32(t){this.bb.writeInt32(this.space-=4,t)}writeInt64(t){this.bb.writeInt64(this.space-=8,t)}writeFloat32(t){this.bb.writeFloat32(this.space-=4,t)}writeFloat64(t){this.bb.writeFloat64(this.space-=8,t)}addInt8(t){this.prep(1,0),this.writeInt8(t)}addInt16(t){this.prep(2,0),this.writeInt16(t)}addInt32(t){this.prep(4,0),this.writeInt32(t)}addInt64(t){this.prep(8,0),this.writeInt64(t)}addFloat32(t){this.prep(4,0),this.writeFloat32(t)}addFloat64(t){this.prep(8,0),this.writeFloat64(t)}addFieldInt8(t,e,i){(this.force_defaults||e!=i)&&(this.addInt8(e),this.slot(t))}addFieldInt16(t,e,i){(this.force_defaults||e!=i)&&(this.addInt16(e),this.slot(t))}addFieldInt32(t,e,i){(this.force_defaults||e!=i)&&(this.addInt32(e),this.slot(t))}addFieldInt64(t,e,i){(this.force_defaults||!e.equals(i))&&(this.addInt64(e),this.slot(t))}addFieldFloat32(t,e,i){(this.force_defaults||e!=i)&&(this.addFloat32(e),this.slot(t))}addFieldFloat64(t,e,i){(this.force_defaults||e!=i)&&(this.addFloat64(e),this.slot(t))}addFieldOffset(t,e,i){(this.force_defaults||e!=i)&&(this.addOffset(e),this.slot(t))}addFieldStruct(t,e,i){e!=i&&(this.nested(e),this.slot(t))}nested(t){if(t!=this.offset())throw new Error("FlatBuffers: struct must be serialized inline.")}notNested(){if(this.isNested)throw new Error("FlatBuffers: object serialization must not be nested.")}slot(t){this.vtable!==null&&(this.vtable[t]=this.offset())}offset(){return this.bb.capacity()-this.space}static growByteBuffer(t){const e=t.capacity();if(e&3221225472)throw new Error("FlatBuffers: cannot grow buffer beyond 2 gigabytes.");const i=e<<1,r=Ye.allocate(i);return r.setPosition(i-e),r.bytes().set(t.bytes(),i-e),r}addOffset(t){this.prep(Lt,0),this.writeInt32(this.offset()-t+Lt)}startObject(t){this.notNested(),this.vtable==null&&(this.vtable=[]),this.vtable_in_use=t;for(let e=0;e<t;e++)this.vtable[e]=0;this.isNested=!0,this.object_start=this.offset()}endObject(){if(this.vtable==null||!this.isNested)throw new Error("FlatBuffers: endObject called without startObject");this.addInt32(0);const t=this.offset();let e=this.vtable_in_use-1;for(;e>=0&&this.vtable[e]==0;e--);const i=e+1;for(;e>=0;e--)this.addInt16(this.vtable[e]!=0?t-this.vtable[e]:0);const r=2;this.addInt16(t-this.object_start);const s=(i+r)*Bi;this.addInt16(s);let o=0;const a=this.space;t:for(e=0;e<this.vtables.length;e++){const c=this.bb.capacity()-this.vtables[e];if(s==this.bb.readInt16(c)){for(let u=Bi;u<s;u+=Bi)if(this.bb.readInt16(a+u)!=this.bb.readInt16(c+u))continue t;o=this.vtables[e];break}}return o?(this.space=this.bb.capacity()-t,this.bb.writeInt32(this.space,o-t)):(this.vtables.push(this.offset()),this.bb.writeInt32(this.bb.capacity()-t,this.offset()-t)),this.isNested=!1,t}finish(t,e,i){const r=i?q:0;if(e){const s=e;if(this.prep(this.minalign,Lt+te+r),s.length!=te)throw new Error("FlatBuffers: file identifier must be length "+te);for(let o=te-1;o>=0;o--)this.writeInt8(s.charCodeAt(o))}this.prep(this.minalign,Lt+r),this.addOffset(t),r&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)}finishSizePrefixed(t,e){this.finish(t,e,!0)}requiredField(t,e){const i=this.bb.capacity()-t,r=i-this.bb.readInt32(i);if(!(this.bb.readInt16(r+e)!=0))throw new Error("FlatBuffers: field "+e+" must be set")}startVector(t,e,i){this.notNested(),this.vector_num_elems=e,this.prep(Lt,t*e),this.prep(i,t*e)}endVector(){return this.writeInt32(this.vector_num_elems),this.offset()}createSharedString(t){if(!t)return 0;if(this.string_maps||(this.string_maps=new Map),this.string_maps.has(t))return this.string_maps.get(t);const e=this.createString(t);return this.string_maps.set(t,e),e}createString(t){if(!t)return 0;let e;if(t instanceof Uint8Array)e=t;else{e=[];let i=0;for(;i<t.length;){let r;const s=t.charCodeAt(i++);if(s<55296||s>=56320)r=s;else{const o=t.charCodeAt(i++);r=(s<<10)+o+-56613888}r<128?e.push(r):(r<2048?e.push(r>>6&31|192):(r<65536?e.push(r>>12&15|224):e.push(r>>18&7|240,r>>12&63|128),e.push(r>>6&63|128)),e.push(r&63|128))}}this.addInt8(0),this.startVector(1,e.length,1),this.bb.setPosition(this.space-=e.length);for(let i=0,r=this.space,s=this.bb.bytes();i<e.length;i++)s[r++]=e[i];return this.endVector()}createLong(t,e){return ne.create(t,e)}createObjectOffset(t){return t===null?0:typeof t=="string"?this.createString(t):t.pack(this)}createObjectOffsetList(t){const e=[];for(let i=0;i<t.length;++i){const r=t[i];if(r!==null)e.push(this.createObjectOffset(r));else throw new Error("FlatBuffers: Argument for createObjectOffsetList cannot contain null.")}return e}createStructOffsetList(t,e){return e(this,t.length),this.createObjectOffsetList(t),this.endVector()}};class nt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsKeyValue(t,e){return(e||new nt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKeyValue(t,e){return t.setPosition(t.position()+q),(e||new nt).__init(t.readInt32(t.position())+t.position(),t)}key(t){const e=this.bb.__offset(this.bb_pos,4);return e?this.bb.__string(this.bb_pos+e,t):null}value(t){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__string(this.bb_pos+e,t):null}static startKeyValue(t){t.startObject(2)}static addKey(t,e){t.addFieldOffset(0,e,0)}static addValue(t,e){t.addFieldOffset(1,e,0)}static endKeyValue(t){return t.endObject()}static createKeyValue(t,e,i){return nt.startKeyValue(t),nt.addKey(t,e),nt.addValue(t,i),nt.endKeyValue(t)}}var We;(function(n){n[n.V1=0]="V1",n[n.V2=1]="V2",n[n.V3=2]="V3",n[n.V4=3]="V4",n[n.V5=4]="V5"})(We||(We={}));var Je;(function(n){n[n.Little=0]="Little",n[n.Big=1]="Big"})(Je||(Je={}));var Jn;(function(n){n[n.DenseArray=0]="DenseArray"})(Jn||(Jn={}));class mt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsInt(t,e){return(e||new mt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsInt(t,e){return t.setPosition(t.position()+q),(e||new mt).__init(t.readInt32(t.position())+t.position(),t)}bitWidth(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt32(this.bb_pos+t):0}isSigned(){const t=this.bb.__offset(this.bb_pos,6);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startInt(t){t.startObject(2)}static addBitWidth(t,e){t.addFieldInt32(0,e,0)}static addIsSigned(t,e){t.addFieldInt8(1,+e,0)}static endInt(t){return t.endObject()}static createInt(t,e,i){return mt.startInt(t),mt.addBitWidth(t,e),mt.addIsSigned(t,i),mt.endInt(t)}}class ee{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsDictionaryEncoding(t,e){return(e||new ee).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsDictionaryEncoding(t,e){return t.setPosition(t.position()+q),(e||new ee).__init(t.readInt32(t.position())+t.position(),t)}id(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt64(this.bb_pos+t):this.bb.createLong(0,0)}indexType(t){const e=this.bb.__offset(this.bb_pos,6);return e?(t||new mt).__init(this.bb.__indirect(this.bb_pos+e),this.bb):null}isOrdered(){const t=this.bb.__offset(this.bb_pos,8);return t?!!this.bb.readInt8(this.bb_pos+t):!1}dictionaryKind(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readInt16(this.bb_pos+t):Jn.DenseArray}static startDictionaryEncoding(t){t.startObject(4)}static addId(t,e){t.addFieldInt64(0,e,t.createLong(0,0))}static addIndexType(t,e){t.addFieldOffset(1,e,0)}static addIsOrdered(t,e){t.addFieldInt8(2,+e,0)}static addDictionaryKind(t,e){t.addFieldInt16(3,e,Jn.DenseArray)}static endDictionaryEncoding(t){return t.endObject()}}class we{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsBinary(t,e){return(e||new we).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsBinary(t,e){return t.setPosition(t.position()+q),(e||new we).__init(t.readInt32(t.position())+t.position(),t)}static startBinary(t){t.startObject(0)}static endBinary(t){return t.endObject()}static createBinary(t){return we.startBinary(t),we.endBinary(t)}}class Se{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsBool(t,e){return(e||new Se).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsBool(t,e){return t.setPosition(t.position()+q),(e||new Se).__init(t.readInt32(t.position())+t.position(),t)}static startBool(t){t.startObject(0)}static endBool(t){return t.endObject()}static createBool(t){return Se.startBool(t),Se.endBool(t)}}var Gn;(function(n){n[n.DAY=0]="DAY",n[n.MILLISECOND=1]="MILLISECOND"})(Gn||(Gn={}));let Fn=class Me{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsDate(t,e){return(e||new Me).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsDate(t,e){return t.setPosition(t.position()+q),(e||new Me).__init(t.readInt32(t.position())+t.position(),t)}unit(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Gn.MILLISECOND}static startDate(t){t.startObject(1)}static addUnit(t,e){t.addFieldInt16(0,e,Gn.MILLISECOND)}static endDate(t){return t.endObject()}static createDate(t,e){return Me.startDate(t),Me.addUnit(t,e),Me.endDate(t)}};class lt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsDecimal(t,e){return(e||new lt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsDecimal(t,e){return t.setPosition(t.position()+q),(e||new lt).__init(t.readInt32(t.position())+t.position(),t)}precision(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt32(this.bb_pos+t):0}scale(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readInt32(this.bb_pos+t):0}bitWidth(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readInt32(this.bb_pos+t):128}static startDecimal(t){t.startObject(3)}static addPrecision(t,e){t.addFieldInt32(0,e,0)}static addScale(t,e){t.addFieldInt32(1,e,0)}static addBitWidth(t,e){t.addFieldInt32(2,e,128)}static endDecimal(t){return t.endObject()}static createDecimal(t,e,i,r){return lt.startDecimal(t),lt.addPrecision(t,e),lt.addScale(t,i),lt.addBitWidth(t,r),lt.endDecimal(t)}}var Ge;(function(n){n[n.SECOND=0]="SECOND",n[n.MILLISECOND=1]="MILLISECOND",n[n.MICROSECOND=2]="MICROSECOND",n[n.NANOSECOND=3]="NANOSECOND"})(Ge||(Ge={}));class xt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsFixedSizeBinary(t,e){return(e||new xt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsFixedSizeBinary(t,e){return t.setPosition(t.position()+q),(e||new xt).__init(t.readInt32(t.position())+t.position(),t)}byteWidth(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt32(this.bb_pos+t):0}static startFixedSizeBinary(t){t.startObject(1)}static addByteWidth(t,e){t.addFieldInt32(0,e,0)}static endFixedSizeBinary(t){return t.endObject()}static createFixedSizeBinary(t,e){return xt.startFixedSizeBinary(t),xt.addByteWidth(t,e),xt.endFixedSizeBinary(t)}}class jt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsFixedSizeList(t,e){return(e||new jt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsFixedSizeList(t,e){return t.setPosition(t.position()+q),(e||new jt).__init(t.readInt32(t.position())+t.position(),t)}listSize(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt32(this.bb_pos+t):0}static startFixedSizeList(t){t.startObject(1)}static addListSize(t,e){t.addFieldInt32(0,e,0)}static endFixedSizeList(t){return t.endObject()}static createFixedSizeList(t,e){return jt.startFixedSizeList(t),jt.addListSize(t,e),jt.endFixedSizeList(t)}}var Hn;(function(n){n[n.HALF=0]="HALF",n[n.SINGLE=1]="SINGLE",n[n.DOUBLE=2]="DOUBLE"})(Hn||(Hn={}));class kt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsFloatingPoint(t,e){return(e||new kt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsFloatingPoint(t,e){return t.setPosition(t.position()+q),(e||new kt).__init(t.readInt32(t.position())+t.position(),t)}precision(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Hn.HALF}static startFloatingPoint(t){t.startObject(1)}static addPrecision(t,e){t.addFieldInt16(0,e,Hn.HALF)}static endFloatingPoint(t){return t.endObject()}static createFloatingPoint(t,e){return kt.startFloatingPoint(t),kt.addPrecision(t,e),kt.endFloatingPoint(t)}}var Zn;(function(n){n[n.YEAR_MONTH=0]="YEAR_MONTH",n[n.DAY_TIME=1]="DAY_TIME",n[n.MONTH_DAY_NANO=2]="MONTH_DAY_NANO"})(Zn||(Zn={}));class Qt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsInterval(t,e){return(e||new Qt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsInterval(t,e){return t.setPosition(t.position()+q),(e||new Qt).__init(t.readInt32(t.position())+t.position(),t)}unit(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Zn.YEAR_MONTH}static startInterval(t){t.startObject(1)}static addUnit(t,e){t.addFieldInt16(0,e,Zn.YEAR_MONTH)}static endInterval(t){return t.endObject()}static createInterval(t,e){return Qt.startInterval(t),Qt.addUnit(t,e),Qt.endInterval(t)}}class Ie{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsList(t,e){return(e||new Ie).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsList(t,e){return t.setPosition(t.position()+q),(e||new Ie).__init(t.readInt32(t.position())+t.position(),t)}static startList(t){t.startObject(0)}static endList(t){return t.endObject()}static createList(t){return Ie.startList(t),Ie.endList(t)}}let Un=class Ve{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsMap(t,e){return(e||new Ve).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMap(t,e){return t.setPosition(t.position()+q),(e||new Ve).__init(t.readInt32(t.position())+t.position(),t)}keysSorted(){const t=this.bb.__offset(this.bb_pos,4);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startMap(t){t.startObject(1)}static addKeysSorted(t,e){t.addFieldInt8(0,+e,0)}static endMap(t){return t.endObject()}static createMap(t,e){return Ve.startMap(t),Ve.addKeysSorted(t,e),Ve.endMap(t)}};class Be{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsNull(t,e){return(e||new Be).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsNull(t,e){return t.setPosition(t.position()+q),(e||new Be).__init(t.readInt32(t.position())+t.position(),t)}static startNull(t){t.startObject(0)}static endNull(t){return t.endObject()}static createNull(t){return Be.startNull(t),Be.endNull(t)}}class Oe{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsStruct_(t,e){return(e||new Oe).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsStruct_(t,e){return t.setPosition(t.position()+q),(e||new Oe).__init(t.readInt32(t.position())+t.position(),t)}static startStruct_(t){t.startObject(0)}static endStruct_(t){return t.endObject()}static createStruct_(t){return Oe.startStruct_(t),Oe.endStruct_(t)}}class Ot{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsTime(t,e){return(e||new Ot).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsTime(t,e){return t.setPosition(t.position()+q),(e||new Ot).__init(t.readInt32(t.position())+t.position(),t)}unit(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Ge.MILLISECOND}bitWidth(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readInt32(this.bb_pos+t):32}static startTime(t){t.startObject(2)}static addUnit(t,e){t.addFieldInt16(0,e,Ge.MILLISECOND)}static addBitWidth(t,e){t.addFieldInt32(1,e,32)}static endTime(t){return t.endObject()}static createTime(t,e,i){return Ot.startTime(t),Ot.addUnit(t,e),Ot.addBitWidth(t,i),Ot.endTime(t)}}class Ft{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsTimestamp(t,e){return(e||new Ft).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsTimestamp(t,e){return t.setPosition(t.position()+q),(e||new Ft).__init(t.readInt32(t.position())+t.position(),t)}unit(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Ge.SECOND}timezone(t){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__string(this.bb_pos+e,t):null}static startTimestamp(t){t.startObject(2)}static addUnit(t,e){t.addFieldInt16(0,e,Ge.SECOND)}static addTimezone(t,e){t.addFieldOffset(1,e,0)}static endTimestamp(t){return t.endObject()}static createTimestamp(t,e,i){return Ft.startTimestamp(t),Ft.addUnit(t,e),Ft.addTimezone(t,i),Ft.endTimestamp(t)}}var Xn;(function(n){n[n.Sparse=0]="Sparse",n[n.Dense=1]="Dense"})(Xn||(Xn={}));class ut{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsUnion(t,e){return(e||new ut).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsUnion(t,e){return t.setPosition(t.position()+q),(e||new ut).__init(t.readInt32(t.position())+t.position(),t)}mode(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Xn.Sparse}typeIds(t){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.readInt32(this.bb.__vector(this.bb_pos+e)+t*4):0}typeIdsLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}typeIdsArray(){const t=this.bb.__offset(this.bb_pos,6);return t?new Int32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+t),this.bb.__vector_len(this.bb_pos+t)):null}static startUnion(t){t.startObject(2)}static addMode(t,e){t.addFieldInt16(0,e,Xn.Sparse)}static addTypeIds(t,e){t.addFieldOffset(1,e,0)}static createTypeIdsVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addInt32(e[i]);return t.endVector()}static startTypeIdsVector(t,e){t.startVector(4,e,4)}static endUnion(t){return t.endObject()}static createUnion(t,e,i){return ut.startUnion(t),ut.addMode(t,e),ut.addTypeIds(t,i),ut.endUnion(t)}}class Fe{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsUtf8(t,e){return(e||new Fe).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsUtf8(t,e){return t.setPosition(t.position()+q),(e||new Fe).__init(t.readInt32(t.position())+t.position(),t)}static startUtf8(t){t.startObject(0)}static endUtf8(t){return t.endObject()}static createUtf8(t){return Fe.startUtf8(t),Fe.endUtf8(t)}}var G;(function(n){n[n.NONE=0]="NONE",n[n.Null=1]="Null",n[n.Int=2]="Int",n[n.FloatingPoint=3]="FloatingPoint",n[n.Binary=4]="Binary",n[n.Utf8=5]="Utf8",n[n.Bool=6]="Bool",n[n.Decimal=7]="Decimal",n[n.Date=8]="Date",n[n.Time=9]="Time",n[n.Timestamp=10]="Timestamp",n[n.Interval=11]="Interval",n[n.List=12]="List",n[n.Struct_=13]="Struct_",n[n.Union=14]="Union",n[n.FixedSizeBinary=15]="FixedSizeBinary",n[n.FixedSizeList=16]="FixedSizeList",n[n.Map=17]="Map",n[n.Duration=18]="Duration",n[n.LargeBinary=19]="LargeBinary",n[n.LargeUtf8=20]="LargeUtf8",n[n.LargeList=21]="LargeList"})(G||(G={}));let It=class Cn{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsField(t,e){return(e||new Cn).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsField(t,e){return t.setPosition(t.position()+q),(e||new Cn).__init(t.readInt32(t.position())+t.position(),t)}name(t){const e=this.bb.__offset(this.bb_pos,4);return e?this.bb.__string(this.bb_pos+e,t):null}nullable(){const t=this.bb.__offset(this.bb_pos,6);return t?!!this.bb.readInt8(this.bb_pos+t):!1}typeType(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readUint8(this.bb_pos+t):G.NONE}type(t){const e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__union(t,this.bb_pos+e):null}dictionary(t){const e=this.bb.__offset(this.bb_pos,12);return e?(t||new ee).__init(this.bb.__indirect(this.bb_pos+e),this.bb):null}children(t,e){const i=this.bb.__offset(this.bb_pos,14);return i?(e||new Cn).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+i)+t*4),this.bb):null}childrenLength(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.__vector_len(this.bb_pos+t):0}customMetadata(t,e){const i=this.bb.__offset(this.bb_pos,16);return i?(e||new nt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+i)+t*4),this.bb):null}customMetadataLength(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.__vector_len(this.bb_pos+t):0}static startField(t){t.startObject(7)}static addName(t,e){t.addFieldOffset(0,e,0)}static addNullable(t,e){t.addFieldInt8(1,+e,0)}static addTypeType(t,e){t.addFieldInt8(2,e,G.NONE)}static addType(t,e){t.addFieldOffset(3,e,0)}static addDictionary(t,e){t.addFieldOffset(4,e,0)}static addChildren(t,e){t.addFieldOffset(5,e,0)}static createChildrenVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addOffset(e[i]);return t.endVector()}static startChildrenVector(t,e){t.startVector(4,e,4)}static addCustomMetadata(t,e){t.addFieldOffset(6,e,0)}static createCustomMetadataVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addOffset(e[i]);return t.endVector()}static startCustomMetadataVector(t,e){t.startVector(4,e,4)}static endField(t){return t.endObject()}},Dt=class Ht{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsSchema(t,e){return(e||new Ht).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsSchema(t,e){return t.setPosition(t.position()+q),(e||new Ht).__init(t.readInt32(t.position())+t.position(),t)}endianness(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):Je.Little}fields(t,e){const i=this.bb.__offset(this.bb_pos,6);return i?(e||new It).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+i)+t*4),this.bb):null}fieldsLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}customMetadata(t,e){const i=this.bb.__offset(this.bb_pos,8);return i?(e||new nt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+i)+t*4),this.bb):null}customMetadataLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}features(t){const e=this.bb.__offset(this.bb_pos,10);return e?this.bb.readInt64(this.bb.__vector(this.bb_pos+e)+t*8):this.bb.createLong(0,0)}featuresLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}static startSchema(t){t.startObject(4)}static addEndianness(t,e){t.addFieldInt16(0,e,Je.Little)}static addFields(t,e){t.addFieldOffset(1,e,0)}static createFieldsVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addOffset(e[i]);return t.endVector()}static startFieldsVector(t,e){t.startVector(4,e,4)}static addCustomMetadata(t,e){t.addFieldOffset(2,e,0)}static createCustomMetadataVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addOffset(e[i]);return t.endVector()}static startCustomMetadataVector(t,e){t.startVector(4,e,4)}static addFeatures(t,e){t.addFieldOffset(3,e,0)}static createFeaturesVector(t,e){t.startVector(8,e.length,8);for(let i=e.length-1;i>=0;i--)t.addInt64(e[i]);return t.endVector()}static startFeaturesVector(t,e){t.startVector(8,e,8)}static endSchema(t){return t.endObject()}static finishSchemaBuffer(t,e){t.finish(e)}static finishSizePrefixedSchemaBuffer(t,e){t.finish(e,void 0,!0)}static createSchema(t,e,i,r,s){return Ht.startSchema(t),Ht.addEndianness(t,e),Ht.addFields(t,i),Ht.addCustomMetadata(t,r),Ht.addFeatures(t,s),Ht.endSchema(t)}};class gt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsFooter(t,e){return(e||new gt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsFooter(t,e){return t.setPosition(t.position()+q),(e||new gt).__init(t.readInt32(t.position())+t.position(),t)}version(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):We.V1}schema(t){const e=this.bb.__offset(this.bb_pos,6);return e?(t||new Dt).__init(this.bb.__indirect(this.bb_pos+e),this.bb):null}dictionaries(t,e){const i=this.bb.__offset(this.bb_pos,8);return i?(e||new Mi).__init(this.bb.__vector(this.bb_pos+i)+t*24,this.bb):null}dictionariesLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}recordBatches(t,e){const i=this.bb.__offset(this.bb_pos,10);return i?(e||new Mi).__init(this.bb.__vector(this.bb_pos+i)+t*24,this.bb):null}recordBatchesLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}customMetadata(t,e){const i=this.bb.__offset(this.bb_pos,12);return i?(e||new nt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+i)+t*4),this.bb):null}customMetadataLength(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.__vector_len(this.bb_pos+t):0}static startFooter(t){t.startObject(5)}static addVersion(t,e){t.addFieldInt16(0,e,We.V1)}static addSchema(t,e){t.addFieldOffset(1,e,0)}static addDictionaries(t,e){t.addFieldOffset(2,e,0)}static startDictionariesVector(t,e){t.startVector(24,e,8)}static addRecordBatches(t,e){t.addFieldOffset(3,e,0)}static startRecordBatchesVector(t,e){t.startVector(24,e,8)}static addCustomMetadata(t,e){t.addFieldOffset(4,e,0)}static createCustomMetadataVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addOffset(e[i]);return t.endVector()}static startCustomMetadataVector(t,e){t.startVector(4,e,4)}static endFooter(t){return t.endObject()}static finishFooterBuffer(t,e){t.finish(e)}static finishSizePrefixedFooterBuffer(t,e){t.finish(e,void 0,!0)}}class Q{constructor(t=[],e,i){this.fields=t||[],this.metadata=e||new Map,i||(i=xi(t)),this.dictionaries=i}get[Symbol.toStringTag](){return"Schema"}get names(){return this.fields.map(t=>t.name)}toString(){return`Schema<{ ${this.fields.map((t,e)=>`${e}: ${t}`).join(", ")} }>`}select(t){const e=new Set(t),i=this.fields.filter(r=>e.has(r.name));return new Q(i,this.metadata)}selectAt(t){const e=t.map(i=>this.fields[i]).filter(Boolean);return new Q(e,this.metadata)}assign(...t){const e=t[0]instanceof Q?t[0]:Array.isArray(t[0])?new Q(t[0]):new Q(t),i=[...this.fields],r=Bn(Bn(new Map,this.metadata),e.metadata),s=e.fields.filter(a=>{const c=i.findIndex(u=>u.name===a.name);return~c?(i[c]=a.clone({metadata:Bn(Bn(new Map,i[c].metadata),a.metadata)}))&&!1:!0}),o=xi(s,new Map);return new Q([...i,...s],r,new Map([...this.dictionaries,...o]))}}Q.prototype.fields=null;Q.prototype.metadata=null;Q.prototype.dictionaries=null;class W{constructor(t,e,i=!1,r){this.name=t,this.type=e,this.nullable=i,this.metadata=r||new Map}static new(...t){let[e,i,r,s]=t;return t[0]&&typeof t[0]=="object"&&({name:e}=t[0],i===void 0&&(i=t[0].type),r===void 0&&(r=t[0].nullable),s===void 0&&(s=t[0].metadata)),new W(`${e}`,i,r,s)}get typeId(){return this.type.typeId}get[Symbol.toStringTag](){return"Field"}toString(){return`${this.name}: ${this.type}`}clone(...t){let[e,i,r,s]=t;return!t[0]||typeof t[0]!="object"?[e=this.name,i=this.type,r=this.nullable,s=this.metadata]=t:{name:e=this.name,type:i=this.type,nullable:r=this.nullable,metadata:s=this.metadata}=t[0],W.new(e,i,r,s)}}W.prototype.type=null;W.prototype.name=null;W.prototype.nullable=null;W.prototype.metadata=null;function Bn(n,t){return new Map([...n||new Map,...t||new Map])}function xi(n,t=new Map){for(let e=-1,i=n.length;++e<i;){const s=n[e].type;if(b.isDictionary(s)){if(!t.has(s.id))t.set(s.id,s.dictionary);else if(t.get(s.id)!==s.dictionary)throw new Error("Cannot create Schema containing two different dictionaries with the same Id")}s.children&&s.children.length>0&&xi(s.children,t)}return t}var xr=ne,kl=_o,Ql=Ye;class hn{constructor(t,e=bt.V4,i,r){this.schema=t,this.version=e,i&&(this._recordBatches=i),r&&(this._dictionaryBatches=r)}static decode(t){t=new Ql(M(t));const e=gt.getRootAsFooter(t),i=Q.decode(e.schema());return new Pl(i,e)}static encode(t){const e=new kl,i=Q.encode(e,t.schema);gt.startRecordBatchesVector(e,t.numRecordBatches);for(const o of[...t.recordBatches()].slice().reverse())ye.encode(e,o);const r=e.endVector();gt.startDictionariesVector(e,t.numDictionaries);for(const o of[...t.dictionaryBatches()].slice().reverse())ye.encode(e,o);const s=e.endVector();return gt.startFooter(e),gt.addSchema(e,i),gt.addVersion(e,bt.V4),gt.addRecordBatches(e,r),gt.addDictionaries(e,s),gt.finishFooterBuffer(e,gt.endFooter(e)),e.asUint8Array()}get numRecordBatches(){return this._recordBatches.length}get numDictionaries(){return this._dictionaryBatches.length}*recordBatches(){for(let t,e=-1,i=this.numRecordBatches;++e<i;)(t=this.getRecordBatch(e))&&(yield t)}*dictionaryBatches(){for(let t,e=-1,i=this.numDictionaries;++e<i;)(t=this.getDictionaryBatch(e))&&(yield t)}getRecordBatch(t){return t>=0&&t<this.numRecordBatches&&this._recordBatches[t]||null}getDictionaryBatch(t){return t>=0&&t<this.numDictionaries&&this._dictionaryBatches[t]||null}}class Pl extends hn{constructor(t,e){super(t,e.version()),this._footer=e}get numRecordBatches(){return this._footer.recordBatchesLength()}get numDictionaries(){return this._footer.dictionariesLength()}getRecordBatch(t){if(t>=0&&t<this.numRecordBatches){const e=this._footer.recordBatches(t);if(e)return ye.decode(e)}return null}getDictionaryBatch(t){if(t>=0&&t<this.numDictionaries){const e=this._footer.dictionaries(t);if(e)return ye.decode(e)}return null}}class ye{constructor(t,e,i){this.metaDataLength=t,this.offset=typeof i=="number"?i:i.low,this.bodyLength=typeof e=="number"?e:e.low}static decode(t){return new ye(t.metaDataLength(),t.bodyLength(),t.offset())}static encode(t,e){const{metaDataLength:i}=e,r=new xr(e.offset,0),s=new xr(e.bodyLength,0);return Mi.createBlock(t,r,i,s)}}const H=Object.freeze({done:!0,value:void 0});class jr{constructor(t){this._json=t}get schema(){return this._json.schema}get batches(){return this._json.batches||[]}get dictionaries(){return this._json.dictionaries||[]}}class sr{tee(){return this._getDOMStream().tee()}pipe(t,e){return this._getNodeStream().pipe(t,e)}pipeTo(t,e){return this._getDOMStream().pipeTo(t,e)}pipeThrough(t,e){return this._getDOMStream().pipeThrough(t,e)}_getDOMStream(){return this._DOMStream||(this._DOMStream=this.toDOMStream())}_getNodeStream(){return this._nodeStream||(this._nodeStream=this.toNodeStream())}}class Kl extends sr{constructor(){super(),this._values=[],this.resolvers=[],this._closedPromise=new Promise(t=>this._closedPromiseResolve=t)}get closed(){return this._closedPromise}cancel(t){return m(this,void 0,void 0,function*(){yield this.return(t)})}write(t){this._ensureOpen()&&(this.resolvers.length<=0?this._values.push(t):this.resolvers.shift().resolve({done:!1,value:t}))}abort(t){this._closedPromiseResolve&&(this.resolvers.length<=0?this._error={error:t}:this.resolvers.shift().reject({done:!0,value:t}))}close(){if(this._closedPromiseResolve){const{resolvers:t}=this;for(;t.length>0;)t.shift().resolve(H);this._closedPromiseResolve(),this._closedPromiseResolve=void 0}}[Symbol.asyncIterator](){return this}toDOMStream(t){return Bt.toDOMStream(this._closedPromiseResolve||this._error?this:this._values)}toNodeStream(t){return Bt.toNodeStream(this._closedPromiseResolve||this._error?this:this._values)}throw(t){return m(this,void 0,void 0,function*(){return yield this.abort(t),H})}return(t){return m(this,void 0,void 0,function*(){return yield this.close(),H})}read(t){return m(this,void 0,void 0,function*(){return(yield this.next(t,"read")).value})}peek(t){return m(this,void 0,void 0,function*(){return(yield this.next(t,"peek")).value})}next(...t){return this._values.length>0?Promise.resolve({done:!1,value:this._values.shift()}):this._error?Promise.reject({done:!0,value:this._error.error}):this._closedPromiseResolve?new Promise((e,i)=>{this.resolvers.push({resolve:e,reject:i})}):Promise.resolve(H)}_ensureOpen(){if(this._closedPromiseResolve)return!0;throw new Error("AsyncQueue is closed")}}class Tn extends Kl{write(t){if((t=M(t)).byteLength>0)return super.write(t)}toString(t=!1){return t?Ti(this.toUint8Array(!0)):this.toUint8Array(!1).then(Ti)}toUint8Array(t=!1){return t?zt(this._values)[0]:m(this,void 0,void 0,function*(){var e,i;const r=[];let s=0;try{for(var o=Ue(this),a;a=yield o.next(),!a.done;){const c=a.value;r.push(c),s+=c.byteLength}}catch(c){e={error:c}}finally{try{a&&!a.done&&(i=o.return)&&(yield i.call(o))}finally{if(e)throw e.error}}return zt(r,s)[0]})}}class $n{constructor(t){t&&(this.source=new zl(Bt.fromIterable(t)))}[Symbol.iterator](){return this}next(t){return this.source.next(t)}throw(t){return this.source.throw(t)}return(t){return this.source.return(t)}peek(t){return this.source.peek(t)}read(t){return this.source.read(t)}}class He{constructor(t){t instanceof He?this.source=t.source:t instanceof Tn?this.source=new _e(Bt.fromAsyncIterable(t)):ns(t)?this.source=new _e(Bt.fromNodeStream(t)):qi(t)?this.source=new _e(Bt.fromDOMStream(t)):es(t)?this.source=new _e(Bt.fromDOMStream(t.body)):An(t)?this.source=new _e(Bt.fromIterable(t)):de(t)?this.source=new _e(Bt.fromAsyncIterable(t)):Xe(t)&&(this.source=new _e(Bt.fromAsyncIterable(t)))}[Symbol.asyncIterator](){return this}next(t){return this.source.next(t)}throw(t){return this.source.throw(t)}return(t){return this.source.return(t)}get closed(){return this.source.closed}cancel(t){return this.source.cancel(t)}peek(t){return this.source.peek(t)}read(t){return this.source.read(t)}}class zl{constructor(t){this.source=t}cancel(t){this.return(t)}peek(t){return this.next(t,"peek").value}read(t){return this.next(t,"read").value}next(t,e="read"){return this.source.next({cmd:e,size:t})}throw(t){return Object.create(this.source.throw&&this.source.throw(t)||H)}return(t){return Object.create(this.source.return&&this.source.return(t)||H)}}class _e{constructor(t){this.source=t,this._closedPromise=new Promise(e=>this._closedPromiseResolve=e)}cancel(t){return m(this,void 0,void 0,function*(){yield this.return(t)})}get closed(){return this._closedPromise}read(t){return m(this,void 0,void 0,function*(){return(yield this.next(t,"read")).value})}peek(t){return m(this,void 0,void 0,function*(){return(yield this.next(t,"peek")).value})}next(t,e="read"){return m(this,void 0,void 0,function*(){return yield this.source.next({cmd:e,size:t})})}throw(t){return m(this,void 0,void 0,function*(){const e=this.source.throw&&(yield this.source.throw(t))||H;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(e)})}return(t){return m(this,void 0,void 0,function*(){const e=this.source.return&&(yield this.source.return(t))||H;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(e)})}}class kr extends $n{constructor(t,e){super(),this.position=0,this.buffer=M(t),this.size=typeof e>"u"?this.buffer.byteLength:e}readInt32(t){const{buffer:e,byteOffset:i}=this.readAt(t,4);return new DataView(e,i).getInt32(0,!0)}seek(t){return this.position=Math.min(t,this.size),t<this.size}read(t){const{buffer:e,size:i,position:r}=this;return e&&r<i?(typeof t!="number"&&(t=Number.POSITIVE_INFINITY),this.position=Math.min(i,r+Math.min(i-r,t)),e.subarray(r,this.position)):null}readAt(t,e){const i=this.buffer,r=Math.min(this.size,t+e);return i?i.subarray(t,r):new Uint8Array(e)}close(){this.buffer&&(this.buffer=null)}throw(t){return this.close(),{done:!0,value:t}}return(t){return this.close(),{done:!0,value:t}}}class ti extends He{constructor(t,e){super(),this.position=0,this._handle=t,typeof e=="number"?this.size=e:this._pending=m(this,void 0,void 0,function*(){this.size=(yield t.stat()).size,delete this._pending})}readInt32(t){return m(this,void 0,void 0,function*(){const{buffer:e,byteOffset:i}=yield this.readAt(t,4);return new DataView(e,i).getInt32(0,!0)})}seek(t){return m(this,void 0,void 0,function*(){return this._pending&&(yield this._pending),this.position=Math.min(t,this.size),t<this.size})}read(t){return m(this,void 0,void 0,function*(){this._pending&&(yield this._pending);const{_handle:e,size:i,position:r}=this;if(e&&r<i){typeof t!="number"&&(t=Number.POSITIVE_INFINITY);let s=r,o=0,a=0;const c=Math.min(i,s+Math.min(i-s,t)),u=new Uint8Array(Math.max(0,(this.position=c)-s));for(;(s+=a)<c&&(o+=a)<u.byteLength;)({bytesRead:a}=yield e.read(u,o,u.byteLength-o,s));return u}return null})}readAt(t,e){return m(this,void 0,void 0,function*(){this._pending&&(yield this._pending);const{_handle:i,size:r}=this;if(i&&t+e<r){const s=Math.min(r,t+e),o=new Uint8Array(s-t);return(yield i.read(o,0,e,t)).buffer}return new Uint8Array(e)})}close(){return m(this,void 0,void 0,function*(){const t=this._handle;this._handle=null,t&&(yield t.close())})}throw(t){return m(this,void 0,void 0,function*(){return yield this.close(),{done:!0,value:t}})}return(t){return m(this,void 0,void 0,function*(){return yield this.close(),{done:!0,value:t}})}}const ql=65536;function je(n){return n<0&&(n=4294967295+n+1),`0x${n.toString(16)}`}const Ze=8,or=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8];class wo{constructor(t){this.buffer=t}high(){return this.buffer[1]}low(){return this.buffer[0]}_times(t){const e=new Uint32Array([this.buffer[1]>>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),i=new Uint32Array([t.buffer[1]>>>16,t.buffer[1]&65535,t.buffer[0]>>>16,t.buffer[0]&65535]);let r=e[3]*i[3];this.buffer[0]=r&65535;let s=r>>>16;return r=e[2]*i[3],s+=r,r=e[3]*i[2]>>>0,s+=r,this.buffer[0]+=s<<16,this.buffer[1]=s>>>0<r?ql:0,this.buffer[1]+=s>>>16,this.buffer[1]+=e[1]*i[3]+e[2]*i[2]+e[3]*i[1],this.buffer[1]+=e[0]*i[3]+e[1]*i[2]+e[2]*i[1]+e[3]*i[0]<<16,this}_plus(t){const e=this.buffer[0]+t.buffer[0]>>>0;this.buffer[1]+=t.buffer[1],e<this.buffer[0]>>>0&&++this.buffer[1],this.buffer[0]=e}lessThan(t){return this.buffer[1]<t.buffer[1]||this.buffer[1]===t.buffer[1]&&this.buffer[0]<t.buffer[0]}equals(t){return this.buffer[1]===t.buffer[1]&&this.buffer[0]==t.buffer[0]}greaterThan(t){return t.lessThan(this)}hex(){return`${je(this.buffer[1])} ${je(this.buffer[0])}`}}class K extends wo{times(t){return this._times(t),this}plus(t){return this._plus(t),this}static from(t,e=new Uint32Array(2)){return K.fromString(typeof t=="string"?t:t.toString(),e)}static fromNumber(t,e=new Uint32Array(2)){return K.fromString(t.toString(),e)}static fromString(t,e=new Uint32Array(2)){const i=t.length,r=new K(e);for(let s=0;s<i;){const o=Ze<i-s?Ze:i-s,a=new K(new Uint32Array([Number.parseInt(t.slice(s,s+o),10),0])),c=new K(new Uint32Array([or[o],0]));r.times(c),r.plus(a),s+=o}return r}static convertArray(t){const e=new Uint32Array(t.length*2);for(let i=-1,r=t.length;++i<r;)K.from(t[i],new Uint32Array(e.buffer,e.byteOffset+2*i*4,2));return e}static multiply(t,e){return new K(new Uint32Array(t.buffer)).times(e)}static add(t,e){return new K(new Uint32Array(t.buffer)).plus(e)}}class ct extends wo{negate(){return this.buffer[0]=~this.buffer[0]+1,this.buffer[1]=~this.buffer[1],this.buffer[0]==0&&++this.buffer[1],this}times(t){return this._times(t),this}plus(t){return this._plus(t),this}lessThan(t){const e=this.buffer[1]<<0,i=t.buffer[1]<<0;return e<i||e===i&&this.buffer[0]<t.buffer[0]}static from(t,e=new Uint32Array(2)){return ct.fromString(typeof t=="string"?t:t.toString(),e)}static fromNumber(t,e=new Uint32Array(2)){return ct.fromString(t.toString(),e)}static fromString(t,e=new Uint32Array(2)){const i=t.startsWith("-"),r=t.length,s=new ct(e);for(let o=i?1:0;o<r;){const a=Ze<r-o?Ze:r-o,c=new ct(new Uint32Array([Number.parseInt(t.slice(o,o+a),10),0])),u=new ct(new Uint32Array([or[a],0]));s.times(u),s.plus(c),o+=a}return i?s.negate():s}static convertArray(t){const e=new Uint32Array(t.length*2);for(let i=-1,r=t.length;++i<r;)ct.from(t[i],new Uint32Array(e.buffer,e.byteOffset+2*i*4,2));return e}static multiply(t,e){return new ct(new Uint32Array(t.buffer)).times(e)}static add(t,e){return new ct(new Uint32Array(t.buffer)).plus(e)}}class Mt{constructor(t){this.buffer=t}high(){return new ct(new Uint32Array(this.buffer.buffer,this.buffer.byteOffset+8,2))}low(){return new ct(new Uint32Array(this.buffer.buffer,this.buffer.byteOffset,2))}negate(){return this.buffer[0]=~this.buffer[0]+1,this.buffer[1]=~this.buffer[1],this.buffer[2]=~this.buffer[2],this.buffer[3]=~this.buffer[3],this.buffer[0]==0&&++this.buffer[1],this.buffer[1]==0&&++this.buffer[2],this.buffer[2]==0&&++this.buffer[3],this}times(t){const e=new K(new Uint32Array([this.buffer[3],0])),i=new K(new Uint32Array([this.buffer[2],0])),r=new K(new Uint32Array([this.buffer[1],0])),s=new K(new Uint32Array([this.buffer[0],0])),o=new K(new Uint32Array([t.buffer[3],0])),a=new K(new Uint32Array([t.buffer[2],0])),c=new K(new Uint32Array([t.buffer[1],0])),u=new K(new Uint32Array([t.buffer[0],0]));let h=K.multiply(s,u);this.buffer[0]=h.low();const p=new K(new Uint32Array([h.high(),0]));return h=K.multiply(r,u),p.plus(h),h=K.multiply(s,c),p.plus(h),this.buffer[1]=p.low(),this.buffer[3]=p.lessThan(h)?1:0,this.buffer[2]=p.high(),new K(new Uint32Array(this.buffer.buffer,this.buffer.byteOffset+8,2)).plus(K.multiply(i,u)).plus(K.multiply(r,c)).plus(K.multiply(s,a)),this.buffer[3]+=K.multiply(e,u).plus(K.multiply(i,c)).plus(K.multiply(r,a)).plus(K.multiply(s,o)).low(),this}plus(t){const e=new Uint32Array(4);return e[3]=this.buffer[3]+t.buffer[3]>>>0,e[2]=this.buffer[2]+t.buffer[2]>>>0,e[1]=this.buffer[1]+t.buffer[1]>>>0,e[0]=this.buffer[0]+t.buffer[0]>>>0,e[0]<this.buffer[0]>>>0&&++e[1],e[1]<this.buffer[1]>>>0&&++e[2],e[2]<this.buffer[2]>>>0&&++e[3],this.buffer[3]=e[3],this.buffer[2]=e[2],this.buffer[1]=e[1],this.buffer[0]=e[0],this}hex(){return`${je(this.buffer[3])} ${je(this.buffer[2])} ${je(this.buffer[1])} ${je(this.buffer[0])}`}static multiply(t,e){return new Mt(new Uint32Array(t.buffer)).times(e)}static add(t,e){return new Mt(new Uint32Array(t.buffer)).plus(e)}static from(t,e=new Uint32Array(4)){return Mt.fromString(typeof t=="string"?t:t.toString(),e)}static fromNumber(t,e=new Uint32Array(4)){return Mt.fromString(t.toString(),e)}static fromString(t,e=new Uint32Array(4)){const i=t.startsWith("-"),r=t.length,s=new Mt(e);for(let o=i?1:0;o<r;){const a=Ze<r-o?Ze:r-o,c=new Mt(new Uint32Array([Number.parseInt(t.slice(o,o+a),10),0,0,0])),u=new Mt(new Uint32Array([or[a],0,0,0]));s.times(u),s.plus(c),o+=a}return i?s.negate():s}static convertArray(t){const e=new Uint32Array(t.length*4);for(let i=-1,r=t.length;++i<r;)Mt.from(t[i],new Uint32Array(e.buffer,e.byteOffset+16*i,4));return e}}class So extends R{constructor(t,e,i,r){super(),this.nodesIndex=-1,this.buffersIndex=-1,this.bytes=t,this.nodes=e,this.buffers=i,this.dictionaries=r}visit(t){return super.visit(t instanceof W?t.type:t)}visitNull(t,{length:e}=this.nextFieldNode()){return E({type:t,length:e})}visitBool(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitInt(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitFloat(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitUtf8(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),valueOffsets:this.readOffsets(t),data:this.readData(t)})}visitBinary(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),valueOffsets:this.readOffsets(t),data:this.readData(t)})}visitFixedSizeBinary(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitDate(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitTimestamp(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitTime(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitDecimal(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitList(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),valueOffsets:this.readOffsets(t),child:this.visit(t.children[0])})}visitStruct(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),children:this.visitMany(t.children)})}visitUnion(t){return t.mode===_t.Sparse?this.visitSparseUnion(t):this.visitDenseUnion(t)}visitDenseUnion(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),typeIds:this.readTypeIds(t),valueOffsets:this.readOffsets(t),children:this.visitMany(t.children)})}visitSparseUnion(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),typeIds:this.readTypeIds(t),children:this.visitMany(t.children)})}visitDictionary(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t.indices),dictionary:this.readDictionary(t)})}visitInterval(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),data:this.readData(t)})}visitFixedSizeList(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),child:this.visit(t.children[0])})}visitMap(t,{length:e,nullCount:i}=this.nextFieldNode()){return E({type:t,length:e,nullCount:i,nullBitmap:this.readNullBitmap(t,i),valueOffsets:this.readOffsets(t),child:this.visit(t.children[0])})}nextFieldNode(){return this.nodes[++this.nodesIndex]}nextBufferRange(){return this.buffers[++this.buffersIndex]}readNullBitmap(t,e,i=this.nextBufferRange()){return e>0&&this.readData(t,i)||new Uint8Array(0)}readOffsets(t,e){return this.readData(t,e)}readTypeIds(t,e){return this.readData(t,e)}readData(t,{length:e,offset:i}=this.nextBufferRange()){return this.bytes.subarray(i,i+e)}readDictionary(t){return this.dictionaries.get(t.id)}}class Yl extends So{constructor(t,e,i,r){super(new Uint8Array(0),e,i,r),this.sources=t}readNullBitmap(t,e,{offset:i}=this.nextBufferRange()){return e<=0?new Uint8Array(0):qn(this.sources[i])}readOffsets(t,{offset:e}=this.nextBufferRange()){return z(Uint8Array,z(Int32Array,this.sources[e]))}readTypeIds(t,{offset:e}=this.nextBufferRange()){return z(Uint8Array,z(t.ArrayType,this.sources[e]))}readData(t,{offset:e}=this.nextBufferRange()){const{sources:i}=this;return b.isTimestamp(t)||(b.isInt(t)||b.isTime(t))&&t.bitWidth===64||b.isDate(t)&&t.unit===re.MILLISECOND?z(Uint8Array,ct.convertArray(i[e])):b.isDecimal(t)?z(Uint8Array,Mt.convertArray(i[e])):b.isBinary(t)||b.isFixedSizeBinary(t)?Wl(i[e]):b.isBool(t)?qn(i[e]):b.isUtf8(t)?zi(i[e].join("")):z(Uint8Array,z(t.ArrayType,i[e].map(r=>+r)))}}function Wl(n){const t=n.join(""),e=new Uint8Array(t.length/2);for(let i=0;i<t.length;i+=2)e[i>>1]=Number.parseInt(t.slice(i,i+2),16);return e}class S extends R{compareSchemas(t,e){return t===e||e instanceof t.constructor&&this.compareManyFields(t.fields,e.fields)}compareManyFields(t,e){return t===e||Array.isArray(t)&&Array.isArray(e)&&t.length===e.length&&t.every((i,r)=>this.compareFields(i,e[r]))}compareFields(t,e){return t===e||e instanceof t.constructor&&t.name===e.name&&t.nullable===e.nullable&&this.visit(t.type,e.type)}}function yt(n,t){return t instanceof n.constructor}function gn(n,t){return n===t||yt(n,t)}function oe(n,t){return n===t||yt(n,t)&&n.bitWidth===t.bitWidth&&n.isSigned===t.isSigned}function ui(n,t){return n===t||yt(n,t)&&n.precision===t.precision}function Jl(n,t){return n===t||yt(n,t)&&n.byteWidth===t.byteWidth}function ar(n,t){return n===t||yt(n,t)&&n.unit===t.unit}function mn(n,t){return n===t||yt(n,t)&&n.unit===t.unit&&n.timezone===t.timezone}function bn(n,t){return n===t||yt(n,t)&&n.unit===t.unit&&n.bitWidth===t.bitWidth}function Gl(n,t){return n===t||yt(n,t)&&n.children.length===t.children.length&&Ae.compareManyFields(n.children,t.children)}function Hl(n,t){return n===t||yt(n,t)&&n.children.length===t.children.length&&Ae.compareManyFields(n.children,t.children)}function cr(n,t){return n===t||yt(n,t)&&n.mode===t.mode&&n.typeIds.every((e,i)=>e===t.typeIds[i])&&Ae.compareManyFields(n.children,t.children)}function Zl(n,t){return n===t||yt(n,t)&&n.id===t.id&&n.isOrdered===t.isOrdered&&Ae.visit(n.indices,t.indices)&&Ae.visit(n.dictionary,t.dictionary)}function lr(n,t){return n===t||yt(n,t)&&n.unit===t.unit}function Xl(n,t){return n===t||yt(n,t)&&n.listSize===t.listSize&&n.children.length===t.children.length&&Ae.compareManyFields(n.children,t.children)}function $l(n,t){return n===t||yt(n,t)&&n.keysSorted===t.keysSorted&&n.children.length===t.children.length&&Ae.compareManyFields(n.children,t.children)}S.prototype.visitNull=gn;S.prototype.visitBool=gn;S.prototype.visitInt=oe;S.prototype.visitInt8=oe;S.prototype.visitInt16=oe;S.prototype.visitInt32=oe;S.prototype.visitInt64=oe;S.prototype.visitUint8=oe;S.prototype.visitUint16=oe;S.prototype.visitUint32=oe;S.prototype.visitUint64=oe;S.prototype.visitFloat=ui;S.prototype.visitFloat16=ui;S.prototype.visitFloat32=ui;S.prototype.visitFloat64=ui;S.prototype.visitUtf8=gn;S.prototype.visitBinary=gn;S.prototype.visitFixedSizeBinary=Jl;S.prototype.visitDate=ar;S.prototype.visitDateDay=ar;S.prototype.visitDateMillisecond=ar;S.prototype.visitTimestamp=mn;S.prototype.visitTimestampSecond=mn;S.prototype.visitTimestampMillisecond=mn;S.prototype.visitTimestampMicrosecond=mn;S.prototype.visitTimestampNanosecond=mn;S.prototype.visitTime=bn;S.prototype.visitTimeSecond=bn;S.prototype.visitTimeMillisecond=bn;S.prototype.visitTimeMicrosecond=bn;S.prototype.visitTimeNanosecond=bn;S.prototype.visitDecimal=gn;S.prototype.visitList=Gl;S.prototype.visitStruct=Hl;S.prototype.visitUnion=cr;S.prototype.visitDenseUnion=cr;S.prototype.visitSparseUnion=cr;S.prototype.visitDictionary=Zl;S.prototype.visitInterval=lr;S.prototype.visitIntervalDayTime=lr;S.prototype.visitIntervalYearMonth=lr;S.prototype.visitFixedSizeList=Xl;S.prototype.visitMap=$l;const Ae=new S;function ji(n,t){return Ae.compareSchemas(n,t)}function Oi(n,t){return tu(n,t.map(e=>e.data.concat()))}function tu(n,t){const e=[...n.fields],i=[],r={numBatches:t.reduce((p,g)=>Math.max(p,g.length),0)};let s=0,o=0,a=-1;const c=t.length;let u,h=[];for(;r.numBatches-- >0;){for(o=Number.POSITIVE_INFINITY,a=-1;++a<c;)h[a]=u=t[a].shift(),o=Math.min(o,u?u.length:o);Number.isFinite(o)&&(h=eu(e,o,h,t,r),o>0&&(i[s++]=E({type:new st(e),length:o,nullCount:0,children:h.slice()})))}return[n=n.assign(e),i.map(p=>new dt(n,p))]}function eu(n,t,e,i,r){var s;const o=(t+63&-64)>>3;for(let a=-1,c=i.length;++a<c;){const u=e[a],h=u==null?void 0:u.length;if(h>=t)h===t?e[a]=u:(e[a]=u.slice(0,t),r.numBatches=Math.max(r.numBatches,i[a].unshift(u.slice(t,h-t))));else{const p=n[a];n[a]=p.clone({nullable:!0}),e[a]=(s=u==null?void 0:u._changeLengthAndBackfillNullBitmap(t))!==null&&s!==void 0?s:E({type:p.type,length:t,nullCount:t,nullBitmap:new Uint8Array(o)})}}return e}var Io;class rt{constructor(...t){var e,i;if(t.length===0)return this.batches=[],this.schema=new Q([]),this._offsets=[0],this;let r,s;t[0]instanceof Q&&(r=t.shift()),t[t.length-1]instanceof Uint32Array&&(s=t.pop());const o=c=>{if(c){if(c instanceof dt)return[c];if(c instanceof rt)return c.batches;if(c instanceof Y){if(c.type instanceof st)return[new dt(new Q(c.type.children),c)]}else{if(Array.isArray(c))return c.flatMap(u=>o(u));if(typeof c[Symbol.iterator]=="function")return[...c].flatMap(u=>o(u));if(typeof c=="object"){const u=Object.keys(c),h=u.map(A=>new k([c[A]])),p=new Q(u.map((A,T)=>new W(String(A),h[T].type))),[,g]=Oi(p,h);return g.length===0?[new dt(c)]:g}}}return[]},a=t.flatMap(c=>o(c));if(r=(i=r??((e=a[0])===null||e===void 0?void 0:e.schema))!==null&&i!==void 0?i:new Q([]),!(r instanceof Q))throw new TypeError("Table constructor expects a [Schema, RecordBatch[]] pair.");for(const c of a){if(!(c instanceof dt))throw new TypeError("Table constructor expects a [Schema, RecordBatch[]] pair.");if(!ji(r,c.schema))throw new TypeError("Table and inner RecordBatch schemas must be equivalent.")}this.schema=r,this.batches=a,this._offsets=s??co(this.data)}get data(){return this.batches.map(({data:t})=>t)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.reduce((t,e)=>t+e.length,0)}get nullCount(){return this._nullCount===-1&&(this._nullCount=ao(this.data)),this._nullCount}isValid(t){return!1}get(t){return null}set(t,e){}indexOf(t,e){return-1}getByteLength(t){return 0}[Symbol.iterator](){return this.batches.length>0?rr.visit(new k(this.data)):new Array(0)[Symbol.iterator]()}toArray(){return[...this]}toString(){return`[
|
|
20
|
+
${this.toArray().join(`,
|
|
21
|
+
`)}
|
|
22
|
+
]`}concat(...t){const e=this.schema,i=this.data.concat(t.flatMap(({data:r})=>r));return new rt(e,i.map(r=>new dt(e,r)))}slice(t,e){const i=this.schema;[t,e]=so({length:this.numRows},t,e);const r=lo(this.data,this._offsets,t,e);return new rt(i,r.map(s=>new dt(i,s)))}getChild(t){return this.getChildAt(this.schema.fields.findIndex(e=>e.name===t))}getChildAt(t){if(t>-1&&t<this.schema.fields.length){const e=this.data.map(i=>i.children[t]);if(e.length===0){const{type:i}=this.schema.fields[t],r=E({type:i,length:0,nullCount:0});e.push(r._changeLengthAndBackfillNullBitmap(this.numRows))}return new k(e)}return null}setChild(t,e){var i;return this.setChildAt((i=this.schema.fields)===null||i===void 0?void 0:i.findIndex(r=>r.name===t),e)}setChildAt(t,e){let i=this.schema,r=[...this.batches];if(t>-1&&t<this.numCols){e||(e=new k([E({type:new fe,length:this.numRows})]));const s=i.fields.slice(),o=s[t].clone({type:e.type}),a=this.schema.fields.map((c,u)=>this.getChildAt(u));[s[t],a[t]]=[o,e],[i,r]=Oi(i,a)}return new rt(i,r)}select(t){const e=this.schema.fields.reduce((i,r,s)=>i.set(r.name,s),new Map);return this.selectAt(t.map(i=>e.get(i)).filter(i=>i>-1))}selectAt(t){const e=this.schema.selectAt(t),i=this.batches.map(r=>r.selectAt(t));return new rt(e,i)}assign(t){const e=this.schema.fields,[i,r]=t.schema.fields.reduce((a,c,u)=>{const[h,p]=a,g=e.findIndex(A=>A.name===c.name);return~g?p[g]=u:h.push(u),a},[[],[]]),s=this.schema.assign(t.schema),o=[...e.map((a,c)=>[c,r[c]]).map(([a,c])=>c===void 0?this.getChildAt(a):t.getChildAt(c)),...i.map(a=>t.getChildAt(a))].filter(Boolean);return new rt(...Oi(s,o))}}Io=Symbol.toStringTag;rt[Io]=(n=>(n.schema=null,n.batches=[],n._offsets=new Uint32Array([0]),n._nullCount=-1,n[Symbol.isConcatSpreadable]=!0,n.isValid=ze(ir),n.get=ze(pt.getVisitFn(l.Struct)),n.set=uo(Ut.getVisitFn(l.Struct)),n.indexOf=ho(Yn.getVisitFn(l.Struct)),n.getByteLength=ze(qt.getVisitFn(l.Struct)),"Table"))(rt.prototype);var Bo;let dt=class en{constructor(...t){switch(t.length){case 2:{if([this.schema]=t,!(this.schema instanceof Q))throw new TypeError("RecordBatch constructor expects a [Schema, Data] pair.");if([,this.data=E({nullCount:0,type:new st(this.schema.fields),children:this.schema.fields.map(e=>E({type:e.type,nullCount:0}))})]=t,!(this.data instanceof Y))throw new TypeError("RecordBatch constructor expects a [Schema, Data] pair.");[this.schema,this.data]=Qr(this.schema,this.data.children);break}case 1:{const[e]=t,{fields:i,children:r,length:s}=Object.keys(e).reduce((c,u,h)=>(c.children[h]=e[u],c.length=Math.max(c.length,e[u].length),c.fields[h]=W.new({name:u,type:e[u].type,nullable:!0}),c),{length:0,fields:new Array,children:new Array}),o=new Q(i),a=E({type:new st(i),length:s,children:r,nullCount:0});[this.schema,this.data]=Qr(o,a.children,s);break}default:throw new TypeError("RecordBatch constructor expects an Object mapping names to child Data, or a [Schema, Data] pair.")}}get dictionaries(){return this._dictionaries||(this._dictionaries=Oo(this.schema.fields,this.data.children))}get numCols(){return this.schema.fields.length}get numRows(){return this.data.length}get nullCount(){return this.data.nullCount}isValid(t){return this.data.getValid(t)}get(t){return pt.visit(this.data,t)}set(t,e){return Ut.visit(this.data,t,e)}indexOf(t,e){return Yn.visit(this.data,t,e)}getByteLength(t){return qt.visit(this.data,t)}[Symbol.iterator](){return rr.visit(new k([this.data]))}toArray(){return[...this]}concat(...t){return new rt(this.schema,[this,...t])}slice(t,e){const[i]=new k([this.data]).slice(t,e).data;return new en(this.schema,i)}getChild(t){var e;return this.getChildAt((e=this.schema.fields)===null||e===void 0?void 0:e.findIndex(i=>i.name===t))}getChildAt(t){return t>-1&&t<this.schema.fields.length?new k([this.data.children[t]]):null}setChild(t,e){var i;return this.setChildAt((i=this.schema.fields)===null||i===void 0?void 0:i.findIndex(r=>r.name===t),e)}setChildAt(t,e){let i=this.schema,r=this.data;if(t>-1&&t<this.numCols){e||(e=new k([E({type:new fe,length:this.numRows})]));const s=i.fields.slice(),o=r.children.slice(),a=s[t].clone({type:e.type});[s[t],o[t]]=[a,e.data[0]],i=new Q(s,new Map(this.schema.metadata)),r=E({type:new st(s),children:o})}return new en(i,r)}select(t){const e=this.schema.select(t),i=new st(e.fields),r=[];for(const s of t){const o=this.schema.fields.findIndex(a=>a.name===s);~o&&(r[o]=this.data.children[o])}return new en(e,E({type:i,length:this.numRows,children:r}))}selectAt(t){const e=this.schema.selectAt(t),i=t.map(s=>this.data.children[s]).filter(Boolean),r=E({type:new st(e.fields),length:this.numRows,children:i});return new en(e,r)}};Bo=Symbol.toStringTag;dt[Bo]=(n=>(n._nullCount=-1,n[Symbol.isConcatSpreadable]=!0,"RecordBatch"))(dt.prototype);function Qr(n,t,e=t.reduce((i,r)=>Math.max(i,r.length),0)){var i;const r=[...n.fields],s=[...t],o=(e+63&-64)>>3;for(const[a,c]of n.fields.entries()){const u=t[a];(!u||u.length!==e)&&(r[a]=c.clone({nullable:!0}),s[a]=(i=u==null?void 0:u._changeLengthAndBackfillNullBitmap(e))!==null&&i!==void 0?i:E({type:c.type,length:e,nullCount:e,nullBitmap:new Uint8Array(o)}))}return[n.assign(r),E({type:new st(r),length:e,children:s})]}function Oo(n,t,e=new Map){for(let i=-1,r=n.length;++i<r;){const o=n[i].type,a=t[i];if(b.isDictionary(o)){if(!e.has(o.id))a.dictionary&&e.set(o.id,a.dictionary);else if(e.get(o.id)!==a.dictionary)throw new Error("Cannot create Schema containing two different dictionaries with the same Id")}o.children&&o.children.length>0&&Oo(o.children,a.children,e)}return e}class ur extends dt{constructor(t){const e=t.fields.map(r=>E({type:r.type})),i=E({type:new st(t.fields),nullCount:0,children:e});super(t,i)}}var ei;(function(n){n[n.BUFFER=0]="BUFFER"})(ei||(ei={}));var ni;(function(n){n[n.LZ4_FRAME=0]="LZ4_FRAME",n[n.ZSTD=1]="ZSTD"})(ni||(ni={}));class le{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsBodyCompression(t,e){return(e||new le).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsBodyCompression(t,e){return t.setPosition(t.position()+q),(e||new le).__init(t.readInt32(t.position())+t.position(),t)}codec(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt8(this.bb_pos+t):ni.LZ4_FRAME}method(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readInt8(this.bb_pos+t):ei.BUFFER}static startBodyCompression(t){t.startObject(2)}static addCodec(t,e){t.addFieldInt8(0,e,ni.LZ4_FRAME)}static addMethod(t,e){t.addFieldInt8(1,e,ei.BUFFER)}static endBodyCompression(t){return t.endObject()}static createBodyCompression(t,e,i){return le.startBodyCompression(t),le.addCodec(t,e),le.addMethod(t,i),le.endBodyCompression(t)}}class Fo{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}offset(){return this.bb.readInt64(this.bb_pos)}length(){return this.bb.readInt64(this.bb_pos+8)}static sizeOf(){return 16}static createBuffer(t,e,i){return t.prep(8,16),t.writeInt64(i),t.writeInt64(e),t.offset()}}let Uo=class{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}length(){return this.bb.readInt64(this.bb_pos)}nullCount(){return this.bb.readInt64(this.bb_pos+8)}static sizeOf(){return 16}static createFieldNode(t,e,i){return t.prep(8,16),t.writeInt64(i),t.writeInt64(e),t.offset()}},$t=class ki{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsRecordBatch(t,e){return(e||new ki).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsRecordBatch(t,e){return t.setPosition(t.position()+q),(e||new ki).__init(t.readInt32(t.position())+t.position(),t)}length(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt64(this.bb_pos+t):this.bb.createLong(0,0)}nodes(t,e){const i=this.bb.__offset(this.bb_pos,6);return i?(e||new Uo).__init(this.bb.__vector(this.bb_pos+i)+t*16,this.bb):null}nodesLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}buffers(t,e){const i=this.bb.__offset(this.bb_pos,8);return i?(e||new Fo).__init(this.bb.__vector(this.bb_pos+i)+t*16,this.bb):null}buffersLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}compression(t){const e=this.bb.__offset(this.bb_pos,10);return e?(t||new le).__init(this.bb.__indirect(this.bb_pos+e),this.bb):null}static startRecordBatch(t){t.startObject(4)}static addLength(t,e){t.addFieldInt64(0,e,t.createLong(0,0))}static addNodes(t,e){t.addFieldOffset(1,e,0)}static startNodesVector(t,e){t.startVector(16,e,8)}static addBuffers(t,e){t.addFieldOffset(2,e,0)}static startBuffersVector(t,e){t.startVector(16,e,8)}static addCompression(t,e){t.addFieldOffset(3,e,0)}static endRecordBatch(t){return t.endObject()}},Le=class Qi{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsDictionaryBatch(t,e){return(e||new Qi).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsDictionaryBatch(t,e){return t.setPosition(t.position()+q),(e||new Qi).__init(t.readInt32(t.position())+t.position(),t)}id(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt64(this.bb_pos+t):this.bb.createLong(0,0)}data(t){const e=this.bb.__offset(this.bb_pos,6);return e?(t||new $t).__init(this.bb.__indirect(this.bb_pos+e),this.bb):null}isDelta(){const t=this.bb.__offset(this.bb_pos,8);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startDictionaryBatch(t){t.startObject(3)}static addId(t,e){t.addFieldInt64(0,e,t.createLong(0,0))}static addData(t,e){t.addFieldOffset(1,e,0)}static addIsDelta(t,e){t.addFieldInt8(2,+e,0)}static endDictionaryBatch(t){return t.endObject()}};var ii;(function(n){n[n.NONE=0]="NONE",n[n.Schema=1]="Schema",n[n.DictionaryBatch=2]="DictionaryBatch",n[n.RecordBatch=3]="RecordBatch",n[n.Tensor=4]="Tensor",n[n.SparseTensor=5]="SparseTensor"})(ii||(ii={}));let ae=class Rt{constructor(){this.bb=null,this.bb_pos=0}__init(t,e){return this.bb_pos=t,this.bb=e,this}static getRootAsMessage(t,e){return(e||new Rt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMessage(t,e){return t.setPosition(t.position()+q),(e||new Rt).__init(t.readInt32(t.position())+t.position(),t)}version(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt16(this.bb_pos+t):We.V1}headerType(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readUint8(this.bb_pos+t):ii.NONE}header(t){const e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__union(t,this.bb_pos+e):null}bodyLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readInt64(this.bb_pos+t):this.bb.createLong(0,0)}customMetadata(t,e){const i=this.bb.__offset(this.bb_pos,12);return i?(e||new nt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+i)+t*4),this.bb):null}customMetadataLength(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.__vector_len(this.bb_pos+t):0}static startMessage(t){t.startObject(5)}static addVersion(t,e){t.addFieldInt16(0,e,We.V1)}static addHeaderType(t,e){t.addFieldInt8(1,e,ii.NONE)}static addHeader(t,e){t.addFieldOffset(2,e,0)}static addBodyLength(t,e){t.addFieldInt64(3,e,t.createLong(0,0))}static addCustomMetadata(t,e){t.addFieldOffset(4,e,0)}static createCustomMetadataVector(t,e){t.startVector(4,e.length,4);for(let i=e.length-1;i>=0;i--)t.addOffset(e[i]);return t.endVector()}static startCustomMetadataVector(t,e){t.startVector(4,e,4)}static endMessage(t){return t.endObject()}static finishMessageBuffer(t,e){t.finish(e)}static finishSizePrefixedMessageBuffer(t,e){t.finish(e,void 0,!0)}static createMessage(t,e,i,r,s,o){return Rt.startMessage(t),Rt.addVersion(t,e),Rt.addHeaderType(t,i),Rt.addHeader(t,r),Rt.addBodyLength(t,s),Rt.addCustomMetadata(t,o),Rt.endMessage(t)}};var nu=ne;class iu extends R{visit(t,e){return t==null||e==null?void 0:super.visit(t,e)}visitNull(t,e){return Be.startNull(e),Be.endNull(e)}visitInt(t,e){return mt.startInt(e),mt.addBitWidth(e,t.bitWidth),mt.addIsSigned(e,t.isSigned),mt.endInt(e)}visitFloat(t,e){return kt.startFloatingPoint(e),kt.addPrecision(e,t.precision),kt.endFloatingPoint(e)}visitBinary(t,e){return we.startBinary(e),we.endBinary(e)}visitBool(t,e){return Se.startBool(e),Se.endBool(e)}visitUtf8(t,e){return Fe.startUtf8(e),Fe.endUtf8(e)}visitDecimal(t,e){return lt.startDecimal(e),lt.addScale(e,t.scale),lt.addPrecision(e,t.precision),lt.addBitWidth(e,t.bitWidth),lt.endDecimal(e)}visitDate(t,e){return Fn.startDate(e),Fn.addUnit(e,t.unit),Fn.endDate(e)}visitTime(t,e){return Ot.startTime(e),Ot.addUnit(e,t.unit),Ot.addBitWidth(e,t.bitWidth),Ot.endTime(e)}visitTimestamp(t,e){const i=t.timezone&&e.createString(t.timezone)||void 0;return Ft.startTimestamp(e),Ft.addUnit(e,t.unit),i!==void 0&&Ft.addTimezone(e,i),Ft.endTimestamp(e)}visitInterval(t,e){return Qt.startInterval(e),Qt.addUnit(e,t.unit),Qt.endInterval(e)}visitList(t,e){return Ie.startList(e),Ie.endList(e)}visitStruct(t,e){return Oe.startStruct_(e),Oe.endStruct_(e)}visitUnion(t,e){ut.startTypeIdsVector(e,t.typeIds.length);const i=ut.createTypeIdsVector(e,t.typeIds);return ut.startUnion(e),ut.addMode(e,t.mode),ut.addTypeIds(e,i),ut.endUnion(e)}visitDictionary(t,e){const i=this.visit(t.indices,e);return ee.startDictionaryEncoding(e),ee.addId(e,new nu(t.id,0)),ee.addIsOrdered(e,t.isOrdered),i!==void 0&&ee.addIndexType(e,i),ee.endDictionaryEncoding(e)}visitFixedSizeBinary(t,e){return xt.startFixedSizeBinary(e),xt.addByteWidth(e,t.byteWidth),xt.endFixedSizeBinary(e)}visitFixedSizeList(t,e){return jt.startFixedSizeList(e),jt.addListSize(e,t.listSize),jt.endFixedSizeList(e)}visitMap(t,e){return Un.startMap(e),Un.addKeysSorted(e,t.keysSorted),Un.endMap(e)}}const Fi=new iu;function ru(n,t=new Map){return new Q(ou(n,t),Nn(n.customMetadata),t)}function Co(n){return new vt(n.count,To(n.columns),No(n.columns))}function su(n){return new Yt(Co(n.data),n.id,n.isDelta)}function ou(n,t){return(n.fields||[]).filter(Boolean).map(e=>W.fromJSON(e,t))}function Pr(n,t){return(n.children||[]).filter(Boolean).map(e=>W.fromJSON(e,t))}function To(n){return(n||[]).reduce((t,e)=>[...t,new Ee(e.count,au(e.VALIDITY)),...To(e.children)],[])}function No(n,t=[]){for(let e=-1,i=(n||[]).length;++e<i;){const r=n[e];r.VALIDITY&&t.push(new Kt(t.length,r.VALIDITY.length)),r.TYPE&&t.push(new Kt(t.length,r.TYPE.length)),r.OFFSET&&t.push(new Kt(t.length,r.OFFSET.length)),r.DATA&&t.push(new Kt(t.length,r.DATA.length)),t=No(r.children,t)}return t}function au(n){return(n||[]).reduce((t,e)=>t+ +(e===0),0)}function cu(n,t){let e,i,r,s,o,a;return!t||!(s=n.dictionary)?(o=zr(n,Pr(n,t)),r=new W(n.name,o,n.nullable,Nn(n.customMetadata))):t.has(e=s.id)?(i=(i=s.indexType)?Kr(i):new ln,a=new qe(t.get(e),i,e,s.isOrdered),r=new W(n.name,a,n.nullable,Nn(n.customMetadata))):(i=(i=s.indexType)?Kr(i):new ln,t.set(e,o=zr(n,Pr(n,t))),a=new qe(o,i,e,s.isOrdered),r=new W(n.name,a,n.nullable,Nn(n.customMetadata))),r||null}function Nn(n){return new Map(Object.entries(n||{}))}function Kr(n){return new pe(n.isSigned,n.bitWidth)}function zr(n,t){const e=n.type.name;switch(e){case"NONE":return new fe;case"null":return new fe;case"binary":return new Rn;case"utf8":return new Dn;case"bool":return new Mn;case"list":return new kn((t||[])[0]);case"struct":return new st(t||[]);case"struct_":return new st(t||[])}switch(e){case"int":{const i=n.type;return new pe(i.isSigned,i.bitWidth)}case"floatingpoint":{const i=n.type;return new un(ht[i.precision])}case"decimal":{const i=n.type;return new Vn(i.scale,i.precision,i.bitWidth)}case"date":{const i=n.type;return new Ln(re[i.unit])}case"time":{const i=n.type;return new dn(V[i.unit],i.bitWidth)}case"timestamp":{const i=n.type;return new xn(V[i.unit],i.timezone)}case"interval":{const i=n.type;return new jn(he[i.unit])}case"union":{const i=n.type;return new Qn(_t[i.mode],i.typeIds||[],t||[])}case"fixedsizebinary":{const i=n.type;return new Pn(i.byteWidth)}case"fixedsizelist":{const i=n.type;return new Kn(i.listSize,(t||[])[0])}case"map":{const i=n.type;return new zn((t||[])[0],i.keysSorted)}}throw new Error(`Unrecognized type: "${e}"`)}var Te=ne,lu=_o,uu=Ye;class ot{constructor(t,e,i,r){this._version=e,this._headerType=i,this.body=new Uint8Array(0),r&&(this._createHeader=()=>r),this._bodyLength=typeof t=="number"?t:t.low}static fromJSON(t,e){const i=new ot(0,bt.V4,e);return i._createHeader=du(t,e),i}static decode(t){t=new uu(M(t));const e=ae.getRootAsMessage(t),i=e.bodyLength(),r=e.version(),s=e.headerType(),o=new ot(i,r,s);return o._createHeader=hu(e,s),o}static encode(t){const e=new lu;let i=-1;return t.isSchema()?i=Q.encode(e,t.header()):t.isRecordBatch()?i=vt.encode(e,t.header()):t.isDictionaryBatch()&&(i=Yt.encode(e,t.header())),ae.startMessage(e),ae.addVersion(e,bt.V4),ae.addHeader(e,i),ae.addHeaderType(e,t.headerType),ae.addBodyLength(e,new Te(t.bodyLength,0)),ae.finishMessageBuffer(e,ae.endMessage(e)),e.asUint8Array()}static from(t,e=0){if(t instanceof Q)return new ot(0,bt.V4,j.Schema,t);if(t instanceof vt)return new ot(e,bt.V4,j.RecordBatch,t);if(t instanceof Yt)return new ot(e,bt.V4,j.DictionaryBatch,t);throw new Error(`Unrecognized Message header: ${t}`)}get type(){return this.headerType}get version(){return this._version}get headerType(){return this._headerType}get bodyLength(){return this._bodyLength}header(){return this._createHeader()}isSchema(){return this.headerType===j.Schema}isRecordBatch(){return this.headerType===j.RecordBatch}isDictionaryBatch(){return this.headerType===j.DictionaryBatch}}class vt{constructor(t,e,i){this._nodes=e,this._buffers=i,this._length=typeof t=="number"?t:t.low}get nodes(){return this._nodes}get length(){return this._length}get buffers(){return this._buffers}}class Yt{constructor(t,e,i=!1){this._data=t,this._isDelta=i,this._id=typeof e=="number"?e:e.low}get id(){return this._id}get data(){return this._data}get isDelta(){return this._isDelta}get length(){return this.data.length}get nodes(){return this.data.nodes}get buffers(){return this.data.buffers}}class Kt{constructor(t,e){this.offset=typeof t=="number"?t:t.low,this.length=typeof e=="number"?e:e.low}}class Ee{constructor(t,e){this.length=typeof t=="number"?t:t.low,this.nullCount=typeof e=="number"?e:e.low}}function du(n,t){return(()=>{switch(t){case j.Schema:return Q.fromJSON(n);case j.RecordBatch:return vt.fromJSON(n);case j.DictionaryBatch:return Yt.fromJSON(n)}throw new Error(`Unrecognized Message type: { name: ${j[t]}, type: ${t} }`)})}function hu(n,t){return(()=>{switch(t){case j.Schema:return Q.decode(n.header(new Dt));case j.RecordBatch:return vt.decode(n.header(new $t),n.version());case j.DictionaryBatch:return Yt.decode(n.header(new Le),n.version())}throw new Error(`Unrecognized Message type: { name: ${j[t]}, type: ${t} }`)})}W.encode=Su;W.decode=vu;W.fromJSON=cu;Q.encode=wu;Q.decode=fu;Q.fromJSON=ru;vt.encode=Iu;vt.decode=pu;vt.fromJSON=Co;Yt.encode=Bu;Yt.decode=yu;Yt.fromJSON=su;Ee.encode=Ou;Ee.decode=gu;Kt.encode=Fu;Kt.decode=Au;function fu(n,t=new Map){const e=_u(n,t);return new Q(e,En(n),t)}function pu(n,t=bt.V4){if(n.compression()!==null)throw new Error("Record batch compression not implemented");return new vt(n.length(),mu(n),bu(n,t))}function yu(n,t=bt.V4){return new Yt(vt.decode(n.data(),t),n.id(),n.isDelta())}function Au(n){return new Kt(n.offset(),n.length())}function gu(n){return new Ee(n.length(),n.nullCount())}function mu(n){const t=[];for(let e,i=-1,r=-1,s=n.nodesLength();++i<s;)(e=n.nodes(i))&&(t[++r]=Ee.decode(e));return t}function bu(n,t){const e=[];for(let i,r=-1,s=-1,o=n.buffersLength();++r<o;)(i=n.buffers(r))&&(t<bt.V4&&(i.bb_pos+=8*(r+1)),e[++s]=Kt.decode(i));return e}function _u(n,t){const e=[];for(let i,r=-1,s=-1,o=n.fieldsLength();++r<o;)(i=n.fields(r))&&(e[++s]=W.decode(i,t));return e}function qr(n,t){const e=[];for(let i,r=-1,s=-1,o=n.childrenLength();++r<o;)(i=n.children(r))&&(e[++s]=W.decode(i,t));return e}function vu(n,t){let e,i,r,s,o,a;return!t||!(a=n.dictionary())?(r=Wr(n,qr(n,t)),i=new W(n.name(),r,n.nullable(),En(n))):t.has(e=a.id().low)?(s=(s=a.indexType())?Yr(s):new ln,o=new qe(t.get(e),s,e,a.isOrdered()),i=new W(n.name(),o,n.nullable(),En(n))):(s=(s=a.indexType())?Yr(s):new ln,t.set(e,r=Wr(n,qr(n,t))),o=new qe(r,s,e,a.isOrdered()),i=new W(n.name(),o,n.nullable(),En(n))),i||null}function En(n){const t=new Map;if(n)for(let e,i,r=-1,s=Math.trunc(n.customMetadataLength());++r<s;)(e=n.customMetadata(r))&&(i=e.key())!=null&&t.set(i,e.value());return t}function Yr(n){return new pe(n.isSigned(),n.bitWidth())}function Wr(n,t){const e=n.typeType();switch(e){case G.NONE:return new fe;case G.Null:return new fe;case G.Binary:return new Rn;case G.Utf8:return new Dn;case G.Bool:return new Mn;case G.List:return new kn((t||[])[0]);case G.Struct_:return new st(t||[])}switch(e){case G.Int:{const i=n.type(new mt);return new pe(i.isSigned(),i.bitWidth())}case G.FloatingPoint:{const i=n.type(new kt);return new un(i.precision())}case G.Decimal:{const i=n.type(new lt);return new Vn(i.scale(),i.precision(),i.bitWidth())}case G.Date:{const i=n.type(new Fn);return new Ln(i.unit())}case G.Time:{const i=n.type(new Ot);return new dn(i.unit(),i.bitWidth())}case G.Timestamp:{const i=n.type(new Ft);return new xn(i.unit(),i.timezone())}case G.Interval:{const i=n.type(new Qt);return new jn(i.unit())}case G.Union:{const i=n.type(new ut);return new Qn(i.mode(),i.typeIdsArray()||[],t||[])}case G.FixedSizeBinary:{const i=n.type(new xt);return new Pn(i.byteWidth())}case G.FixedSizeList:{const i=n.type(new jt);return new Kn(i.listSize(),(t||[])[0])}case G.Map:{const i=n.type(new Un);return new zn((t||[])[0],i.keysSorted())}}throw new Error(`Unrecognized type: "${G[e]}" (${e})`)}function wu(n,t){const e=t.fields.map(s=>W.encode(n,s));Dt.startFieldsVector(n,e.length);const i=Dt.createFieldsVector(n,e),r=t.metadata&&t.metadata.size>0?Dt.createCustomMetadataVector(n,[...t.metadata].map(([s,o])=>{const a=n.createString(`${s}`),c=n.createString(`${o}`);return nt.startKeyValue(n),nt.addKey(n,a),nt.addValue(n,c),nt.endKeyValue(n)})):-1;return Dt.startSchema(n),Dt.addFields(n,i),Dt.addEndianness(n,Uu?Je.Little:Je.Big),r!==-1&&Dt.addCustomMetadata(n,r),Dt.endSchema(n)}function Su(n,t){let e=-1,i=-1,r=-1;const s=t.type;let o=t.typeId;b.isDictionary(s)?(o=s.dictionary.typeId,r=Fi.visit(s,n),i=Fi.visit(s.dictionary,n)):i=Fi.visit(s,n);const a=(s.children||[]).map(h=>W.encode(n,h)),c=It.createChildrenVector(n,a),u=t.metadata&&t.metadata.size>0?It.createCustomMetadataVector(n,[...t.metadata].map(([h,p])=>{const g=n.createString(`${h}`),A=n.createString(`${p}`);return nt.startKeyValue(n),nt.addKey(n,g),nt.addValue(n,A),nt.endKeyValue(n)})):-1;return t.name&&(e=n.createString(t.name)),It.startField(n),It.addType(n,i),It.addTypeType(n,o),It.addChildren(n,c),It.addNullable(n,!!t.nullable),e!==-1&&It.addName(n,e),r!==-1&&It.addDictionary(n,r),u!==-1&&It.addCustomMetadata(n,u),It.endField(n)}function Iu(n,t){const e=t.nodes||[],i=t.buffers||[];$t.startNodesVector(n,e.length);for(const o of e.slice().reverse())Ee.encode(n,o);const r=n.endVector();$t.startBuffersVector(n,i.length);for(const o of i.slice().reverse())Kt.encode(n,o);const s=n.endVector();return $t.startRecordBatch(n),$t.addLength(n,new Te(t.length,0)),$t.addNodes(n,r),$t.addBuffers(n,s),$t.endRecordBatch(n)}function Bu(n,t){const e=vt.encode(n,t.data);return Le.startDictionaryBatch(n),Le.addId(n,new Te(t.id,0)),Le.addIsDelta(n,t.isDelta),Le.addData(n,e),Le.endDictionaryBatch(n)}function Ou(n,t){return Uo.createFieldNode(n,new Te(t.length,0),new Te(t.nullCount,0))}function Fu(n,t){return Fo.createBuffer(n,new Te(t.offset,0),new Te(t.length,0))}const Uu=(()=>{const n=new ArrayBuffer(2);return new DataView(n).setInt16(0,256,!0),new Int16Array(n)[0]===256})(),dr=n=>`Expected ${j[n]} Message in stream, but was null or length 0.`,hr=n=>`Header pointer of flatbuffer-encoded ${j[n]} Message is null or length 0.`,Eo=(n,t)=>`Expected to read ${n} metadata bytes, but only read ${t}.`,Ro=(n,t)=>`Expected to read ${n} bytes for message body, but only read ${t}.`;class Do{constructor(t){this.source=t instanceof $n?t:new $n(t)}[Symbol.iterator](){return this}next(){let t;return(t=this.readMetadataLength()).done||t.value===-1&&(t=this.readMetadataLength()).done||(t=this.readMetadata(t.value)).done?H:t}throw(t){return this.source.throw(t)}return(t){return this.source.return(t)}readMessage(t){let e;if((e=this.next()).done)return null;if(t!=null&&e.value.headerType!==t)throw new Error(dr(t));return e.value}readMessageBody(t){if(t<=0)return new Uint8Array(0);const e=M(this.source.read(t));if(e.byteLength<t)throw new Error(Ro(t,e.byteLength));return e.byteOffset%8===0&&e.byteOffset+e.byteLength<=e.buffer.byteLength?e:e.slice()}readSchema(t=!1){const e=j.Schema,i=this.readMessage(e),r=i==null?void 0:i.header();if(t&&!r)throw new Error(hr(e));return r}readMetadataLength(){const t=this.source.read(di),e=t&&new Ye(t),i=(e==null?void 0:e.readInt32(0))||0;return{done:i===0,value:i}}readMetadata(t){const e=this.source.read(t);if(!e)return H;if(e.byteLength<t)throw new Error(Eo(t,e.byteLength));return{done:!1,value:ot.decode(e)}}}class Cu{constructor(t,e){this.source=t instanceof He?t:ts(t)?new ti(t,e):new He(t)}[Symbol.asyncIterator](){return this}next(){return m(this,void 0,void 0,function*(){let t;return(t=yield this.readMetadataLength()).done||t.value===-1&&(t=yield this.readMetadataLength()).done||(t=yield this.readMetadata(t.value)).done?H:t})}throw(t){return m(this,void 0,void 0,function*(){return yield this.source.throw(t)})}return(t){return m(this,void 0,void 0,function*(){return yield this.source.return(t)})}readMessage(t){return m(this,void 0,void 0,function*(){let e;if((e=yield this.next()).done)return null;if(t!=null&&e.value.headerType!==t)throw new Error(dr(t));return e.value})}readMessageBody(t){return m(this,void 0,void 0,function*(){if(t<=0)return new Uint8Array(0);const e=M(yield this.source.read(t));if(e.byteLength<t)throw new Error(Ro(t,e.byteLength));return e.byteOffset%8===0&&e.byteOffset+e.byteLength<=e.buffer.byteLength?e:e.slice()})}readSchema(t=!1){return m(this,void 0,void 0,function*(){const e=j.Schema,i=yield this.readMessage(e),r=i==null?void 0:i.header();if(t&&!r)throw new Error(hr(e));return r})}readMetadataLength(){return m(this,void 0,void 0,function*(){const t=yield this.source.read(di),e=t&&new Ye(t),i=(e==null?void 0:e.readInt32(0))||0;return{done:i===0,value:i}})}readMetadata(t){return m(this,void 0,void 0,function*(){const e=yield this.source.read(t);if(!e)return H;if(e.byteLength<t)throw new Error(Eo(t,e.byteLength));return{done:!1,value:ot.decode(e)}})}}class Tu extends Do{constructor(t){super(new Uint8Array(0)),this._schema=!1,this._body=[],this._batchIndex=0,this._dictionaryIndex=0,this._json=t instanceof jr?t:new jr(t)}next(){const{_json:t}=this;if(!this._schema)return this._schema=!0,{done:!1,value:ot.fromJSON(t.schema,j.Schema)};if(this._dictionaryIndex<t.dictionaries.length){const e=t.dictionaries[this._dictionaryIndex++];return this._body=e.data.columns,{done:!1,value:ot.fromJSON(e,j.DictionaryBatch)}}if(this._batchIndex<t.batches.length){const e=t.batches[this._batchIndex++];return this._body=e.columns,{done:!1,value:ot.fromJSON(e,j.RecordBatch)}}return this._body=[],H}readMessageBody(t){return e(this._body);function e(i){return(i||[]).reduce((r,s)=>[...r,...s.VALIDITY&&[s.VALIDITY]||[],...s.TYPE&&[s.TYPE]||[],...s.OFFSET&&[s.OFFSET]||[],...s.DATA&&[s.DATA]||[],...e(s.children)],[])}}readMessage(t){let e;if((e=this.next()).done)return null;if(t!=null&&e.value.headerType!==t)throw new Error(dr(t));return e.value}readSchema(){const t=j.Schema,e=this.readMessage(t),i=e==null?void 0:e.header();if(!e||!i)throw new Error(hr(t));return i}}const di=4,Pi="ARROW1",fn=new Uint8Array(Pi.length);for(let n=0;n<Pi.length;n+=1)fn[n]=Pi.codePointAt(n);function fr(n,t=0){for(let e=-1,i=fn.length;++e<i;)if(fn[e]!==n[t+e])return!1;return!0}const _n=fn.length,Mo=_n+di,Nu=_n*2+di;class ie extends sr{constructor(t){super(),this._impl=t}get closed(){return this._impl.closed}get schema(){return this._impl.schema}get autoDestroy(){return this._impl.autoDestroy}get dictionaries(){return this._impl.dictionaries}get numDictionaries(){return this._impl.numDictionaries}get numRecordBatches(){return this._impl.numRecordBatches}get footer(){return this._impl.isFile()?this._impl.footer:null}isSync(){return this._impl.isSync()}isAsync(){return this._impl.isAsync()}isFile(){return this._impl.isFile()}isStream(){return this._impl.isStream()}next(){return this._impl.next()}throw(t){return this._impl.throw(t)}return(t){return this._impl.return(t)}cancel(){return this._impl.cancel()}reset(t){return this._impl.reset(t),this._DOMStream=void 0,this._nodeStream=void 0,this}open(t){const e=this._impl.open(t);return de(e)?e.then(()=>this):this}readRecordBatch(t){return this._impl.isFile()?this._impl.readRecordBatch(t):null}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}toDOMStream(){return Bt.toDOMStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this})}toNodeStream(){return Bt.toNodeStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this})}static throughNode(t){throw new Error('"throughNode" not available in this environment')}static throughDOM(t,e){throw new Error('"throughDOM" not available in this environment')}static from(t){return t instanceof ie?t:Ni(t)?Mu(t):ts(t)?xu(t):de(t)?m(this,void 0,void 0,function*(){return yield ie.from(yield t)}):es(t)||qi(t)||ns(t)||Xe(t)?Lu(new He(t)):Vu(new $n(t))}static readAll(t){return t instanceof ie?t.isSync()?Jr(t):Gr(t):Ni(t)||ArrayBuffer.isView(t)||An(t)||$r(t)?Jr(t):Gr(t)}}class ri extends ie{constructor(t){super(t),this._impl=t}readAll(){return[...this]}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return Pt(this,arguments,function*(){yield C(yield*On(Ue(this[Symbol.iterator]())))})}}class si extends ie{constructor(t){super(t),this._impl=t}readAll(){var t,e;return m(this,void 0,void 0,function*(){const i=new Array;try{for(var r=Ue(this),s;s=yield r.next(),!s.done;){const o=s.value;i.push(o)}}catch(o){t={error:o}}finally{try{s&&!s.done&&(e=r.return)&&(yield e.call(r))}finally{if(t)throw t.error}}return i})}[Symbol.iterator](){throw new Error("AsyncRecordBatchStreamReader is not Iterable")}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}}class Vo extends ri{constructor(t){super(t),this._impl=t}}class Eu extends si{constructor(t){super(t),this._impl=t}}class Lo{constructor(t=new Map){this.closed=!1,this.autoDestroy=!0,this._dictionaryIndex=0,this._recordBatchIndex=0,this.dictionaries=t}get numDictionaries(){return this._dictionaryIndex}get numRecordBatches(){return this._recordBatchIndex}isSync(){return!1}isAsync(){return!1}isFile(){return!1}isStream(){return!1}reset(t){return this._dictionaryIndex=0,this._recordBatchIndex=0,this.schema=t,this.dictionaries=new Map,this}_loadRecordBatch(t,e){const i=this._loadVectors(t,e,this.schema.fields),r=E({type:new st(this.schema.fields),length:t.length,children:i});return new dt(this.schema,r)}_loadDictionaryBatch(t,e){const{id:i,isDelta:r}=t,{dictionaries:s,schema:o}=this,a=s.get(i);if(r||!a){const c=o.dictionaries.get(i),u=this._loadVectors(t.data,e,[c]);return(a&&r?a.concat(new k(u)):new k(u)).memoize()}return a.memoize()}_loadVectors(t,e,i){return new So(e,t.nodes,t.buffers,this.dictionaries).visitMany(i)}}class oi extends Lo{constructor(t,e){super(e),this._reader=Ni(t)?new Tu(this._handle=t):new Do(this._handle=t)}isSync(){return!0}isStream(){return!0}[Symbol.iterator](){return this}cancel(){!this.closed&&(this.closed=!0)&&(this.reset()._reader.return(),this._reader=null,this.dictionaries=null)}open(t){return this.closed||(this.autoDestroy=jo(this,t),this.schema||(this.schema=this._reader.readSchema())||this.cancel()),this}throw(t){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.throw(t):H}return(t){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.return(t):H}next(){if(this.closed)return H;let t;const{_reader:e}=this;for(;t=this._readNextMessageAndValidate();)if(t.isSchema())this.reset(t.header());else if(t.isRecordBatch()){this._recordBatchIndex++;const i=t.header(),r=e.readMessageBody(t.bodyLength);return{done:!1,value:this._loadRecordBatch(i,r)}}else if(t.isDictionaryBatch()){this._dictionaryIndex++;const i=t.header(),r=e.readMessageBody(t.bodyLength),s=this._loadDictionaryBatch(i,r);this.dictionaries.set(i.id,s)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new ur(this.schema)}):this.return()}_readNextMessageAndValidate(t){return this._reader.readMessage(t)}}class ai extends Lo{constructor(t,e){super(e),this._reader=new Cu(this._handle=t)}isAsync(){return!0}isStream(){return!0}[Symbol.asyncIterator](){return this}cancel(){return m(this,void 0,void 0,function*(){!this.closed&&(this.closed=!0)&&(yield this.reset()._reader.return(),this._reader=null,this.dictionaries=null)})}open(t){return m(this,void 0,void 0,function*(){return this.closed||(this.autoDestroy=jo(this,t),this.schema||(this.schema=yield this._reader.readSchema())||(yield this.cancel())),this})}throw(t){return m(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.throw(t):H})}return(t){return m(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.return(t):H})}next(){return m(this,void 0,void 0,function*(){if(this.closed)return H;let t;const{_reader:e}=this;for(;t=yield this._readNextMessageAndValidate();)if(t.isSchema())yield this.reset(t.header());else if(t.isRecordBatch()){this._recordBatchIndex++;const i=t.header(),r=yield e.readMessageBody(t.bodyLength);return{done:!1,value:this._loadRecordBatch(i,r)}}else if(t.isDictionaryBatch()){this._dictionaryIndex++;const i=t.header(),r=yield e.readMessageBody(t.bodyLength),s=this._loadDictionaryBatch(i,r);this.dictionaries.set(i.id,s)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new ur(this.schema)}):yield this.return()})}_readNextMessageAndValidate(t){return m(this,void 0,void 0,function*(){return yield this._reader.readMessage(t)})}}class xo extends oi{constructor(t,e){super(t instanceof kr?t:new kr(t),e)}get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}isSync(){return!0}isFile(){return!0}open(t){if(!this.closed&&!this._footer){this.schema=(this._footer=this._readFooter()).schema;for(const e of this._footer.dictionaryBatches())e&&this._readDictionaryBatch(this._dictionaryIndex++)}return super.open(t)}readRecordBatch(t){var e;if(this.closed)return null;this._footer||this.open();const i=(e=this._footer)===null||e===void 0?void 0:e.getRecordBatch(t);if(i&&this._handle.seek(i.offset)){const r=this._reader.readMessage(j.RecordBatch);if(r!=null&&r.isRecordBatch()){const s=r.header(),o=this._reader.readMessageBody(r.bodyLength);return this._loadRecordBatch(s,o)}}return null}_readDictionaryBatch(t){var e;const i=(e=this._footer)===null||e===void 0?void 0:e.getDictionaryBatch(t);if(i&&this._handle.seek(i.offset)){const r=this._reader.readMessage(j.DictionaryBatch);if(r!=null&&r.isDictionaryBatch()){const s=r.header(),o=this._reader.readMessageBody(r.bodyLength),a=this._loadDictionaryBatch(s,o);this.dictionaries.set(s.id,a)}}}_readFooter(){const{_handle:t}=this,e=t.size-Mo,i=t.readInt32(e),r=t.readAt(e-i,i);return hn.decode(r)}_readNextMessageAndValidate(t){var e;if(this._footer||this.open(),this._footer&&this._recordBatchIndex<this.numRecordBatches){const i=(e=this._footer)===null||e===void 0?void 0:e.getRecordBatch(this._recordBatchIndex);if(i&&this._handle.seek(i.offset))return this._reader.readMessage(t)}return null}}class Ru extends ai{constructor(t,...e){const i=typeof e[0]!="number"?e.shift():void 0,r=e[0]instanceof Map?e.shift():void 0;super(t instanceof ti?t:new ti(t,i),r)}get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}isFile(){return!0}isAsync(){return!0}open(t){const e=Object.create(null,{open:{get:()=>super.open}});return m(this,void 0,void 0,function*(){if(!this.closed&&!this._footer){this.schema=(this._footer=yield this._readFooter()).schema;for(const i of this._footer.dictionaryBatches())i&&(yield this._readDictionaryBatch(this._dictionaryIndex++))}return yield e.open.call(this,t)})}readRecordBatch(t){var e;return m(this,void 0,void 0,function*(){if(this.closed)return null;this._footer||(yield this.open());const i=(e=this._footer)===null||e===void 0?void 0:e.getRecordBatch(t);if(i&&(yield this._handle.seek(i.offset))){const r=yield this._reader.readMessage(j.RecordBatch);if(r!=null&&r.isRecordBatch()){const s=r.header(),o=yield this._reader.readMessageBody(r.bodyLength);return this._loadRecordBatch(s,o)}}return null})}_readDictionaryBatch(t){var e;return m(this,void 0,void 0,function*(){const i=(e=this._footer)===null||e===void 0?void 0:e.getDictionaryBatch(t);if(i&&(yield this._handle.seek(i.offset))){const r=yield this._reader.readMessage(j.DictionaryBatch);if(r!=null&&r.isDictionaryBatch()){const s=r.header(),o=yield this._reader.readMessageBody(r.bodyLength),a=this._loadDictionaryBatch(s,o);this.dictionaries.set(s.id,a)}}})}_readFooter(){return m(this,void 0,void 0,function*(){const{_handle:t}=this;t._pending&&(yield t._pending);const e=t.size-Mo,i=yield t.readInt32(e),r=yield t.readAt(e-i,i);return hn.decode(r)})}_readNextMessageAndValidate(t){return m(this,void 0,void 0,function*(){if(this._footer||(yield this.open()),this._footer&&this._recordBatchIndex<this.numRecordBatches){const e=this._footer.getRecordBatch(this._recordBatchIndex);if(e&&(yield this._handle.seek(e.offset)))return yield this._reader.readMessage(t)}return null})}}class Du extends oi{constructor(t,e){super(t,e)}_loadVectors(t,e,i){return new Yl(e,t.nodes,t.buffers,this.dictionaries).visitMany(i)}}function jo(n,t){return t&&typeof t.autoDestroy=="boolean"?t.autoDestroy:n.autoDestroy}function*Jr(n){const t=ie.from(n);try{if(!t.open({autoDestroy:!1}).closed)do yield t;while(!t.reset().open().closed)}finally{t.cancel()}}function Gr(n){return Pt(this,arguments,function*(){const e=yield C(ie.from(n));try{if(!(yield C(e.open({autoDestroy:!1}))).closed)do yield yield C(e);while(!(yield C(e.reset().open())).closed)}finally{yield C(e.cancel())}})}function Mu(n){return new ri(new Du(n))}function Vu(n){const t=n.peek(_n+7&-8);return t&&t.byteLength>=4?fr(t)?new Vo(new xo(n.read())):new ri(new oi(n)):new ri(new oi((function*(){})()))}function Lu(n){return m(this,void 0,void 0,function*(){const t=yield n.peek(_n+7&-8);return t&&t.byteLength>=4?fr(t)?new Vo(new xo(yield n.read())):new si(new ai(n)):new si(new ai((function(){return Pt(this,arguments,function*(){})})()))})}function xu(n){return m(this,void 0,void 0,function*(){const{size:t}=yield n.stat(),e=new ti(n,t);return t>=Nu&&fr(yield e.readAt(0,_n+7&-8))?new Eu(new Ru(e)):new si(new ai(e))})}class $ extends R{constructor(){super(),this._byteLength=0,this._nodes=[],this._buffers=[],this._bufferRegions=[]}static assemble(...t){const e=r=>r.flatMap(s=>Array.isArray(s)?e(s):s instanceof dt?s.data.children:s.data),i=new $;return i.visitMany(e(t)),i}visit(t){if(t instanceof k)return this.visitMany(t.data),this;const{type:e}=t;if(!b.isDictionary(e)){const{length:i,nullCount:r}=t;if(i>2147483647)throw new RangeError("Cannot write arrays larger than 2^31 - 1 in length");b.isNull(e)||Nt.call(this,r<=0?new Uint8Array(0):tr(t.offset,i,t.nullBitmap)),this.nodes.push(new Ee(i,r))}return super.visit(t)}visitNull(t){return this}visitDictionary(t){return this.visit(t.clone(t.type.indices))}get nodes(){return this._nodes}get buffers(){return this._buffers}get byteLength(){return this._byteLength}get bufferRegions(){return this._bufferRegions}}function Nt(n){const t=n.byteLength+7&-8;return this.buffers.push(n),this.bufferRegions.push(new Kt(this._byteLength,t)),this._byteLength+=t,this}function ju(n){const{type:t,length:e,typeIds:i,valueOffsets:r}=n;if(Nt.call(this,i),t.mode===_t.Sparse)return Ki.call(this,n);if(t.mode===_t.Dense){if(n.offset<=0)return Nt.call(this,r),Ki.call(this,n);{const s=i.reduce((h,p)=>Math.max(h,p),i[0]),o=new Int32Array(s+1),a=new Int32Array(s+1).fill(-1),c=new Int32Array(e),u=Wi(-r[0],e,r);for(let h,p,g=-1;++g<e;)(p=a[h=i[g]])===-1&&(p=a[h]=u[h]),c[g]=u[g]-p,++o[h];Nt.call(this,c);for(let h,p=-1,g=t.children.length;++p<g;)if(h=n.children[p]){const A=t.typeIds[p],T=Math.min(e,o[A]);this.visit(h.slice(a[A],T))}}}return this}function ku(n){let t;return n.nullCount>=n.length?Nt.call(this,new Uint8Array(0)):(t=n.values)instanceof Uint8Array?Nt.call(this,tr(n.offset,n.length,t)):Nt.call(this,qn(n.values))}function be(n){return Nt.call(this,n.values.subarray(0,n.length*n.stride))}function ko(n){const{length:t,values:e,valueOffsets:i}=n,r=i[0],s=i[t],o=Math.min(s-r,e.byteLength-r);return Nt.call(this,Wi(-i[0],t,i)),Nt.call(this,e.subarray(r,r+o)),this}function pr(n){const{length:t,valueOffsets:e}=n;return e&&Nt.call(this,Wi(e[0],t,e)),this.visit(n.children[0])}function Ki(n){return this.visitMany(n.type.children.map((t,e)=>n.children[e]).filter(Boolean))[0]}$.prototype.visitBool=ku;$.prototype.visitInt=be;$.prototype.visitFloat=be;$.prototype.visitUtf8=ko;$.prototype.visitBinary=ko;$.prototype.visitFixedSizeBinary=be;$.prototype.visitDate=be;$.prototype.visitTimestamp=be;$.prototype.visitTime=be;$.prototype.visitDecimal=be;$.prototype.visitList=pr;$.prototype.visitStruct=Ki;$.prototype.visitUnion=ju;$.prototype.visitInterval=be;$.prototype.visitFixedSizeList=pr;$.prototype.visitMap=pr;class Qo extends sr{constructor(t){super(),this._position=0,this._started=!1,this._sink=new Tn,this._schema=null,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._dictionaryDeltaOffsets=new Map,ft(t)||(t={autoDestroy:!0,writeLegacyIpcFormat:!1}),this._autoDestroy=typeof t.autoDestroy=="boolean"?t.autoDestroy:!0,this._writeLegacyIpcFormat=typeof t.writeLegacyIpcFormat=="boolean"?t.writeLegacyIpcFormat:!1}static throughNode(t){throw new Error('"throughNode" not available in this environment')}static throughDOM(t,e){throw new Error('"throughDOM" not available in this environment')}toString(t=!1){return this._sink.toString(t)}toUint8Array(t=!1){return this._sink.toUint8Array(t)}writeAll(t){return de(t)?t.then(e=>this.writeAll(e)):Xe(t)?mr(this,t):gr(this,t)}get closed(){return this._sink.closed}[Symbol.asyncIterator](){return this._sink[Symbol.asyncIterator]()}toDOMStream(t){return this._sink.toDOMStream(t)}toNodeStream(t){return this._sink.toNodeStream(t)}close(){return this.reset()._sink.close()}abort(t){return this.reset()._sink.abort(t)}finish(){return this._autoDestroy?this.close():this.reset(this._sink,this._schema),this}reset(t=this._sink,e=null){return t===this._sink||t instanceof Tn?this._sink=t:(this._sink=new Tn,t&&ac(t)?this.toDOMStream({type:"bytes"}).pipeTo(t):t&&cc(t)&&this.toNodeStream({objectMode:!1}).pipe(t)),this._started&&this._schema&&this._writeFooter(this._schema),this._started=!1,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._dictionaryDeltaOffsets=new Map,(!e||!ji(e,this._schema))&&(e==null?(this._position=0,this._schema=null):(this._started=!0,this._schema=e,this._writeSchema(e))),this}write(t){let e=null;if(this._sink){if(t==null)return this.finish()&&void 0;if(t instanceof rt&&!(e=t.schema))return this.finish()&&void 0;if(t instanceof dt&&!(e=t.schema))return this.finish()&&void 0}else throw new Error("RecordBatchWriter is closed");if(e&&!ji(e,this._schema)){if(this._started&&this._autoDestroy)return this.close();this.reset(this._sink,e)}t instanceof dt?t instanceof ur||this._writeRecordBatch(t):t instanceof rt?this.writeAll(t.batches):An(t)&&this.writeAll(t)}_writeMessage(t,e=8){const i=e-1,r=ot.encode(t),s=r.byteLength,o=this._writeLegacyIpcFormat?4:8,a=s+o+i&~i,c=a-s-o;return t.headerType===j.RecordBatch?this._recordBatchBlocks.push(new ye(a,t.bodyLength,this._position)):t.headerType===j.DictionaryBatch&&this._dictionaryBlocks.push(new ye(a,t.bodyLength,this._position)),this._writeLegacyIpcFormat||this._write(Int32Array.of(-1)),this._write(Int32Array.of(a-o)),s>0&&this._write(r),this._writePadding(c)}_write(t){if(this._started){const e=M(t);e&&e.byteLength>0&&(this._sink.write(e),this._position+=e.byteLength)}return this}_writeSchema(t){return this._writeMessage(ot.from(t))}_writeFooter(t){return this._writeLegacyIpcFormat?this._write(Int32Array.of(0)):this._write(Int32Array.of(-1,0))}_writeMagic(){return this._write(fn)}_writePadding(t){return t>0?this._write(new Uint8Array(t)):this}_writeRecordBatch(t){const{byteLength:e,nodes:i,bufferRegions:r,buffers:s}=$.assemble(t),o=new vt(t.numRows,i,r),a=ot.from(o,e);return this._writeDictionaries(t)._writeMessage(a)._writeBodyBuffers(s)}_writeDictionaryBatch(t,e,i=!1){this._dictionaryDeltaOffsets.set(e,t.length+(this._dictionaryDeltaOffsets.get(e)||0));const{byteLength:r,nodes:s,bufferRegions:o,buffers:a}=$.assemble(new k([t])),c=new vt(t.length,s,o),u=new Yt(c,e,i),h=ot.from(u,r);return this._writeMessage(h)._writeBodyBuffers(a)}_writeBodyBuffers(t){let e,i,r;for(let s=-1,o=t.length;++s<o;)(e=t[s])&&(i=e.byteLength)>0&&(this._write(e),(r=(i+7&-8)-i)>0&&this._writePadding(r));return this}_writeDictionaries(t){for(let[e,i]of t.dictionaries){let r=this._dictionaryDeltaOffsets.get(e)||0;if(r===0||(i=i==null?void 0:i.slice(r)).length>0)for(const s of i.data)this._writeDictionaryBatch(s,e,r>0),r+=s.length}return this}}class yr extends Qo{static writeAll(t,e){const i=new yr(e);return de(t)?t.then(r=>i.writeAll(r)):Xe(t)?mr(i,t):gr(i,t)}}class Ar extends Qo{static writeAll(t){const e=new Ar;return de(t)?t.then(i=>e.writeAll(i)):Xe(t)?mr(e,t):gr(e,t)}constructor(){super(),this._autoDestroy=!0}_writeSchema(t){return this._writeMagic()._writePadding(2)}_writeFooter(t){const e=hn.encode(new hn(t,bt.V4,this._recordBatchBlocks,this._dictionaryBlocks));return super._writeFooter(t)._write(e)._write(Int32Array.of(e.byteLength))._writeMagic()}}function gr(n,t){let e=t;t instanceof rt&&(e=t.batches,n.reset(void 0,t.schema));for(const i of e)n.write(i);return n.finish()}function mr(n,t){var e,i,r,s;return m(this,void 0,void 0,function*(){try{for(e=Ue(t);i=yield e.next(),!i.done;){const o=i.value;n.write(o)}}catch(o){r={error:o}}finally{try{i&&!i.done&&(s=e.return)&&(yield s.call(e))}finally{if(r)throw r.error}}return n.finish()})}function nn(n){const t=ie.from(n);return de(t)?t.then(e=>nn(e)):t.isAsync()?t.readAll().then(e=>new rt(e)):new rt(t.readAll())}function Ui(n,t="stream"){return(t==="stream"?yr:Ar).writeAll(n).toUint8Array(!0)}var Hr=(function(){function n(t,e,i,r){var s=this;this.getCell=function(o,a){var c=o<s.headerRows&&a<s.headerColumns,u=o>=s.headerRows&&a<s.headerColumns,h=o<s.headerRows&&a>=s.headerColumns;if(c){var p=["blank"];return a>0&&p.push("level"+o),{type:"blank",classNames:p.join(" "),content:""}}else if(h){var g=a-s.headerColumns,p=["col_heading","level"+o,"col"+g];return{type:"columns",classNames:p.join(" "),content:s.getContent(s.columnsTable,g,o)}}else if(u){var A=o-s.headerRows,p=["row_heading","level"+a,"row"+A];return{type:"index",id:"T_".concat(s.uuid,"level").concat(a,"_row").concat(A),classNames:p.join(" "),content:s.getContent(s.indexTable,A,a)}}else{var A=o-s.headerRows,g=a-s.headerColumns,p=["data","row"+A,"col"+g],T=s.styler?s.getContent(s.styler.displayValuesTable,A,g):s.getContent(s.dataTable,A,g);return{type:"data",id:"T_".concat(s.uuid,"row").concat(A,"_col").concat(g),classNames:p.join(" "),content:T}}},this.getContent=function(o,a,c){var u=o.getChildAt(c);if(u===null)return"";var h=s.getColumnTypeId(o,c);switch(h){case l.Timestamp:return s.nanosToDate(u.get(a));default:return u.get(a)}},this.dataTable=nn(t),this.indexTable=nn(e),this.columnsTable=nn(i),this.styler=r?{caption:r.caption,displayValuesTable:nn(r.displayValues),styles:r.styles,uuid:r.uuid}:void 0}return Object.defineProperty(n.prototype,"rows",{get:function(){return this.indexTable.numRows+this.columnsTable.numCols},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"columns",{get:function(){return this.indexTable.numCols+this.columnsTable.numRows},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"headerRows",{get:function(){return this.rows-this.dataRows},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"headerColumns",{get:function(){return this.columns-this.dataColumns},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"dataRows",{get:function(){return this.dataTable.numRows},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"dataColumns",{get:function(){return this.dataTable.numCols},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"uuid",{get:function(){return this.styler&&this.styler.uuid},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"caption",{get:function(){return this.styler&&this.styler.caption},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"styles",{get:function(){return this.styler&&this.styler.styles},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"table",{get:function(){return this.dataTable},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"index",{get:function(){return this.indexTable},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"columnTable",{get:function(){return this.columnsTable},enumerable:!1,configurable:!0}),n.prototype.serialize=function(){return{data:Ui(this.dataTable),index:Ui(this.indexTable),columns:Ui(this.columnsTable)}},n.prototype.getColumnTypeId=function(t,e){return t.schema.fields[e].type.typeId},n.prototype.nanosToDate=function(t){return new Date(t/1e6)},n})(),sn=function(){return sn=Object.assign||function(n){for(var t,e=1,i=arguments.length;e<i;e++){t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},sn.apply(this,arguments)},on;(function(n){n.COMPONENT_READY="streamlit:componentReady",n.SET_COMPONENT_VALUE="streamlit:setComponentValue",n.SET_FRAME_HEIGHT="streamlit:setFrameHeight"})(on||(on={}));var Ne=(function(){function n(){}return n.API_VERSION=1,n.RENDER_EVENT="streamlit:render",n.events=new EventTarget,n.registeredMessageListener=!1,n.setComponentReady=function(){n.registeredMessageListener||(window.addEventListener("message",n.onMessageEvent),n.registeredMessageListener=!0),n.sendBackMsg(on.COMPONENT_READY,{apiVersion:n.API_VERSION})},n.setFrameHeight=function(t){t===void 0&&(t=document.body.scrollHeight),t!==n.lastFrameHeight&&(n.lastFrameHeight=t,n.sendBackMsg(on.SET_FRAME_HEIGHT,{height:t}))},n.setComponentValue=function(t){var e;t instanceof Hr?(e="dataframe",t=t.serialize()):Pu(t)?(e="bytes",t=new Uint8Array(t.buffer)):t instanceof ArrayBuffer?(e="bytes",t=new Uint8Array(t)):e="json",n.sendBackMsg(on.SET_COMPONENT_VALUE,{value:t,dataType:e})},n.onMessageEvent=function(t){var e=t.data.type;switch(e){case n.RENDER_EVENT:n.onRenderMessage(t.data);break}},n.onRenderMessage=function(t){var e=t.args;e==null&&(console.error("Got null args in onRenderMessage. This should never happen"),e={});var i=t.dfs&&t.dfs.length>0?n.argsDataframeToObject(t.dfs):{};e=sn(sn({},e),i);var r=!!t.disabled,s=t.theme;s&&Qu(s);var o={disabled:r,args:e,theme:s},a=new CustomEvent(n.RENDER_EVENT,{detail:o});n.events.dispatchEvent(a)},n.argsDataframeToObject=function(t){var e=t.map(function(i){var r=i.key,s=i.value;return[r,n.toArrowTable(s)]});return Object.fromEntries(e)},n.toArrowTable=function(t){var e,i=(e=t.data,e.data),r=e.index,s=e.columns,o=e.styler;return new Hr(i,r,s,o)},n.sendBackMsg=function(t,e){window.parent.postMessage(sn({isStreamlitMessage:!0,type:t},e),"*")},n})(),Qu=function(n){var t=document.createElement("style");document.head.appendChild(t),t.innerHTML=`
|
|
23
|
+
:root {
|
|
24
|
+
--primary-color: `.concat(n.primaryColor,`;
|
|
25
|
+
--background-color: `).concat(n.backgroundColor,`;
|
|
26
|
+
--secondary-background-color: `).concat(n.secondaryBackgroundColor,`;
|
|
27
|
+
--text-color: `).concat(n.textColor,`;
|
|
28
|
+
--font: `).concat(n.font,`;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
body {
|
|
32
|
+
background-color: var(--background-color);
|
|
33
|
+
color: var(--text-color);
|
|
34
|
+
}
|
|
35
|
+
`)};function Pu(n){var t=!1;try{t=n instanceof BigInt64Array||n instanceof BigUint64Array}catch{}return n instanceof Int8Array||n instanceof Uint8Array||n instanceof Uint8ClampedArray||n instanceof Int16Array||n instanceof Uint16Array||n instanceof Int32Array||n instanceof Uint32Array||n instanceof Float32Array||n instanceof Float64Array||t}var Ku=(function(){var n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,r){i.__proto__=r}||function(i,r){for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(i[s]=r[s])},n(t,e)};return function(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");n(t,e);function i(){this.constructor=t}t.prototype=e===null?Object.create(e):(i.prototype=e.prototype,new i)}})();(function(n){Ku(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.componentDidMount=function(){Ne.setFrameHeight()},t.prototype.componentDidUpdate=function(){Ne.setFrameHeight()},t})(nc.PureComponent);const Ci=Object.fromEntries(Object.entries(Object.assign({"./cards/back.png":Wo,"./cards/clubs_02.png":Jo,"./cards/clubs_03.png":Go,"./cards/clubs_04.png":Ho,"./cards/clubs_05.png":Zo,"./cards/clubs_06.png":Xo,"./cards/clubs_07.png":$o,"./cards/clubs_08.png":ta,"./cards/clubs_09.png":ea,"./cards/clubs_10.png":na,"./cards/clubs_A.png":ia,"./cards/clubs_J.png":ra,"./cards/clubs_K.png":sa,"./cards/clubs_Q.png":oa,"./cards/diamonds_02.png":aa,"./cards/diamonds_03.png":ca,"./cards/diamonds_04.png":la,"./cards/diamonds_05.png":ua,"./cards/diamonds_06.png":da,"./cards/diamonds_07.png":ha,"./cards/diamonds_08.png":fa,"./cards/diamonds_09.png":pa,"./cards/diamonds_10.png":ya,"./cards/diamonds_A.png":Aa,"./cards/diamonds_J.png":ga,"./cards/diamonds_K.png":ma,"./cards/diamonds_Q.png":ba,"./cards/hearts_02.png":_a,"./cards/hearts_03.png":va,"./cards/hearts_04.png":wa,"./cards/hearts_05.png":Sa,"./cards/hearts_06.png":Ia,"./cards/hearts_07.png":Ba,"./cards/hearts_08.png":Oa,"./cards/hearts_09.png":Fa,"./cards/hearts_10.png":Ua,"./cards/hearts_A.png":Ca,"./cards/hearts_J.png":Ta,"./cards/hearts_K.png":Na,"./cards/hearts_Q.png":Ea,"./cards/joker_black.png":Ra,"./cards/joker_red.png":Da,"./cards/spades_02.png":Ma,"./cards/spades_03.png":Va,"./cards/spades_04.png":La,"./cards/spades_05.png":xa,"./cards/spades_06.png":ja,"./cards/spades_07.png":ka,"./cards/spades_08.png":Qa,"./cards/spades_09.png":Pa,"./cards/spades_10.png":Ka,"./cards/spades_A.png":za,"./cards/spades_J.png":qa,"./cards/spades_K.png":Ya,"./cards/spades_Q.png":Wa})).map(([n,t])=>[n.split("/").pop().replace(".png",""),t])),zu={A:"Ace",K:"King",Q:"Queen",J:"Jack"};function qu(n){if(n==="back")return"Face-down card";if(n.startsWith("joker_"))return`${n.split("_")[1]==="red"?"Red":"Black"} joker`;const[t,e]=n.split("_");return`${zu[e]??String(Number(e))} of ${t}`}let xe=!1;function Zr(n){xe&&Ne.setComponentValue({index:n,id:`${Date.now()}-${Math.random().toString(36).slice(2)}`})}const Yu=window.matchMedia("(prefers-reduced-motion: reduce)");class Wu{constructor(){this.image=null,this.up=!1,this.token=0,this.timers=[],this.el=document.createElement("div"),this.el.className="card",this.el.setAttribute("role","listitem"),this.inner=document.createElement("div"),this.inner.className="inner";const t=document.createElement("img");t.className="face back",t.src=Ci.back,t.alt="",this.front=document.createElement("img"),this.front.className="face front",this.front.alt="",this.inner.append(t,this.front),this.el.append(this.inner)}changes(t,e){return e!==this.up||e&&t!==this.image}set(t,e,i,r,s){const o=++this.token;this.timers.forEach(clearTimeout),this.timers=[];const a=(c,u)=>{if(u<=0)return c();this.timers.push(window.setTimeout(()=>o===this.token&&c(),u))};if(!i){this.inner.classList.add("no-anim"),this.setImage(t),this.setUp(e),this.inner.offsetWidth,this.inner.classList.remove("no-anim");return}a(()=>{this.up&&t!==this.image?(this.setUp(!1),a(()=>{this.setImage(t),this.setUp(e)},s)):(this.setImage(t),this.setUp(e))},r)}destroy(){this.token++,this.timers.forEach(clearTimeout),this.el.remove()}setImage(t){t!==this.image&&(this.image=t,this.front.src=Ci[t]??Ci.back)}setUp(t){this.up=t,this.inner.classList.toggle("up",t),this.el.setAttribute("aria-label",t&&this.image?qu(this.image):"Face-down card")}}const ue=document.getElementById("root"),ve=[];function Ju(n){const t=n.detail.args,e=t.animated&&!Yu.matches,i=Math.max(0,t.flip_duration*1e3),r=Math.max(0,t.flip_delay*1e3);for(ue.style.setProperty("--card-width",`${t.card_width}px`),ue.style.setProperty("--gap",`${t.gap}px`),ue.style.setProperty("--flip-duration",`${i}ms`);ve.length>t.cards.length;)ve.pop().destroy();for(;ve.length<t.cards.length;){const o=new Wu,a=ve.length;o.el.addEventListener("click",()=>Zr(a)),o.el.addEventListener("keydown",c=>{(c.key==="Enter"||c.key===" ")&&(c.preventDefault(),Zr(a))}),ve.push(o),ue.append(o.el)}xe=t.clickable,ue.classList.toggle("clickable",xe),ue.setAttribute("role",xe?"group":"list");for(const o of ve)o.el.setAttribute("role",xe?"button":"listitem"),xe?o.el.tabIndex=0:o.el.removeAttribute("tabindex");let s=0;t.cards.forEach((o,a)=>{const c=t.face_up&&o!=="back",u=ve[a],h=u.changes(o,c);u.set(o,c,e&&h,h?s*r:0,i),e&&h&&s++})}new ResizeObserver(()=>Ne.setFrameHeight(ue.offsetHeight)).observe(ue);Ne.events.addEventListener(Ne.RENDER_EVENT,Ju);Ne.setComponentReady();
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>streamlit-pokercards</title>
|
|
7
|
+
<script type="module" crossorigin src="./assets/index-DIklr1yH.js"></script>
|
|
8
|
+
<link rel="stylesheet" crossorigin href="./assets/index-B3TkP-tI.css">
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<div id="root" role="list"></div>
|
|
12
|
+
</body>
|
|
13
|
+
</html>
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: streamlit-pokercards
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Streamlit component that shows playing cards with an optional flip animation.
|
|
5
|
+
Author: Constantin Wilharm
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/cwilharm/streamlit-pokercards
|
|
8
|
+
Project-URL: Issues, https://github.com/cwilharm/streamlit-pokercards/issues
|
|
9
|
+
Keywords: streamlit,streamlit-component,playing-cards,poker
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Requires-Python: >=3.9
|
|
12
|
+
Description-Content-Type: text/markdown
|
|
13
|
+
License-File: LICENSE
|
|
14
|
+
Requires-Dist: streamlit>=1.30
|
|
15
|
+
Dynamic: license-file
|
|
16
|
+
|
|
17
|
+
# streamlit-pokercards
|
|
18
|
+
|
|
19
|
+
Playing cards for Streamlit, with optional flip animation and click events.
|
|
20
|
+
|
|
21
|
+
<img src="https://raw.githubusercontent.com/cwilharm/streamlit-pokercards/main/docs/demo.gif" alt="Five cards flipping over one after another" width="467">
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
pip install streamlit-pokercards
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
```python
|
|
28
|
+
import streamlit as st
|
|
29
|
+
from streamlit_pokercards import pokercards
|
|
30
|
+
|
|
31
|
+
show = st.toggle("Show cards", value=True)
|
|
32
|
+
clicked = pokercards(["sa", "hk", "dq"], face_up=show, animated=True, key="hand")
|
|
33
|
+
if clicked:
|
|
34
|
+
st.write(f"You clicked {clicked}")
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Card codes
|
|
38
|
+
|
|
39
|
+
Each card is **suit letter + rank**, e.g. `"hq"` = queen of hearts, `"s10"` = 10 of spades. Case doesn't matter.
|
|
40
|
+
|
|
41
|
+
| Suit | Symbol | Code | | Rank | Code |
|
|
42
|
+
|---|:---:|:---:|---|---|:---:|
|
|
43
|
+
| Spades | ♠ | `s` | | 2 – 10 | `2` … `10` |
|
|
44
|
+
| Hearts | ♥ | `h` | | Jack | `j` |
|
|
45
|
+
| Diamonds | ♦ | `d` | | Queen | `q` |
|
|
46
|
+
| Clubs | ♣ | `c` | | King | `k` |
|
|
47
|
+
| | | | | Ace | `a` |
|
|
48
|
+
|
|
49
|
+
Specials: `"jr"` red joker, `"jb"` black joker, `"back"` a card that always stays face-down.
|
|
50
|
+
|
|
51
|
+
<img src="https://raw.githubusercontent.com/cwilharm/streamlit-pokercards/main/docs/cards.png" alt="All cards with their codes" width="810">
|
|
52
|
+
|
|
53
|
+
## Parameters
|
|
54
|
+
|
|
55
|
+
| Parameter | Default | |
|
|
56
|
+
|---|---|---|
|
|
57
|
+
| `cards` | – | One code or a list of codes |
|
|
58
|
+
| `face_up` | `True` | `False` shows the backs; toggle it to flip the cards |
|
|
59
|
+
| `animated` | `False` | Animate flips, one card after another |
|
|
60
|
+
| `card_width` | `84` | Pixels; multiples of 42 keep the pixel art crisp |
|
|
61
|
+
| `gap` | `8` | Pixels between cards |
|
|
62
|
+
| `flip_duration` | `0.6` | Seconds per flip |
|
|
63
|
+
| `flip_delay` | `0.25` | Seconds between consecutive flips |
|
|
64
|
+
| `clickable` | `True` | Let users click cards |
|
|
65
|
+
| `key` | `None` | Set it so only changed cards flip on rerun |
|
|
66
|
+
|
|
67
|
+
**Returns** the clicked card's code on the rerun after a click, otherwise `None`.
|
|
68
|
+
|
|
69
|
+
Card art: [Kenney](https://kenney.nl/assets/playing-cards-pack) (CC0).
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
LICENSE
|
|
2
|
+
MANIFEST.in
|
|
3
|
+
README.md
|
|
4
|
+
pyproject.toml
|
|
5
|
+
streamlit_pokercards/__init__.py
|
|
6
|
+
streamlit_pokercards.egg-info/PKG-INFO
|
|
7
|
+
streamlit_pokercards.egg-info/SOURCES.txt
|
|
8
|
+
streamlit_pokercards.egg-info/dependency_links.txt
|
|
9
|
+
streamlit_pokercards.egg-info/requires.txt
|
|
10
|
+
streamlit_pokercards.egg-info/top_level.txt
|
|
11
|
+
streamlit_pokercards/frontend/build/index.html
|
|
12
|
+
streamlit_pokercards/frontend/build/assets/index-B3TkP-tI.css
|
|
13
|
+
streamlit_pokercards/frontend/build/assets/index-DIklr1yH.js
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
streamlit>=1.30
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
streamlit_pokercards
|